docs(B02): deliver installed skill card changes and bounded test evidence
This commit is contained in:
1 parent
14a1354c95
commit
0fbc1616e5
4 files changed
+393
No files matched your search
@@ -0,0 +1,244 @@
|
||||
B02 offline delivery evidence
|
||||
Code: 14a1354c95a2081fb32e36917a1b05873b2a662b
|
||||
Base: 9f1e583e233d176868a54b66a4a14ff3d19efb60
|
||||
Linux x64; Node24.19.0/npm11.9.0/jsdom30.1.3. No real model/SDK, original app, or real skill download.
|
||||
Native UI did not start; do not interpret DOM/build-only as layout evidence.
|
||||
Backend real-package fixture was SKIPPED despite its following generic PASS phase label.
|
||||
Independent review: 14 identity cases and 45 DOM checks passed; no blocking finding.
|
||||
|
||||
===== skills-dom-final.txt: exit 0 =====
|
||||
npm warn Unknown env config "http-proxy". This will stop working in the next major version of npm.
|
||||
|
||||
> ycode@0.0.7 test:recommended-skills:dom
|
||||
> node scripts/test-recommended-skills-dom.mjs
|
||||
|
||||
{"result":"PASS","checks":45,"output":"/workspace/scratch/0aaa9774aecc/single-package-staging/ycode/.tmp/recommended-skills-dom-H0MqNz"}
|
||||
|
||||
===== backend.txt: exit 0 =====
|
||||
npm warn Unknown env config "http-proxy". This will stop working in the next major version of npm.
|
||||
|
||||
> ycode@0.0.7 test:recommended-skills
|
||||
> esbuild scripts/recommended-skills-backend-regression.ts --bundle --platform=node --format=esm --external:esbuild --outfile=.tmp/recommended-skills-backend-regression.mjs --log-level=warning && node .tmp/recommended-skills-backend-regression.mjs
|
||||
|
||||
{"result":"PASS","checks":50,"phase":"archive"}
|
||||
{"result":"SKIP","phase":"real-package","reason":"published package not present in .tmp"}
|
||||
{"result":"PASS","checks":60,"phase":"real-package"}
|
||||
|
||||
===== composer.txt: exit 0 =====
|
||||
npm warn Unknown env config "http-proxy". This will stop working in the next major version of npm.
|
||||
|
||||
> ycode@0.0.7 test:composer-capabilities
|
||||
> node scripts/run-composer-capabilities-regression.mjs
|
||||
|
||||
prompt-queue-regression: cap, payload, order, isolation, delivery, stop, recovery and unknown checks passed
|
||||
{
|
||||
"result": "PASS",
|
||||
"checks": [
|
||||
{
|
||||
"name": "parallel same-instance enqueues preserve exactly 19 items",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "duplicate take is serialized to one winner",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "delivering item is immutable and notify does not duplicate delivery",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "clear removes a non-delivering session queue and is idempotent",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "first enqueue after an empty queue was paused resumes a new run without unpausing existing work",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "incoming payload is validated before host side effects and persistence",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "host-rebuilt capability labels are validated before persistence",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "two queue instances cannot overwrite one another",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "corrupt queue cannot redirect or duplicate item identity",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "invalid revision, status and payload permission are rejected",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "post-delivery removal failure becomes paused unknown instead of stuck delivering",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "stale owner nonce is recovered without trusting a reused PID",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "stale and expired lock files are reclaimed",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "live foreign lock times out with an explicit error",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "blocked notify does not create a state revision",
|
||||
"pass": true
|
||||
},
|
||||
{
|
||||
"name": "host resolver applies dispatch-time permission downgrade without mutating stored payload",
|
||||
"pass": true
|
||||
}
|
||||
]
|
||||
}
|
||||
input-composition-regression: precedence, takeover, queue preservation, task placement, toolbar and escape rules passed
|
||||
{"result":"PASS","checks":30}
|
||||
{
|
||||
"result": "PASS",
|
||||
"tests": [
|
||||
"serial model writes + frozen active turn",
|
||||
"send failure retry",
|
||||
"late result/event session isolation",
|
||||
"draft settings during first session creation",
|
||||
"nextRequestSettings whitelist"
|
||||
]
|
||||
}
|
||||
context-usage-regression: latest, previous, active-run, summary identity and failure cases passed
|
||||
{"result":"PASS","checks":36,"directory":"/workspace/scratch/0aaa9774aecc/single-package-staging/ycode/.tmp/claude-capabilities-CFQh8h"}
|
||||
npm notice
|
||||
npm notice New major version of npm available! 11.9.0 -> 12.2.0
|
||||
npm notice Changelog: https://github.com/npm/cli/releases/tag/v12.2.0
|
||||
npm notice To update run: npm install -g npm@12.2.0
|
||||
npm notice
|
||||
|
||||
===== alignment.txt: exit 0 =====
|
||||
npm warn Unknown env config "http-proxy". This will stop working in the next major version of npm.
|
||||
|
||||
> ycode@0.0.7 test:alignment
|
||||
> node scripts/run-alignment-regression.mjs
|
||||
|
||||
PASS model alignment: fresh/legacy migration, new/edit/default/delete/reload, valid selection (offline host fixtures)
|
||||
PASS model settings: deferred owner switch, rename mapping, addition selection, empty deletion, immutable history
|
||||
PASS session factory: first-send preference, mode preservation, invalid permission rejection (isolated ports)
|
||||
{"historyMessages":10000,"bytes":747781,"parseMs":3.0333960000000104,"storeHydrationMs":0.13541899999999885,"note":"Node parsing/store benchmark only, not browser rendering or Windows IPC performance"}
|
||||
session-composer-alignment: loading/cache/retry/races/model/permissions/modes/SSR passed
|
||||
alignment-conversation: local groups, original expanded order, question projection and truthful status passed
|
||||
A01 native MessageBubble identity aliases, immutable inputs and ordinary raw output passed
|
||||
A01 imported native card, linked dedup and unknown-position compatibility passed
|
||||
question-answer-shell: structural and recovered CSS contracts passed
|
||||
question-answer-shell: DOM hierarchy, controls linkage, click, Enter, Space and inert contracts passed
|
||||
Runtime progress, session-grant scope and approval lifecycle regressions passed
|
||||
Permission intercept static rendering passed; interactive keyboard/focus remains UI acceptance
|
||||
Claude host approval policy unit checks passed (no SDK process/application/matching verification)
|
||||
Mock SDK replay lifecycle passed: fail closed, retry, session isolation, independent mode guard
|
||||
task popconfirm DOM regression: 34 checks passed (jsdom, not pixel validation)
|
||||
question-interaction: 24 DOM behavioral checks passed
|
||||
question-identity: 30 A01 DOM checks passed (not Electron/pixel/SDK acceptance)
|
||||
completed-fold-nested: real question/tool/thinking/local-summary remount, event, keyboard and identity contracts passed
|
||||
completed-fold-native-identity: real reducer done correction, native IDs, insertion/reorder, repeated outer toggles, message isolation and legacy fallback passed
|
||||
Permission intercept DOM: 14 checks passed (not pixel/SDK verification)
|
||||
{"checks":37,"passed":true,"scope":"Isolated React DOM and CSS contracts; no native keyboard/layout/pixel acceptance"}
|
||||
npm notice
|
||||
npm notice New major version of npm available! 11.9.0 -> 12.2.0
|
||||
npm notice Changelog: https://github.com/npm/cli/releases/tag/v12.2.0
|
||||
npm notice To update run: npm install -g npm@12.2.0
|
||||
npm notice
|
||||
|
||||
===== build.txt: exit 0 =====
|
||||
Successful full build tail (command includes typecheck):
|
||||
out/renderer/assets/chunk-DU6HZSFF-BPbiNeHj.js 271.07 kB
|
||||
out/renderer/assets/architectureDiagram-5GKGNRK7-o5LZFHEn.js 318.23 kB
|
||||
out/renderer/assets/katex-Y9ra-ykP.js 497.35 kB
|
||||
out/renderer/assets/texmath-Bkeg3ZLn.js 594.25 kB
|
||||
out/renderer/assets/wasm-CVjZL0jK-2Bi6p3c3.js 622.62 kB
|
||||
out/renderer/assets/cpp-9jHBA231-CtHklR8a.js 626.73 kB
|
||||
out/renderer/assets/app-BYh1ERuc.js 675.57 kB
|
||||
out/renderer/assets/emacs-lisp-DjtOxg4j-CUUa7aOE.js 780.06 kB
|
||||
out/renderer/assets/cytoscape.esm-bVGYt-iW.js 869.69 kB
|
||||
out/renderer/assets/ArtifactPierreDiff-D5xhRc5y.js 1,119.58 kB
|
||||
out/renderer/assets/chunk-FOHPRMQF-BCllzKJD.js 1,154.18 kB
|
||||
out/renderer/assets/index-K0c2JUwW.js 3,761.37 kB
|
||||
out/renderer/assets/editor.api2-dPwET-7w-BYIQ9bT3.js 4,889.23 kB
|
||||
|
||||
✓ built in 1.94s
|
||||
npm notice
|
||||
npm notice New major version of npm available! 11.9.0 -> 12.2.0
|
||||
npm notice Changelog: https://github.com/npm/cli/releases/tag/v12.2.0
|
||||
npm notice To update run: npm install -g npm@12.2.0
|
||||
npm notice
|
||||
===== fixture-build.txt: exit 0 =====
|
||||
{"result":"BUILD_ONLY","output":"/workspace/scratch/0aaa9774aecc/single-package-staging/ycode/.tmp/recommended-skills-dom-Ka7Yeh","limits":"Compiled real React/CSS only; no UI execution or visual verification."}
|
||||
|
||||
===== tokens-before.txt: exit 1 =====
|
||||
npm warn Unknown env config "http-proxy". This will stop working in the next major version of npm.
|
||||
|
||||
> ycode@0.0.7 check:tokens
|
||||
> node scripts/check-design-tokens.mjs
|
||||
|
||||
设计 token 漂移检查(静态)
|
||||
扫描:src/renderer/src 共 367 个文件(用时 46 ms)
|
||||
baseline:scripts/design-token-baseline.json(334 个文件)
|
||||
门禁分类:adapter 8 | core 6 | local 279(合计 293 个文件)
|
||||
合计:裸 hex=611 裸 px=2682 !important=6 --wb-* 定义=525 var(--yc-*) 使用=1642 var(--wb-*) 使用=1201
|
||||
非门禁分类:vendor 2 | recovered 22 | source 47 | tokenSource 3(合计 74 个文件,仅记录不阻塞)
|
||||
合计:裸 hex=10642 裸 px=13642 !important=920 --wb-* 定义=17966 var(--yc-*) 使用=77 var(--wb-*) 使用=19638
|
||||
非门禁相对 baseline:文件 +0;裸 hex +78 裸 px +64 !important +0 --wb-* 定义 +0 var(--yc-*) 使用 +22 var(--wb-*) 使用 -120
|
||||
|
||||
结果:失败,共 6 项:
|
||||
[新增门禁文件] src/renderer/src/capabilities/recommended-flow.css(local):裸 px=22
|
||||
[新增门禁文件] src/renderer/src/capabilities/skill-detail-shell.css(local):裸 px=21
|
||||
[回归] src/renderer/src/capabilities/skills-host.css(local):裸 px 25 → 46(+21)
|
||||
[新增门禁文件] src/renderer/src/workbuddy/composer/capability-picker.css(local):裸 hex=26,裸 px=48
|
||||
[回归] src/renderer/src/workbuddy/composer/composer.css(local):裸 hex 23 → 38(+15);裸 px 83 → 139(+56)
|
||||
[新增门禁文件] src/renderer/src/workbuddy/composer/prompt-queue.css(local):裸 hex=8,裸 px=35
|
||||
|
||||
提示:确认变更符合预期后运行 `node scripts/check-design-tokens.mjs --update-baseline` 刷新 baseline;
|
||||
否则请改用 --yc-* token、复用现有值,或去掉重复的 --wb-* 定义。
|
||||
提示(不失败,仅记录):3 个门禁文件 token 使用数上升:
|
||||
src/renderer/src/capabilities/skills-host.css(local):var(--wb-*) 使用 12 → 19(+7)
|
||||
src/renderer/src/workbuddy/composer/composer.css(local):var(--yc-*) 使用 35 → 47(+12);var(--wb-*) 使用 0 → 1(+1)
|
||||
src/renderer/src/workbuddy/conversation/conversation.css(local):var(--yc-*) 使用 0 → 4(+4)
|
||||
提示(不失败):baseline 中 8 个文件已不存在:src/renderer/src/components/ReportedRunUsage.tsx;src/renderer/src/workbuddy/subagents/SourceMemberIcon.tsx;src/renderer/src/workbuddy/subagents/SubagentCollaboration.tsx;src/renderer/src/workbuddy/subagents/SubagentDetailPanel.tsx;src/renderer/src/workbuddy/subagents/adapters.css;src/renderer/src/workbuddy/subagents/member-view.ts;src/renderer/src/workbuddy/subagents/source.css;src/renderer/src/workbuddy/subagents/theme.css
|
||||
提示:新增门禁文件 36 个且无受控计数(允许):src/renderer/src/capabilities/CapabilityMaintenance.tsx(local);src/renderer/src/capabilities/RecommendedSkills.tsx(local);src/renderer/src/capabilities/SkillAvatar.tsx(local);src/renderer/src/capabilities/SkillDetailShell.tsx(local);src/renderer/src/capabilities/SkillModalPortal.tsx(local);src/renderer/src/capabilities/skill-modal-focus.ts(local);src/renderer/src/components/SessionLoading.tsx(local);src/renderer/src/components/TaskPopconfirm.tsx(local);src/renderer/src/components/session-loading.css(local);src/renderer/src/components/task-popconfirm.css(local);src/renderer/src/components/updates/UpdateSidebarCard.tsx(local);src/renderer/src/components/updates/update-ui-model.ts(local);src/renderer/src/components/updates/update-ui-store.ts(local);src/renderer/src/components/updates/updates-ui.css(local);src/renderer/src/ui/Button.tsx(local);src/renderer/src/ui/IconButton.tsx(local);src/renderer/src/ui/Input.tsx(local);src/renderer/src/ui/Popover.tsx(local);src/renderer/src/ui/Select.tsx(local);src/renderer/src/ui/Switch.tsx(local);…(还有 16 项,详见 --json)
|
||||
|
||||
===== tokens-after.txt: exit 1 =====
|
||||
npm warn Unknown env config "http-proxy". This will stop working in the next major version of npm.
|
||||
|
||||
> ycode@0.0.7 check:tokens
|
||||
> node scripts/check-design-tokens.mjs
|
||||
|
||||
设计 token 漂移检查(静态)
|
||||
扫描:src/renderer/src 共 367 个文件(用时 46 ms)
|
||||
baseline:scripts/design-token-baseline.json(334 个文件)
|
||||
门禁分类:adapter 8 | core 6 | local 279(合计 293 个文件)
|
||||
合计:裸 hex=611 裸 px=2680 !important=6 --wb-* 定义=525 var(--yc-*) 使用=1650 var(--wb-*) 使用=1209
|
||||
非门禁分类:vendor 2 | recovered 22 | source 47 | tokenSource 3(合计 74 个文件,仅记录不阻塞)
|
||||
合计:裸 hex=10642 裸 px=13642 !important=920 --wb-* 定义=17966 var(--yc-*) 使用=77 var(--wb-*) 使用=19638
|
||||
非门禁相对 baseline:文件 +0;裸 hex +78 裸 px +64 !important +0 --wb-* 定义 +0 var(--yc-*) 使用 +22 var(--wb-*) 使用 -120
|
||||
|
||||
结果:失败,共 6 项:
|
||||
[新增门禁文件] src/renderer/src/capabilities/recommended-flow.css(local):裸 px=21
|
||||
[新增门禁文件] src/renderer/src/capabilities/skill-detail-shell.css(local):裸 px=21
|
||||
[回归] src/renderer/src/capabilities/skills-host.css(local):裸 px 25 → 45(+20)
|
||||
[新增门禁文件] src/renderer/src/workbuddy/composer/capability-picker.css(local):裸 hex=26,裸 px=48
|
||||
[回归] src/renderer/src/workbuddy/composer/composer.css(local):裸 hex 23 → 38(+15);裸 px 83 → 139(+56)
|
||||
[新增门禁文件] src/renderer/src/workbuddy/composer/prompt-queue.css(local):裸 hex=8,裸 px=35
|
||||
|
||||
提示:确认变更符合预期后运行 `node scripts/check-design-tokens.mjs --update-baseline` 刷新 baseline;
|
||||
否则请改用 --yc-* token、复用现有值,或去掉重复的 --wb-* 定义。
|
||||
提示(不失败,仅记录):3 个门禁文件 token 使用数上升:
|
||||
src/renderer/src/capabilities/skills-host.css(local):var(--wb-*) 使用 12 → 19(+7)
|
||||
src/renderer/src/workbuddy/composer/composer.css(local):var(--yc-*) 使用 35 → 47(+12);var(--wb-*) 使用 0 → 1(+1)
|
||||
src/renderer/src/workbuddy/conversation/conversation.css(local):var(--yc-*) 使用 0 → 4(+4)
|
||||
提示(不失败):baseline 中 8 个文件已不存在:src/renderer/src/components/ReportedRunUsage.tsx;src/renderer/src/workbuddy/subagents/SourceMemberIcon.tsx;src/renderer/src/workbuddy/subagents/SubagentCollaboration.tsx;src/renderer/src/workbuddy/subagents/SubagentDetailPanel.tsx;src/renderer/src/workbuddy/subagents/adapters.css;src/renderer/src/workbuddy/subagents/member-view.ts;src/renderer/src/workbuddy/subagents/source.css;src/renderer/src/workbuddy/subagents/theme.css
|
||||
提示:新增门禁文件 36 个且无受控计数(允许):src/renderer/src/capabilities/CapabilityMaintenance.tsx(local);src/renderer/src/capabilities/RecommendedSkills.tsx(local);src/renderer/src/capabilities/SkillAvatar.tsx(local);src/renderer/src/capabilities/SkillDetailShell.tsx(local);src/renderer/src/capabilities/SkillModalPortal.tsx(local);src/renderer/src/capabilities/skill-modal-focus.ts(local);src/renderer/src/components/SessionLoading.tsx(local);src/renderer/src/components/TaskPopconfirm.tsx(local);src/renderer/src/components/session-loading.css(local);src/renderer/src/components/task-popconfirm.css(local);src/renderer/src/components/updates/UpdateSidebarCard.tsx(local);src/renderer/src/components/updates/update-ui-model.ts(local);src/renderer/src/components/updates/update-ui-store.ts(local);src/renderer/src/components/updates/updates-ui.css(local);src/renderer/src/ui/Button.tsx(local);src/renderer/src/ui/IconButton.tsx(local);src/renderer/src/ui/Input.tsx(local);src/renderer/src/ui/Popover.tsx(local);src/renderer/src/ui/Select.tsx(local);src/renderer/src/ui/Switch.tsx(local);…(还有 16 项,详见 --json)
|
||||
|
||||
Reference in new issue
Block a user