@research-copilot/plugin 1.1.17 → 1.1.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.claude-plugin/plugin.json +1 -1
- package/dist/.codex-plugin/plugin.toml +1 -1
- package/dist/.cursor-plugin/plugin.json +1 -1
- package/dist/.gemini-plugin/plugin.json +1 -1
- package/dist/.opencode-plugin/plugin.json +1 -1
- package/dist/.windsurf-plugin/plugin.json +1 -1
- package/dist/skills/ablation-planner/SKILL.md +126 -0
- package/dist/skills/alphaxiv/SKILL.md +186 -0
- package/dist/skills/analyze-results/SKILL.md +45 -0
- package/dist/skills/arxiv/SKILL.md +210 -0
- package/dist/skills/auto-paper-improvement-loop/SKILL.md +574 -0
- package/dist/skills/auto-review-loop/SKILL.md +370 -0
- package/dist/skills/auto-review-loop-llm/SKILL.md +247 -0
- package/dist/skills/auto-review-loop-minimax/SKILL.md +290 -0
- package/dist/skills/benchmark-paper-template/SKILL.md +142 -0
- package/dist/skills/benchmark-paper-template/references/benchmark-design.md +180 -0
- package/dist/skills/benchmark-paper-template/references/checklist.md +113 -0
- package/dist/skills/benchmark-paper-template/references/construction-pipeline.md +127 -0
- package/dist/skills/benchmark-paper-template/references/experiments.md +159 -0
- package/dist/skills/benchmark-paper-template/references/gap-analysis.md +86 -0
- package/dist/skills/benchmark-paper-template/references/instantiation-template.md +194 -0
- package/dist/skills/benchmark-paper-template/references/orchestrator-notes.md +96 -0
- package/dist/skills/benchmark-paper-template/references/paper-structure.md +209 -0
- package/dist/skills/citation-audit/SKILL.md +494 -0
- package/dist/skills/claims-drafting/SKILL.md +239 -0
- package/dist/skills/comm-lit-review/SKILL.md +299 -0
- package/dist/skills/comm-lit-review/references/domain-taxonomy.md +57 -0
- package/dist/skills/comm-lit-review/references/output-template.md +37 -0
- package/dist/skills/comm-lit-review/references/source-policy.md +99 -0
- package/dist/skills/comm-lit-review/references/venue-tiering.md +112 -0
- package/dist/skills/composer/SKILL.md +840 -0
- package/dist/skills/composer/references/section_guides.md +675 -0
- package/dist/skills/composer/references/writing_standards.md +629 -0
- package/dist/skills/composer/scripts/chapter_quality_check.py +470 -0
- package/dist/skills/composer/scripts/final_evaluation.py +550 -0
- package/dist/skills/deepxiv/SKILL.md +142 -0
- package/dist/skills/dse-loop/SKILL.md +277 -0
- package/dist/skills/embodiment-description/SKILL.md +129 -0
- package/dist/skills/exa-search/SKILL.md +192 -0
- package/dist/skills/experiment-audit/SKILL.md +262 -0
- package/dist/skills/experiment-bridge/SKILL.md +316 -0
- package/dist/skills/experiment-plan/SKILL.md +249 -0
- package/dist/skills/experiment-queue/SKILL.md +380 -0
- package/dist/skills/experiment-queue/scripts/build_manifest.py +142 -0
- package/dist/skills/experiment-queue/scripts/queue_manager.py +426 -0
- package/dist/skills/feishu-notify/SKILL.md +155 -0
- package/dist/skills/figure-description/SKILL.md +138 -0
- package/dist/skills/figure-designer/SKILL.md +207 -0
- package/dist/skills/figure-designer/references/design-rules.md +99 -0
- package/dist/skills/figure-designer/references/experimental-results.md +127 -0
- package/dist/skills/figure-designer/references/motivated-example.md +138 -0
- package/dist/skills/figure-designer/references/solution-overview.md +145 -0
- package/dist/skills/figure-designer/references/tools.md +124 -0
- package/dist/skills/figure-spec/SKILL.md +252 -0
- package/dist/skills/figure-spec/scripts/figure_renderer.py +799 -0
- package/dist/skills/formula-derivation/SKILL.md +280 -0
- package/dist/skills/gemini-search/SKILL.md +205 -0
- package/dist/skills/grant-proposal/SKILL.md +625 -0
- package/dist/skills/humanizer/AGENTS.md +25 -0
- package/dist/skills/humanizer/SKILL.md +621 -0
- package/dist/skills/idea-creator/SKILL.md +311 -0
- package/dist/skills/idea-discovery/SKILL.md +340 -0
- package/dist/skills/idea-discovery-robot/SKILL.md +362 -0
- package/dist/skills/idea-evaluator/SKILL.md +265 -0
- package/dist/skills/idea-evaluator/references/fatal-flaws.md +192 -0
- package/dist/skills/idea-evaluator/references/five-dimensions.md +251 -0
- package/dist/skills/idea-evaluator/references/lifecycle-capability-matching.md +177 -0
- package/dist/skills/idea-evaluator/references/paradigm-elephant.md +112 -0
- package/dist/skills/idea-evaluator/references/paradigm-examples.md +107 -0
- package/dist/skills/idea-evaluator/references/paradigm-first-principles.md +115 -0
- package/dist/skills/idea-evaluator/references/paradigm-hamming.md +137 -0
- package/dist/skills/idea-evaluator/references/paradigm-shift-probe.md +160 -0
- package/dist/skills/idea-evaluator/references/paradigm-technology-cycle.md +116 -0
- package/dist/skills/idea-evaluator/references/worked-examples.md +206 -0
- package/dist/skills/interview-cheatsheet/SKILL.md +245 -0
- package/dist/skills/intro-drafter/SKILL.md +250 -0
- package/dist/skills/intro-drafter/references/contribution-patterns.md +116 -0
- package/dist/skills/intro-drafter/references/flowchart.md +204 -0
- package/dist/skills/intro-drafter/references/paper-types.md +155 -0
- package/dist/skills/intro-drafter/references/running-example.md +133 -0
- package/dist/skills/intro-drafter/references/worked-examples.md +161 -0
- package/dist/skills/invention-structuring/SKILL.md +188 -0
- package/dist/skills/jurisdiction-format/SKILL.md +192 -0
- package/dist/skills/kill-argument/SKILL.md +384 -0
- package/dist/skills/llm-wiki/.mise.toml +2 -0
- package/dist/skills/llm-wiki/.nvmrc +1 -0
- package/dist/skills/llm-wiki/AGENTS.md +132 -0
- package/dist/skills/llm-wiki/CHANGELOG.md +459 -0
- package/dist/skills/llm-wiki/CLAUDE.md +109 -0
- package/dist/skills/llm-wiki/HERMES.md +44 -0
- package/dist/skills/llm-wiki/SKILL.md +1133 -0
- package/dist/skills/llm-wiki/assets/graph-demo.gif +0 -0
- package/dist/skills/llm-wiki/assets/graph-preview.png +0 -0
- package/dist/skills/llm-wiki/deps/LICENSE-d3.txt +13 -0
- package/dist/skills/llm-wiki/deps/LICENSE-marked.txt +44 -0
- package/dist/skills/llm-wiki/deps/LICENSE-purify.txt +568 -0
- package/{LICENSE → dist/skills/llm-wiki/deps/LICENSE-roughjs.txt} +1 -1
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/SKILL.md +261 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/references/config/first-time-setup.md +106 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/cdp.ts +179 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/constants.ts +13 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/defuddle-converter.ts +58 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/html-to-markdown.ts +135 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/legacy-converter.ts +629 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/main.ts +314 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/markdown-conversion-shared.ts +305 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/media-localizer.ts +317 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/package.json +14 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/paths.ts +29 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/vendor/baoyu-chrome-cdp/package.json +9 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/vendor/baoyu-chrome-cdp/src/index.test.ts +307 -0
- package/dist/skills/llm-wiki/deps/baoyu-url-to-markdown/scripts/vendor/baoyu-chrome-cdp/src/index.ts +523 -0
- package/dist/skills/llm-wiki/deps/d3.min.js +2 -0
- package/dist/skills/llm-wiki/deps/marked.min.js +6 -0
- package/dist/skills/llm-wiki/deps/purify.min.js +3 -0
- package/dist/skills/llm-wiki/deps/rough.min.js +7 -0
- package/dist/skills/llm-wiki/deps/youtube-transcript/SKILL.md +47 -0
- package/dist/skills/llm-wiki/deps/youtube-transcript/scripts/get_transcript.py +72 -0
- package/dist/skills/llm-wiki/docs/design/oriental-atlas/DESIGN.md +183 -0
- package/dist/skills/llm-wiki/docs/design/oriental-atlas/design-brief.md +170 -0
- package/dist/skills/llm-wiki/docs/design/oriental-atlas/oriental-editorial-atlas.html +1908 -0
- package/dist/skills/llm-wiki/docs/design/oriental-atlas/reviews/result-review.md +68 -0
- package/dist/skills/llm-wiki/docs/plans/2026-06-15-omp-tool-status-events-phased-plan.md +655 -0
- package/dist/skills/llm-wiki/docs/plans/2026-06-15-omp-tool-status-events-progress.json +913 -0
- package/dist/skills/llm-wiki/docs/spark/2026-06-15-omp-tool-status-events-design.md +174 -0
- package/dist/skills/llm-wiki/install.ps1 +87 -0
- package/dist/skills/llm-wiki/install.sh +722 -0
- package/dist/skills/llm-wiki/package-lock.json +10309 -0
- package/dist/skills/llm-wiki/package.json +24 -0
- package/dist/skills/llm-wiki/packages/graph-engine/package.json +33 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/anim/.gitkeep +1 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/anim/index.ts +179 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/diff.ts +121 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/graph-node.ts +37 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/index.ts +140 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/model/atlas.ts +18 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/model/index.ts +6 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/model/labels.ts +11 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/model/learning.ts +8 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/model/legacy-helpers.ts +1373 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/model/queue.ts +7 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/model/storage.ts +4 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/model/visibility.ts +9 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/render/.gitkeep +1 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/render/index.ts +59 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/render/legend.ts +25 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/render/model.ts +593 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/render/preview.ts +65 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/render/search.ts +48 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/render/static-renderer.ts +2783 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/render/toolbar.ts +40 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/render/viewport.ts +272 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/select/.gitkeep +1 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/select/index.ts +189 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/sim/index.ts +298 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/sim/pins.ts +96 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/themes/.gitkeep +1 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/themes/index.ts +8 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/themes/tokens.ts +107 -0
- package/dist/skills/llm-wiki/packages/graph-engine/src/types.ts +313 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/anim.test.ts +100 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/diff.test.ts +133 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/helpers.test.ts +275 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/learning.test.ts +259 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/preview.test.ts +56 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/queue.test.ts +114 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/render-model.test.ts +322 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/runtime-state.test.ts +281 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/search-and-legend.test.ts +111 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/select.test.ts +168 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/sim.test.ts +123 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/themes.test.ts +62 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/toolbar.test.ts +64 -0
- package/dist/skills/llm-wiki/packages/graph-engine/test/viewport.test.ts +167 -0
- package/dist/skills/llm-wiki/packages/graph-engine/tsconfig.json +17 -0
- package/dist/skills/llm-wiki/packages/graph-engine/vite.config.ts +15 -0
- package/dist/skills/llm-wiki/platforms/claude/CLAUDE.md +37 -0
- package/dist/skills/llm-wiki/platforms/claude/companions/llm-wiki-upgrade/SKILL.md +95 -0
- package/dist/skills/llm-wiki/platforms/codex/AGENTS.md +23 -0
- package/dist/skills/llm-wiki/scripts/adapter-state.sh +424 -0
- package/dist/skills/llm-wiki/scripts/build-graph-data.sh +395 -0
- package/dist/skills/llm-wiki/scripts/build-graph-html.sh +453 -0
- package/dist/skills/llm-wiki/scripts/cache.sh +352 -0
- package/dist/skills/llm-wiki/scripts/create-source-page.sh +100 -0
- package/dist/skills/llm-wiki/scripts/delete-helper.sh +68 -0
- package/dist/skills/llm-wiki/scripts/graph-analysis.js +732 -0
- package/dist/skills/llm-wiki/scripts/hook-session-start.sh +46 -0
- package/dist/skills/llm-wiki/scripts/init-wiki.sh +95 -0
- package/dist/skills/llm-wiki/scripts/lib/source-signal-eligibility.js +158 -0
- package/dist/skills/llm-wiki/scripts/lint-fix.sh +114 -0
- package/dist/skills/llm-wiki/scripts/lint-runner.sh +217 -0
- package/dist/skills/llm-wiki/scripts/runtime-context.sh +77 -0
- package/dist/skills/llm-wiki/scripts/shared-config.sh +83 -0
- package/dist/skills/llm-wiki/scripts/source-record-contract.tsv +10 -0
- package/dist/skills/llm-wiki/scripts/source-registry.sh +349 -0
- package/dist/skills/llm-wiki/scripts/source-registry.tsv +10 -0
- package/dist/skills/llm-wiki/scripts/source-signal-coverage.js +83 -0
- package/dist/skills/llm-wiki/scripts/validate-step1.sh +144 -0
- package/dist/skills/llm-wiki/scripts/wiki-compat.sh +267 -0
- package/dist/skills/llm-wiki/setup.sh +8 -0
- package/dist/skills/llm-wiki/templates/entity-template.md +30 -0
- package/dist/skills/llm-wiki/templates/graph-styles/wash/footer.html +27 -0
- package/dist/skills/llm-wiki/templates/graph-styles/wash/graph-wash-helpers.js +1326 -0
- package/dist/skills/llm-wiki/templates/graph-styles/wash/graph-wash.js +1009 -0
- package/dist/skills/llm-wiki/templates/graph-styles/wash/header.html +2002 -0
- package/dist/skills/llm-wiki/templates/index-en-template.md +51 -0
- package/dist/skills/llm-wiki/templates/index-template.md +51 -0
- package/dist/skills/llm-wiki/templates/log-en-template.md +11 -0
- package/dist/skills/llm-wiki/templates/log-template.md +11 -0
- package/dist/skills/llm-wiki/templates/overview-en-template.md +41 -0
- package/dist/skills/llm-wiki/templates/overview-template.md +41 -0
- package/dist/skills/llm-wiki/templates/purpose-en-template.md +16 -0
- package/dist/skills/llm-wiki/templates/purpose-template.md +16 -0
- package/dist/skills/llm-wiki/templates/query-template.md +19 -0
- package/dist/skills/llm-wiki/templates/schema-template.md +185 -0
- package/dist/skills/llm-wiki/templates/source-template.md +51 -0
- package/dist/skills/llm-wiki/templates/synthesis-template.md +25 -0
- package/dist/skills/llm-wiki/templates/topic-template.md +35 -0
- package/dist/skills/llm-wiki/tests/adapter-state.sh +338 -0
- package/dist/skills/llm-wiki/tests/browser/graph-density-preview.mjs +53 -0
- package/dist/skills/llm-wiki/tests/browser/graph-html-insights.mjs +41 -0
- package/dist/skills/llm-wiki/tests/browser/graph-node-slim.mjs +71 -0
- package/dist/skills/llm-wiki/tests/browser/graph-stage-4-5.mjs +717 -0
- package/dist/skills/llm-wiki/tests/expected/graph-data-empty.json +60 -0
- package/dist/skills/llm-wiki/tests/expected/graph-data-sample.json +396 -0
- package/dist/skills/llm-wiki/tests/expected/graph-interactive-basic.html +1736 -0
- package/dist/skills/llm-wiki/tests/expected/lint-output.txt +44 -0
- package/dist/skills/llm-wiki/tests/fixtures/coverage-sample-wiki/index.md +1 -0
- package/dist/skills/llm-wiki/tests/fixtures/coverage-sample-wiki/wiki/entities/Alpha.md +10 -0
- package/dist/skills/llm-wiki/tests/fixtures/coverage-sample-wiki/wiki/entities/Beta.md +7 -0
- package/dist/skills/llm-wiki/tests/fixtures/coverage-sample-wiki/wiki/entities/Delta.md +8 -0
- package/dist/skills/llm-wiki/tests/fixtures/coverage-sample-wiki/wiki/entities/Gamma.md +8 -0
- package/dist/skills/llm-wiki/tests/fixtures/coverage-sample-wiki/wiki/queries/20260422-abc.md +10 -0
- package/dist/skills/llm-wiki/tests/fixtures/coverage-sample-wiki/wiki/synthesis/Crystal.md +8 -0
- package/dist/skills/llm-wiki/tests/fixtures/coverage-sample-wiki/wiki/topics/Overview.md +9 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-data-empty-wiki/wiki/entities/.gitkeep +0 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-data-sample-wiki/purpose.md +3 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-data-sample-wiki/wiki/entities/Attention.md +7 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-data-sample-wiki/wiki/entities/Decoder.md +7 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-data-sample-wiki/wiki/entities/Encoder.md +7 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-data-sample-wiki/wiki/entities/GPT.md +7 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-data-sample-wiki/wiki/entities/Transformer.md +13 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-data-sample-wiki/wiki/sources/paper.md +9 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-data-sample-wiki/wiki/topics/arch.md +12 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-data-sample-wiki/wiki/topics/finetune.md +9 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-interactive-basic/wiki/graph-data.json +40 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-interactive-dense/wiki/graph-data.json +3965 -0
- package/dist/skills/llm-wiki/tests/fixtures/graph-interactive-multicomm/wiki/graph-data.json +212 -0
- package/dist/skills/llm-wiki/tests/fixtures/lint-sample-wiki/index.md +14 -0
- package/dist/skills/llm-wiki/tests/fixtures/lint-sample-wiki/wiki/entities/C++.md +6 -0
- package/dist/skills/llm-wiki/tests/fixtures/lint-sample-wiki/wiki/entities/Lonely.md +4 -0
- package/dist/skills/llm-wiki/tests/fixtures/lint-sample-wiki/wiki/entities/Other.md +8 -0
- package/dist/skills/llm-wiki/tests/fixtures/lint-sample-wiki/wiki/entities/Real.md +7 -0
- package/dist/skills/llm-wiki/tests/fixtures/lint-sample-wiki/wiki/sources/2026-01-01-test-source.md +15 -0
- package/dist/skills/llm-wiki/tests/fixtures/lint-sample-wiki/wiki/sources/2026-02-01-inline-img.md +12 -0
- package/dist/skills/llm-wiki/tests/fixtures/lint-sample-wiki/wiki/topics/AIbasic.md +3 -0
- package/dist/skills/llm-wiki/tests/graph-analysis-helper.regression-1.sh +237 -0
- package/dist/skills/llm-wiki/tests/graph-browser-stage-4-5.regression-1.sh +157 -0
- package/dist/skills/llm-wiki/tests/graph-build-failures.regression-1.sh +91 -0
- package/dist/skills/llm-wiki/tests/graph-data-confidence-merge.regression-1.sh +309 -0
- package/dist/skills/llm-wiki/tests/graph-data-source-paths.regression-1.sh +49 -0
- package/dist/skills/llm-wiki/tests/graph-html-a11y.regression-1.sh +47 -0
- package/dist/skills/llm-wiki/tests/graph-html-brand-link.regression-1.sh +47 -0
- package/dist/skills/llm-wiki/tests/graph-html-density.regression-1.sh +228 -0
- package/dist/skills/llm-wiki/tests/graph-html-drawer-neighbors.regression-1.sh +47 -0
- package/dist/skills/llm-wiki/tests/graph-html-insights.regression-1.sh +80 -0
- package/dist/skills/llm-wiki/tests/graph-html-long-label.regression-1.sh +92 -0
- package/dist/skills/llm-wiki/tests/graph-html-minimap.regression-1.sh +51 -0
- package/dist/skills/llm-wiki/tests/graph-html-mobile.regression-1.sh +48 -0
- package/dist/skills/llm-wiki/tests/graph-html-oriental-atlas-contract.regression-1.sh +94 -0
- package/dist/skills/llm-wiki/tests/graph-html-oriental-design-contract.regression-1.sh +82 -0
- package/dist/skills/llm-wiki/tests/graph-html-search.regression-1.sh +52 -0
- package/dist/skills/llm-wiki/tests/graph-html-styles.regression-1.sh +66 -0
- package/dist/skills/llm-wiki/tests/graph-html-toolbar.regression-1.sh +62 -0
- package/dist/skills/llm-wiki/tests/js/graph-wash-bootstrap.test.js +110 -0
- package/dist/skills/llm-wiki/tests/js/graph-wash-helpers.test.js +296 -0
- package/dist/skills/llm-wiki/tests/js/graph-wash-learning.test.js +260 -0
- package/dist/skills/llm-wiki/tests/js/graph-wash-queue.test.js +115 -0
- package/dist/skills/llm-wiki/tests/js/graph-wash-runtime-state.test.js +282 -0
- package/dist/skills/llm-wiki/tests/js/source-signal-coverage.test.js +48 -0
- package/dist/skills/llm-wiki/tests/js/source-signal-eligibility.test.js +202 -0
- package/dist/skills/llm-wiki/tests/lib/graph-html-engine-helpers.sh +110 -0
- package/dist/skills/llm-wiki/tests/lint-output.regression-1.sh +32 -0
- package/dist/skills/llm-wiki/tests/regression.sh +1754 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/.gitkeep +0 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/SKILL.md +590 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/__init__.py +1 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/accept_changes.py +135 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/comment.py +318 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/helpers/__init__.py +0 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/helpers/merge_runs.py +199 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/pack.py +159 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/soffice.py +183 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/unpack.py +132 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/validate.py +111 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/validators/__init__.py +15 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/validators/base.py +847 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/validators/docx.py +446 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/validators/pptx.py +275 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/office/validators/redlining.py +247 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/templates/comments.xml +3 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/templates/commentsExtended.xml +3 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/templates/commentsIds.xml +3 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/docx/scripts/templates/people.xml +3 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pdf/SKILL.md +314 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pdf/forms.md +294 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pdf/reference.md +612 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pdf/scripts/check_bounding_boxes.py +65 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pdf/scripts/check_fillable_fields.py +11 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pdf/scripts/convert_pdf_to_images.py +33 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pdf/scripts/create_validation_image.py +37 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pdf/scripts/extract_form_field_info.py +122 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pdf/scripts/extract_form_structure.py +115 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pdf/scripts/fill_fillable_fields.py +98 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pdf/scripts/fill_pdf_form_with_annotations.py +107 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/SKILL.md +232 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/editing.md +205 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/pptxgenjs.md +420 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/__init__.py +0 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/add_slide.py +195 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/clean.py +286 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/helpers/__init__.py +0 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/helpers/merge_runs.py +199 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/pack.py +159 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/soffice.py +183 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/unpack.py +132 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/validate.py +111 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/validators/__init__.py +15 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/validators/base.py +847 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/validators/docx.py +446 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/validators/pptx.py +275 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/office/validators/redlining.py +247 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/pptx/scripts/thumbnail.py +289 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/SKILL.md +292 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/helpers/__init__.py +0 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/helpers/merge_runs.py +199 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/helpers/simplify_redlines.py +197 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/pack.py +159 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/mce/mc.xsd +75 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/soffice.py +183 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/unpack.py +132 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/validate.py +111 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/validators/__init__.py +15 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/validators/base.py +847 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/validators/docx.py +446 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/validators/pptx.py +275 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/office/validators/redlining.py +247 -0
- package/dist/skills/llm-wiki/workbench/.claude/skills/xlsx/scripts/recalc.py +184 -0
- package/dist/skills/llm-wiki/workbench/AGENTS.md +110 -0
- package/dist/skills/llm-wiki/workbench/CLAUDE.md +54 -0
- package/dist/skills/llm-wiki/workbench/PRODUCT.md +1268 -0
- package/dist/skills/llm-wiki/workbench/docs/current-kb-retrieval-design.md +587 -0
- package/dist/skills/llm-wiki/workbench/docs/graph-evolution-1-design.md +210 -0
- package/dist/skills/llm-wiki/workbench/docs/stage-2-design.md +1139 -0
- package/dist/skills/llm-wiki/workbench/docs/stage-3-design.md +1269 -0
- package/dist/skills/llm-wiki/workbench/docs/stage-3.5-design.md +1164 -0
- package/dist/skills/llm-wiki/workbench/docs/stage-4-design.md +504 -0
- package/dist/skills/llm-wiki/workbench/docs/stage-4.5-design.md +195 -0
- package/dist/skills/llm-wiki/workbench/docs/superpowers/specs/2026-05-28-resizable-preview-layout-design.md +165 -0
- package/dist/skills/llm-wiki/workbench/docs/superpowers/specs/2026-05-28-settings-panel-scroll-fix.md +50 -0
- package/dist/skills/llm-wiki/workbench/server/package.json +29 -0
- package/dist/skills/llm-wiki/workbench/server/src/agent.ts +457 -0
- package/dist/skills/llm-wiki/workbench/server/src/artifacts.ts +248 -0
- package/dist/skills/llm-wiki/workbench/server/src/auth.ts +164 -0
- package/dist/skills/llm-wiki/workbench/server/src/config.ts +130 -0
- package/dist/skills/llm-wiki/workbench/server/src/conversations.test.ts +121 -0
- package/dist/skills/llm-wiki/workbench/server/src/conversations.ts +255 -0
- package/dist/skills/llm-wiki/workbench/server/src/digest/batch.ts +189 -0
- package/dist/skills/llm-wiki/workbench/server/src/digest/concurrency.test.ts +36 -0
- package/dist/skills/llm-wiki/workbench/server/src/digest/concurrency.ts +31 -0
- package/dist/skills/llm-wiki/workbench/server/src/digest/subagent.ts +91 -0
- package/dist/skills/llm-wiki/workbench/server/src/extensions/artifacts.ts +81 -0
- package/dist/skills/llm-wiki/workbench/server/src/extensions/knowledge-base.ts +263 -0
- package/dist/skills/llm-wiki/workbench/server/src/extensions/new-wiki.ts +42 -0
- package/dist/skills/llm-wiki/workbench/server/src/extensions/synthesis.ts +172 -0
- package/dist/skills/llm-wiki/workbench/server/src/graph-watcher.test.ts +196 -0
- package/dist/skills/llm-wiki/workbench/server/src/graph.test.ts +84 -0
- package/dist/skills/llm-wiki/workbench/server/src/graph.ts +379 -0
- package/dist/skills/llm-wiki/workbench/server/src/index.ts +1148 -0
- package/dist/skills/llm-wiki/workbench/server/src/knowledge-bases.test.ts +30 -0
- package/dist/skills/llm-wiki/workbench/server/src/knowledge-bases.ts +321 -0
- package/dist/skills/llm-wiki/workbench/server/src/pages.test.ts +16 -0
- package/dist/skills/llm-wiki/workbench/server/src/pages.ts +158 -0
- package/dist/skills/llm-wiki/workbench/server/src/retrieval.test.ts +151 -0
- package/dist/skills/llm-wiki/workbench/server/src/retrieval.ts +427 -0
- package/dist/skills/llm-wiki/workbench/server/src/tool-status-events.test.ts +363 -0
- package/dist/skills/llm-wiki/workbench/server/src/tool-status-events.ts +616 -0
- package/dist/skills/llm-wiki/workbench/server/src/wiki-init.test.ts +19 -0
- package/dist/skills/llm-wiki/workbench/server/src/wiki-init.ts +188 -0
- package/dist/skills/llm-wiki/workbench/server/tsconfig.json +10 -0
- package/dist/skills/llm-wiki/workbench/tsconfig.json +20 -0
- package/dist/skills/llm-wiki/workbench/web/components.json +21 -0
- package/dist/skills/llm-wiki/workbench/web/eslint.config.js +22 -0
- package/dist/skills/llm-wiki/workbench/web/index.html +13 -0
- package/dist/skills/llm-wiki/workbench/web/package.json +48 -0
- package/dist/skills/llm-wiki/workbench/web/src/App.tsx +749 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/AddExternalDialog.tsx +373 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/ArtifactView.tsx +15 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/BatchDigestPanel.tsx +106 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/ChatPanel.tsx +821 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/CommandMenu.tsx +65 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/ExportButtons.tsx +54 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/GraphPanel.tsx +516 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/GraphReader.tsx +48 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/GraphSelection.tsx +100 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/MarkdownView.tsx +56 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/NewWikiDialog.tsx +101 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/RefMenu.tsx +40 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/RightDrawer.tsx +227 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/SettingsPanel.tsx +331 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/Sidebar.tsx +436 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/ToolHistorySummary.tsx +123 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/ToolStatusRunway.tsx +90 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/renderers/DownloadOnlyRenderer.tsx +88 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/renderers/HtmlRenderer.tsx +92 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/ui/button.tsx +52 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/ui/command.tsx +50 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/ui/dialog.tsx +156 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/ui/input.tsx +21 -0
- package/dist/skills/llm-wiki/workbench/web/src/components/ui/tooltip.tsx +57 -0
- package/dist/skills/llm-wiki/workbench/web/src/index.css +1737 -0
- package/dist/skills/llm-wiki/workbench/web/src/lib/api.ts +648 -0
- package/dist/skills/llm-wiki/workbench/web/src/lib/drawer-state.ts +79 -0
- package/dist/skills/llm-wiki/workbench/web/src/lib/graph-reader.ts +25 -0
- package/dist/skills/llm-wiki/workbench/web/src/lib/graph-selection-drawer.ts +35 -0
- package/dist/skills/llm-wiki/workbench/web/src/lib/graph-selection.ts +96 -0
- package/dist/skills/llm-wiki/workbench/web/src/lib/legacy-tool-status.ts +113 -0
- package/dist/skills/llm-wiki/workbench/web/src/lib/sse.ts +72 -0
- package/dist/skills/llm-wiki/workbench/web/src/lib/tool-status-format.ts +170 -0
- package/dist/skills/llm-wiki/workbench/web/src/lib/tool-status-model.ts +392 -0
- package/dist/skills/llm-wiki/workbench/web/src/lib/utils.ts +10 -0
- package/dist/skills/llm-wiki/workbench/web/src/lib/wiki-links.ts +32 -0
- package/dist/skills/llm-wiki/workbench/web/src/main.tsx +10 -0
- package/dist/skills/llm-wiki/workbench/web/test/api.test.ts +61 -0
- package/dist/skills/llm-wiki/workbench/web/test/chat-panel-tool-status.test.tsx +26 -0
- package/dist/skills/llm-wiki/workbench/web/test/graph-drawer-state.test.ts +78 -0
- package/dist/skills/llm-wiki/workbench/web/test/graph-reader-request.test.ts +32 -0
- package/dist/skills/llm-wiki/workbench/web/test/graph-reader.test.ts +62 -0
- package/dist/skills/llm-wiki/workbench/web/test/graph-selection-drawer.test.ts +56 -0
- package/dist/skills/llm-wiki/workbench/web/test/graph-selection.test.ts +83 -0
- package/dist/skills/llm-wiki/workbench/web/test/tool-history-summary.test.tsx +124 -0
- package/dist/skills/llm-wiki/workbench/web/test/tool-status-format.test.ts +107 -0
- package/dist/skills/llm-wiki/workbench/web/test/tool-status-model.test.ts +324 -0
- package/dist/skills/llm-wiki/workbench/web/test/tool-status-runway.test.ts +134 -0
- package/dist/skills/llm-wiki/workbench/web/test/wiki-links.test.ts +23 -0
- package/dist/skills/llm-wiki/workbench/web/tsconfig.app.json +30 -0
- package/dist/skills/llm-wiki/workbench/web/tsconfig.json +7 -0
- package/dist/skills/llm-wiki/workbench/web/tsconfig.node.json +24 -0
- package/dist/skills/llm-wiki/workbench/web/vite.config.ts +26 -0
- package/dist/skills/mean-reviewer/SECURITY.md +23 -0
- package/dist/skills/mean-reviewer/SKILL.md +203 -0
- package/dist/skills/mean-reviewer/examples/13446_1000_Layer_Networks_for_.pdf +0 -0
- package/dist/skills/mean-reviewer/examples/13446_mean_reviewer.md +116 -0
- package/dist/skills/mean-reviewer/examples/13446_mean_reviewer_author_rebuttal_simulated.md +282 -0
- package/dist/skills/mean-reviewer/examples/13446_mean_reviewer_reply.md +91 -0
- package/dist/skills/mean-reviewer/examples/13446_official_review.json +973 -0
- package/dist/skills/mean-reviewer/examples/ChatGPT_AC_Roleplay.jpeg +0 -0
- package/dist/skills/medical-imaging-review/SKILL.md +295 -0
- package/dist/skills/medical-imaging-review/references/CITATION_INTEGRITY.md +233 -0
- package/dist/skills/medical-imaging-review/references/DOMAINS.md +302 -0
- package/dist/skills/medical-imaging-review/references/HALLUCINATION_PATTERNS.md +211 -0
- package/dist/skills/medical-imaging-review/references/MCP_SETUP.md +216 -0
- package/dist/skills/medical-imaging-review/references/PARADIGM.md +221 -0
- package/dist/skills/medical-imaging-review/references/QUALITY_CHECKLIST.md +169 -0
- package/dist/skills/medical-imaging-review/references/TEMPLATES.md +291 -0
- package/dist/skills/medical-imaging-review/references/WORKFLOW.md +289 -0
- package/dist/skills/mermaid-diagram/SKILL.md +379 -0
- package/dist/skills/meta-apply/SKILL.md +137 -0
- package/dist/skills/meta-optimize/SKILL.md +253 -0
- package/dist/skills/monitor-experiment/SKILL.md +98 -0
- package/dist/skills/novelty-check/SKILL.md +89 -0
- package/dist/skills/openalex/SKILL.md +228 -0
- package/dist/skills/overleaf-sync/SKILL.md +220 -0
- package/dist/skills/paper-claim-audit/SKILL.md +340 -0
- package/dist/skills/paper-compile/SKILL.md +253 -0
- package/dist/skills/paper-figure/SKILL.md +279 -0
- package/dist/skills/paper-illustration/SKILL.md +690 -0
- package/dist/skills/paper-illustration-image2/SKILL.md +383 -0
- package/dist/skills/paper-illustration-image2/scripts/paper_illustration_image2.py +255 -0
- package/dist/skills/paper-plan/SKILL.md +278 -0
- package/dist/skills/paper-poster/SKILL.md +19 -0
- package/dist/skills/paper-poster-html/DESIGN_FINAL.md +176 -0
- package/dist/skills/paper-poster-html/IMPLEMENTATION_CONVENTIONS.md +161 -0
- package/dist/skills/paper-poster-html/LICENSES/posterly-MIT.txt +21 -0
- package/dist/skills/paper-poster-html/NOTICE.md +57 -0
- package/dist/skills/paper-poster-html/SKILL.md +357 -0
- package/dist/skills/paper-poster-html/scripts/_posterly/__init__.py +0 -0
- package/dist/skills/paper-poster-html/scripts/_posterly/canvas.py +200 -0
- package/dist/skills/paper-poster-html/scripts/_posterly/measure.py +588 -0
- package/dist/skills/paper-poster-html/scripts/_posterly/polish.py +498 -0
- package/dist/skills/paper-poster-html/scripts/_posterly/preflight.py +489 -0
- package/dist/skills/paper-poster-html/scripts/_posterly/render.py +215 -0
- package/dist/skills/paper-poster-html/scripts/_posterly/textutil.py +16 -0
- package/dist/skills/paper-poster-html/scripts/_posterly/verify_final.py +171 -0
- package/dist/skills/paper-poster-html/scripts/asset_check.py +897 -0
- package/dist/skills/paper-poster-html/scripts/extract_pdf_figures.py +666 -0
- package/dist/skills/paper-poster-html/scripts/poster_check.py +251 -0
- package/dist/skills/paper-poster-html/scripts/preprocess_figures.py +238 -0
- package/dist/skills/paper-poster-html/scripts/render_preview.py +217 -0
- package/dist/skills/paper-poster-html/scripts/run_gates.py +556 -0
- package/dist/skills/paper-poster-html/scripts/style_check.py +1324 -0
- package/dist/skills/paper-poster-html/templates/COMPONENTS.md +462 -0
- package/dist/skills/paper-poster-html/templates/landscape_4col.html +1032 -0
- package/dist/skills/paper-poster-html/templates/landscape_hero.html +1046 -0
- package/dist/skills/paper-poster-html/templates/portrait_2col.html +947 -0
- package/dist/skills/paper-poster-html/templates/tokens/acl.json +9 -0
- package/dist/skills/paper-poster-html/templates/tokens/cvpr.json +9 -0
- package/dist/skills/paper-poster-html/templates/tokens/generic.json +9 -0
- package/dist/skills/paper-poster-html/templates/tokens/iclr.json +9 -0
- package/dist/skills/paper-poster-html/templates/tokens/icml.json +9 -0
- package/dist/skills/paper-poster-html/templates/tokens/neurips.json +9 -0
- package/dist/skills/paper-slide-deck/SKILL.md +464 -0
- package/dist/skills/paper-slide-deck/references/analysis-framework.md +392 -0
- package/dist/skills/paper-slide-deck/references/base-prompt.md +70 -0
- package/dist/skills/paper-slide-deck/references/content-rules.md +95 -0
- package/dist/skills/paper-slide-deck/references/figure-container-template.md +177 -0
- package/dist/skills/paper-slide-deck/references/modification-guide.md +85 -0
- package/dist/skills/paper-slide-deck/references/outline-template.md +437 -0
- package/dist/skills/paper-slide-deck/references/styles/academic-paper.md +109 -0
- package/dist/skills/paper-slide-deck/references/styles/blueprint.md +67 -0
- package/dist/skills/paper-slide-deck/references/styles/bold-editorial.md +70 -0
- package/dist/skills/paper-slide-deck/references/styles/chalkboard.md +68 -0
- package/dist/skills/paper-slide-deck/references/styles/corporate.md +69 -0
- package/dist/skills/paper-slide-deck/references/styles/dark-atmospheric.md +69 -0
- package/dist/skills/paper-slide-deck/references/styles/editorial-infographic.md +73 -0
- package/dist/skills/paper-slide-deck/references/styles/fantasy-animation.md +69 -0
- package/dist/skills/paper-slide-deck/references/styles/intuition-machine.md +72 -0
- package/dist/skills/paper-slide-deck/references/styles/minimal.md +64 -0
- package/dist/skills/paper-slide-deck/references/styles/notion.md +69 -0
- package/dist/skills/paper-slide-deck/references/styles/pixel-art.md +67 -0
- package/dist/skills/paper-slide-deck/references/styles/scientific.md +73 -0
- package/dist/skills/paper-slide-deck/references/styles/sketch-notes.md +66 -0
- package/dist/skills/paper-slide-deck/references/styles/vector-illustration.md +72 -0
- package/dist/skills/paper-slide-deck/references/styles/vintage.md +73 -0
- package/dist/skills/paper-slide-deck/references/styles/watercolor.md +68 -0
- package/dist/skills/paper-slide-deck/scripts/apply-template.ts +282 -0
- package/dist/skills/paper-slide-deck/scripts/detect-figures.ts +283 -0
- package/dist/skills/paper-slide-deck/scripts/extract-figure.ts +140 -0
- package/dist/skills/paper-slide-deck/scripts/generate-slides.py +182 -0
- package/dist/skills/paper-slide-deck/scripts/merge-to-pdf.ts +116 -0
- package/dist/skills/paper-slide-deck/scripts/merge-to-pptx.ts +137 -0
- package/dist/skills/paper-slide-deck/scripts/package-lock.json +899 -0
- package/dist/skills/paper-slide-deck/scripts/package.json +8 -0
- package/dist/skills/paper-slides/SKILL.md +571 -0
- package/dist/skills/paper-talk/SKILL.md +381 -0
- package/dist/skills/paper-write/SKILL.md +411 -0
- package/dist/skills/paper-write/templates/IEEEtran.bst +2409 -0
- package/dist/skills/paper-write/templates/IEEEtran.cls +6347 -0
- package/dist/skills/paper-write/templates/aaai2026.bst +1493 -0
- package/dist/skills/paper-write/templates/aaai2026.sty +315 -0
- package/dist/skills/paper-write/templates/aaai2026.tex +952 -0
- package/dist/skills/paper-write/templates/acl.sty +312 -0
- package/dist/skills/paper-write/templates/acl2026.tex +377 -0
- package/dist/skills/paper-write/templates/acl_natbib.bst +1940 -0
- package/dist/skills/paper-write/templates/acm.bst +3081 -0
- package/dist/skills/paper-write/templates/acm_mm2026.tex +204 -0
- package/dist/skills/paper-write/templates/acmart.cls +3520 -0
- package/dist/skills/paper-write/templates/cvpr.bst +1448 -0
- package/dist/skills/paper-write/templates/cvpr.sty +508 -0
- package/dist/skills/paper-write/templates/cvpr2026.tex +63 -0
- package/dist/skills/paper-write/templates/iclr2026.tex +84 -0
- package/dist/skills/paper-write/templates/iclr2026_conference.bst +1440 -0
- package/dist/skills/paper-write/templates/iclr2026_conference.sty +246 -0
- package/dist/skills/paper-write/templates/icml2025.tex +87 -0
- package/dist/skills/paper-write/templates/icml2026.sty +767 -0
- package/dist/skills/paper-write/templates/icml2026.tex +662 -0
- package/dist/skills/paper-write/templates/ieee_conference.tex +89 -0
- package/dist/skills/paper-write/templates/ieee_journal.tex +93 -0
- package/dist/skills/paper-write/templates/math_commands.tex +48 -0
- package/dist/skills/paper-write/templates/neurips2025.tex +80 -0
- package/dist/skills/paper-write/templates/neurips2026.tex +493 -0
- package/dist/skills/paper-write/templates/neurips_2026.sty +437 -0
- package/dist/skills/paper-writing/SKILL.md +632 -0
- package/dist/skills/patent-novelty-check/SKILL.md +153 -0
- package/dist/skills/patent-pipeline/SKILL.md +344 -0
- package/dist/skills/patent-review/SKILL.md +202 -0
- package/dist/skills/pixel-art/SKILL.md +139 -0
- package/dist/skills/pre-submission-reviewer/SKILL.md +247 -0
- package/dist/skills/pre-submission-reviewer/references/forbidden-patterns.md +163 -0
- package/dist/skills/pre-submission-reviewer/references/grammar-rules.md +135 -0
- package/dist/skills/pre-submission-reviewer/references/latex-rules.md +158 -0
- package/dist/skills/pre-submission-reviewer/references/logic-and-structure.md +125 -0
- package/dist/skills/pre-submission-reviewer/references/section-guides.md +169 -0
- package/dist/skills/prior-art-search/SKILL.md +146 -0
- package/dist/skills/proof-checker/SKILL.md +499 -0
- package/dist/skills/proof-writer/SKILL.md +222 -0
- package/dist/skills/qzcli/SKILL.md +316 -0
- package/dist/skills/rebuttal/SKILL.md +304 -0
- package/dist/skills/render-html/SKILL.md +299 -0
- package/dist/skills/render-html/scripts/render_html.py +905 -0
- package/dist/skills/render-html/scripts/templates/academic.html +342 -0
- package/dist/skills/render-html/scripts/templates/dashboard.html +333 -0
- package/dist/skills/research-lit/SKILL.md +353 -0
- package/dist/skills/research-paper-writing/SKILL.md +99 -0
- package/dist/skills/research-paper-writing/agents/openai.yaml +4 -0
- package/dist/skills/research-paper-writing/references/abstract.md +102 -0
- package/dist/skills/research-paper-writing/references/conclusion.md +35 -0
- package/dist/skills/research-paper-writing/references/does-my-writing-flow-source.md +45 -0
- package/dist/skills/research-paper-writing/references/examples/abstract/template-a.md +21 -0
- package/dist/skills/research-paper-writing/references/examples/abstract/template-b.md +34 -0
- package/dist/skills/research-paper-writing/references/examples/abstract/template-c.md +28 -0
- package/dist/skills/research-paper-writing/references/examples/abstract-examples.md +13 -0
- package/dist/skills/research-paper-writing/references/examples/index.md +21 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/novel-task-challenge-decomposition.md +18 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/pipeline-not-recommended-abstract-only.md +30 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/pipeline-version-1-one-contribution-multi-advantages.md +30 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/pipeline-version-2-two-contributions.md +34 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/pipeline-version-3-new-module-on-existing-pipeline.md +18 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/pipeline-version-4-observation-driven.md +16 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/technical-challenge-version-1-existing-task.md +32 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/technical-challenge-version-2-existing-task-insight-backed-by-traditional.md +33 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/technical-challenge-version-3-novel-task.md +21 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/version-1-task-then-application.md +14 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/version-2-application-first.md +10 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/version-3-general-to-specific-setting.md +14 -0
- package/dist/skills/research-paper-writing/references/examples/introduction/version-4-open-with-challenge.md +20 -0
- package/dist/skills/research-paper-writing/references/examples/introduction-examples.md +25 -0
- package/dist/skills/research-paper-writing/references/examples/method/example-of-the-three-elements.md +67 -0
- package/dist/skills/research-paper-writing/references/examples/method/method-writing-common-issues-note.md +10 -0
- package/dist/skills/research-paper-writing/references/examples/method/module-design-instant-ngp.md +55 -0
- package/dist/skills/research-paper-writing/references/examples/method/module-motivation-patterns.md +15 -0
- package/dist/skills/research-paper-writing/references/examples/method/module-triad-neural-body.md +19 -0
- package/dist/skills/research-paper-writing/references/examples/method/neural-body-annotated-figure-text.md +66 -0
- package/dist/skills/research-paper-writing/references/examples/method/overview-template.md +30 -0
- package/dist/skills/research-paper-writing/references/examples/method/pre-writing-questions.md +17 -0
- package/dist/skills/research-paper-writing/references/examples/method/section-skeleton.md +9 -0
- package/dist/skills/research-paper-writing/references/examples/method-examples.md +24 -0
- package/dist/skills/research-paper-writing/references/experiments.md +102 -0
- package/dist/skills/research-paper-writing/references/introduction.md +408 -0
- package/dist/skills/research-paper-writing/references/method.md +196 -0
- package/dist/skills/research-paper-writing/references/paper-review.md +86 -0
- package/dist/skills/research-paper-writing/references/related-work.md +41 -0
- package/dist/skills/research-pipeline/SKILL.md +257 -0
- package/dist/skills/research-proposal/SKILL.md +573 -0
- package/dist/skills/research-proposal/assets/proposal_scaffold_en.md +323 -0
- package/dist/skills/research-proposal/assets/proposal_scaffold_zh.md +346 -0
- package/dist/skills/research-proposal/references/DOMAIN_TEMPLATES.md +518 -0
- package/dist/skills/research-proposal/references/LITERATURE_WORKFLOW.md +529 -0
- package/dist/skills/research-proposal/references/QUALITY_CHECKLIST.md +325 -0
- package/dist/skills/research-proposal/references/STRUCTURE_GUIDE.md +398 -0
- package/dist/skills/research-proposal/references/WRITING_STYLE_GUIDE.md +661 -0
- package/dist/skills/research-refine/SKILL.md +716 -0
- package/dist/skills/research-refine-pipeline/SKILL.md +186 -0
- package/dist/skills/research-review/SKILL.md +119 -0
- package/dist/skills/research-wiki/SKILL.md +373 -0
- package/dist/skills/resubmit-pipeline/SKILL.md +427 -0
- package/dist/skills/result-to-claim/SKILL.md +190 -0
- package/dist/skills/run-experiment/SKILL.md +227 -0
- package/dist/skills/scientific-figure-making/SKILL.md +38 -0
- package/dist/skills/scientific-figure-making/references/api.md +152 -0
- package/dist/skills/scientific-figure-making/references/common-patterns.md +74 -0
- package/dist/skills/scientific-figure-making/references/demos.md +30 -0
- package/dist/skills/scientific-figure-making/references/design-theory.md +138 -0
- package/dist/skills/scientific-figure-making/references/tutorials.md +135 -0
- package/dist/skills/semantic-scholar/SKILL.md +219 -0
- package/dist/skills/serverless-modal/SKILL.md +324 -0
- package/dist/skills/slides-polish/SKILL.md +563 -0
- package/dist/skills/specification-writing/SKILL.md +211 -0
- package/dist/skills/strategist/SKILL.md +670 -0
- package/dist/skills/strategist/references/quality_standards.md +336 -0
- package/dist/skills/strategist/references/search_strategy.md +459 -0
- package/dist/skills/strategist/scripts/evaluate_samples.py +300 -0
- package/dist/skills/strategist/scripts/gap_analysis.py +399 -0
- package/dist/skills/system-profile/SKILL.md +103 -0
- package/dist/skills/tech-paper-template/SKILL.md +192 -0
- package/dist/skills/tech-paper-template/references/consistency-checks.md +166 -0
- package/dist/skills/tech-paper-template/references/paper-types.md +127 -0
- package/dist/skills/tech-paper-template/references/thinking-template.md +194 -0
- package/dist/skills/tech-paper-template/references/worked-examples.md +124 -0
- package/dist/skills/training-check/SKILL.md +83 -0
- package/dist/skills/vast-gpu/SKILL.md +380 -0
- package/dist/skills/vibe-research-workflow/SKILL.md +189 -0
- package/dist/skills/vibe-research-workflow/references/behavior-guidelines.md +149 -0
- package/dist/skills/vibe-research-workflow/references/tool-selection.md +144 -0
- package/dist/skills/vibe-research-workflow/references/vibe-coding.md +154 -0
- package/dist/skills/vibe-research-workflow/references/vibe-figure.md +131 -0
- package/dist/skills/vibe-research-workflow/references/vibe-writing.md +181 -0
- package/dist/skills/wiki-enrich/SKILL.md +254 -0
- package/dist/skills/writing-systems-papers/SKILL.md +184 -0
- package/package.json +1 -1
|
@@ -0,0 +1,913 @@
|
|
|
1
|
+
{
|
|
2
|
+
"plan": "docs/plans/2026-06-15-omp-tool-status-events-phased-plan.md",
|
|
3
|
+
"status": {
|
|
4
|
+
"overall": "completed",
|
|
5
|
+
"phase": "phase-5",
|
|
6
|
+
"task": "5.3",
|
|
7
|
+
"next_allowed_action": "All tasks complete; stop and report final status"
|
|
8
|
+
},
|
|
9
|
+
"execution_rules": {
|
|
10
|
+
"branch": "codex/feat-omp-tool-status-events",
|
|
11
|
+
"smoke_check": "npm run typecheck",
|
|
12
|
+
"commit_each_verified_task": true,
|
|
13
|
+
"no_commit_on_failed_verification": true,
|
|
14
|
+
"never_push_merge_or_amend": true,
|
|
15
|
+
"advance_after_verified_phase": true,
|
|
16
|
+
"no_user_confirmation_between_phases": true,
|
|
17
|
+
"only_flip_status_fields": true
|
|
18
|
+
},
|
|
19
|
+
"decision_log": [
|
|
20
|
+
{
|
|
21
|
+
"decision": "Use L-level phased plan",
|
|
22
|
+
"reason": "The work spans project dependency migration, backend event protocol, frontend state model, UI components, browser QA, and docs.",
|
|
23
|
+
"source": "spec-to-goal-plan sizing step",
|
|
24
|
+
"status": "recorded"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"decision": "Upgrade project-internal pi-agent dependency instead of only wrapping old start/end events",
|
|
28
|
+
"reason": "The user explicitly requested alignment with newer omp event behavior and rejected MVP thinking.",
|
|
29
|
+
"source": "docs/spark/2026-06-15-omp-tool-status-events-design.md",
|
|
30
|
+
"status": "recorded"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"decision": "Place the live tool runway inside the current assistant reply before body text",
|
|
34
|
+
"reason": "The user selected visual direction A.",
|
|
35
|
+
"source": "visual companion discussion",
|
|
36
|
+
"status": "recorded"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"decision": "Run an isolated Node probe before formal pi-agent dependency migration",
|
|
40
|
+
"reason": "The target @oh-my-pi package may be Bun-oriented or a deeper runtime migration rather than a direct dependency bump.",
|
|
41
|
+
"source": "plan-eng-review D2",
|
|
42
|
+
"status": "recorded"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"decision": "Use a schema-versioned shared Tool Status contract with backend/frontend fixture reuse",
|
|
46
|
+
"reason": "The backend and frontend must not silently drift on streamed event fields.",
|
|
47
|
+
"source": "plan-eng-review D3",
|
|
48
|
+
"status": "recorded"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"decision": "Treat stop, disconnect, and abort as first-class cancellation paths",
|
|
52
|
+
"reason": "The UI must not show a fake running state after the user stops a response, and the backend must clean up current work.",
|
|
53
|
+
"source": "plan-eng-review D4",
|
|
54
|
+
"status": "recorded"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"decision": "Coalesce rapid tool updates and cap long history summaries",
|
|
58
|
+
"reason": "OMP-like quality requires smooth rendering during long tool runs, not just raw event display.",
|
|
59
|
+
"source": "plan-eng-review D5",
|
|
60
|
+
"status": "recorded"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"decision": "Add request ownership, ordered writing, prompt concurrency guard, backend redaction, best-effort legacy history, and deterministic fake event QA",
|
|
64
|
+
"reason": "Codex outside voice identified these as the main ways the dynamic runway could look right but behave unreliably.",
|
|
65
|
+
"source": "plan-eng-review D6 / codex outside voice",
|
|
66
|
+
"status": "recorded"
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"decision": "Use @earendil-works/pi-coding-agent, @earendil-works/pi-agent-core, and @earendil-works/pi-ai 0.79.4 as the project migration target; do not directly migrate the workbench backend to @oh-my-pi/pi-coding-agent 15.13.3 in phase 1.2",
|
|
70
|
+
"reason": "The current project already uses the @earendil-works package family at 0.75.5, npm latest is 0.79.4 with Node-compatible dist exports and tool_execution_update support, while the isolated @oh-my-pi 15.13.3 probe failed under Node 22 because its package exports TypeScript source and imports the Bun-only package 'bun'. Global omp 15.5.2 remains only a reference sample.",
|
|
71
|
+
"source": "phase-1 task 1.1 npm metadata and isolated Node probes",
|
|
72
|
+
"status": "recorded"
|
|
73
|
+
}
|
|
74
|
+
],
|
|
75
|
+
"phases": [
|
|
76
|
+
{
|
|
77
|
+
"id": "phase-1",
|
|
78
|
+
"goal": "Migrate and verify project-internal pi-agent dependency capability",
|
|
79
|
+
"status": "completed",
|
|
80
|
+
"acceptance": [
|
|
81
|
+
{
|
|
82
|
+
"check": "Project dependency target and package-name decision recorded in decision_log",
|
|
83
|
+
"status": "passed",
|
|
84
|
+
"evidence": [
|
|
85
|
+
"npm view @earendil-works/pi-coding-agent @0.79.4 metadata: latest=0.79.4, exports import ./dist/index.js, depends on @earendil-works/pi-agent-core ^0.79.4 and @earendil-works/pi-ai ^0.79.4.",
|
|
86
|
+
"npm view @oh-my-pi/pi-coding-agent @15.13.3 metadata: latest=15.13.3, exports import ./src/index.ts; global omp is 15.5.2 and installed from @oh-my-pi/pi-coding-agent.",
|
|
87
|
+
"Decision recorded in decision_log: target @earendil-works package family 0.79.4; @oh-my-pi 15.13.3 direct migration rejected for Node backend phase 1.2."
|
|
88
|
+
]
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"check": "Isolated Node probe proves the target pi-agent SDK can be imported, can create a minimal session, and exposes usable tool start/update/end event fields before project dependency migration begins",
|
|
92
|
+
"status": "passed",
|
|
93
|
+
"evidence": [
|
|
94
|
+
"Temporary directory /tmp/llm-wiki-earendil-probe-EIwMnx installed @earendil-works/pi-coding-agent@0.79.4, @earendil-works/pi-agent-core@0.79.4, and @earendil-works/pi-ai@0.79.4 without modifying project package files.",
|
|
95
|
+
"Node v22.22.3 import probe succeeded for @earendil-works/pi-coding-agent and listed SessionManager, createAgentSession, DefaultResourceLoader, AuthStorage, ModelRegistry, ExtensionAPI-related exports, and AgentSession.",
|
|
96
|
+
"Minimal createAgentSession probe succeeded with active custom tool probe_tool and emitted tool_execution_start, tool_execution_update, and tool_execution_end for toolCallId probe-call-1.",
|
|
97
|
+
"Observed usable fields: toolName=probe_tool, args.target=fixture.txt, args.intent=inspect, partialResult.details.phase=mid, result.details.status=ok."
|
|
98
|
+
]
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"check": "Dependency reconnaissance treats the target package as a possible runtime migration and verifies SessionManager, auth/model config, ResourceLoader, extensions, message types, artifacts, and abort support",
|
|
102
|
+
"status": "passed",
|
|
103
|
+
"evidence": [
|
|
104
|
+
"SessionManager support verified from @earendil-works/pi-coding-agent 0.79.4 exports and existing project usage: create, open, continueRecent, inMemory, and list remain present.",
|
|
105
|
+
"Auth/model config support verified from 0.79.4 exports: AuthStorage, ModelRegistry, SettingsManager, and @earendil-works/pi-ai model registry helpers are importable.",
|
|
106
|
+
"ResourceLoader and extensions support verified from 0.79.4 exports: DefaultResourceLoader, createExtensionRuntime, ExtensionAPI types, customTools, and extension examples remain available.",
|
|
107
|
+
"Message types and artifact-relevant history support verified from @earendil-works/pi-agent-core 0.79.4 exports/docs: AgentMessage, toolResult messages, tool_execution_start/update/end, and structured AgentToolResult.details are present.",
|
|
108
|
+
"Abort support verified in probe: createAgentSession returned session.abort as a function; low-level Agent probe returned agent.abort as a function."
|
|
109
|
+
]
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"check": "Isolated probe runs in a temporary directory with recorded command, package version, Node version, and reproducible evidence without modifying project package files or node_modules",
|
|
113
|
+
"status": "passed",
|
|
114
|
+
"evidence": [
|
|
115
|
+
"Command pattern: tmpdir=$(mktemp -d /tmp/llm-wiki-earendil-probe-XXXXXX); npm init -y; npm install @earendil-works/pi-coding-agent@0.79.4 @earendil-works/pi-agent-core@0.79.4 @earendil-works/pi-ai@0.79.4; node --input-type=module <probe script>.",
|
|
116
|
+
"Recorded versions: Node v22.22.3; npm 10.9.8; @earendil-works/pi-coding-agent 0.79.4; @earendil-works/pi-agent-core 0.79.4; @earendil-works/pi-ai 0.79.4.",
|
|
117
|
+
"Negative control: /tmp/llm-wiki-pi-probe-NO7eLR with @oh-my-pi/pi-coding-agent@15.13.3 failed under Node 22: direct Node import cannot strip TypeScript in node_modules; tsx import then failed to resolve package 'bun'.",
|
|
118
|
+
"Project package.json, package-lock.json, and node_modules were not modified during 1.1; git status before ledger update showed only untracked .superpowers/."
|
|
119
|
+
]
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"check": "npm install exits 0 after dependency migration",
|
|
123
|
+
"status": "passed",
|
|
124
|
+
"evidence": [
|
|
125
|
+
"npm install --workspace=@llm-wiki-agent/server @earendil-works/pi-agent-core@^0.79.4 @earendil-works/pi-coding-agent@^0.79.4 @earendil-works/pi-ai@^0.79.4 exited 0.",
|
|
126
|
+
"npm output: added 1 package, removed 1 package, and changed 24 packages."
|
|
127
|
+
]
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
"check": "npm run typecheck --workspace=@llm-wiki-agent/server exits 0",
|
|
131
|
+
"status": "passed",
|
|
132
|
+
"evidence": [
|
|
133
|
+
"npm run typecheck --workspace=@llm-wiki-agent/server exited 0 after dependency migration."
|
|
134
|
+
]
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"check": "npm run typecheck exits 0",
|
|
138
|
+
"status": "passed",
|
|
139
|
+
"evidence": [
|
|
140
|
+
"npm run typecheck exited 0 after dependency migration; server, web, and graph-engine typechecks completed."
|
|
141
|
+
]
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
"check": "Browser loads http://localhost:5180/ and a basic prompt receives an assistant reply",
|
|
145
|
+
"status": "passed",
|
|
146
|
+
"evidence": [
|
|
147
|
+
"Baseline before smoke: git log --oneline -15 exited 0 and npm run typecheck exited 0.",
|
|
148
|
+
"Cleared stale current-repo dev listeners on ports 5180 and 8787 before the final run; both ports were empty before starting.",
|
|
149
|
+
"npm run dev started the web and server workspaces; Vite reported Local http://localhost:5180/ and the backend reported listening on http://127.0.0.1:8787.",
|
|
150
|
+
"Readiness checks passed: curl http://localhost:8787/api/health returned status ok, and curl -I http://localhost:5180/ returned HTTP 200.",
|
|
151
|
+
"Browser smoke used system Google Chrome through temporary Playwright install outside the repo; http://localhost:5180/ loaded, pi-agent knowledge base was selected, deepseek/deepseek-v4-flash model was visible, and the chat input/send controls were usable.",
|
|
152
|
+
"Browser smoke sent a normal prompt and observed a new non-empty assistant reply.",
|
|
153
|
+
"Browser smoke sent a retrieval-triggering prompt and observed knowledge retrieval UI text matching 已检索到 or 当前知识库未找到相关页面; captured screenshot at /tmp/llm-wiki-omp-phase-1-3-smoke.png.",
|
|
154
|
+
"Backend dev log during the final smoke showed normal startup and no backend error output.",
|
|
155
|
+
"Stopped npm run dev with Ctrl-C and confirmed no listeners remained on ports 5180 or 8787.",
|
|
156
|
+
"npm run typecheck exited 0 after the smoke run."
|
|
157
|
+
]
|
|
158
|
+
}
|
|
159
|
+
],
|
|
160
|
+
"tasks": [
|
|
161
|
+
{
|
|
162
|
+
"id": "1.1",
|
|
163
|
+
"title": "Dependency/API reconnaissance and isolated Node probe",
|
|
164
|
+
"status": "completed",
|
|
165
|
+
"verification": [
|
|
166
|
+
"git log --oneline -15 exited 0 before work; head was 63ce4a0 docs: harden omp tool status implementation plan.",
|
|
167
|
+
"npm run typecheck exited 0 before work in the original project state.",
|
|
168
|
+
"Isolated @oh-my-pi/pi-coding-agent@15.13.3 probe failed under Node 22, preventing direct @oh-my-pi target selection for 1.2.",
|
|
169
|
+
"Isolated @earendil-works/pi-coding-agent@0.79.4 probe exited 0 and emitted tool_execution_start/update/end from a minimal createAgentSession run."
|
|
170
|
+
],
|
|
171
|
+
"commit": "a8de04545583665470c8e653e11fbf4652e8a8fb"
|
|
172
|
+
},
|
|
173
|
+
{
|
|
174
|
+
"id": "1.2",
|
|
175
|
+
"title": "Migrate project dependency and imports",
|
|
176
|
+
"status": "completed",
|
|
177
|
+
"verification": [
|
|
178
|
+
"Baseline before work: git log --oneline -15 exited 0 and npm run typecheck exited 0.",
|
|
179
|
+
"Updated @llm-wiki-agent/server dependencies to @earendil-works/pi-agent-core ^0.79.4, @earendil-works/pi-coding-agent ^0.79.4, and direct @earendil-works/pi-ai ^0.79.4.",
|
|
180
|
+
"npm install --workspace=@llm-wiki-agent/server @earendil-works/pi-agent-core@^0.79.4 @earendil-works/pi-coding-agent@^0.79.4 @earendil-works/pi-ai@^0.79.4 exited 0.",
|
|
181
|
+
"npm run typecheck --workspace=@llm-wiki-agent/server exited 0.",
|
|
182
|
+
"npm run typecheck exited 0.",
|
|
183
|
+
"npm ls --workspace=@llm-wiki-agent/server @earendil-works/pi-agent-core @earendil-works/pi-coding-agent @earendil-works/pi-ai showed all three packages at 0.79.4.",
|
|
184
|
+
"git diff --check exited 0.",
|
|
185
|
+
"No user-global omp or global pi-agent files were modified; git diff is limited to package-lock.json, workbench/server/package.json, and this progress ledger."
|
|
186
|
+
],
|
|
187
|
+
"commit": "babf3309b98845d31244a5b306daa2a8deb351d8"
|
|
188
|
+
},
|
|
189
|
+
{
|
|
190
|
+
"id": "1.3",
|
|
191
|
+
"title": "Backend and browser smoke verification",
|
|
192
|
+
"status": "completed",
|
|
193
|
+
"verification": [
|
|
194
|
+
"Read progress file and plan; current unit was phase-1 task 1.3.",
|
|
195
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
196
|
+
"Started npm run dev after clearing stale listeners; frontend readiness on port 5180 and backend readiness on port 8787 both passed.",
|
|
197
|
+
"Selected the pi-agent knowledge base and verified active model deepseek/deepseek-v4-flash and chat controls in a real browser.",
|
|
198
|
+
"Sent one ordinary prompt in the browser and observed a new non-empty assistant reply.",
|
|
199
|
+
"Sent one retrieval-triggering prompt in the browser and observed retrieval status text without backend error output.",
|
|
200
|
+
"Stopped the dev server and confirmed ports 5180 and 8787 had no listeners.",
|
|
201
|
+
"Ran npm run typecheck after smoke verification; it exited 0."
|
|
202
|
+
],
|
|
203
|
+
"commit": "ca84cbcf7c66ec83e58e3f4acb87b39997858d56"
|
|
204
|
+
}
|
|
205
|
+
]
|
|
206
|
+
},
|
|
207
|
+
{
|
|
208
|
+
"id": "phase-2",
|
|
209
|
+
"goal": "Expose stable backend tool status events",
|
|
210
|
+
"status": "completed",
|
|
211
|
+
"acceptance": [
|
|
212
|
+
{
|
|
213
|
+
"check": "Stable tool status adapter covers start, update, end, failure, missing args, and common tool formatting",
|
|
214
|
+
"status": "passed",
|
|
215
|
+
"evidence": [
|
|
216
|
+
"Added workbench/server/src/tool-status-events.ts with ToolStatusEventAdapter and v1 contract event types: assistant_text_delta, tool_status_start, tool_status_update, tool_status_end, tool_status_summary, assistant_done, and assistant_error.",
|
|
217
|
+
"Adapter tests cover tool_execution_start, tool_execution_update, tool_execution_end success, failed tool ending, undefined args normalized to {}, read/write/bash/search/skill formatting, and unknown targets.",
|
|
218
|
+
"Adapter tracks parallel tool calls by toolCallId; ending tool B leaves tool A running and reports remaining runningToolCount.",
|
|
219
|
+
"Adapter provides cancelActiveTools for active tools and emits cancelled endings without leaking raw paths."
|
|
220
|
+
]
|
|
221
|
+
},
|
|
222
|
+
{
|
|
223
|
+
"check": "Backend and frontend tests share contract event fixtures so SSE event fields cannot drift silently",
|
|
224
|
+
"status": "passed",
|
|
225
|
+
"evidence": [
|
|
226
|
+
"workbench/server/src/tool-status-events.ts exports buildToolStatusContractFixture as the shared backend contract sample for later frontend parser and history-summary tests.",
|
|
227
|
+
"workbench/server/src/tool-status-events.test.ts snapshots the fixture shape so backend field changes fail before frontend parser work proceeds."
|
|
228
|
+
]
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
"check": "Client abort or explicit stop calls the session abort path where supported and emits cancelled tool status endings for active tools",
|
|
232
|
+
"status": "passed",
|
|
233
|
+
"evidence": [
|
|
234
|
+
"/api/prompt now registers stream.onAbort, calls session.abort when the response has not finished, clears pending knowledge context, closes the ordered writer, and releases the prompt run registry.",
|
|
235
|
+
"ToolStatusEventAdapter.cancelAssistant emits cancelled tool_status_end events for active tools plus assistant_cancelled when the client is still writable; tool-status-events.test.ts covers active-tool cancellation and redaction."
|
|
236
|
+
]
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
"check": "Stable event contract is schemaVersioned and every prompt event includes runId, messageId, and monotonic seq",
|
|
240
|
+
"status": "passed",
|
|
241
|
+
"evidence": [
|
|
242
|
+
"/api/prompt now creates one ToolStatusEventAdapter per prompt run and emits assistant_text_delta, tool_status_start/update/end/summary, assistant_done, assistant_cancelled, and assistant_error as schemaVersion 1 events with runId, messageId, and seq.",
|
|
243
|
+
"API smoke against http://localhost:8787/api/prompt observed schemaVersions [1], one runId, one messageId, and monotonic seq across knowledge_search tool events, text deltas, summary, and assistant_done."
|
|
244
|
+
]
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
"check": "/api/prompt uses a single ordered writer and same-session concurrent prompts are rejected or queued without mixed events",
|
|
248
|
+
"status": "passed",
|
|
249
|
+
"evidence": [
|
|
250
|
+
"/api/prompt now writes agent events, knowledge-search tool events, artifact_created, assistant_done, assistant_error, and assistant_cancelled through OrderedSseWriter.",
|
|
251
|
+
"PromptRunRegistry rejects a second prompt for the same active conversation while one run owns it; tool-status-events.test.ts covers owner release and wrong-owner end safety.",
|
|
252
|
+
"ordered SSE writer test proves mixed async writes preserve call order."
|
|
253
|
+
]
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
"check": "Backend redacts private local paths and long sensitive command targets before emitting tool status events or persisted summaries",
|
|
257
|
+
"status": "passed",
|
|
258
|
+
"evidence": [
|
|
259
|
+
"Tool status adapter sanitizes args, partial results, results, summaries, errors, path targets, and command targets before event output.",
|
|
260
|
+
"API smoke for /api/prompt selected /Users/kangjiaqi/llm-wiki/pi-agent but observed no /Users/kangjiaqi leakage in the SSE payload; emitted path target was ~/llm-wiki/pi-agent.",
|
|
261
|
+
"tool-status-events.test.ts covers home absolute path redaction and long command truncation."
|
|
262
|
+
]
|
|
263
|
+
},
|
|
264
|
+
{
|
|
265
|
+
"check": "node --import tsx --test workbench/server/src/tool-status-events.test.ts exits 0",
|
|
266
|
+
"status": "passed",
|
|
267
|
+
"evidence": [
|
|
268
|
+
"node --import tsx --test workbench/server/src/tool-status-events.test.ts exited 0 with 10 passing subtests after 2.2 and 2.3."
|
|
269
|
+
]
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
"check": "npm run typecheck --workspace=@llm-wiki-agent/server exits 0",
|
|
273
|
+
"status": "passed",
|
|
274
|
+
"evidence": [
|
|
275
|
+
"npm run typecheck --workspace=@llm-wiki-agent/server exited 0 after adding the adapter and tests."
|
|
276
|
+
]
|
|
277
|
+
},
|
|
278
|
+
{
|
|
279
|
+
"check": "npm run typecheck exits 0",
|
|
280
|
+
"status": "passed",
|
|
281
|
+
"evidence": [
|
|
282
|
+
"npm run typecheck exited 0 after adding the adapter and tests."
|
|
283
|
+
]
|
|
284
|
+
}
|
|
285
|
+
],
|
|
286
|
+
"tasks": [
|
|
287
|
+
{
|
|
288
|
+
"id": "2.1",
|
|
289
|
+
"title": "Build Tool Status event adapter",
|
|
290
|
+
"status": "completed",
|
|
291
|
+
"verification": [
|
|
292
|
+
"Read progress file and plan; current unit was phase-2 task 2.1.",
|
|
293
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
294
|
+
"Added backend ToolStatusEventAdapter with schemaVersion 1 contract events, runId/messageId/seq fields, text delta, tool start/update/end/summary/done/error support, and active-tool cancellation support.",
|
|
295
|
+
"Added path and command redaction before events are emitted, including home directory replacement and long target truncation.",
|
|
296
|
+
"Added user-readable tool action/target formatting for read, write/edit, bash/shell/command, search/grep/find, and skill tools.",
|
|
297
|
+
"Added shared contract fixture builder for later frontend parser and history-summary tests.",
|
|
298
|
+
"Verified node --import tsx --test workbench/server/src/tool-status-events.test.ts exited 0 with 7 passing subtests.",
|
|
299
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/server exited 0.",
|
|
300
|
+
"Verified npm run typecheck exited 0.",
|
|
301
|
+
"Verified git diff --check exited 0."
|
|
302
|
+
],
|
|
303
|
+
"commit": "391ddc204253a399c97772a93058a692cc30d0f9"
|
|
304
|
+
},
|
|
305
|
+
{
|
|
306
|
+
"id": "2.2",
|
|
307
|
+
"title": "Connect /api/prompt SSE to stable tool status events",
|
|
308
|
+
"status": "completed",
|
|
309
|
+
"verification": [
|
|
310
|
+
"Read progress file and plan; current unit was phase-2 task 2.2.",
|
|
311
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
312
|
+
"Updated /api/prompt to use one OrderedSseWriter and one ToolStatusEventAdapter per prompt run.",
|
|
313
|
+
"Replaced old text_delta, tool_start, tool_end, knowledge_search_start/done/empty/error, done, and error SSE output with stable schemaVersion 1 contract events while preserving artifact_created.",
|
|
314
|
+
"Added PromptRunRegistry to reject concurrent prompts for the same active conversation instead of mixing events.",
|
|
315
|
+
"Added stream.onAbort handling that calls session.abort when supported, clears pending knowledge context, closes the writer, and releases the run owner.",
|
|
316
|
+
"Added adapter helpers and tests for manual knowledge_search lifecycle, ordered SSE writes, prompt run ownership, and assistant_cancelled/cancelled active tools.",
|
|
317
|
+
"Verified node --import tsx --test workbench/server/src/tool-status-events.test.ts exited 0 with 10 passing subtests.",
|
|
318
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/server exited 0.",
|
|
319
|
+
"Verified npm run typecheck exited 0.",
|
|
320
|
+
"Verified API smoke against /api/prompt emitted tool_status_start/update/end for knowledge_search, assistant_text_delta, tool_status_summary, assistant_done, schemaVersion 1, stable runId/messageId, monotonic seq, and no /Users/kangjiaqi path leakage.",
|
|
321
|
+
"Stopped npm run dev and confirmed ports 5180 and 8787 had no listeners.",
|
|
322
|
+
"Verified git diff --check exited 0."
|
|
323
|
+
],
|
|
324
|
+
"commit": "141f4ea1489e663b8ea923200da05da6d94a157a"
|
|
325
|
+
},
|
|
326
|
+
{
|
|
327
|
+
"id": "2.3",
|
|
328
|
+
"title": "Preserve history display through generated summaries",
|
|
329
|
+
"status": "completed",
|
|
330
|
+
"verification": [
|
|
331
|
+
"Read progress file and plan; current unit was phase-2 task 2.3.",
|
|
332
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
333
|
+
"Updated piMessagesToUIMessages to generate completed history tool summaries from assistant toolCall blocks and matching toolResult messages.",
|
|
334
|
+
"Historical summaries are regenerated from pi session messages on every load, so new-session summaries persist after refresh without adding a new stored field.",
|
|
335
|
+
"Old incomplete tool calls with missing ids, args, targets, results, or errors fall back to best-effort labels such as 历史工具调用:bash and do not invent unavailable details.",
|
|
336
|
+
"Assistant messages without tool calls continue to return an empty tools array.",
|
|
337
|
+
"Added conversations.test.ts covering tool-call result summaries, incomplete old tool calls, no-tool messages, and missing-detail failures.",
|
|
338
|
+
"Verified node --import tsx --test workbench/server/src/conversations.test.ts exited 0 with 4 passing subtests.",
|
|
339
|
+
"Verified node --import tsx --test workbench/server/src/tool-status-events.test.ts workbench/server/src/retrieval.test.ts exited 0 with 19 passing subtests.",
|
|
340
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/server exited 0.",
|
|
341
|
+
"Verified npm run typecheck exited 0.",
|
|
342
|
+
"Verified git diff --check exited 0."
|
|
343
|
+
],
|
|
344
|
+
"commit": "d2c686f0fbc047d77a637cf675bbe8e718ac076a"
|
|
345
|
+
}
|
|
346
|
+
]
|
|
347
|
+
},
|
|
348
|
+
{
|
|
349
|
+
"id": "phase-3",
|
|
350
|
+
"goal": "Create frontend tool status model and stream integration",
|
|
351
|
+
"status": "completed",
|
|
352
|
+
"acceptance": [
|
|
353
|
+
{
|
|
354
|
+
"check": "Tool status reducer tests cover switching, missing args, failed/cancelled tools, parallel tools, and truncation",
|
|
355
|
+
"status": "passed",
|
|
356
|
+
"evidence": [
|
|
357
|
+
"Added workbench/web/test/tool-status-model.test.ts covering sequential tool switching, missing args normalized to {}, failed tool endings, cancelled tool endings, parallel tool starts/ends, and completed-history truncation.",
|
|
358
|
+
"Added workbench/web/src/lib/tool-status-model.ts to track active tools, completed tools, failures, capped summaries, and overflow labels."
|
|
359
|
+
]
|
|
360
|
+
},
|
|
361
|
+
{
|
|
362
|
+
"check": "Reducer keys events by runId/messageId and ignores late, duplicate, or unknown-run events",
|
|
363
|
+
"status": "passed",
|
|
364
|
+
"evidence": [
|
|
365
|
+
"Reducer state is initialized with runId and messageId and rejects foreign-run, foreign-message, duplicate, and late seq events.",
|
|
366
|
+
"tool-status-model.test.ts asserts rejected foreign and late events do not add active or completed tools to the current assistant message."
|
|
367
|
+
]
|
|
368
|
+
},
|
|
369
|
+
{
|
|
370
|
+
"check": "Rapid tool update events are coalesced or throttled, and long tool histories are capped with a remaining-count summary",
|
|
371
|
+
"status": "passed",
|
|
372
|
+
"evidence": [
|
|
373
|
+
"Tool status model queues rapid tool_status_update events and flushes the latest visible update on a configurable cadence; the default cadence is 100ms.",
|
|
374
|
+
"tool-status-model.test.ts verifies three rapid updates are coalesced until a 120ms flush and that completed history and summary overflow labels show '还有 N 项'."
|
|
375
|
+
]
|
|
376
|
+
},
|
|
377
|
+
{
|
|
378
|
+
"check": "Streaming UI exposes a stop action and clears or cancels the live runway instead of leaving a stale running state",
|
|
379
|
+
"status": "passed",
|
|
380
|
+
"evidence": [
|
|
381
|
+
"ChatPanel now switches the streaming send button to a stop action that calls the active AbortController.",
|
|
382
|
+
"stopStreaming immediately applies cancelActiveToolStatus to the current assistant message, clearing active tools into cancelled completed items without waiting for backend abort confirmation.",
|
|
383
|
+
"ChatPanel now consumes assistant_text_delta, tool_status_start/update/end/summary, assistant_done, assistant_cancelled, and assistant_error contract events into the ToolStatusState model instead of appending old live tool_start/tool_end rows.",
|
|
384
|
+
"Headless Chrome rendered http://localhost:5180/ and produced /tmp/llm-wiki-omp-phase-3-3.png; DOM contained chat-screen, chat-textarea, and send controls, and dev server ports were clean after shutdown."
|
|
385
|
+
]
|
|
386
|
+
},
|
|
387
|
+
{
|
|
388
|
+
"check": "npm run test --workspace=@llm-wiki-agent/web exits 0",
|
|
389
|
+
"status": "passed",
|
|
390
|
+
"evidence": [
|
|
391
|
+
"npm run test --workspace=@llm-wiki-agent/web exited 0 with 16 tests, 8 suites, 0 failures.",
|
|
392
|
+
"After adding tool-status-format.test.ts, npm run test --workspace=@llm-wiki-agent/web exited 0 with 21 tests, 9 suites, 0 failures.",
|
|
393
|
+
"After ChatPanel stream integration and local cancellation test, npm run test --workspace=@llm-wiki-agent/web exited 0 with 22 tests, 9 suites, 0 failures."
|
|
394
|
+
]
|
|
395
|
+
},
|
|
396
|
+
{
|
|
397
|
+
"check": "npm run typecheck --workspace=@llm-wiki-agent/web exits 0",
|
|
398
|
+
"status": "passed",
|
|
399
|
+
"evidence": [
|
|
400
|
+
"npm run typecheck --workspace=@llm-wiki-agent/web exited 0 after rebuilding @llm-wiki/graph-engine.",
|
|
401
|
+
"npm run typecheck --workspace=@llm-wiki-agent/web exited 0 after ChatPanel stream integration."
|
|
402
|
+
]
|
|
403
|
+
},
|
|
404
|
+
{
|
|
405
|
+
"check": "npm run typecheck exits 0",
|
|
406
|
+
"status": "passed",
|
|
407
|
+
"evidence": [
|
|
408
|
+
"npm run typecheck exited 0 when rerun sequentially after web test and web typecheck verification.",
|
|
409
|
+
"npm run typecheck exited 0 after ChatPanel stream integration."
|
|
410
|
+
]
|
|
411
|
+
}
|
|
412
|
+
],
|
|
413
|
+
"tasks": [
|
|
414
|
+
{
|
|
415
|
+
"id": "3.1",
|
|
416
|
+
"title": "Define frontend Tool Status types and reducer",
|
|
417
|
+
"status": "completed",
|
|
418
|
+
"verification": [
|
|
419
|
+
"Read progress file and plan; current unit was phase-3 task 3.1.",
|
|
420
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
421
|
+
"Added frontend Tool Status contract event types in workbench/web/src/lib/api.ts.",
|
|
422
|
+
"Added workbench/web/src/lib/tool-status-model.ts with run/message ownership checks, seq de-duplication, active/completed/failure/summary state, 100ms update coalescing, and capped completed/summary histories.",
|
|
423
|
+
"Added workbench/web/test/tool-status-model.test.ts reusing the backend buildToolStatusContractFixture and covering switching, missing args, failure, cancellation, parallel tools, ownership, duplicate/late events, coalescing, and truncation.",
|
|
424
|
+
"Watched npm run test --workspace=@llm-wiki-agent/web -- tool-status-model.test.ts fail before implementation because tool-status-model did not exist.",
|
|
425
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web -- tool-status-model.test.ts exited 0 after implementation.",
|
|
426
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web exited 0.",
|
|
427
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/web exited 0.",
|
|
428
|
+
"Verified npm run typecheck exited 0 when rerun sequentially.",
|
|
429
|
+
"Verified git diff --check exited 0."
|
|
430
|
+
],
|
|
431
|
+
"commit": "5fea9c2e0d79614d8e84bde8632c30f68b6dd0b5"
|
|
432
|
+
},
|
|
433
|
+
{
|
|
434
|
+
"id": "3.2",
|
|
435
|
+
"title": "Format user-readable tool actions and targets",
|
|
436
|
+
"status": "completed",
|
|
437
|
+
"verification": [
|
|
438
|
+
"Read progress file and plan; current unit was phase-3 task 3.2.",
|
|
439
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
440
|
+
"Added workbench/web/src/lib/tool-status-format.ts with stable action labels, target shortening, grouping, private home path redaction, and empty-target fallbacks for read/write/bash/search/skill/unknown tools.",
|
|
441
|
+
"Added workbench/web/test/tool-status-format.test.ts covering long paths, long commands, empty args, unknown tools, private absolute home path redaction, stable groups, and middle truncation.",
|
|
442
|
+
"Watched npm run test --workspace=@llm-wiki-agent/web -- tool-status-format.test.ts fail before implementation because tool-status-format did not exist.",
|
|
443
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web -- tool-status-format.test.ts exited 0 after implementation.",
|
|
444
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web exited 0.",
|
|
445
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/web exited 0.",
|
|
446
|
+
"Verified npm run typecheck exited 0.",
|
|
447
|
+
"Verified git diff --check exited 0."
|
|
448
|
+
],
|
|
449
|
+
"commit": "342ccb5799b57ce6359ad47050d1682e473c1485"
|
|
450
|
+
},
|
|
451
|
+
{
|
|
452
|
+
"id": "3.3",
|
|
453
|
+
"title": "Reconnect ChatPanel stream handling to Tool Status state",
|
|
454
|
+
"status": "completed",
|
|
455
|
+
"verification": [
|
|
456
|
+
"Read progress file and plan; current unit was phase-3 task 3.3.",
|
|
457
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
458
|
+
"Updated ChatPanel to consume stable assistant_text_delta, tool_status_start/update/end/summary, assistant_done, assistant_cancelled, and assistant_error events into ToolStatusState.",
|
|
459
|
+
"Stopped using old live tool_start/tool_end and knowledge_search_* events for running tool display, so current assistant replies render one active tool line plus a concise summary instead of a long .msg-tool stream.",
|
|
460
|
+
"Added a visible stop action during streaming that calls AbortController.abort and immediately applies local cancelled tool status to the current assistant message.",
|
|
461
|
+
"Added cancelActiveToolStatus and a reducer test proving active tools locally become cancelled completed items without waiting for backend abort confirmation.",
|
|
462
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web -- tool-status-model.test.ts exited 0 after adding the cancellation helper.",
|
|
463
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web exited 0.",
|
|
464
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/web exited 0.",
|
|
465
|
+
"Verified npm run typecheck exited 0.",
|
|
466
|
+
"Verified git diff --check exited 0.",
|
|
467
|
+
"Started npm run dev; curl confirmed backend health and frontend HTTP 200; headless Chrome rendered http://localhost:5180/ to /tmp/llm-wiki-omp-phase-3-3.png; stopped dev server and confirmed ports 5180 and 8787 had no listeners."
|
|
468
|
+
],
|
|
469
|
+
"commit": "531e1e68b809406fbdf21d32e9a6d5907eb18fde"
|
|
470
|
+
}
|
|
471
|
+
]
|
|
472
|
+
},
|
|
473
|
+
{
|
|
474
|
+
"id": "phase-4",
|
|
475
|
+
"goal": "Render OMP-style live runway and folded history summary",
|
|
476
|
+
"status": "completed",
|
|
477
|
+
"acceptance": [
|
|
478
|
+
{
|
|
479
|
+
"check": "ToolStatusRunway has readable running, done, failed, and cancelled states",
|
|
480
|
+
"status": "passed",
|
|
481
|
+
"evidence": [
|
|
482
|
+
"Added workbench/web/src/components/ToolStatusRunway.tsx with running, done, failed, and cancelled state classes and labels.",
|
|
483
|
+
"Added workbench/web/test/tool-status-runway.test.ts rendering running, done, failed, and cancelled states with React server rendering."
|
|
484
|
+
]
|
|
485
|
+
},
|
|
486
|
+
{
|
|
487
|
+
"check": "Visual component respects concrete limits: 3 folded targets, 50 expanded rows, 80-150ms live update cadence, 390px no horizontal scroll, readable reduced-motion mode",
|
|
488
|
+
"status": "passed",
|
|
489
|
+
"evidence": [
|
|
490
|
+
"ToolStatusRunway exports TOOL_RUNWAY_TARGET_LIMIT=3, TOOL_RUNWAY_DETAIL_LIMIT=50, and TOOL_RUNWAY_UPDATE_CADENCE_MS=100; tool-status-runway.test.ts asserts these limits.",
|
|
491
|
+
"ToolStatusRunway CSS uses min-width:0, max-width:100%, overflow:hidden, text-overflow:ellipsis, and nowrap targets/chips to avoid horizontal overflow on narrow layouts.",
|
|
492
|
+
"ToolStatusRunway CSS animates the running pulse and disables that animation under prefers-reduced-motion: reduce while keeping state colors and labels."
|
|
493
|
+
]
|
|
494
|
+
},
|
|
495
|
+
{
|
|
496
|
+
"check": "ToolHistorySummary defaults folded, groups tool types, and expands full detail",
|
|
497
|
+
"status": "passed",
|
|
498
|
+
"evidence": [
|
|
499
|
+
"Added workbench/web/src/components/ToolHistorySummary.tsx with a folded-by-default summary button and explicit expanded detail rendering.",
|
|
500
|
+
"ToolHistorySummary groups completed tools into File, Command, Search, Skill, and Other groups using the shared tool formatter.",
|
|
501
|
+
"ToolHistorySummary limits folded key targets to 3 and expanded detail rows to 50, then shows the remaining count.",
|
|
502
|
+
"workbench/web/test/tool-history-summary.test.tsx covers folded grouping, no folded detail rows, expanded row limiting, remaining count, and the empty-state null render.",
|
|
503
|
+
"npm run test --workspace=@llm-wiki-agent/web exited 0 with ToolHistorySummary coverage included."
|
|
504
|
+
]
|
|
505
|
+
},
|
|
506
|
+
{
|
|
507
|
+
"check": "ChatPanel no longer renders long live .msg-tools streams during complex tasks",
|
|
508
|
+
"status": "passed",
|
|
509
|
+
"evidence": [
|
|
510
|
+
"ChatPanel now renders ToolStatusRunway only for the actively streaming assistant message and ToolHistorySummary for completed or historical assistant messages.",
|
|
511
|
+
"Removed the legacy .msg-tools/.msg-tool rendering branch from ChatPanel and removed the matching CSS rules from workbench/web/src/index.css.",
|
|
512
|
+
"Added createLegacyToolStatusState so historical UIMessage.tools records are converted into folded ToolHistorySummary state instead of the old live list.",
|
|
513
|
+
"Added workbench/web/test/chat-panel-tool-status.test.tsx proving legacy historical tool calls render as tool-history-summary and not msg-tools or tool-runway.",
|
|
514
|
+
"Headless Chrome loaded http://localhost:5180/ at 1440px and 390px; both had appLoaded=true, msgTools=0, msgToolRows=0, and hasHorizontalOverflow=false."
|
|
515
|
+
]
|
|
516
|
+
},
|
|
517
|
+
{
|
|
518
|
+
"check": "npm run typecheck exits 0",
|
|
519
|
+
"status": "passed",
|
|
520
|
+
"evidence": [
|
|
521
|
+
"npm run typecheck exited 0 after ToolStatusRunway implementation.",
|
|
522
|
+
"npm run typecheck exited 0 after ToolHistorySummary implementation.",
|
|
523
|
+
"npm run typecheck exited 0 after ChatPanel old tool list replacement; an earlier parallelized check raced graph-engine declaration generation, then the single command rerun passed."
|
|
524
|
+
]
|
|
525
|
+
}
|
|
526
|
+
],
|
|
527
|
+
"tasks": [
|
|
528
|
+
{
|
|
529
|
+
"id": "4.1",
|
|
530
|
+
"title": "Implement ToolStatusRunway visual component",
|
|
531
|
+
"status": "completed",
|
|
532
|
+
"verification": [
|
|
533
|
+
"Read progress file and plan; current unit was phase-4 task 4.1.",
|
|
534
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
535
|
+
"Added ToolStatusRunway component for running, done, failed, and cancelled tool states with compact target rendering and limited summary chips.",
|
|
536
|
+
"Replaced ChatPanel's temporary tool status preview with ToolStatusRunway for messages that have ToolStatusState.",
|
|
537
|
+
"Added ToolStatusRunway CSS for running pulse, distinct done/failed/cancelled colors, constrained width, ellipsis targets, and reduced-motion behavior.",
|
|
538
|
+
"Added tool-status-runway.test.ts covering running target truncation, done/failed/cancelled classes, target/detail limits, and 100ms update cadence.",
|
|
539
|
+
"Watched npm run test --workspace=@llm-wiki-agent/web -- tool-status-runway.test.ts fail before implementation because ToolStatusRunway did not exist.",
|
|
540
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web -- tool-status-runway.test.ts exited 0 after implementation.",
|
|
541
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web exited 0.",
|
|
542
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/web exited 0.",
|
|
543
|
+
"Verified npm run typecheck exited 0.",
|
|
544
|
+
"Verified git diff --check exited 0."
|
|
545
|
+
],
|
|
546
|
+
"commit": "ee27cc97be839efe0e400f98860d0b6d65d10e67"
|
|
547
|
+
},
|
|
548
|
+
{
|
|
549
|
+
"id": "4.2",
|
|
550
|
+
"title": "Implement ToolHistorySummary folded detail component",
|
|
551
|
+
"status": "completed",
|
|
552
|
+
"verification": [
|
|
553
|
+
"Read progress file and plan; current unit was phase-4 task 4.2.",
|
|
554
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
555
|
+
"Added ToolHistorySummary component with folded summary, grouped tool counts, folded target chips, expandable detail rows, and a hard expanded row limit.",
|
|
556
|
+
"Added CSS for compact folded display, constrained chips, bounded detail rows, and button styling that preserves surrounding message layout.",
|
|
557
|
+
"Updated the web test script to include .tsx tests.",
|
|
558
|
+
"Verified node --import tsx --test workbench/web/test/tool-history-summary.test.tsx exited 0.",
|
|
559
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web exited 0.",
|
|
560
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/web exited 0.",
|
|
561
|
+
"Verified npm run typecheck exited 0.",
|
|
562
|
+
"Verified git diff --check exited 0."
|
|
563
|
+
],
|
|
564
|
+
"commit": "aa44ea99533b4b21f7acc0d9be376e07becf2824"
|
|
565
|
+
},
|
|
566
|
+
{
|
|
567
|
+
"id": "4.3",
|
|
568
|
+
"title": "Replace old tool list rendering in assistant messages",
|
|
569
|
+
"status": "completed",
|
|
570
|
+
"verification": [
|
|
571
|
+
"Read progress file and plan; current unit was phase-4 task 4.3.",
|
|
572
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
573
|
+
"Updated ChatPanel so active streaming assistant messages render ToolStatusRunway, while completed and historical assistant messages render ToolHistorySummary.",
|
|
574
|
+
"Removed the legacy .msg-tools live list branch and deleted its CSS.",
|
|
575
|
+
"Added legacy tool-status conversion for historical UIMessage.tools so old conversation history uses folded summaries instead of live runway or long lists.",
|
|
576
|
+
"Added chat-panel-tool-status.test.tsx proving legacy history renders a folded summary and not msg-tools or tool-runway.",
|
|
577
|
+
"Verified node --import tsx --test workbench/web/test/chat-panel-tool-status.test.tsx exited 0.",
|
|
578
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web exited 0.",
|
|
579
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/web exited 0.",
|
|
580
|
+
"A parallel npm run typecheck attempt failed because graph-engine declaration output was generated concurrently; rerunning npm run typecheck by itself exited 0.",
|
|
581
|
+
"Verified git diff --check exited 0.",
|
|
582
|
+
"Started npm run dev; headless Chrome loaded http://localhost:5180/ at 1440px and 390px with no .msg-tools nodes and no horizontal overflow; stopped dev server and confirmed ports 5180 and 8787 had no listeners."
|
|
583
|
+
],
|
|
584
|
+
"commit": "31396aa543837ed57141b3ffeb53c66715965d7a"
|
|
585
|
+
}
|
|
586
|
+
]
|
|
587
|
+
},
|
|
588
|
+
{
|
|
589
|
+
"id": "phase-5",
|
|
590
|
+
"goal": "Verify end-to-end experience and update documentation",
|
|
591
|
+
"status": "completed",
|
|
592
|
+
"acceptance": [
|
|
593
|
+
{
|
|
594
|
+
"check": "Browser QA at 1440px, 768px, and 390px proves one live tool runway, folded summary, stop/cancel behavior, no overflow, and expandable details",
|
|
595
|
+
"status": "passed",
|
|
596
|
+
"evidence": [
|
|
597
|
+
"Started npm run dev; web loaded at http://localhost:5180/ and backend reported http://127.0.0.1:8787.",
|
|
598
|
+
"Headless Chrome QA opened http://localhost:5180/ at 1440px, 768px, and 390px using a deterministic fake /api/prompt stream injected in the browser.",
|
|
599
|
+
"During the long fake task, the current assistant reply had exactly one .tool-runway while tools were running; observed runway text changing from read to command/failure activity.",
|
|
600
|
+
"After completion, the current assistant reply switched to one folded .tool-history-summary and no .tool-runway.",
|
|
601
|
+
"Expanded summary rendered 20 detail rows, showed remaining count '还有 44 项', and displayed File, Command, Search, and Skill groups.",
|
|
602
|
+
"At 1440px, 768px, and 390px, document and body scroll widths matched viewport width; hasHorizontalOverflow=false in every checked state.",
|
|
603
|
+
"A second slow fake task showed the stop button, clicking stop left a cancelled runway visible with text '用户已停止', and the fake backend stats recorded aborted=true with chunksAfterAbort=0.",
|
|
604
|
+
"Stopped npm run dev and confirmed no listeners remained on ports 5180 or 8787."
|
|
605
|
+
]
|
|
606
|
+
},
|
|
607
|
+
{
|
|
608
|
+
"check": "Deterministic fake event stream or test harness covers start/update/end/fail/cancel/parallel-tools/long-history in addition to real model smoke QA",
|
|
609
|
+
"status": "passed",
|
|
610
|
+
"evidence": [
|
|
611
|
+
"Browser QA fake stream emitted tool_status_start, tool_status_update, tool_status_end, tool_status_summary, assistant_text_delta, and assistant_done events.",
|
|
612
|
+
"The fake stream covered parallel tools with read and bash active together, a failed bash ending, search and Skill completions, 64 completed tool items for long-history overflow, and a slow cancellable read task.",
|
|
613
|
+
"The stop path used the real ChatPanel stop button and AbortController path; fake stream instrumentation confirmed no chunks were written after abort."
|
|
614
|
+
]
|
|
615
|
+
},
|
|
616
|
+
{
|
|
617
|
+
"check": "npm run typecheck exits 0",
|
|
618
|
+
"status": "passed",
|
|
619
|
+
"evidence": [
|
|
620
|
+
"npm run typecheck exited 0 at the start of phase-5 task 5.2.",
|
|
621
|
+
"npm run typecheck --workspace=@llm-wiki-agent/web exited 0.",
|
|
622
|
+
"npm run typecheck --workspace=@llm-wiki-agent/server initially failed when run in parallel before graph-engine declarations were regenerated; after the web pretypecheck regenerated graph-engine declarations, rerunning the same server typecheck command exited 0."
|
|
623
|
+
]
|
|
624
|
+
},
|
|
625
|
+
{
|
|
626
|
+
"check": "npm run test --workspace=@llm-wiki-agent/web exits 0",
|
|
627
|
+
"status": "passed",
|
|
628
|
+
"evidence": [
|
|
629
|
+
"npm run test --workspace=@llm-wiki-agent/web exited 0 with 29 tests across 12 suites passing."
|
|
630
|
+
]
|
|
631
|
+
},
|
|
632
|
+
{
|
|
633
|
+
"check": "Server tests for changed surfaces exit 0 or documented environment-only failure with changed tests passing",
|
|
634
|
+
"status": "passed",
|
|
635
|
+
"evidence": [
|
|
636
|
+
"node --import tsx --test workbench/server/src/tool-status-events.test.ts exited 0 with 10 tests passing.",
|
|
637
|
+
"node --import tsx --test workbench/server/src/*.test.ts exited 0 with 34 tests passing."
|
|
638
|
+
]
|
|
639
|
+
},
|
|
640
|
+
{
|
|
641
|
+
"check": "CHANGELOG.md and README.md updated for the shipped behavior",
|
|
642
|
+
"status": "passed",
|
|
643
|
+
"evidence": [
|
|
644
|
+
"CHANGELOG.md now has a top v3.6.6 (2026-06-15) entry describing the omp-style dynamic tool status, folded history summary, and stop/cancel behavior.",
|
|
645
|
+
"README.md version badge was updated to v3.6.6 and the core highlights plus full feature list mention workbench dynamic tool status and folded summaries.",
|
|
646
|
+
"workbench/PRODUCT.md was updated because this changed user-visible workbench chat behavior: section 5.4 now records the omp-style tool state principle, section 5.5 references dynamic tool state instead of generic tool-call status, and the product document change log has a v18 entry."
|
|
647
|
+
]
|
|
648
|
+
},
|
|
649
|
+
{
|
|
650
|
+
"check": "git diff --check exits 0",
|
|
651
|
+
"status": "passed",
|
|
652
|
+
"evidence": [
|
|
653
|
+
"git diff --check exited 0 after README.md, CHANGELOG.md, and workbench/PRODUCT.md updates."
|
|
654
|
+
]
|
|
655
|
+
}
|
|
656
|
+
],
|
|
657
|
+
"tasks": [
|
|
658
|
+
{
|
|
659
|
+
"id": "5.1",
|
|
660
|
+
"title": "Run real browser QA on a multi-tool task",
|
|
661
|
+
"status": "completed",
|
|
662
|
+
"verification": [
|
|
663
|
+
"Read progress file and plan; current unit was phase-5 task 5.1.",
|
|
664
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
665
|
+
"Ran deterministic headless Chrome QA against http://localhost:5180/ with a fake /api/prompt stream covering start, update, end, fail, cancel, parallel tools, and long history.",
|
|
666
|
+
"Verified the active assistant reply showed exactly one runway during running states and that the runway text changed as tool events changed.",
|
|
667
|
+
"Verified completion switched to folded ToolHistorySummary, and expanding it showed grouped detail rows capped at 20 with remaining count.",
|
|
668
|
+
"Verified 1440px, 768px, and 390px viewports had no horizontal overflow.",
|
|
669
|
+
"Verified clicking stop on a slow fake task showed a cancelled runway with '用户已停止' and fake backend stats aborted=true, chunksAfterAbort=0.",
|
|
670
|
+
"Adjusted ChatPanel so cancelled or failed current messages keep showing ToolStatusRunway instead of immediately switching to folded history.",
|
|
671
|
+
"Verified node --import tsx --test workbench/web/test/chat-panel-tool-status.test.tsx exited 0.",
|
|
672
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web exited 0.",
|
|
673
|
+
"Verified npm run typecheck exited 0.",
|
|
674
|
+
"Verified git diff --check exited 0.",
|
|
675
|
+
"Stopped npm run dev and confirmed ports 5180 and 8787 had no listeners."
|
|
676
|
+
],
|
|
677
|
+
"commit": "8258b2a6f54770f8960313ebb55a8fd10a6c8cf2"
|
|
678
|
+
},
|
|
679
|
+
{
|
|
680
|
+
"id": "5.2",
|
|
681
|
+
"title": "Run automated regression checks",
|
|
682
|
+
"status": "completed",
|
|
683
|
+
"verification": [
|
|
684
|
+
"Read progress file and plan; current unit was phase-5 task 5.2.",
|
|
685
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
686
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/web exited 0.",
|
|
687
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web exited 0.",
|
|
688
|
+
"Verified node --import tsx --test workbench/server/src/tool-status-events.test.ts exited 0.",
|
|
689
|
+
"npm run typecheck --workspace=@llm-wiki-agent/server initially failed when run in parallel before graph-engine declarations were regenerated; rerunning npm run typecheck --workspace=@llm-wiki-agent/server after web pretypecheck exited 0.",
|
|
690
|
+
"Verified node --import tsx --test workbench/server/src/*.test.ts exited 0.",
|
|
691
|
+
"Verified git diff --check exited 0."
|
|
692
|
+
],
|
|
693
|
+
"commit": "7ef8377207e7ac6de131c10440ceb68c7367624d"
|
|
694
|
+
},
|
|
695
|
+
{
|
|
696
|
+
"id": "5.3",
|
|
697
|
+
"title": "Update user-facing documentation and final risk record",
|
|
698
|
+
"status": "completed",
|
|
699
|
+
"verification": [
|
|
700
|
+
"Read progress file and plan; current unit was phase-5 task 5.3.",
|
|
701
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
702
|
+
"Updated CHANGELOG.md with v3.6.6 for dynamic tool status, folded summaries, and cancellation behavior.",
|
|
703
|
+
"Updated README.md version badge, core highlights, and full feature list for workbench omp-style tool status and folded summaries.",
|
|
704
|
+
"Updated workbench/PRODUCT.md because the workbench chat behavior changed; section 5.4 and 5.5 now record the dynamic tool status principle and the product change log has a v18 entry.",
|
|
705
|
+
"Verified rg found the new dynamic tool status documentation in README.md, CHANGELOG.md, and workbench/PRODUCT.md.",
|
|
706
|
+
"Verified git diff --check exited 0.",
|
|
707
|
+
"Verified npm run typecheck exited 0.",
|
|
708
|
+
"Residual risk: no new blocking risk found; README.en.md remains unchanged because the plan explicitly required README.md."
|
|
709
|
+
],
|
|
710
|
+
"commit": "9c948a97b8e5a3b23847055c7a5e1b47bd289d54"
|
|
711
|
+
}
|
|
712
|
+
]
|
|
713
|
+
}
|
|
714
|
+
],
|
|
715
|
+
"turn_log": [
|
|
716
|
+
{
|
|
717
|
+
"turn": "phase-1-task-1.1",
|
|
718
|
+
"status": "completed",
|
|
719
|
+
"evidence": [
|
|
720
|
+
"Read progress file and plan; current unit was phase-1 task 1.1.",
|
|
721
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
722
|
+
"Confirmed current branch codex/feat-omp-tool-status-events and ignored unrelated untracked .superpowers/.",
|
|
723
|
+
"Ran npm metadata checks for current @earendil-works 0.75.5 lockfile state, latest @earendil-works 0.79.4, global omp 15.5.2, and @oh-my-pi 15.13.3.",
|
|
724
|
+
"Ran isolated Node probes in /tmp/llm-wiki-pi-probe-NO7eLR and /tmp/llm-wiki-earendil-probe-EIwMnx.",
|
|
725
|
+
"Selected @earendil-works 0.79.4 target because it satisfies Node backend import/session/tool event requirements while @oh-my-pi 15.13.3 does not.",
|
|
726
|
+
"Committed verified task 1.1 as a8de04545583665470c8e653e11fbf4652e8a8fb."
|
|
727
|
+
]
|
|
728
|
+
},
|
|
729
|
+
{
|
|
730
|
+
"turn": "phase-1-task-1.2",
|
|
731
|
+
"status": "completed",
|
|
732
|
+
"evidence": [
|
|
733
|
+
"Read progress file and plan; current unit was phase-1 task 1.2.",
|
|
734
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
735
|
+
"Ran npm install for @llm-wiki-agent/server to migrate @earendil-works/pi-agent-core, @earendil-works/pi-coding-agent, and direct @earendil-works/pi-ai to ^0.79.4.",
|
|
736
|
+
"No source import changes were needed because the service already used the @earendil-works package family and the 0.79.4 exports remain compatible.",
|
|
737
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/server, npm run typecheck, npm ls for the three pi packages, and git diff --check.",
|
|
738
|
+
"Committed verified task 1.2 as babf3309b98845d31244a5b306daa2a8deb351d8."
|
|
739
|
+
]
|
|
740
|
+
},
|
|
741
|
+
{
|
|
742
|
+
"turn": "phase-1-task-1.3",
|
|
743
|
+
"status": "completed",
|
|
744
|
+
"evidence": [
|
|
745
|
+
"Read progress file and plan; current unit was phase-1 task 1.3.",
|
|
746
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
747
|
+
"Started npm run dev from clean ports; readiness checks proved frontend port 5180 and backend port 8787.",
|
|
748
|
+
"Ran browser smoke at http://localhost:5180/ with pi-agent selected, visible current model, usable chat area, ordinary assistant reply, and retrieval-triggering prompt with no backend error output.",
|
|
749
|
+
"Stopped npm run dev, confirmed process cleanup on ports 5180 and 8787, and reran npm run typecheck successfully.",
|
|
750
|
+
"Committed verified task 1.3 as ca84cbcf7c66ec83e58e3f4acb87b39997858d56."
|
|
751
|
+
]
|
|
752
|
+
},
|
|
753
|
+
{
|
|
754
|
+
"turn": "phase-2-task-2.1",
|
|
755
|
+
"status": "completed",
|
|
756
|
+
"evidence": [
|
|
757
|
+
"Read progress file and plan; current unit was phase-2 task 2.1.",
|
|
758
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
759
|
+
"Implemented backend ToolStatusEventAdapter and shared contract fixture in workbench/server/src/tool-status-events.ts.",
|
|
760
|
+
"Added workbench/server/src/tool-status-events.test.ts covering v1 schema fields, ordered seq, start/update/end/failure/missing args, common tool formatting, redaction, parallel tools, cancellation, and shared fixture snapshot.",
|
|
761
|
+
"Verified node --import tsx --test workbench/server/src/tool-status-events.test.ts, npm run typecheck --workspace=@llm-wiki-agent/server, npm run typecheck, and git diff --check all exited 0.",
|
|
762
|
+
"Committed verified task 2.1 as 391ddc204253a399c97772a93058a692cc30d0f9."
|
|
763
|
+
]
|
|
764
|
+
},
|
|
765
|
+
{
|
|
766
|
+
"turn": "phase-2-task-2.2",
|
|
767
|
+
"status": "completed",
|
|
768
|
+
"evidence": [
|
|
769
|
+
"Read progress file and plan; current unit was phase-2 task 2.2.",
|
|
770
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
771
|
+
"Connected /api/prompt to ToolStatusEventAdapter and OrderedSseWriter, including knowledge_search tool events, artifact_created preservation, assistant_done/error/cancelled handling, prompt concurrency rejection, and abort cleanup.",
|
|
772
|
+
"Verified node --import tsx --test workbench/server/src/tool-status-events.test.ts, npm run typecheck --workspace=@llm-wiki-agent/server, npm run typecheck, API SSE smoke, process cleanup, and git diff --check all passed.",
|
|
773
|
+
"Committed verified task 2.2 as 141f4ea1489e663b8ea923200da05da6d94a157a.",
|
|
774
|
+
"Advanced current task pointer to phase-2 task 2.3 after recording the 2.2 commit hash."
|
|
775
|
+
]
|
|
776
|
+
},
|
|
777
|
+
{
|
|
778
|
+
"turn": "phase-2-task-2.3",
|
|
779
|
+
"status": "completed",
|
|
780
|
+
"evidence": [
|
|
781
|
+
"Read progress file and plan; current unit was phase-2 task 2.3.",
|
|
782
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
783
|
+
"Updated history conversion to regenerate completed tool summaries from assistant tool calls and toolResult messages, with best-effort fallback for incomplete old sessions and no empty summaries for messages without tools.",
|
|
784
|
+
"Added conversations.test.ts and verified conversations, tool-status-events, retrieval, server typecheck, full typecheck, and git diff --check all passed.",
|
|
785
|
+
"All phase-2 acceptance checks now pass, so the progress pointer advanced to phase-3 task 3.1.",
|
|
786
|
+
"Committed verified task 2.3 as d2c686f0fbc047d77a637cf675bbe8e718ac076a."
|
|
787
|
+
]
|
|
788
|
+
},
|
|
789
|
+
{
|
|
790
|
+
"turn": "phase-3-task-3.1",
|
|
791
|
+
"status": "completed",
|
|
792
|
+
"evidence": [
|
|
793
|
+
"Read progress file and plan; current unit was phase-3 task 3.1.",
|
|
794
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
795
|
+
"Added frontend Tool Status event types and reducer state for active tools, completed tools, failures, summaries, ignored events, coalesced updates, and capped histories.",
|
|
796
|
+
"Added reducer tests that reuse the backend contract fixture and cover switching, missing args, failed/cancelled tools, parallel tools, run/message ownership, duplicate/late events, coalescing, and truncation.",
|
|
797
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web -- tool-status-model.test.ts, npm run test --workspace=@llm-wiki-agent/web, npm run typecheck --workspace=@llm-wiki-agent/web, npm run typecheck, and git diff --check all exited 0.",
|
|
798
|
+
"Committed verified task 3.1 as 5fea9c2e0d79614d8e84bde8632c30f68b6dd0b5.",
|
|
799
|
+
"Advanced current task pointer to phase-3 task 3.2 after recording the 3.1 commit hash."
|
|
800
|
+
]
|
|
801
|
+
},
|
|
802
|
+
{
|
|
803
|
+
"turn": "phase-3-task-3.2",
|
|
804
|
+
"status": "completed",
|
|
805
|
+
"evidence": [
|
|
806
|
+
"Read progress file and plan; current unit was phase-3 task 3.2.",
|
|
807
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
808
|
+
"Added frontend formatter for user-readable tool actions, compact targets, stable groups, redacted private home paths, and empty unknown fallbacks.",
|
|
809
|
+
"Added formatter tests for read/write long paths, bash long commands, search and skill grouping, empty args, unknown tools, and truncation.",
|
|
810
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web -- tool-status-format.test.ts, npm run test --workspace=@llm-wiki-agent/web, npm run typecheck --workspace=@llm-wiki-agent/web, npm run typecheck, and git diff --check all exited 0.",
|
|
811
|
+
"Committed verified task 3.2 as 342ccb5799b57ce6359ad47050d1682e473c1485.",
|
|
812
|
+
"Advanced current task pointer to phase-3 task 3.3 after recording the 3.2 commit hash."
|
|
813
|
+
]
|
|
814
|
+
},
|
|
815
|
+
{
|
|
816
|
+
"turn": "phase-3-task-3.3",
|
|
817
|
+
"status": "completed",
|
|
818
|
+
"evidence": [
|
|
819
|
+
"Read progress file and plan; current unit was phase-3 task 3.3.",
|
|
820
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
821
|
+
"Reconnected ChatPanel to stable tool status events, added local stop/cancel cleanup, and stopped appending old live tool rows.",
|
|
822
|
+
"Added reducer coverage for local cancellation without backend abort confirmation.",
|
|
823
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web -- tool-status-model.test.ts, npm run test --workspace=@llm-wiki-agent/web, npm run typecheck --workspace=@llm-wiki-agent/web, npm run typecheck, git diff --check, and a headless Chrome render all passed.",
|
|
824
|
+
"Committed verified task 3.3 as 531e1e68b809406fbdf21d32e9a6d5907eb18fde.",
|
|
825
|
+
"All phase-3 acceptance checks now pass, so the progress pointer advanced to phase-4 task 4.1."
|
|
826
|
+
]
|
|
827
|
+
},
|
|
828
|
+
{
|
|
829
|
+
"turn": "phase-4-task-4.1",
|
|
830
|
+
"status": "completed",
|
|
831
|
+
"evidence": [
|
|
832
|
+
"Read progress file and plan; current unit was phase-4 task 4.1.",
|
|
833
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
834
|
+
"Added ToolStatusRunway, connected ChatPanel's live tool status branch to it, and added CSS for running/done/failed/cancelled states, truncation, and reduced motion.",
|
|
835
|
+
"Added ToolStatusRunway render tests for running, done, failed, cancelled, concrete limits, and 100ms cadence.",
|
|
836
|
+
"Verified npm run test --workspace=@llm-wiki-agent/web -- tool-status-runway.test.ts, npm run test --workspace=@llm-wiki-agent/web, npm run typecheck --workspace=@llm-wiki-agent/web, npm run typecheck, and git diff --check all exited 0.",
|
|
837
|
+
"Committed verified task 4.1 as ee27cc97be839efe0e400f98860d0b6d65d10e67.",
|
|
838
|
+
"Advanced current task pointer to phase-4 task 4.2 after recording the 4.1 commit hash."
|
|
839
|
+
]
|
|
840
|
+
},
|
|
841
|
+
{
|
|
842
|
+
"turn": "phase-4-task-4.2",
|
|
843
|
+
"status": "completed",
|
|
844
|
+
"evidence": [
|
|
845
|
+
"Read progress file and plan; current unit was phase-4 task 4.2.",
|
|
846
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
847
|
+
"Added ToolHistorySummary with folded grouped counts, capped folded targets, expandable capped detail rows, and remaining-count display.",
|
|
848
|
+
"Added ToolHistorySummary tests and enabled .tsx test discovery in the web test script.",
|
|
849
|
+
"Verified node --import tsx --test workbench/web/test/tool-history-summary.test.tsx, npm run test --workspace=@llm-wiki-agent/web, npm run typecheck --workspace=@llm-wiki-agent/web, npm run typecheck, and git diff --check all exited 0.",
|
|
850
|
+
"Committed verified task 4.2 as aa44ea99533b4b21f7acc0d9be376e07becf2824.",
|
|
851
|
+
"Advanced current task pointer to phase-4 task 4.3 after recording the 4.2 commit hash."
|
|
852
|
+
]
|
|
853
|
+
},
|
|
854
|
+
{
|
|
855
|
+
"turn": "phase-4-task-4.3",
|
|
856
|
+
"status": "completed",
|
|
857
|
+
"evidence": [
|
|
858
|
+
"Read progress file and plan; current unit was phase-4 task 4.3.",
|
|
859
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
860
|
+
"Replaced old assistant tool-list rendering with ToolStatusRunway for the active stream and ToolHistorySummary for completed or historical assistant messages.",
|
|
861
|
+
"Added legacy history conversion and test coverage proving old UIMessage.tools records render as folded summaries instead of .msg-tools or tool-runway.",
|
|
862
|
+
"Verified node --import tsx --test workbench/web/test/chat-panel-tool-status.test.tsx, npm run test --workspace=@llm-wiki-agent/web, npm run typecheck --workspace=@llm-wiki-agent/web, npm run typecheck, git diff --check, and headless Chrome desktop/narrow checks all passed.",
|
|
863
|
+
"Committed verified task 4.3 as 31396aa543837ed57141b3ffeb53c66715965d7a.",
|
|
864
|
+
"All phase-4 acceptance checks now pass, so phase-4 was marked completed and the progress pointer advanced to phase-5 task 5.1."
|
|
865
|
+
]
|
|
866
|
+
},
|
|
867
|
+
{
|
|
868
|
+
"turn": "phase-5-task-5.1",
|
|
869
|
+
"status": "completed",
|
|
870
|
+
"evidence": [
|
|
871
|
+
"Read progress file and plan; current unit was phase-5 task 5.1.",
|
|
872
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
873
|
+
"Ran headless Chrome QA on http://localhost:5180/ with a deterministic fake prompt stream covering start, update, end, fail, cancel, parallel tools, and long-history overflow.",
|
|
874
|
+
"Verified exactly one live runway while running, folded summary after completion, expandable grouped details, cancellation runway after stop, no writes after abort, and no horizontal overflow at 1440px, 768px, or 390px.",
|
|
875
|
+
"Fixed the stop-state visual so cancelled or failed current messages keep showing ToolStatusRunway instead of immediately becoming folded history.",
|
|
876
|
+
"Verified node --import tsx --test workbench/web/test/chat-panel-tool-status.test.tsx, npm run test --workspace=@llm-wiki-agent/web, npm run typecheck, and git diff --check all exited 0.",
|
|
877
|
+
"Committed verified task 5.1 as 8258b2a6f54770f8960313ebb55a8fd10a6c8cf2.",
|
|
878
|
+
"Advanced current task pointer to phase-5 task 5.2 after recording the 5.1 commit hash."
|
|
879
|
+
]
|
|
880
|
+
},
|
|
881
|
+
{
|
|
882
|
+
"turn": "phase-5-task-5.2",
|
|
883
|
+
"status": "completed",
|
|
884
|
+
"evidence": [
|
|
885
|
+
"Read progress file and plan; current unit was phase-5 task 5.2.",
|
|
886
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
887
|
+
"Verified npm run typecheck --workspace=@llm-wiki-agent/web, npm run test --workspace=@llm-wiki-agent/web, node --import tsx --test workbench/server/src/tool-status-events.test.ts, node --import tsx --test workbench/server/src/*.test.ts, and git diff --check all exited 0.",
|
|
888
|
+
"npm run typecheck --workspace=@llm-wiki-agent/server failed only when run in parallel before graph-engine declarations were regenerated; rerunning it after web pretypecheck exited 0.",
|
|
889
|
+
"Committed verified task 5.2 as 7ef8377207e7ac6de131c10440ceb68c7367624d.",
|
|
890
|
+
"Advanced current task pointer to phase-5 task 5.3 after recording the 5.2 commit hash."
|
|
891
|
+
]
|
|
892
|
+
},
|
|
893
|
+
{
|
|
894
|
+
"turn": "phase-5-task-5.3",
|
|
895
|
+
"status": "completed",
|
|
896
|
+
"evidence": [
|
|
897
|
+
"Read progress file and plan; current unit was phase-5 task 5.3.",
|
|
898
|
+
"Ran git log --oneline -15 and npm run typecheck before new work; both exited 0.",
|
|
899
|
+
"Updated CHANGELOG.md, README.md, and workbench/PRODUCT.md for the shipped workbench dynamic tool status behavior.",
|
|
900
|
+
"Verified documentation text with rg, git diff --check, and npm run typecheck; all exited 0.",
|
|
901
|
+
"Committed verified task 5.3 as 9c948a97b8e5a3b23847055c7a5e1b47bd289d54.",
|
|
902
|
+
"All plan tasks and acceptance checks are complete; final overall status was marked completed."
|
|
903
|
+
]
|
|
904
|
+
}
|
|
905
|
+
],
|
|
906
|
+
"residual_risk": [
|
|
907
|
+
{
|
|
908
|
+
"risk": "README.en.md still shows the older version badge and does not mention this workbench behavior.",
|
|
909
|
+
"status": "accepted",
|
|
910
|
+
"reason": "The execution plan and repository rule for this task explicitly required README.md, CHANGELOG.md, and PRODUCT.md; English README synchronization is outside the current work unit."
|
|
911
|
+
}
|
|
912
|
+
]
|
|
913
|
+
}
|