* feat(#1945): tracer-first planning default + executor feedback gate Make "thin end-to-end slice first, verify, then expand" the default planning + execution discipline instead of the opt-in --mvp mode. - gsd-planner: first-class `type="tracer"` task; every plan LEADS with one production-quality end-to-end tracer slice by default; --no-tracer restores horizontal layers; --mvp/--tdd compose on top. - gsd-executor + execute-plan: post-tracer feedback gate — autonomous runs halt-on-fail before expansion, interactive runs emit checkpoint:human-verify after the tracer. - --no-tracer flag wired through plan-phase workflow/command/help/skill. - CONTEXT.md glossary defines tracer bullet vs prototype; docs + references reconciled. - tests/tracer-bullet.test.cjs: prose-contract + behavioral (verify plan-structure accepts tracer) coverage. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * chore(#1945): backfill changeset PR number to 2294 --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -14,7 +14,7 @@
|
||||
"gsd-domain-researcher.md": 7032,
|
||||
"gsd-eval-auditor.md": 12496,
|
||||
"gsd-eval-planner.md": 7008,
|
||||
"gsd-executor.md": 43973,
|
||||
"gsd-executor.md": 45338,
|
||||
"gsd-framework-selector.md": 6778,
|
||||
"gsd-integration-checker.md": 15238,
|
||||
"gsd-intel-updater.md": 18166,
|
||||
@@ -23,7 +23,7 @@
|
||||
"gsd-pattern-mapper.md": 12487,
|
||||
"gsd-phase-researcher.md": 40866,
|
||||
"gsd-plan-checker.md": 44780,
|
||||
"gsd-planner.md": 48191,
|
||||
"gsd-planner.md": 49314,
|
||||
"gsd-project-researcher.md": 22242,
|
||||
"gsd-research-synthesizer.md": 13847,
|
||||
"gsd-roadmapper.md": 22273,
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.md": "1db46cac3f4d9889",
|
||||
"agents/gsd-eval-auditor.md": "1b8391f1aafb067f",
|
||||
"agents/gsd-eval-planner.md": "3d10fd11147f6857",
|
||||
"agents/gsd-executor.md": "6b7b461429de7d35",
|
||||
"agents/gsd-executor.md": "5dc97b2515b36731",
|
||||
"agents/gsd-framework-selector.md": "daa62c79619c76bf",
|
||||
"agents/gsd-integration-checker.md": "0643cd2d779b131c",
|
||||
"agents/gsd-intel-updater.md": "26c1f1e028c6346a",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "e62ee90d39084802",
|
||||
"agents/gsd-phase-researcher.md": "cff1196c8e8bb4fa",
|
||||
"agents/gsd-plan-checker.md": "dd1e7cdc837d8f3e",
|
||||
"agents/gsd-planner.md": "b6d821f77fd8d7bd",
|
||||
"agents/gsd-planner.md": "c5de6bb9b277e4d4",
|
||||
"agents/gsd-project-researcher.md": "85de7f562872ee9b",
|
||||
"agents/gsd-research-synthesizer.md": "18a2e1b30ff7ae3a",
|
||||
"agents/gsd-roadmapper.md": "7a8465ac6d4dd29e",
|
||||
@@ -105,7 +105,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "676e43b03af6b25b",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "90cb2ecd1f3eb4d8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "343b859a60bcd15e",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cdac9dde7cd8fa84",
|
||||
"gsd-core/references/planner-reviews.md": "da39eace09a10743",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -123,7 +123,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -239,7 +239,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "9b7107b31b60a3b9",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "e0fa99178ae544f0",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "907af77eafc3d97b",
|
||||
"gsd-core/workflows/execute-plan.md": "dea5df2e142f66bd",
|
||||
"gsd-core/workflows/explore.md": "934c00f9f216dbdb",
|
||||
"gsd-core/workflows/extract-learnings.md": "167ea7f0e23bf496",
|
||||
"gsd-core/workflows/fast.md": "568e6c3ec00b6e00",
|
||||
@@ -249,7 +249,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "fa2675516b40e2e3",
|
||||
"gsd-core/workflows/help/modes/default.md": "be05e56b2c5ee2c0",
|
||||
"gsd-core/workflows/help/modes/full.md": "c8ffd141e28f5111",
|
||||
"gsd-core/workflows/help/modes/full.md": "bf7b148215259e6e",
|
||||
"gsd-core/workflows/help/modes/topic.md": "0bf9ab39d7044d69",
|
||||
"gsd-core/workflows/import.md": "41c62ae199209a68",
|
||||
"gsd-core/workflows/inbox.md": "a448220c548f27bc",
|
||||
@@ -271,7 +271,7 @@
|
||||
"gsd-core/workflows/onboard.md": "69d871aa53a1a859",
|
||||
"gsd-core/workflows/pause-work.md": "564de32981a24337",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "dd6a4b3a8b05ab6e",
|
||||
"gsd-core/workflows/plan-phase.md": "40eecc5a8817b9f2",
|
||||
"gsd-core/workflows/plan-phase.md": "c8d8e646fccd4bd3",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "4099ef6d0868de60",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "ab0b22244c3389aa",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "e9de7a96bbfff261",
|
||||
@@ -397,7 +397,7 @@
|
||||
"skills/gsd-onboard/SKILL.md": "1447665c64c8ade8",
|
||||
"skills/gsd-pause-work/SKILL.md": "9d3cc6bd70b03df1",
|
||||
"skills/gsd-phase/SKILL.md": "00676bbea61410bf",
|
||||
"skills/gsd-plan-phase/SKILL.md": "168046ccf9702532",
|
||||
"skills/gsd-plan-phase/SKILL.md": "8439b569426ff621",
|
||||
"skills/gsd-plan-review-convergence/SKILL.md": "af6ed50b242c64b7",
|
||||
"skills/gsd-pr-branch/SKILL.md": "5e050db73988f9a8",
|
||||
"skills/gsd-profile-user/SKILL.md": "10f2ff4be2e7d55f",
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.md": "671c9ea949889c4a",
|
||||
"agents/gsd-eval-auditor.md": "fcaec7b00f94c435",
|
||||
"agents/gsd-eval-planner.md": "a4a5b4b3f7828ba3",
|
||||
"agents/gsd-executor.md": "ed2c39fa8c03d056",
|
||||
"agents/gsd-executor.md": "2df526331a77b2aa",
|
||||
"agents/gsd-framework-selector.md": "4b77eebbe9288d80",
|
||||
"agents/gsd-integration-checker.md": "fa53e2d78be1de74",
|
||||
"agents/gsd-intel-updater.md": "fa40e685d7441ace",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "43c6021cf7caabfa",
|
||||
"agents/gsd-phase-researcher.md": "f1f6fd6a3e67c7a8",
|
||||
"agents/gsd-plan-checker.md": "bf1a4e636f2390de",
|
||||
"agents/gsd-planner.md": "6e8c76da9804ac42",
|
||||
"agents/gsd-planner.md": "4614c9f6250d08d4",
|
||||
"agents/gsd-project-researcher.md": "4531b7cc8f5e5f7d",
|
||||
"agents/gsd-research-synthesizer.md": "4a4f68e6c75b133a",
|
||||
"agents/gsd-roadmapper.md": "bb2f57695dbab32c",
|
||||
@@ -79,7 +79,7 @@
|
||||
"commands/gsd-onboard.md": "1e8acf7be31834be",
|
||||
"commands/gsd-pause-work.md": "4fb032f72238fe33",
|
||||
"commands/gsd-phase.md": "4920d15d779329eb",
|
||||
"commands/gsd-plan-phase.md": "e74f3cb7a10cbb83",
|
||||
"commands/gsd-plan-phase.md": "d467c713ea161e9e",
|
||||
"commands/gsd-plan-review-convergence.md": "3e4aff8f9ec6f8d8",
|
||||
"commands/gsd-pr-branch.md": "e168fcd545d72d0d",
|
||||
"commands/gsd-profile-user.md": "ffd9c2feb4c69f11",
|
||||
@@ -176,7 +176,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "56d05e841630b3f4",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "ca7a7af3f35ae61b",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "dda0193a0fbd4947",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -194,7 +194,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -310,7 +310,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "811b6d8489571581",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "8ccc16a6c7cf6000",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "2c412310dce31a0b",
|
||||
"gsd-core/workflows/execute-plan.md": "7bc87fa99a1f9b0e",
|
||||
"gsd-core/workflows/explore.md": "6c04f2e658d93261",
|
||||
"gsd-core/workflows/extract-learnings.md": "b6f01ca3d8f58de4",
|
||||
"gsd-core/workflows/fast.md": "11f5cd10ae5cc7d3",
|
||||
@@ -320,7 +320,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "924860e1f07defb0",
|
||||
"gsd-core/workflows/help/modes/default.md": "08a02976c0c5cc50",
|
||||
"gsd-core/workflows/help/modes/full.md": "fc307cb77544df1d",
|
||||
"gsd-core/workflows/help/modes/full.md": "b26853b9911ad97b",
|
||||
"gsd-core/workflows/help/modes/topic.md": "5c160093f3cbf35d",
|
||||
"gsd-core/workflows/import.md": "3d3fa603ceb8bc9f",
|
||||
"gsd-core/workflows/inbox.md": "437f981ef9ae7b26",
|
||||
@@ -342,7 +342,7 @@
|
||||
"gsd-core/workflows/onboard.md": "6f9e6c0b484271a9",
|
||||
"gsd-core/workflows/pause-work.md": "f2b33bba5593d422",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "852f6d7c0c4299dc",
|
||||
"gsd-core/workflows/plan-phase.md": "a1057033055542a3",
|
||||
"gsd-core/workflows/plan-phase.md": "3fd22c43ad1fcc90",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "b36f77ac7344a072",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "197c0590326371b2",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "49f58c3f75be3eb5",
|
||||
@@ -488,7 +488,7 @@
|
||||
"skills/gsd-ns-workflow/skills/mvp-phase/SKILL.md": "f259f089a8d07a54",
|
||||
"skills/gsd-ns-workflow/skills/next/SKILL.md": "e7409245f1a0f9de",
|
||||
"skills/gsd-ns-workflow/skills/phase/SKILL.md": "fe5b26417ee466be",
|
||||
"skills/gsd-ns-workflow/skills/plan-phase/SKILL.md": "8cf23ecd6ac98069",
|
||||
"skills/gsd-ns-workflow/skills/plan-phase/SKILL.md": "99a229cf1b4fb7ee",
|
||||
"skills/gsd-ns-workflow/skills/plan-review-convergence/SKILL.md": "93f68cc6a36de7f2",
|
||||
"skills/gsd-ns-workflow/skills/progress/SKILL.md": "68bda87136db9fb3",
|
||||
"skills/gsd-ns-workflow/skills/quick/SKILL.md": "014dec52d85dcb0e",
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
"agents/gsd-domain-researcher.md": "f1e03df842ddfb95",
|
||||
"agents/gsd-eval-auditor.md": "d0f45fff7370bb0b",
|
||||
"agents/gsd-eval-planner.md": "9cc049b82897daa4",
|
||||
"agents/gsd-executor.md": "62f37fae936e0d2f",
|
||||
"agents/gsd-executor.md": "e96f3cbde4428497",
|
||||
"agents/gsd-framework-selector.md": "85005d716f9d98f7",
|
||||
"agents/gsd-integration-checker.md": "17a8ee731986564d",
|
||||
"agents/gsd-intel-updater.md": "4953a465db9dadc1",
|
||||
@@ -24,7 +24,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "b45b5e106775bec1",
|
||||
"agents/gsd-phase-researcher.md": "4772d9eada32e8bd",
|
||||
"agents/gsd-plan-checker.md": "75851b147f35354a",
|
||||
"agents/gsd-planner.md": "9c9ffc56275b8ca2",
|
||||
"agents/gsd-planner.md": "a5cdb261a6ccbb96",
|
||||
"agents/gsd-project-researcher.md": "d7f355894519f9fe",
|
||||
"agents/gsd-research-synthesizer.md": "1c738df9932d325a",
|
||||
"agents/gsd-roadmapper.md": "453e9471ad27c7ea",
|
||||
@@ -78,7 +78,7 @@
|
||||
"commands/gsd-onboard.md": "d0d9405bc73899bd",
|
||||
"commands/gsd-pause-work.md": "01dbaebfefacd252",
|
||||
"commands/gsd-phase.md": "e8c226d2694692a5",
|
||||
"commands/gsd-plan-phase.md": "518357828182dca7",
|
||||
"commands/gsd-plan-phase.md": "ae70b58d4d8550c8",
|
||||
"commands/gsd-plan-review-convergence.md": "d5a85a50dcff2dd1",
|
||||
"commands/gsd-pr-branch.md": "382c23a6a644c0e4",
|
||||
"commands/gsd-profile-user.md": "adbc5b025b30e836",
|
||||
@@ -175,7 +175,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "56d05e841630b3f4",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "add55e135dd968da",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ffd7b9d0e402714e",
|
||||
"gsd-core/references/planner-mvp-mode.md": "98bcd2020c30cbd2",
|
||||
"gsd-core/references/planner-reviews.md": "da39eace09a10743",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -193,7 +193,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -309,7 +309,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "611b2be3bd133eb1",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "016ac9c7c02b1438",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "f17623fd47e795dd",
|
||||
"gsd-core/workflows/execute-plan.md": "e81d3476290ef292",
|
||||
"gsd-core/workflows/explore.md": "95e463d4bdd6dadd",
|
||||
"gsd-core/workflows/extract-learnings.md": "fd75072c339b58bd",
|
||||
"gsd-core/workflows/fast.md": "7f7687b920d79b29",
|
||||
@@ -319,7 +319,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "fa2675516b40e2e3",
|
||||
"gsd-core/workflows/help/modes/default.md": "be05e56b2c5ee2c0",
|
||||
"gsd-core/workflows/help/modes/full.md": "ce40e843f528e327",
|
||||
"gsd-core/workflows/help/modes/full.md": "8381c11db152a8a6",
|
||||
"gsd-core/workflows/help/modes/topic.md": "6e42db16f1568be9",
|
||||
"gsd-core/workflows/import.md": "cc21f3da36403ed3",
|
||||
"gsd-core/workflows/inbox.md": "91aac6360e1a8672",
|
||||
@@ -341,7 +341,7 @@
|
||||
"gsd-core/workflows/onboard.md": "b86d78eef6c77e5b",
|
||||
"gsd-core/workflows/pause-work.md": "da902807d2213204",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "7679fac068d1009d",
|
||||
"gsd-core/workflows/plan-phase.md": "50f812bc3456819d",
|
||||
"gsd-core/workflows/plan-phase.md": "4b20c2d821e2df8a",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "4099ef6d0868de60",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "b810f9f2374e23a5",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "e9de7a96bbfff261",
|
||||
|
||||
16
tests/fixtures/golden-install-parity/claude.json
vendored
16
tests/fixtures/golden-install-parity/claude.json
vendored
@@ -15,7 +15,7 @@
|
||||
"agents/gsd-domain-researcher.md": "5f7d366251b957fe",
|
||||
"agents/gsd-eval-auditor.md": "fea2759beff0a642",
|
||||
"agents/gsd-eval-planner.md": "112f6730f23854e3",
|
||||
"agents/gsd-executor.md": "d1750d26580daa7f",
|
||||
"agents/gsd-executor.md": "e44ea5156ca2a42d",
|
||||
"agents/gsd-framework-selector.md": "c350ee693cb1aa4e",
|
||||
"agents/gsd-integration-checker.md": "c8b4e65dee89c8ea",
|
||||
"agents/gsd-intel-updater.md": "5b41e05f90ce89d9",
|
||||
@@ -24,7 +24,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "b45b5e106775bec1",
|
||||
"agents/gsd-phase-researcher.md": "85217c69c1ed2ac6",
|
||||
"agents/gsd-plan-checker.md": "c70134c61b969589",
|
||||
"agents/gsd-planner.md": "aa68af11f852ecfd",
|
||||
"agents/gsd-planner.md": "c07a226ddd579839",
|
||||
"agents/gsd-project-researcher.md": "f468e96f8339d1e0",
|
||||
"agents/gsd-research-synthesizer.md": "7be02e47f4fd901b",
|
||||
"agents/gsd-roadmapper.md": "8a7f1f1256a6aed5",
|
||||
@@ -104,7 +104,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "56d05e841630b3f4",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "ca7a7af3f35ae61b",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "da39eace09a10743",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -122,7 +122,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -238,7 +238,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "811b6d8489571581",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "8ccc16a6c7cf6000",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "cce1a33fe9a0a32d",
|
||||
"gsd-core/workflows/execute-plan.md": "2cddec7d1b197e48",
|
||||
"gsd-core/workflows/explore.md": "b9eea1bac358c9ce",
|
||||
"gsd-core/workflows/extract-learnings.md": "d8177b0c13b7e5ee",
|
||||
"gsd-core/workflows/fast.md": "41a6568b873aef99",
|
||||
@@ -248,7 +248,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "fa2675516b40e2e3",
|
||||
"gsd-core/workflows/help/modes/default.md": "be05e56b2c5ee2c0",
|
||||
"gsd-core/workflows/help/modes/full.md": "e2084c6766e32d6c",
|
||||
"gsd-core/workflows/help/modes/full.md": "91c6683e5b5ff4f8",
|
||||
"gsd-core/workflows/help/modes/topic.md": "6e42db16f1568be9",
|
||||
"gsd-core/workflows/import.md": "6e8acff8c3918795",
|
||||
"gsd-core/workflows/inbox.md": "91aac6360e1a8672",
|
||||
@@ -270,7 +270,7 @@
|
||||
"gsd-core/workflows/onboard.md": "3c50ed1f1fd07619",
|
||||
"gsd-core/workflows/pause-work.md": "5716362557f44ce4",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "1b43d12812f7bc1e",
|
||||
"gsd-core/workflows/plan-phase.md": "a62a13d6b8df73e0",
|
||||
"gsd-core/workflows/plan-phase.md": "7e6899ce19c134e0",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "4099ef6d0868de60",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "197c0590326371b2",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "e9de7a96bbfff261",
|
||||
@@ -395,7 +395,7 @@
|
||||
"skills/gsd-onboard/SKILL.md": "46460b479b7524bf",
|
||||
"skills/gsd-pause-work/SKILL.md": "35e8a148e44f5361",
|
||||
"skills/gsd-phase/SKILL.md": "00be96e7ae36c6f0",
|
||||
"skills/gsd-plan-phase/SKILL.md": "0c9e87da048acfb7",
|
||||
"skills/gsd-plan-phase/SKILL.md": "a512ac3d14194133",
|
||||
"skills/gsd-plan-review-convergence/SKILL.md": "c3dd8bfa877eaed5",
|
||||
"skills/gsd-pr-branch/SKILL.md": "c5e26f2c6dff1355",
|
||||
"skills/gsd-profile-user/SKILL.md": "894eb2850ecd2dde",
|
||||
|
||||
16
tests/fixtures/golden-install-parity/cline.json
vendored
16
tests/fixtures/golden-install-parity/cline.json
vendored
@@ -19,7 +19,7 @@
|
||||
"agents/gsd-domain-researcher.md": "0fecdaea86466a56",
|
||||
"agents/gsd-eval-auditor.md": "36c44303085df2f8",
|
||||
"agents/gsd-eval-planner.md": "3ddea88a69b4da3f",
|
||||
"agents/gsd-executor.md": "2ca77ad7d9909f82",
|
||||
"agents/gsd-executor.md": "9b51734f64049fda",
|
||||
"agents/gsd-framework-selector.md": "564669d479433f15",
|
||||
"agents/gsd-integration-checker.md": "1bbbdd3d420b994e",
|
||||
"agents/gsd-intel-updater.md": "42c40fffbc720d0b",
|
||||
@@ -28,7 +28,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "b526065fd2efa19c",
|
||||
"agents/gsd-phase-researcher.md": "c507db2ba66038f4",
|
||||
"agents/gsd-plan-checker.md": "a609245dbdc4ef2b",
|
||||
"agents/gsd-planner.md": "ae6bf9def31a8eec",
|
||||
"agents/gsd-planner.md": "2fa5c5d4529ef651",
|
||||
"agents/gsd-project-researcher.md": "049f816c6caa4316",
|
||||
"agents/gsd-research-synthesizer.md": "2f7dcbff50371d4c",
|
||||
"agents/gsd-roadmapper.md": "bbb23d3097911516",
|
||||
@@ -108,7 +108,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "0519ef5438b2ed30",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "e469016f2d51b5bc",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "dda0193a0fbd4947",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -126,7 +126,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -242,7 +242,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "82e6cfe1e1b1ec0e",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "36b463d72d3e11c5",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "0c5551f99ee0a017",
|
||||
"gsd-core/workflows/execute-plan.md": "7f186055a0246932",
|
||||
"gsd-core/workflows/explore.md": "e83af8ceae314cf9",
|
||||
"gsd-core/workflows/extract-learnings.md": "6f39375b7dc775f9",
|
||||
"gsd-core/workflows/fast.md": "e4f74a454b6ca5e8",
|
||||
@@ -252,7 +252,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "924860e1f07defb0",
|
||||
"gsd-core/workflows/help/modes/default.md": "86f7a14ad06e2f6f",
|
||||
"gsd-core/workflows/help/modes/full.md": "efb266b8dbe60f51",
|
||||
"gsd-core/workflows/help/modes/full.md": "a53e85333cf61c36",
|
||||
"gsd-core/workflows/help/modes/topic.md": "5c160093f3cbf35d",
|
||||
"gsd-core/workflows/import.md": "96ec687c5cfe84ac",
|
||||
"gsd-core/workflows/inbox.md": "437f981ef9ae7b26",
|
||||
@@ -274,7 +274,7 @@
|
||||
"gsd-core/workflows/onboard.md": "6f9e6c0b484271a9",
|
||||
"gsd-core/workflows/pause-work.md": "3530607514b0ac00",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "bafdc6945cd2bd87",
|
||||
"gsd-core/workflows/plan-phase.md": "5a0e013e461375dd",
|
||||
"gsd-core/workflows/plan-phase.md": "801be4f6db080adb",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "b36f77ac7344a072",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "4b0a2cb0f4f28179",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "090c31e22b1508fe",
|
||||
@@ -392,7 +392,7 @@
|
||||
"skills/gsd-ns-workflow/skills/mvp-phase/SKILL.md": "6c2beccceb46fda1",
|
||||
"skills/gsd-ns-workflow/skills/next/SKILL.md": "3856471d0f64bf09",
|
||||
"skills/gsd-ns-workflow/skills/phase/SKILL.md": "4e1363db6013a1e5",
|
||||
"skills/gsd-ns-workflow/skills/plan-phase/SKILL.md": "b7a6ff2837b41143",
|
||||
"skills/gsd-ns-workflow/skills/plan-phase/SKILL.md": "643641b45747815e",
|
||||
"skills/gsd-ns-workflow/skills/plan-review-convergence/SKILL.md": "b7d213288df9aa96",
|
||||
"skills/gsd-ns-workflow/skills/progress/SKILL.md": "493f467c22d55b6b",
|
||||
"skills/gsd-ns-workflow/skills/quick/SKILL.md": "605e596c680cbb1c",
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.md": "1c1a800108a2b225",
|
||||
"agents/gsd-eval-auditor.md": "99012004b14ea602",
|
||||
"agents/gsd-eval-planner.md": "4ebdd7fe9cbb0cfe",
|
||||
"agents/gsd-executor.md": "d61e084540bb6ee2",
|
||||
"agents/gsd-executor.md": "4f4bbb77be53a135",
|
||||
"agents/gsd-framework-selector.md": "7726fccc86bfeb50",
|
||||
"agents/gsd-integration-checker.md": "2d8339790bbb2dc3",
|
||||
"agents/gsd-intel-updater.md": "c51339956197cbd3",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "92cfa2e6c2a06bf3",
|
||||
"agents/gsd-phase-researcher.md": "6338474da1a5d65e",
|
||||
"agents/gsd-plan-checker.md": "e704c083b02e8c35",
|
||||
"agents/gsd-planner.md": "164eab970e2cf025",
|
||||
"agents/gsd-planner.md": "1ade235391742f7e",
|
||||
"agents/gsd-project-researcher.md": "e43c59f7f1f2f37a",
|
||||
"agents/gsd-research-synthesizer.md": "87955470c3c129b2",
|
||||
"agents/gsd-roadmapper.md": "20b69eff61a7a9fa",
|
||||
@@ -79,7 +79,7 @@
|
||||
"commands/gsd-onboard.md": "63283b90aa671229",
|
||||
"commands/gsd-pause-work.md": "6caa75a7c2b4dd2d",
|
||||
"commands/gsd-phase.md": "e3ca4958ea20a935",
|
||||
"commands/gsd-plan-phase.md": "6de27d54ac191539",
|
||||
"commands/gsd-plan-phase.md": "03e08147bee2e446",
|
||||
"commands/gsd-plan-review-convergence.md": "4d1b90383514958e",
|
||||
"commands/gsd-pr-branch.md": "f5be514b9f69eaf5",
|
||||
"commands/gsd-profile-user.md": "7a9289910719d828",
|
||||
@@ -176,7 +176,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "56d05e841630b3f4",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "ca7a7af3f35ae61b",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "dda0193a0fbd4947",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -194,7 +194,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -310,7 +310,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "811b6d8489571581",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "8ccc16a6c7cf6000",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "933d10547116794a",
|
||||
"gsd-core/workflows/execute-plan.md": "90cfc1e6e677d43f",
|
||||
"gsd-core/workflows/explore.md": "6c04f2e658d93261",
|
||||
"gsd-core/workflows/extract-learnings.md": "b6f01ca3d8f58de4",
|
||||
"gsd-core/workflows/fast.md": "11f5cd10ae5cc7d3",
|
||||
@@ -320,7 +320,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "924860e1f07defb0",
|
||||
"gsd-core/workflows/help/modes/default.md": "08a02976c0c5cc50",
|
||||
"gsd-core/workflows/help/modes/full.md": "3a19e96b69bcc33e",
|
||||
"gsd-core/workflows/help/modes/full.md": "67e3dffe34ddc9bc",
|
||||
"gsd-core/workflows/help/modes/topic.md": "5c160093f3cbf35d",
|
||||
"gsd-core/workflows/import.md": "3d3fa603ceb8bc9f",
|
||||
"gsd-core/workflows/inbox.md": "437f981ef9ae7b26",
|
||||
@@ -342,7 +342,7 @@
|
||||
"gsd-core/workflows/onboard.md": "6f9e6c0b484271a9",
|
||||
"gsd-core/workflows/pause-work.md": "f2b33bba5593d422",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "852f6d7c0c4299dc",
|
||||
"gsd-core/workflows/plan-phase.md": "27d4e6b4a084dd99",
|
||||
"gsd-core/workflows/plan-phase.md": "5124211d53f66feb",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "b36f77ac7344a072",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "197c0590326371b2",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "49f58c3f75be3eb5",
|
||||
@@ -467,7 +467,7 @@
|
||||
"skills/gsd-onboard/SKILL.md": "6ad789a03124cd4f",
|
||||
"skills/gsd-pause-work/SKILL.md": "e2de20b7539e78d4",
|
||||
"skills/gsd-phase/SKILL.md": "f87211f779315ced",
|
||||
"skills/gsd-plan-phase/SKILL.md": "6134e837750034ab",
|
||||
"skills/gsd-plan-phase/SKILL.md": "262e2e7ff694fc09",
|
||||
"skills/gsd-plan-review-convergence/SKILL.md": "e76d306ba8883cdb",
|
||||
"skills/gsd-pr-branch/SKILL.md": "87bb3306488565fb",
|
||||
"skills/gsd-profile-user/SKILL.md": "ee8e8547298006b8",
|
||||
|
||||
20
tests/fixtures/golden-install-parity/codex.json
vendored
20
tests/fixtures/golden-install-parity/codex.json
vendored
@@ -43,7 +43,7 @@
|
||||
".agents/skills/gsd-onboard/SKILL.md": "f42fc2edebeda671",
|
||||
".agents/skills/gsd-pause-work/SKILL.md": "b379469eed78a196",
|
||||
".agents/skills/gsd-phase/SKILL.md": "25477edc97a90c91",
|
||||
".agents/skills/gsd-plan-phase/SKILL.md": "19ead1acb151a868",
|
||||
".agents/skills/gsd-plan-phase/SKILL.md": "c6f734135356faac",
|
||||
".agents/skills/gsd-plan-review-convergence/SKILL.md": "f654089c11024027",
|
||||
".agents/skills/gsd-pr-branch/SKILL.md": "6901da15e321913e",
|
||||
".agents/skills/gsd-profile-user/SKILL.md": "6259fabfb6afe7be",
|
||||
@@ -102,8 +102,8 @@
|
||||
"agents/gsd-eval-auditor.toml": "9b81d61b3c5f722d",
|
||||
"agents/gsd-eval-planner.md": "73f2ad2ff2797a51",
|
||||
"agents/gsd-eval-planner.toml": "09468ad1a34ac468",
|
||||
"agents/gsd-executor.md": "0393e5f72e932127",
|
||||
"agents/gsd-executor.toml": "cdb7bdc04d3b6651",
|
||||
"agents/gsd-executor.md": "895482e838b13815",
|
||||
"agents/gsd-executor.toml": "a95f6ad24154e646",
|
||||
"agents/gsd-framework-selector.md": "ebae32430887d2e0",
|
||||
"agents/gsd-framework-selector.toml": "637e4e021b7ec380",
|
||||
"agents/gsd-integration-checker.md": "9cc875676cf7d741",
|
||||
@@ -120,8 +120,8 @@
|
||||
"agents/gsd-phase-researcher.toml": "44a3d510cd0ce3bd",
|
||||
"agents/gsd-plan-checker.md": "e7f02c10ea788aee",
|
||||
"agents/gsd-plan-checker.toml": "6f8ceb421d0ad721",
|
||||
"agents/gsd-planner.md": "5d638a2e37b63731",
|
||||
"agents/gsd-planner.toml": "50cec2af6b45a61c",
|
||||
"agents/gsd-planner.md": "7d48d3a81760af05",
|
||||
"agents/gsd-planner.toml": "2527d19b0c47ec66",
|
||||
"agents/gsd-project-researcher.md": "959f2e57c3d69ed8",
|
||||
"agents/gsd-project-researcher.toml": "f395e8e8c4baf1ed",
|
||||
"agents/gsd-research-synthesizer.md": "497f85adf53259ef",
|
||||
@@ -211,7 +211,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "3a625b42d9cb93ee",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "ca7a7af3f35ae61b",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "7889bfa28e82156b",
|
||||
"gsd-core/references/planner-revision.md": "2ebf1a714d1ec4bf",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -229,7 +229,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -345,7 +345,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "811b6d8489571581",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "8ccc16a6c7cf6000",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "ac1f1d9ada00a91e",
|
||||
"gsd-core/workflows/execute-plan.md": "89dda78cf3c1f1b7",
|
||||
"gsd-core/workflows/explore.md": "2ef10d17c8864a04",
|
||||
"gsd-core/workflows/extract-learnings.md": "f716aa03fcb5f8da",
|
||||
"gsd-core/workflows/fast.md": "e4ed60f96a7b3ac8",
|
||||
@@ -355,7 +355,7 @@
|
||||
"gsd-core/workflows/help.md": "08e1349950c5602a",
|
||||
"gsd-core/workflows/help/modes/brief.md": "da44b130d1afe556",
|
||||
"gsd-core/workflows/help/modes/default.md": "4bb3082d28026eea",
|
||||
"gsd-core/workflows/help/modes/full.md": "01a1ec54df54da6e",
|
||||
"gsd-core/workflows/help/modes/full.md": "773717d0699320b8",
|
||||
"gsd-core/workflows/help/modes/topic.md": "b7c7e4a8800bc3ea",
|
||||
"gsd-core/workflows/import.md": "cb3c8f9d09edb434",
|
||||
"gsd-core/workflows/inbox.md": "61b8b10e7a74b2e9",
|
||||
@@ -377,7 +377,7 @@
|
||||
"gsd-core/workflows/onboard.md": "83c40ba7055b8b24",
|
||||
"gsd-core/workflows/pause-work.md": "a217770ecafcb2e0",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "73d46f77c50a0690",
|
||||
"gsd-core/workflows/plan-phase.md": "ec989d6bc926bdf6",
|
||||
"gsd-core/workflows/plan-phase.md": "395fe273b017b2ff",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "d838b87563feedf6",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "f10975692cbd036e",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "f5edc589cab52a7b",
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.agent.md": "d603239b3e9fe428",
|
||||
"agents/gsd-eval-auditor.agent.md": "3c03009564de55c8",
|
||||
"agents/gsd-eval-planner.agent.md": "14751876fc2b5f16",
|
||||
"agents/gsd-executor.agent.md": "2ee1020062d8d800",
|
||||
"agents/gsd-executor.agent.md": "761523a925bd2649",
|
||||
"agents/gsd-framework-selector.agent.md": "cafeec0b3489be45",
|
||||
"agents/gsd-integration-checker.agent.md": "30439b804927acc7",
|
||||
"agents/gsd-intel-updater.agent.md": "238c1a886f35a25c",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.agent.md": "b1f488b0fa6a2395",
|
||||
"agents/gsd-phase-researcher.agent.md": "03cfb510a766fe93",
|
||||
"agents/gsd-plan-checker.agent.md": "c50a5b008ddcbfad",
|
||||
"agents/gsd-planner.agent.md": "d40d16eced1c6463",
|
||||
"agents/gsd-planner.agent.md": "2664dc34defa7580",
|
||||
"agents/gsd-project-researcher.agent.md": "d73bdbe986ffa8a6",
|
||||
"agents/gsd-research-synthesizer.agent.md": "f03eed4aa89e47c5",
|
||||
"agents/gsd-roadmapper.agent.md": "322048cf8ddcb4e5",
|
||||
@@ -106,7 +106,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "5262b23d822d9541",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "641b6c1ce4dd0c8c",
|
||||
"gsd-core/references/planner-mvp-mode.md": "35890221f823756f",
|
||||
"gsd-core/references/planner-mvp-mode.md": "355d8a9ff2b2b67e",
|
||||
"gsd-core/references/planner-reviews.md": "da39eace09a10743",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -124,7 +124,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -240,7 +240,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "1b73ab2fc47c9dbf",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "b26edeee455481a7",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "c5e9dae726db15cc",
|
||||
"gsd-core/workflows/execute-plan.md": "66879e62abcc33ae",
|
||||
"gsd-core/workflows/explore.md": "5fd91a8510e1114b",
|
||||
"gsd-core/workflows/extract-learnings.md": "f34d0b1927545b18",
|
||||
"gsd-core/workflows/fast.md": "66821090b6b8ed3b",
|
||||
@@ -250,7 +250,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "fa2675516b40e2e3",
|
||||
"gsd-core/workflows/help/modes/default.md": "be05e56b2c5ee2c0",
|
||||
"gsd-core/workflows/help/modes/full.md": "ce88d4eb6b301e09",
|
||||
"gsd-core/workflows/help/modes/full.md": "bd1bca7960fadd61",
|
||||
"gsd-core/workflows/help/modes/topic.md": "0bf9ab39d7044d69",
|
||||
"gsd-core/workflows/import.md": "f4fa65e332b00f7e",
|
||||
"gsd-core/workflows/inbox.md": "a448220c548f27bc",
|
||||
@@ -272,7 +272,7 @@
|
||||
"gsd-core/workflows/onboard.md": "a62602c6f3fd538a",
|
||||
"gsd-core/workflows/pause-work.md": "9ce66367be6c40db",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "5cf589802d08bdf3",
|
||||
"gsd-core/workflows/plan-phase.md": "5a2cd75b453aa573",
|
||||
"gsd-core/workflows/plan-phase.md": "ab96c552cc86d2cc",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "4099ef6d0868de60",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "bb052483744f0a6d",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "e9de7a96bbfff261",
|
||||
@@ -370,7 +370,7 @@
|
||||
"skills/gsd-onboard/SKILL.md": "4d325f3033df2d37",
|
||||
"skills/gsd-pause-work/SKILL.md": "4f0caa008a8001ff",
|
||||
"skills/gsd-phase/SKILL.md": "d38c7f9b1d0d2360",
|
||||
"skills/gsd-plan-phase/SKILL.md": "d257bb9b1786039d",
|
||||
"skills/gsd-plan-phase/SKILL.md": "7761a2f06ac98b30",
|
||||
"skills/gsd-plan-review-convergence/SKILL.md": "9338b49ecddd4ae8",
|
||||
"skills/gsd-pr-branch/SKILL.md": "9cd9740db385d95a",
|
||||
"skills/gsd-profile-user/SKILL.md": "052a8e17ecda40f1",
|
||||
|
||||
18
tests/fixtures/golden-install-parity/cursor.json
vendored
18
tests/fixtures/golden-install-parity/cursor.json
vendored
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.md": "56395dbdabf076f6",
|
||||
"agents/gsd-eval-auditor.md": "ad2840fd5cd76172",
|
||||
"agents/gsd-eval-planner.md": "2049dac060d00eda",
|
||||
"agents/gsd-executor.md": "e416f9c48fb44c75",
|
||||
"agents/gsd-executor.md": "68796b76140841c2",
|
||||
"agents/gsd-framework-selector.md": "4b77eebbe9288d80",
|
||||
"agents/gsd-integration-checker.md": "5da30584d06b878c",
|
||||
"agents/gsd-intel-updater.md": "b8971c5d96e63b38",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "1229c215677f740d",
|
||||
"agents/gsd-phase-researcher.md": "982d59921bed463d",
|
||||
"agents/gsd-plan-checker.md": "ba51999876d40cf2",
|
||||
"agents/gsd-planner.md": "15b5830dafb94517",
|
||||
"agents/gsd-planner.md": "1feec75fe52b56bd",
|
||||
"agents/gsd-project-researcher.md": "beeac940d3a10e76",
|
||||
"agents/gsd-research-synthesizer.md": "6315f016d55176f4",
|
||||
"agents/gsd-roadmapper.md": "d28e7d4bac46dde2",
|
||||
@@ -79,7 +79,7 @@
|
||||
"commands/gsd-onboard.md": "d9e52f558fc2b90f",
|
||||
"commands/gsd-pause-work.md": "59630f05f95fff68",
|
||||
"commands/gsd-phase.md": "9a073dcd0f934f90",
|
||||
"commands/gsd-plan-phase.md": "57de92131fcb16b8",
|
||||
"commands/gsd-plan-phase.md": "462995ee69ba35b4",
|
||||
"commands/gsd-plan-review-convergence.md": "bded2d831f8ac9de",
|
||||
"commands/gsd-pr-branch.md": "ef2eedb0ed4295da",
|
||||
"commands/gsd-profile-user.md": "0e99de36619c3b7d",
|
||||
@@ -176,7 +176,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "5e7925ad77d931d1",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "ca7a7af3f35ae61b",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "da39eace09a10743",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -194,7 +194,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -310,7 +310,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "811b6d8489571581",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "8ccc16a6c7cf6000",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "83dc1bf7f73735c0",
|
||||
"gsd-core/workflows/execute-plan.md": "a57ce521a92348ef",
|
||||
"gsd-core/workflows/explore.md": "b9eea1bac358c9ce",
|
||||
"gsd-core/workflows/extract-learnings.md": "d8177b0c13b7e5ee",
|
||||
"gsd-core/workflows/fast.md": "77b49793e26b3323",
|
||||
@@ -320,7 +320,7 @@
|
||||
"gsd-core/workflows/help.md": "08e1349950c5602a",
|
||||
"gsd-core/workflows/help/modes/brief.md": "fa2675516b40e2e3",
|
||||
"gsd-core/workflows/help/modes/default.md": "b88ff431fffe40ae",
|
||||
"gsd-core/workflows/help/modes/full.md": "a7a42d4340e8e00b",
|
||||
"gsd-core/workflows/help/modes/full.md": "d30803f316abd6fa",
|
||||
"gsd-core/workflows/help/modes/topic.md": "cee80e0adfa3b06c",
|
||||
"gsd-core/workflows/import.md": "5d5fb8e51f6a243a",
|
||||
"gsd-core/workflows/inbox.md": "797c287852eb8957",
|
||||
@@ -342,7 +342,7 @@
|
||||
"gsd-core/workflows/onboard.md": "20c28136423d40ac",
|
||||
"gsd-core/workflows/pause-work.md": "5716362557f44ce4",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "1b43d12812f7bc1e",
|
||||
"gsd-core/workflows/plan-phase.md": "c07b91bb188270d7",
|
||||
"gsd-core/workflows/plan-phase.md": "846e7347c40cc643",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "e06ccd4d4c0703fb",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "197c0590326371b2",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "3bed01c3c906ac52",
|
||||
@@ -445,7 +445,7 @@
|
||||
"skills/gsd-onboard/SKILL.md": "cae1f9382469fa00",
|
||||
"skills/gsd-pause-work/SKILL.md": "10e7531a2cb392ad",
|
||||
"skills/gsd-phase/SKILL.md": "1a2c9b64c1af7ffc",
|
||||
"skills/gsd-plan-phase/SKILL.md": "0784da05d41dcfe7",
|
||||
"skills/gsd-plan-phase/SKILL.md": "b7846866b27c6d3f",
|
||||
"skills/gsd-plan-review-convergence/SKILL.md": "6ffc6592e39f2e8a",
|
||||
"skills/gsd-pr-branch/SKILL.md": "725727e3c2b66543",
|
||||
"skills/gsd-profile-user/SKILL.md": "eb6842b23f1f9256",
|
||||
|
||||
16
tests/fixtures/golden-install-parity/hermes.json
vendored
16
tests/fixtures/golden-install-parity/hermes.json
vendored
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.md": "412cdbb05ba252ea",
|
||||
"agents/gsd-eval-auditor.md": "4ffb265063c318e5",
|
||||
"agents/gsd-eval-planner.md": "03448fc9c5774b56",
|
||||
"agents/gsd-executor.md": "9c00261ee92596bb",
|
||||
"agents/gsd-executor.md": "c1f807f853dc53d7",
|
||||
"agents/gsd-framework-selector.md": "ea9981d65d6b3429",
|
||||
"agents/gsd-integration-checker.md": "35b4f2969d279871",
|
||||
"agents/gsd-intel-updater.md": "5fe5edfae2719cb8",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "cea092600aeb3978",
|
||||
"agents/gsd-phase-researcher.md": "2bd0402f33d757ca",
|
||||
"agents/gsd-plan-checker.md": "4b4e2b475bf5b5c3",
|
||||
"agents/gsd-planner.md": "018542e335a983fa",
|
||||
"agents/gsd-planner.md": "a48726410b038084",
|
||||
"agents/gsd-project-researcher.md": "425a7df7f37a5c06",
|
||||
"agents/gsd-research-synthesizer.md": "9d31c87fc2c87ffa",
|
||||
"agents/gsd-roadmapper.md": "64dce5d5f9fa5654",
|
||||
@@ -105,7 +105,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "6cfa61ca5f6c1879",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "8f598e08696843c0",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "da39eace09a10743",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -123,7 +123,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -239,7 +239,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "c9ad17d6cc6dfe45",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "5a78d5dfea6a911a",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "4dbe9b6f0c976245",
|
||||
"gsd-core/workflows/execute-plan.md": "5a6b2176073db3fd",
|
||||
"gsd-core/workflows/explore.md": "48770d68e8b9c132",
|
||||
"gsd-core/workflows/extract-learnings.md": "e9e167c718949c0b",
|
||||
"gsd-core/workflows/fast.md": "c801145115755524",
|
||||
@@ -249,7 +249,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "fa2675516b40e2e3",
|
||||
"gsd-core/workflows/help/modes/default.md": "8874dac94eb68ae6",
|
||||
"gsd-core/workflows/help/modes/full.md": "62779da88565d65a",
|
||||
"gsd-core/workflows/help/modes/full.md": "cad4eed3907e8a58",
|
||||
"gsd-core/workflows/help/modes/topic.md": "6e42db16f1568be9",
|
||||
"gsd-core/workflows/import.md": "a441445515bc2dd5",
|
||||
"gsd-core/workflows/inbox.md": "91aac6360e1a8672",
|
||||
@@ -271,7 +271,7 @@
|
||||
"gsd-core/workflows/onboard.md": "3c50ed1f1fd07619",
|
||||
"gsd-core/workflows/pause-work.md": "ae2d5789a95f70fe",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "c86cdc1964256b98",
|
||||
"gsd-core/workflows/plan-phase.md": "6e3846fb2ae1bd45",
|
||||
"gsd-core/workflows/plan-phase.md": "79bc3a45f034d851",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "4099ef6d0868de60",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "9607e6d03e93c1c2",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "62f8e4f3b475fe5f",
|
||||
@@ -418,7 +418,7 @@
|
||||
"skills/gsd/gsd-ns-workflow/skills/mvp-phase/SKILL.md": "0804dfd4124526ba",
|
||||
"skills/gsd/gsd-ns-workflow/skills/next/SKILL.md": "1d30cf6061d15168",
|
||||
"skills/gsd/gsd-ns-workflow/skills/phase/SKILL.md": "610bd06d71198849",
|
||||
"skills/gsd/gsd-ns-workflow/skills/plan-phase/SKILL.md": "f06f0e2fc8def3f0",
|
||||
"skills/gsd/gsd-ns-workflow/skills/plan-phase/SKILL.md": "cb1cf29451588047",
|
||||
"skills/gsd/gsd-ns-workflow/skills/plan-review-convergence/SKILL.md": "fddf8bd7b3ae1f10",
|
||||
"skills/gsd/gsd-ns-workflow/skills/progress/SKILL.md": "6ec0e4715dde7ee2",
|
||||
"skills/gsd/gsd-ns-workflow/skills/quick/SKILL.md": "65e377345e9c49a8",
|
||||
|
||||
18
tests/fixtures/golden-install-parity/kilo.json
vendored
18
tests/fixtures/golden-install-parity/kilo.json
vendored
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.md": "a3874d80bcbc7380",
|
||||
"agents/gsd-eval-auditor.md": "630d4cd3bd6ea195",
|
||||
"agents/gsd-eval-planner.md": "3db12cde12aeb2c1",
|
||||
"agents/gsd-executor.md": "24a1c8c8e829d2d1",
|
||||
"agents/gsd-executor.md": "c53d111b0c795f7c",
|
||||
"agents/gsd-framework-selector.md": "ad5f2c6b9bec6270",
|
||||
"agents/gsd-integration-checker.md": "c503e2f4a3d8ec05",
|
||||
"agents/gsd-intel-updater.md": "231393da62a45b2e",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "6a5408fd11d70391",
|
||||
"agents/gsd-phase-researcher.md": "94818f28c498bb26",
|
||||
"agents/gsd-plan-checker.md": "56164206242c8caf",
|
||||
"agents/gsd-planner.md": "5adf9f02c77d6859",
|
||||
"agents/gsd-planner.md": "1fbe1f6e9c3b74f0",
|
||||
"agents/gsd-project-researcher.md": "60573a38d3dfd9fe",
|
||||
"agents/gsd-research-synthesizer.md": "1f7cd286c5783c86",
|
||||
"agents/gsd-roadmapper.md": "277e0a3252553ab7",
|
||||
@@ -79,7 +79,7 @@
|
||||
"command/gsd-onboard.md": "3e87a21c9c04f0d7",
|
||||
"command/gsd-pause-work.md": "04e993b1c9f8322b",
|
||||
"command/gsd-phase.md": "8f0e98dc6c223229",
|
||||
"command/gsd-plan-phase.md": "b37e9a61f946c975",
|
||||
"command/gsd-plan-phase.md": "5ef48b00031b341c",
|
||||
"command/gsd-plan-review-convergence.md": "79a28ef110f9f481",
|
||||
"command/gsd-pr-branch.md": "68e724607de3c480",
|
||||
"command/gsd-profile-user.md": "9704158b2d79cad2",
|
||||
@@ -176,7 +176,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "3a625b42d9cb93ee",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "ca7a7af3f35ae61b",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "da39eace09a10743",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -194,7 +194,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -310,7 +310,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "811b6d8489571581",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "8ccc16a6c7cf6000",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "8dc89b35582407f7",
|
||||
"gsd-core/workflows/execute-plan.md": "21c1dc158588803a",
|
||||
"gsd-core/workflows/explore.md": "14242d36d4822df6",
|
||||
"gsd-core/workflows/extract-learnings.md": "d8177b0c13b7e5ee",
|
||||
"gsd-core/workflows/fast.md": "41a6568b873aef99",
|
||||
@@ -320,7 +320,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "fa2675516b40e2e3",
|
||||
"gsd-core/workflows/help/modes/default.md": "be05e56b2c5ee2c0",
|
||||
"gsd-core/workflows/help/modes/full.md": "775f766dfafb72f9",
|
||||
"gsd-core/workflows/help/modes/full.md": "c41d1012b4577fe4",
|
||||
"gsd-core/workflows/help/modes/topic.md": "0bf9ab39d7044d69",
|
||||
"gsd-core/workflows/import.md": "f8bbe6f2c0e08a78",
|
||||
"gsd-core/workflows/inbox.md": "a073396097c89c01",
|
||||
@@ -342,7 +342,7 @@
|
||||
"gsd-core/workflows/onboard.md": "78b288089305dc46",
|
||||
"gsd-core/workflows/pause-work.md": "a6e5336c409fdc8b",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "1b43d12812f7bc1e",
|
||||
"gsd-core/workflows/plan-phase.md": "65667ea11d155b97",
|
||||
"gsd-core/workflows/plan-phase.md": "aca787850411c004",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "4099ef6d0868de60",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "f10975692cbd036e",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "e9de7a96bbfff261",
|
||||
@@ -441,7 +441,7 @@
|
||||
"skills/gsd-onboard/SKILL.md": "0e3cc902f44b41b8",
|
||||
"skills/gsd-pause-work/SKILL.md": "34366b18a392a717",
|
||||
"skills/gsd-phase/SKILL.md": "64a241d4f8665aa2",
|
||||
"skills/gsd-plan-phase/SKILL.md": "c73cba04a26f0bfe",
|
||||
"skills/gsd-plan-phase/SKILL.md": "fd51709d82eb05b6",
|
||||
"skills/gsd-plan-review-convergence/SKILL.md": "fae05d6ab16cac10",
|
||||
"skills/gsd-pr-branch/SKILL.md": "a80da6aa95efc50d",
|
||||
"skills/gsd-profile-user/SKILL.md": "4ac2c5ea45d17a9d",
|
||||
|
||||
16
tests/fixtures/golden-install-parity/kimi.json
vendored
16
tests/fixtures/golden-install-parity/kimi.json
vendored
@@ -61,7 +61,7 @@
|
||||
"agents/subagents/gsd-eval-auditor.yaml": "e3d868bd5fefe938",
|
||||
"agents/subagents/gsd-eval-planner.md": "70f8c5727bfb9876",
|
||||
"agents/subagents/gsd-eval-planner.yaml": "df8499f7af297ec2",
|
||||
"agents/subagents/gsd-executor.md": "d3b2806c227c6a27",
|
||||
"agents/subagents/gsd-executor.md": "948d122c6607e343",
|
||||
"agents/subagents/gsd-executor.yaml": "e29422986636fd64",
|
||||
"agents/subagents/gsd-framework-selector.md": "a15b7aa1e0576e16",
|
||||
"agents/subagents/gsd-framework-selector.yaml": "fb52c31cde27b0e3",
|
||||
@@ -79,7 +79,7 @@
|
||||
"agents/subagents/gsd-phase-researcher.yaml": "7633c8e82617e7cc",
|
||||
"agents/subagents/gsd-plan-checker.md": "bd302afc01ed40f0",
|
||||
"agents/subagents/gsd-plan-checker.yaml": "8295181071121db8",
|
||||
"agents/subagents/gsd-planner.md": "f4a053af3e081edf",
|
||||
"agents/subagents/gsd-planner.md": "aaaac708b1cf2939",
|
||||
"agents/subagents/gsd-planner.yaml": "2e83ee194bcd7fbd",
|
||||
"agents/subagents/gsd-project-researcher.md": "39bc2ec5a8b18283",
|
||||
"agents/subagents/gsd-project-researcher.yaml": "ce12586b0347e2dc",
|
||||
@@ -169,7 +169,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "56d05e841630b3f4",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "ca7a7af3f35ae61b",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "dda0193a0fbd4947",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -187,7 +187,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -303,7 +303,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "811b6d8489571581",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "8ccc16a6c7cf6000",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "c8502b7475d797a7",
|
||||
"gsd-core/workflows/execute-plan.md": "3c4310c2dd9ef0ad",
|
||||
"gsd-core/workflows/explore.md": "6c04f2e658d93261",
|
||||
"gsd-core/workflows/extract-learnings.md": "b6f01ca3d8f58de4",
|
||||
"gsd-core/workflows/fast.md": "11f5cd10ae5cc7d3",
|
||||
@@ -313,7 +313,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "924860e1f07defb0",
|
||||
"gsd-core/workflows/help/modes/default.md": "08a02976c0c5cc50",
|
||||
"gsd-core/workflows/help/modes/full.md": "ee47582c5d8d94a7",
|
||||
"gsd-core/workflows/help/modes/full.md": "9706b4bee6829f82",
|
||||
"gsd-core/workflows/help/modes/topic.md": "5c160093f3cbf35d",
|
||||
"gsd-core/workflows/import.md": "3d3fa603ceb8bc9f",
|
||||
"gsd-core/workflows/inbox.md": "437f981ef9ae7b26",
|
||||
@@ -335,7 +335,7 @@
|
||||
"gsd-core/workflows/onboard.md": "6f9e6c0b484271a9",
|
||||
"gsd-core/workflows/pause-work.md": "f2b33bba5593d422",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "852f6d7c0c4299dc",
|
||||
"gsd-core/workflows/plan-phase.md": "f584e1d652e47f40",
|
||||
"gsd-core/workflows/plan-phase.md": "851eb6ba0bc911b9",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "b36f77ac7344a072",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "197c0590326371b2",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "49f58c3f75be3eb5",
|
||||
@@ -432,7 +432,7 @@
|
||||
"skills/gsd-onboard/SKILL.md": "fd66b3c5b9c6a871",
|
||||
"skills/gsd-pause-work/SKILL.md": "95017c70ae9dca0d",
|
||||
"skills/gsd-phase/SKILL.md": "31578c329cc2583e",
|
||||
"skills/gsd-plan-phase/SKILL.md": "54798eddf30056b5",
|
||||
"skills/gsd-plan-phase/SKILL.md": "4c2c6641f59f6496",
|
||||
"skills/gsd-plan-review-convergence/SKILL.md": "0b549738d41d59b5",
|
||||
"skills/gsd-pr-branch/SKILL.md": "67f468db29ff2cf1",
|
||||
"skills/gsd-profile-user/SKILL.md": "19a1d3aba57f6c7c",
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.md": "71250e759ca9e723",
|
||||
"agents/gsd-eval-auditor.md": "c88890105f32ace6",
|
||||
"agents/gsd-eval-planner.md": "60bddb70a937f796",
|
||||
"agents/gsd-executor.md": "cad2c28464d535df",
|
||||
"agents/gsd-executor.md": "4f180ee85214abe8",
|
||||
"agents/gsd-framework-selector.md": "1c0a10355e787675",
|
||||
"agents/gsd-integration-checker.md": "a9de5928e5a5c649",
|
||||
"agents/gsd-intel-updater.md": "493e07482fa6198a",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "7c6d1d9817a9c1e7",
|
||||
"agents/gsd-phase-researcher.md": "9874110700b41f48",
|
||||
"agents/gsd-plan-checker.md": "28ca3dc43669894f",
|
||||
"agents/gsd-planner.md": "4fdb27fe53d38935",
|
||||
"agents/gsd-planner.md": "4e568338c7ee6b80",
|
||||
"agents/gsd-project-researcher.md": "dae210ae0b3c6e2b",
|
||||
"agents/gsd-research-synthesizer.md": "e02c6ad5d1b74171",
|
||||
"agents/gsd-roadmapper.md": "1658a40b20d8b575",
|
||||
@@ -79,7 +79,7 @@
|
||||
"command/gsd-onboard.md": "3aafaeb5d3941efe",
|
||||
"command/gsd-pause-work.md": "bb5bf91a2e3e480e",
|
||||
"command/gsd-phase.md": "6bcda1539f949d5a",
|
||||
"command/gsd-plan-phase.md": "7ee44086b59862b9",
|
||||
"command/gsd-plan-phase.md": "2c673275cb9517fe",
|
||||
"command/gsd-plan-review-convergence.md": "79e141ca34edba9a",
|
||||
"command/gsd-pr-branch.md": "31fca4f1d6c4ee62",
|
||||
"command/gsd-profile-user.md": "725c14ae7203b5b6",
|
||||
@@ -176,7 +176,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "3a625b42d9cb93ee",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "97f6e67b56c072c1",
|
||||
"gsd-core/references/planner-mvp-mode.md": "2901bb0fdb156d5c",
|
||||
"gsd-core/references/planner-mvp-mode.md": "35d30284ea9110c0",
|
||||
"gsd-core/references/planner-reviews.md": "da39eace09a10743",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -194,7 +194,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -310,7 +310,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "baa2c401af10a80a",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "b86ca98268dd3705",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "e8de8ea661c1fe81",
|
||||
"gsd-core/workflows/execute-plan.md": "cdd49ac15770c9d1",
|
||||
"gsd-core/workflows/explore.md": "7f5f9231cfd3089b",
|
||||
"gsd-core/workflows/extract-learnings.md": "92b3c0979604b7d0",
|
||||
"gsd-core/workflows/fast.md": "12187b242e6af970",
|
||||
@@ -320,7 +320,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "fa2675516b40e2e3",
|
||||
"gsd-core/workflows/help/modes/default.md": "be05e56b2c5ee2c0",
|
||||
"gsd-core/workflows/help/modes/full.md": "35598c0ed5f7356f",
|
||||
"gsd-core/workflows/help/modes/full.md": "de70e34ebd257ce9",
|
||||
"gsd-core/workflows/help/modes/topic.md": "0bf9ab39d7044d69",
|
||||
"gsd-core/workflows/import.md": "67fbf389ab8e57b4",
|
||||
"gsd-core/workflows/inbox.md": "a073396097c89c01",
|
||||
@@ -342,7 +342,7 @@
|
||||
"gsd-core/workflows/onboard.md": "102556e1715c01b9",
|
||||
"gsd-core/workflows/pause-work.md": "70c72beca55c080a",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "0a9dacd422cd9533",
|
||||
"gsd-core/workflows/plan-phase.md": "824b0fa8d7554ae7",
|
||||
"gsd-core/workflows/plan-phase.md": "b252c6e1427d508e",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "4099ef6d0868de60",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "3a09141de7f3dedb",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "e9de7a96bbfff261",
|
||||
@@ -469,7 +469,7 @@
|
||||
"skills/gsd-onboard/SKILL.md": "ea0b1217e5ecae23",
|
||||
"skills/gsd-pause-work/SKILL.md": "c7e9ba4f242c4648",
|
||||
"skills/gsd-phase/SKILL.md": "ee78c0c56c814d84",
|
||||
"skills/gsd-plan-phase/SKILL.md": "6abcc3a1568a6bb9",
|
||||
"skills/gsd-plan-phase/SKILL.md": "c9b3b5cb0fbb42a9",
|
||||
"skills/gsd-plan-review-convergence/SKILL.md": "15ab9274bbb733a7",
|
||||
"skills/gsd-pr-branch/SKILL.md": "8fa5a8fa217fe913",
|
||||
"skills/gsd-profile-user/SKILL.md": "3e6155a64523d59f",
|
||||
|
||||
10
tests/fixtures/golden-install-parity/pi.json
vendored
10
tests/fixtures/golden-install-parity/pi.json
vendored
@@ -72,7 +72,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "56d05e841630b3f4",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "ca7a7af3f35ae61b",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "dda0193a0fbd4947",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -90,7 +90,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -206,7 +206,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "811b6d8489571581",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "8ccc16a6c7cf6000",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "ff172c3540b52e9d",
|
||||
"gsd-core/workflows/execute-plan.md": "d797619290e91120",
|
||||
"gsd-core/workflows/explore.md": "6c04f2e658d93261",
|
||||
"gsd-core/workflows/extract-learnings.md": "b6f01ca3d8f58de4",
|
||||
"gsd-core/workflows/fast.md": "11f5cd10ae5cc7d3",
|
||||
@@ -216,7 +216,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "924860e1f07defb0",
|
||||
"gsd-core/workflows/help/modes/default.md": "08a02976c0c5cc50",
|
||||
"gsd-core/workflows/help/modes/full.md": "87951776f730390d",
|
||||
"gsd-core/workflows/help/modes/full.md": "584e50ea86a86b6f",
|
||||
"gsd-core/workflows/help/modes/topic.md": "5c160093f3cbf35d",
|
||||
"gsd-core/workflows/import.md": "3d3fa603ceb8bc9f",
|
||||
"gsd-core/workflows/inbox.md": "437f981ef9ae7b26",
|
||||
@@ -238,7 +238,7 @@
|
||||
"gsd-core/workflows/onboard.md": "6f9e6c0b484271a9",
|
||||
"gsd-core/workflows/pause-work.md": "f2b33bba5593d422",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "852f6d7c0c4299dc",
|
||||
"gsd-core/workflows/plan-phase.md": "5a841e26f1d6f9ae",
|
||||
"gsd-core/workflows/plan-phase.md": "915e5aee921c011f",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "b36f77ac7344a072",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "197c0590326371b2",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "49f58c3f75be3eb5",
|
||||
|
||||
16
tests/fixtures/golden-install-parity/qwen.json
vendored
16
tests/fixtures/golden-install-parity/qwen.json
vendored
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.md": "bd054bb27beed2a7",
|
||||
"agents/gsd-eval-auditor.md": "57cc7458ab5de6b7",
|
||||
"agents/gsd-eval-planner.md": "01b665728dde4ccf",
|
||||
"agents/gsd-executor.md": "72c02583b569a25f",
|
||||
"agents/gsd-executor.md": "988960899bd49c68",
|
||||
"agents/gsd-framework-selector.md": "82ba6abea84226b7",
|
||||
"agents/gsd-integration-checker.md": "90835dbc7dfa1691",
|
||||
"agents/gsd-intel-updater.md": "3cc4f6ddd04676ec",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "83c66c7722e8b165",
|
||||
"agents/gsd-phase-researcher.md": "284e55a86ae46d7f",
|
||||
"agents/gsd-plan-checker.md": "c8a8fcc8ed38eff0",
|
||||
"agents/gsd-planner.md": "a14e9e4981519580",
|
||||
"agents/gsd-planner.md": "75989c686d191143",
|
||||
"agents/gsd-project-researcher.md": "b5baac64a15c85e2",
|
||||
"agents/gsd-research-synthesizer.md": "6cd9b501dc97bd50",
|
||||
"agents/gsd-roadmapper.md": "c357a77ab919e9e5",
|
||||
@@ -105,7 +105,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "ee0edddeed8eb946",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "3f6f5ee62d86f72d",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "da39eace09a10743",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -123,7 +123,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -239,7 +239,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "98db1ba4c39cd784",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "56fc78db4de210df",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "503b0ced0731dc38",
|
||||
"gsd-core/workflows/execute-plan.md": "79410db4a6bb5a46",
|
||||
"gsd-core/workflows/explore.md": "e1a83a8982532e5b",
|
||||
"gsd-core/workflows/extract-learnings.md": "dd4fdb88605de49a",
|
||||
"gsd-core/workflows/fast.md": "93ed453edddd8c0c",
|
||||
@@ -249,7 +249,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "fa2675516b40e2e3",
|
||||
"gsd-core/workflows/help/modes/default.md": "7ca77077085452f5",
|
||||
"gsd-core/workflows/help/modes/full.md": "00c1433a639f6ed8",
|
||||
"gsd-core/workflows/help/modes/full.md": "9d620deed3bf9011",
|
||||
"gsd-core/workflows/help/modes/topic.md": "6e42db16f1568be9",
|
||||
"gsd-core/workflows/import.md": "e56c18a984396066",
|
||||
"gsd-core/workflows/inbox.md": "91aac6360e1a8672",
|
||||
@@ -271,7 +271,7 @@
|
||||
"gsd-core/workflows/onboard.md": "3c50ed1f1fd07619",
|
||||
"gsd-core/workflows/pause-work.md": "be33f84dc1d4822f",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "d98e98486123eb97",
|
||||
"gsd-core/workflows/plan-phase.md": "e33c0b28f48db48a",
|
||||
"gsd-core/workflows/plan-phase.md": "2d1f7925036bd901",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "4099ef6d0868de60",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "c22ff5ea46de665a",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "d050d8d551ed1756",
|
||||
@@ -417,7 +417,7 @@
|
||||
"skills/gsd-ns-workflow/skills/mvp-phase/SKILL.md": "f9a1348c6c297579",
|
||||
"skills/gsd-ns-workflow/skills/next/SKILL.md": "13e394affe675498",
|
||||
"skills/gsd-ns-workflow/skills/phase/SKILL.md": "1ed640e5f06c7be6",
|
||||
"skills/gsd-ns-workflow/skills/plan-phase/SKILL.md": "75979bb1db5557af",
|
||||
"skills/gsd-ns-workflow/skills/plan-phase/SKILL.md": "cdfe074359399099",
|
||||
"skills/gsd-ns-workflow/skills/plan-review-convergence/SKILL.md": "c3dd8bfa877eaed5",
|
||||
"skills/gsd-ns-workflow/skills/progress/SKILL.md": "943538c4ac6bde19",
|
||||
"skills/gsd-ns-workflow/skills/quick/SKILL.md": "bd5e4cb79bc41611",
|
||||
|
||||
16
tests/fixtures/golden-install-parity/trae.json
vendored
16
tests/fixtures/golden-install-parity/trae.json
vendored
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.md": "b80f76874c04e515",
|
||||
"agents/gsd-eval-auditor.md": "470bf16303ec4d2e",
|
||||
"agents/gsd-eval-planner.md": "22334fde85723c9d",
|
||||
"agents/gsd-executor.md": "e5b96a52bd3c96c8",
|
||||
"agents/gsd-executor.md": "2e92d53ec70b614f",
|
||||
"agents/gsd-framework-selector.md": "7726fccc86bfeb50",
|
||||
"agents/gsd-integration-checker.md": "7cd2072984411c7f",
|
||||
"agents/gsd-intel-updater.md": "83de6ba9172891c3",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "b5d7a4abb1baecb9",
|
||||
"agents/gsd-phase-researcher.md": "2256f1f82212c757",
|
||||
"agents/gsd-plan-checker.md": "523119bd5d6599fe",
|
||||
"agents/gsd-planner.md": "d0e98ddbfb1339f5",
|
||||
"agents/gsd-planner.md": "3cbce9388340c855",
|
||||
"agents/gsd-project-researcher.md": "ddf7794e81300032",
|
||||
"agents/gsd-research-synthesizer.md": "a124b00271748d07",
|
||||
"agents/gsd-roadmapper.md": "493ef92b42b12cf4",
|
||||
@@ -105,7 +105,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "0bb1176995ac1d81",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "9a9383599893ea7e",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "da39eace09a10743",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -123,7 +123,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -239,7 +239,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "0a9e915170c7121c",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "4b00ef3484a84954",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "4910f75bab2040ab",
|
||||
"gsd-core/workflows/execute-plan.md": "feae1e61007feab2",
|
||||
"gsd-core/workflows/explore.md": "8a5437aa0c239c38",
|
||||
"gsd-core/workflows/extract-learnings.md": "3fcc858b20d0d0e6",
|
||||
"gsd-core/workflows/fast.md": "0f05b1e008ac2fc2",
|
||||
@@ -249,7 +249,7 @@
|
||||
"gsd-core/workflows/help.md": "08e1349950c5602a",
|
||||
"gsd-core/workflows/help/modes/brief.md": "fa2675516b40e2e3",
|
||||
"gsd-core/workflows/help/modes/default.md": "ed7368e0d1b8644a",
|
||||
"gsd-core/workflows/help/modes/full.md": "b3287aa383806758",
|
||||
"gsd-core/workflows/help/modes/full.md": "249beacac5798123",
|
||||
"gsd-core/workflows/help/modes/topic.md": "8a5344e56fa64ab9",
|
||||
"gsd-core/workflows/import.md": "31af58468db15daf",
|
||||
"gsd-core/workflows/inbox.md": "e9ea37b2d46dc5b4",
|
||||
@@ -271,7 +271,7 @@
|
||||
"gsd-core/workflows/onboard.md": "61f111302af0f404",
|
||||
"gsd-core/workflows/pause-work.md": "c20d267e28ce92f0",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "26db7b9329b7ddc8",
|
||||
"gsd-core/workflows/plan-phase.md": "8bc16d0a44541ac4",
|
||||
"gsd-core/workflows/plan-phase.md": "c4d0d0558a3b116e",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "e06ccd4d4c0703fb",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "778b73a8db6f7c32",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "619946c879f33b9d",
|
||||
@@ -389,7 +389,7 @@
|
||||
"skills/gsd-ns-workflow/skills/mvp-phase/SKILL.md": "fef8178c9920c2dd",
|
||||
"skills/gsd-ns-workflow/skills/next/SKILL.md": "faadd9e2817e7324",
|
||||
"skills/gsd-ns-workflow/skills/phase/SKILL.md": "df3efcd61f7cc796",
|
||||
"skills/gsd-ns-workflow/skills/plan-phase/SKILL.md": "b6f6395312983c31",
|
||||
"skills/gsd-ns-workflow/skills/plan-phase/SKILL.md": "a937c8c42e5eaea3",
|
||||
"skills/gsd-ns-workflow/skills/plan-review-convergence/SKILL.md": "d67e16a8e28b780d",
|
||||
"skills/gsd-ns-workflow/skills/progress/SKILL.md": "37a37d2cdfba46ea",
|
||||
"skills/gsd-ns-workflow/skills/quick/SKILL.md": "6fd1b96274b23a9f",
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.md": "56395dbdabf076f6",
|
||||
"agents/gsd-eval-auditor.md": "fb64fc5acf359747",
|
||||
"agents/gsd-eval-planner.md": "2049dac060d00eda",
|
||||
"agents/gsd-executor.md": "1eb9f58c5e9da94d",
|
||||
"agents/gsd-executor.md": "5d56ba16562745d0",
|
||||
"agents/gsd-framework-selector.md": "4b77eebbe9288d80",
|
||||
"agents/gsd-integration-checker.md": "4ffb37fb230c2b90",
|
||||
"agents/gsd-intel-updater.md": "a81d77c143c02108",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "ada0c169daa2f0ec",
|
||||
"agents/gsd-phase-researcher.md": "2a45ebde829555ec",
|
||||
"agents/gsd-plan-checker.md": "33fbf70b7b24eb1e",
|
||||
"agents/gsd-planner.md": "f408404c60840c9f",
|
||||
"agents/gsd-planner.md": "c4072a4678c17485",
|
||||
"agents/gsd-project-researcher.md": "f6697b316b5995ba",
|
||||
"agents/gsd-research-synthesizer.md": "04036f38c1d373ea",
|
||||
"agents/gsd-roadmapper.md": "fb62e1e3de84b5f9",
|
||||
@@ -105,7 +105,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "86c8c7052806711f",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "18d50b6d12db830e",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "da39eace09a10743",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -123,7 +123,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -239,7 +239,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "15bca39a75c664be",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "02324a66cb42fae3",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "c8567fb4438b4404",
|
||||
"gsd-core/workflows/execute-plan.md": "403c53e3148033a3",
|
||||
"gsd-core/workflows/explore.md": "04e461ff8159a24e",
|
||||
"gsd-core/workflows/extract-learnings.md": "af793bdf4ffd1c8a",
|
||||
"gsd-core/workflows/fast.md": "b03b9f595892479a",
|
||||
@@ -249,7 +249,7 @@
|
||||
"gsd-core/workflows/help.md": "08e1349950c5602a",
|
||||
"gsd-core/workflows/help/modes/brief.md": "fa2675516b40e2e3",
|
||||
"gsd-core/workflows/help/modes/default.md": "6a253f1756f74e95",
|
||||
"gsd-core/workflows/help/modes/full.md": "0cd464dcd077bbfc",
|
||||
"gsd-core/workflows/help/modes/full.md": "8f1bf0e563a02255",
|
||||
"gsd-core/workflows/help/modes/topic.md": "cee80e0adfa3b06c",
|
||||
"gsd-core/workflows/import.md": "029cacf530aca86b",
|
||||
"gsd-core/workflows/inbox.md": "797c287852eb8957",
|
||||
@@ -271,7 +271,7 @@
|
||||
"gsd-core/workflows/onboard.md": "20c28136423d40ac",
|
||||
"gsd-core/workflows/pause-work.md": "93fcc1c845da6396",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "7880866ee1caf923",
|
||||
"gsd-core/workflows/plan-phase.md": "29567e9419151453",
|
||||
"gsd-core/workflows/plan-phase.md": "b0d5d582ef76c0ff",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "e06ccd4d4c0703fb",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "80b1ba493a9a967f",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "3fed4740a91d0443",
|
||||
|
||||
18
tests/fixtures/golden-install-parity/zcode.json
vendored
18
tests/fixtures/golden-install-parity/zcode.json
vendored
@@ -16,7 +16,7 @@
|
||||
"agents/gsd-domain-researcher.md": "049f588663814fa2",
|
||||
"agents/gsd-eval-auditor.md": "54870d3b07433525",
|
||||
"agents/gsd-eval-planner.md": "552e9fa164c51ce8",
|
||||
"agents/gsd-executor.md": "fdd9635cee849c82",
|
||||
"agents/gsd-executor.md": "b49a6d92b2cd9831",
|
||||
"agents/gsd-framework-selector.md": "8a795f230436ad2e",
|
||||
"agents/gsd-integration-checker.md": "c1760a0bbd4f7bf5",
|
||||
"agents/gsd-intel-updater.md": "944f1d903e2e9e09",
|
||||
@@ -25,7 +25,7 @@
|
||||
"agents/gsd-pattern-mapper.md": "68ecefd60811a669",
|
||||
"agents/gsd-phase-researcher.md": "2235f61764d8e969",
|
||||
"agents/gsd-plan-checker.md": "bb38f345d3d41edc",
|
||||
"agents/gsd-planner.md": "262cbc06269277d1",
|
||||
"agents/gsd-planner.md": "e76def94ab518216",
|
||||
"agents/gsd-project-researcher.md": "f572892f138734ff",
|
||||
"agents/gsd-research-synthesizer.md": "29949bf3f049a8f1",
|
||||
"agents/gsd-roadmapper.md": "840ac933e3b094f9",
|
||||
@@ -79,7 +79,7 @@
|
||||
"commands/gsd-onboard.md": "a35340ce39334fc7",
|
||||
"commands/gsd-pause-work.md": "40a953fcddbedb5d",
|
||||
"commands/gsd-phase.md": "5dd3d40e3461a973",
|
||||
"commands/gsd-plan-phase.md": "2fb6cc9c4caa6a36",
|
||||
"commands/gsd-plan-phase.md": "3fd288ea8d4748e2",
|
||||
"commands/gsd-plan-review-convergence.md": "f8e7ea9c70e59035",
|
||||
"commands/gsd-pr-branch.md": "ab1fcffe92129061",
|
||||
"commands/gsd-profile-user.md": "37c9ef202669bfd3",
|
||||
@@ -176,7 +176,7 @@
|
||||
"gsd-core/references/planner-human-verify-mode.md": "56d05e841630b3f4",
|
||||
"gsd-core/references/planner-interface-context.md": "b28fa3da6ae739a8",
|
||||
"gsd-core/references/planner-load-graph-context.md": "ca7a7af3f35ae61b",
|
||||
"gsd-core/references/planner-mvp-mode.md": "ec33050db81101a8",
|
||||
"gsd-core/references/planner-mvp-mode.md": "cfd535c9c545e73e",
|
||||
"gsd-core/references/planner-reviews.md": "dda0193a0fbd4947",
|
||||
"gsd-core/references/planner-revision.md": "86ba8a511f081f05",
|
||||
"gsd-core/references/planner-source-audit.md": "7de5bdb07232ce0b",
|
||||
@@ -194,7 +194,7 @@
|
||||
"gsd-core/references/revision-loop.md": "e55ff32dd98c63df",
|
||||
"gsd-core/references/scout-codebase.md": "ba266ecc18fbf172",
|
||||
"gsd-core/references/security-asvs-levels.md": "4774fac3b94b6ca8",
|
||||
"gsd-core/references/skeleton-template.md": "528691d1f0efa878",
|
||||
"gsd-core/references/skeleton-template.md": "f11e9cd2948bd33c",
|
||||
"gsd-core/references/sketch-interactivity.md": "7d982fe877e1e1cc",
|
||||
"gsd-core/references/sketch-theme-system.md": "33e2e96e450456f8",
|
||||
"gsd-core/references/sketch-tooling.md": "df6c4f24c1c27611",
|
||||
@@ -310,7 +310,7 @@
|
||||
"gsd-core/workflows/execute-phase/steps/post-merge-gate.md": "811b6d8489571581",
|
||||
"gsd-core/workflows/execute-phase/steps/regression-gate.md": "8ccc16a6c7cf6000",
|
||||
"gsd-core/workflows/execute-phase/steps/worktree-recovery-policy.md": "be84efbd71e1513e",
|
||||
"gsd-core/workflows/execute-plan.md": "ed874410972d32b7",
|
||||
"gsd-core/workflows/execute-plan.md": "4614bb2145a7f737",
|
||||
"gsd-core/workflows/explore.md": "6c04f2e658d93261",
|
||||
"gsd-core/workflows/extract-learnings.md": "b6f01ca3d8f58de4",
|
||||
"gsd-core/workflows/fast.md": "11f5cd10ae5cc7d3",
|
||||
@@ -320,7 +320,7 @@
|
||||
"gsd-core/workflows/help.md": "5d040504b9ab35e3",
|
||||
"gsd-core/workflows/help/modes/brief.md": "924860e1f07defb0",
|
||||
"gsd-core/workflows/help/modes/default.md": "08a02976c0c5cc50",
|
||||
"gsd-core/workflows/help/modes/full.md": "895b35f264530d24",
|
||||
"gsd-core/workflows/help/modes/full.md": "1810842c75f73fb2",
|
||||
"gsd-core/workflows/help/modes/topic.md": "5c160093f3cbf35d",
|
||||
"gsd-core/workflows/import.md": "3d3fa603ceb8bc9f",
|
||||
"gsd-core/workflows/inbox.md": "437f981ef9ae7b26",
|
||||
@@ -342,7 +342,7 @@
|
||||
"gsd-core/workflows/onboard.md": "6f9e6c0b484271a9",
|
||||
"gsd-core/workflows/pause-work.md": "f2b33bba5593d422",
|
||||
"gsd-core/workflows/plan-milestone-gaps.md": "852f6d7c0c4299dc",
|
||||
"gsd-core/workflows/plan-phase.md": "3784a2a5e8f098cd",
|
||||
"gsd-core/workflows/plan-phase.md": "d491791075b1aca9",
|
||||
"gsd-core/workflows/plan-phase/steps/closed-phase-gate.md": "b36f77ac7344a072",
|
||||
"gsd-core/workflows/plan-phase/steps/prd-express-path.md": "197c0590326371b2",
|
||||
"gsd-core/workflows/plan-phase/steps/windows-troubleshooting.md": "49f58c3f75be3eb5",
|
||||
@@ -460,7 +460,7 @@
|
||||
"skills/gsd-ns-workflow/skills/mvp-phase/SKILL.md": "3455ea7562a447a2",
|
||||
"skills/gsd-ns-workflow/skills/next/SKILL.md": "63659cd48a0276f9",
|
||||
"skills/gsd-ns-workflow/skills/phase/SKILL.md": "b377b03d13db8573",
|
||||
"skills/gsd-ns-workflow/skills/plan-phase/SKILL.md": "a453c632234623d1",
|
||||
"skills/gsd-ns-workflow/skills/plan-phase/SKILL.md": "c7cfcb8f3606e69c",
|
||||
"skills/gsd-ns-workflow/skills/plan-review-convergence/SKILL.md": "ded70bf0252c6307",
|
||||
"skills/gsd-ns-workflow/skills/progress/SKILL.md": "fb24eab4a0e5f6a3",
|
||||
"skills/gsd-ns-workflow/skills/quick/SKILL.md": "48629fef2b9ac5b0",
|
||||
|
||||
370
tests/tracer-bullet.test.cjs
Normal file
370
tests/tracer-bullet.test.cjs
Normal file
@@ -0,0 +1,370 @@
|
||||
// allow-test-rule: source-text-is-the-product [#1945]
|
||||
// Agent .md / workflow .md / command .md / reference .md / docs .md files —
|
||||
// their text IS the deployed contract the runtime (and the changelog/docs
|
||||
// surface) loads. The planner/executor "task type" enum and the tracer-first
|
||||
// decomposition discipline are prose contracts, not compiled code, so the
|
||||
// contract test asserts on the shipped text. The behavioral suite at the bottom
|
||||
// exercises the ONE code seam (verify plan-structure) through the CLI.
|
||||
|
||||
/**
|
||||
* Tracer-bullet vertical slices (#1945).
|
||||
*
|
||||
* Feature: make "thin end-to-end slice first, verify, then expand" a first-class,
|
||||
* default planning + execution discipline (not an opt-in `--mvp` mode).
|
||||
*
|
||||
* 1. Planner — a first-class `tracer` task type + a tracer-first default.
|
||||
* 2. Executor — a feedback gate after the tracer slice.
|
||||
* 3. Terminology — `tracer bullet` promoted to the CONTEXT.md glossary.
|
||||
*
|
||||
* Acceptance criteria (verbatim from the issue) mapped to tests below.
|
||||
*/
|
||||
|
||||
const { test, describe } = require('node:test');
|
||||
const assert = require('node:assert/strict');
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const { runGsdTools, createTempProject, cleanup } = require('./helpers.cjs');
|
||||
|
||||
const ROOT = path.join(__dirname, '..');
|
||||
const read = (rel) => fs.readFileSync(path.join(ROOT, rel), 'utf-8');
|
||||
|
||||
const PLANNER = read('agents/gsd-planner.md');
|
||||
const EXECUTOR = read('agents/gsd-executor.md');
|
||||
const EXECUTE_PLAN = read('gsd-core/workflows/execute-plan.md');
|
||||
const WORKFLOW = read('gsd-core/workflows/plan-phase.md');
|
||||
const COMMAND = read('commands/gsd/plan-phase.md');
|
||||
const HELP_FULL = read('gsd-core/workflows/help/modes/full.md');
|
||||
const MVP_REF = read('gsd-core/references/planner-mvp-mode.md');
|
||||
const CONTEXT = read('CONTEXT.md');
|
||||
const COMMANDS_DOC = read('docs/COMMANDS.md');
|
||||
const PLAN_MD_REF = read('docs/reference/plan-md.md');
|
||||
const HOWTO = read('docs/how-to/plan-a-phase.md');
|
||||
const AGENTS_DOC = read('docs/AGENTS.md');
|
||||
|
||||
// ─── contract parsers (typed views over the deployed prose) ──────────────────
|
||||
|
||||
// Isolate the planner's default-decomposition section so we can prove tracer-first
|
||||
// is NOT gated behind a flag/mode conditional.
|
||||
function plannerTracerSection(md) {
|
||||
const start = md.indexOf('## Tracer-First Decomposition');
|
||||
if (start === -1) return '';
|
||||
const rest = md.slice(start + 3);
|
||||
const nextHeading = rest.search(/\n## /);
|
||||
return nextHeading === -1 ? md.slice(start) : md.slice(start, start + 3 + nextHeading);
|
||||
}
|
||||
|
||||
function parsePlannerContract(md) {
|
||||
const section = plannerTracerSection(md);
|
||||
return {
|
||||
hasTracerFirstSection: section.length > 0,
|
||||
// "default" and "not gated behind a flag" — the whole point of #1945.
|
||||
declaresDefault: /\bdefault\b/i.test(section) && /not gated behind a flag/i.test(section),
|
||||
leadsWithTracer: /LEADS with one `type="tracer"`/.test(section),
|
||||
documentsTracerTaskType: /<task type="tracer">/.test(section),
|
||||
// Production-quality, not a prototype (the book's core distinction).
|
||||
productionQualityNotPrototype:
|
||||
/production-quality, not a prototype/i.test(section) &&
|
||||
/architectural gaps are not/i.test(section),
|
||||
// A real, runnable END-TO-END verify (not a per-layer unit check).
|
||||
endToEndVerify: /END-TO-END/i.test(section) && /not a per-layer unit test/i.test(section),
|
||||
// --no-tracer / TRACER_MODE=false restores horizontal layers.
|
||||
documentsNoTracerOptOut:
|
||||
/--no-tracer/.test(section) && /TRACER_MODE=false/.test(section) && /horizontal layers/i.test(section),
|
||||
// The break_into_tasks step itself leads with the tracer by default.
|
||||
breakStepLeadsWithTracer:
|
||||
/\*\*Lead with the tracer\.\*\*/.test(md) &&
|
||||
/Unless `TRACER_MODE=false`/.test(md),
|
||||
// Composition with --tdd (tracer starts red).
|
||||
composesWithTdd: /TDD composition/i.test(section) && /starts red/i.test(section),
|
||||
// MVP is now enrichment on top, not the toggle for vertical slices.
|
||||
mvpIsEnrichment: /MVP enrichment/i.test(section) && /no longer \*turns on\* vertical slices/i.test(section),
|
||||
};
|
||||
}
|
||||
|
||||
function parseExecutorContract(md) {
|
||||
return {
|
||||
recognizesTracerType: /\*\*If `type="tracer"`:\*\*/.test(md),
|
||||
// The gate runs BEFORE expansion tasks — an early integration checkpoint.
|
||||
earlyIntegrationGate:
|
||||
/tracer feedback gate BEFORE any expansion task/i.test(md) &&
|
||||
/early integration checkpoint/i.test(md),
|
||||
// Autonomous: halt-on-fail before any expansion task.
|
||||
// Keyed on the file's own auto-mode definition (AUTO_CHAIN or AUTO_CFG),
|
||||
// not AUTO_CFG alone — see <auto_mode_detection>.
|
||||
autoHaltsOnFailure:
|
||||
/Autonomous run \(auto mode active/i.test(md) &&
|
||||
/`AUTO_CHAIN` or `AUTO_CFG`/.test(md) &&
|
||||
/HALT and surface it/i.test(md) &&
|
||||
/do NOT proceed to expansion tasks/i.test(md),
|
||||
// Interactive: emit checkpoint:human-verify immediately after the tracer.
|
||||
interactiveHumanVerify:
|
||||
/Interactive run \(auto mode not active\)/i.test(md) &&
|
||||
/checkpoint:human-verify/.test(md),
|
||||
// Cross-referenced in the checkpoint protocol section too.
|
||||
documentedInCheckpointProtocol: /\*\*Tracer feedback gate:\*\*/.test(md),
|
||||
};
|
||||
}
|
||||
|
||||
function parseWorkflowContract(md) {
|
||||
const lines = md.split(/\r?\n/);
|
||||
const argLine = lines.find((l) => l.includes('Extract from $ARGUMENTS:')) || '';
|
||||
return {
|
||||
argListDocumentsNoTracer: argLine.includes('--no-tracer'),
|
||||
resolvesTracerMode:
|
||||
md.includes('TRACER_MODE=true') &&
|
||||
md.includes('--no-tracer') &&
|
||||
md.includes('TRACER_MODE=false'),
|
||||
injectsTracerModeToPlanner: /\*\*TRACER_MODE:\*\* \$\{TRACER_MODE\}/.test(md),
|
||||
// Guard: must not eagerly @-import the reference (size-budget rule, mirrors
|
||||
// tests/workflow-size-budget.test.cjs). An eager import is an @-path at line start.
|
||||
noEagerImportOfMvpRef: !/^\s*@[^\n]*planner-mvp-mode\.md/m.test(md),
|
||||
};
|
||||
}
|
||||
|
||||
function parseCommandContract(md) {
|
||||
const argHint = (md.split(/\r?\n/).find((l) => l.startsWith('argument-hint:')) || '');
|
||||
return {
|
||||
argHintHasNoTracer: argHint.includes('--no-tracer'),
|
||||
flagsDocumentNoTracer: /- `--no-tracer` —/.test(md),
|
||||
};
|
||||
}
|
||||
|
||||
// ─── Suite 1: Planner — first-class tracer task + tracer-first default ────────
|
||||
|
||||
describe('#1945 planner: first-class tracer task + tracer-first default', () => {
|
||||
const c = parsePlannerContract(PLANNER);
|
||||
|
||||
test('planner has a Tracer-First Decomposition section that is the DEFAULT (not flag-gated)', () => {
|
||||
assert.ok(c.hasTracerFirstSection, 'planner must document a "Tracer-First Decomposition" section');
|
||||
assert.ok(c.declaresDefault, 'the section must declare tracer-first the default, not gated behind a flag');
|
||||
});
|
||||
|
||||
// Acceptance: with no flags, PLAN.md leads with exactly one tracer task touching every layer.
|
||||
test('every plan LEADS with one type="tracer" task (acceptance #1)', () => {
|
||||
assert.ok(c.leadsWithTracer, 'planner must instruct leading every plan with one type="tracer" task');
|
||||
assert.ok(c.documentsTracerTaskType, 'planner must document the <task type="tracer"> shape');
|
||||
assert.ok(c.breakStepLeadsWithTracer, 'the break_into_tasks step must lead with the tracer by default');
|
||||
});
|
||||
|
||||
// Acceptance: the tracer includes a real end-to-end <verify>, not a per-layer unit check.
|
||||
test('tracer task carries a real end-to-end <verify> (acceptance #2)', () => {
|
||||
assert.ok(c.endToEndVerify, 'planner must require a real END-TO-END verify, not a per-layer unit test');
|
||||
});
|
||||
|
||||
// Acceptance: --no-tracer reproduces today's horizontal-layer default.
|
||||
test('--no-tracer / TRACER_MODE=false restores horizontal layers (acceptance #5)', () => {
|
||||
assert.ok(c.documentsNoTracerOptOut, 'planner must document the --no-tracer horizontal-layer opt-out');
|
||||
});
|
||||
|
||||
test('tracer is production-quality, not a prototype', () => {
|
||||
assert.ok(c.productionQualityNotPrototype, 'planner must state a tracer is production-quality, not a prototype');
|
||||
});
|
||||
|
||||
test('composes with --tdd (tracer starts red) and --mvp is enrichment on top', () => {
|
||||
assert.ok(c.composesWithTdd, 'planner must document tracer + --tdd composition');
|
||||
assert.ok(c.mvpIsEnrichment, 'planner must reframe MVP as enrichment, no longer the toggle for vertical slices');
|
||||
});
|
||||
|
||||
test('vertical-slice reference is reconciled to tracer-first-by-default', () => {
|
||||
assert.match(MVP_REF, /Tracer-First Decomposition/, 'reference title must reflect tracer-first');
|
||||
assert.match(MVP_REF, /the \*\*default\*\* tracer-first decomposition/, 'reference must state tracer-first is the default');
|
||||
assert.doesNotMatch(
|
||||
MVP_REF,
|
||||
/only when `MVP_MODE=true`/,
|
||||
'reference must no longer gate vertical slices behind MVP_MODE only',
|
||||
);
|
||||
});
|
||||
});
|
||||
|
||||
// ─── Suite 2: Executor — post-tracer feedback gate ───────────────────────────
|
||||
|
||||
describe('#1945 executor: post-tracer feedback gate', () => {
|
||||
const c = parseExecutorContract(EXECUTOR);
|
||||
|
||||
test('executor recognizes type="tracer"', () => {
|
||||
assert.ok(c.recognizesTracerType, 'executor must handle type="tracer"');
|
||||
});
|
||||
|
||||
test('runs an early integration gate BEFORE expansion tasks', () => {
|
||||
assert.ok(c.earlyIntegrationGate, 'executor must run the tracer verify as an early integration checkpoint before expansion');
|
||||
});
|
||||
|
||||
// Acceptance: autonomous run halts before any expansion task on a failing tracer.
|
||||
test('autonomous run HALTS before expansion on a failing tracer (acceptance #3)', () => {
|
||||
assert.ok(c.autoHaltsOnFailure, 'autonomous run must halt (surfaced) before expansion when the tracer verify fails');
|
||||
});
|
||||
|
||||
// Acceptance: interactive run presents a human-verify checkpoint after the tracer.
|
||||
test('interactive run emits checkpoint:human-verify after the tracer (acceptance #4)', () => {
|
||||
assert.ok(c.interactiveHumanVerify, 'interactive run must emit checkpoint:human-verify immediately after the tracer');
|
||||
});
|
||||
|
||||
test('gate is cross-referenced in the checkpoint protocol', () => {
|
||||
assert.ok(c.documentedInCheckpointProtocol, 'checkpoint protocol must cross-reference the tracer feedback gate');
|
||||
});
|
||||
|
||||
// The execute-plan orchestrator has its OWN inline per-task dispatch (used for
|
||||
// step-by-step / non-Claude-Code / inline execution) — it must know tracer too,
|
||||
// else the gate silently no-ops on those paths.
|
||||
test('execute-plan.md inline dispatch also handles type="tracer" with the gate', () => {
|
||||
assert.match(EXECUTE_PLAN, /`type="tracer"`/, 'execute-plan.md inline dispatch must handle type="tracer"');
|
||||
assert.match(EXECUTE_PLAN, /tracer feedback gate BEFORE any expansion task/i, 'execute-plan.md must run the tracer gate before expansion');
|
||||
assert.match(EXECUTE_PLAN, /Auto mode active \(`AUTO_CHAIN` or `AUTO_CFG`\)/, 'execute-plan.md tracer gate must key on auto mode (AUTO_CHAIN or AUTO_CFG)');
|
||||
});
|
||||
});
|
||||
|
||||
// ─── Suite 3: Orchestrator + command wire --no-tracer ────────────────────────
|
||||
|
||||
describe('#1945 plan-phase orchestrator + command: --no-tracer wiring', () => {
|
||||
const w = parseWorkflowContract(WORKFLOW);
|
||||
const cmd = parseCommandContract(COMMAND);
|
||||
|
||||
test('workflow argument list documents --no-tracer', () => {
|
||||
assert.ok(w.argListDocumentsNoTracer, 'plan-phase workflow must extract --no-tracer from $ARGUMENTS');
|
||||
});
|
||||
|
||||
test('workflow resolves TRACER_MODE (default true, --no-tracer -> false)', () => {
|
||||
assert.ok(w.resolvesTracerMode, 'workflow must resolve TRACER_MODE with a --no-tracer -> false path');
|
||||
});
|
||||
|
||||
test('workflow injects TRACER_MODE into the planner subagent prompt', () => {
|
||||
assert.ok(w.injectsTracerModeToPlanner, 'workflow must wire **TRACER_MODE:** ${TRACER_MODE} into the planner prompt');
|
||||
});
|
||||
|
||||
test('workflow does not eagerly @-import planner-mvp-mode.md (size-budget guard)', () => {
|
||||
assert.ok(w.noEagerImportOfMvpRef, 'planner-mvp-mode.md must stay lazily loaded by the planner, not eagerly imported');
|
||||
});
|
||||
|
||||
test('command argument-hint and flags document --no-tracer', () => {
|
||||
assert.ok(cmd.argHintHasNoTracer, 'command argument-hint must advertise --no-tracer');
|
||||
assert.ok(cmd.flagsDocumentNoTracer, 'command flags list must document --no-tracer');
|
||||
});
|
||||
|
||||
test('/gsd:help full listing documents --no-tracer', () => {
|
||||
assert.match(HELP_FULL, /\[--no-tracer\]/, 'help/modes/full.md plan-phase usage line must list --no-tracer');
|
||||
assert.match(HELP_FULL, /- `--no-tracer` —/, 'help/modes/full.md must describe the --no-tracer flag');
|
||||
});
|
||||
});
|
||||
|
||||
// ─── Suite 4: Terminology — CONTEXT glossary + docs ──────────────────────────
|
||||
|
||||
describe('#1945 glossary + docs', () => {
|
||||
// Acceptance: CONTEXT.md glossary defines tracer bullet vs prototype.
|
||||
test('CONTEXT.md glossary defines "Tracer Bullet" against "prototype" (acceptance #7)', () => {
|
||||
assert.match(CONTEXT, /^### Tracer Bullet$/m, 'CONTEXT.md must have a ### Tracer Bullet glossary entry');
|
||||
const start = CONTEXT.indexOf('### Tracer Bullet');
|
||||
const entry = CONTEXT.slice(start, start + 1400);
|
||||
assert.match(entry, /production-quality/i, 'entry must call a tracer production-quality');
|
||||
assert.match(entry, /\bprototype\b/i, 'entry must contrast tracer with a prototype');
|
||||
assert.match(entry, /throwaway/i, 'entry must describe a prototype as throwaway');
|
||||
});
|
||||
|
||||
test('docs/COMMANDS.md documents the --no-tracer flag', () => {
|
||||
assert.match(COMMANDS_DOC, /\| `--no-tracer` \|/, 'COMMANDS.md flag table must include --no-tracer');
|
||||
});
|
||||
|
||||
test('docs/reference/plan-md.md task-types table includes tracer', () => {
|
||||
assert.match(PLAN_MD_REF, /\| `tracer` \|/, 'plan-md.md Task types table must include a tracer row');
|
||||
});
|
||||
|
||||
test('docs/how-to and docs/AGENTS reflect tracer-first + the executor gate', () => {
|
||||
assert.match(HOWTO, /tracer/i, 'how-to must mention tracer-first');
|
||||
assert.match(HOWTO, /--no-tracer/, 'how-to must mention the --no-tracer opt-out');
|
||||
assert.match(AGENTS_DOC, /task types: auto, tracer/i, 'AGENTS.md must list tracer among task types');
|
||||
assert.match(AGENTS_DOC, /Tracer feedback gate/i, 'AGENTS.md must describe the executor tracer gate');
|
||||
});
|
||||
});
|
||||
|
||||
// ─── Suite 5: Behavioral — the one code seam accepts tracer ──────────────────
|
||||
// Acceptance #6: `tracer` is accepted everywhere the task-type enum is validated;
|
||||
// no schema/validation path rejects it. `verify plan-structure` is the only code
|
||||
// path that inspects <task type=...>. Prove it accepts tracer and never confuses
|
||||
// a tracer for a checkpoint.
|
||||
|
||||
// Minimal valid PLAN.md; `taskType` and `n` let us sweep the tracer-count boundary.
|
||||
function planWith({ taskType = 'auto', n = 1, autonomous = 'true' } = {}) {
|
||||
const tasks = [];
|
||||
for (let i = 0; i < n; i++) {
|
||||
tasks.push(
|
||||
`<task type="${taskType}">`,
|
||||
` <name>Task ${i + 1}: End-to-end slice</name>`,
|
||||
' <files>some/file.ts</files>',
|
||||
' <action>Wire one path through every layer</action>',
|
||||
' <verify><automated>echo ok</automated></verify>',
|
||||
' <done>Happy path works end-to-end</done>',
|
||||
'</task>',
|
||||
'',
|
||||
);
|
||||
}
|
||||
return [
|
||||
'---',
|
||||
'phase: 01-test',
|
||||
'plan: 01',
|
||||
'type: execute',
|
||||
'wave: 1',
|
||||
'depends_on: []',
|
||||
'files_modified: [some/file.ts]',
|
||||
`autonomous: ${autonomous}`,
|
||||
'must_haves:',
|
||||
' truths:',
|
||||
' - "something is true"',
|
||||
'---',
|
||||
'',
|
||||
'<tasks>',
|
||||
'',
|
||||
...tasks,
|
||||
'</tasks>',
|
||||
].join('\n');
|
||||
}
|
||||
|
||||
function verifyPlan(tmpDir, content) {
|
||||
const rel = path.join('.planning', 'phases', '01-test', '01-01-PLAN.md');
|
||||
fs.mkdirSync(path.join(tmpDir, '.planning', 'phases', '01-test'), { recursive: true });
|
||||
fs.writeFileSync(path.join(tmpDir, rel), content);
|
||||
const result = runGsdTools(`verify plan-structure ${rel}`, tmpDir);
|
||||
assert.ok(result.success, `verify plan-structure failed to run: ${result.error}`);
|
||||
return JSON.parse(result.output);
|
||||
}
|
||||
|
||||
describe('#1945 behavioral: verify plan-structure accepts type="tracer" (acceptance #6)', () => {
|
||||
test('a type="tracer" plan validates with no errors', (t) => {
|
||||
const tmpDir = createTempProject();
|
||||
t.after(() => cleanup(tmpDir));
|
||||
|
||||
const out = verifyPlan(tmpDir, planWith({ taskType: 'tracer', n: 1 }));
|
||||
assert.strictEqual(out.valid, true, `tracer plan must be valid, errors: ${JSON.stringify(out.errors)}`);
|
||||
assert.deepStrictEqual(out.errors, [], 'no validation path may reject a tracer task');
|
||||
assert.ok(
|
||||
!out.errors.some((e) => /tracer/i.test(e)) && !(out.warnings || []).some((w) => /tracer/i.test(w)),
|
||||
'nothing may flag the tracer task type specifically',
|
||||
);
|
||||
});
|
||||
|
||||
// verify plan-structure is task-type-agnostic: it accepts any count of tracer
|
||||
// tasks (0/1/2) with no type-based rejection. This supports acceptance #6; it is
|
||||
// NOT a claim about the planner's "exactly one leading tracer" contract, which is
|
||||
// planner prose (asserted in Suite 1), not something plan-structure validates.
|
||||
test('verify plan-structure accepts 0 / 1 / 2 tracer tasks (type-agnostic, #6)', (t) => {
|
||||
const tmpDir = createTempProject();
|
||||
t.after(() => cleanup(tmpDir));
|
||||
|
||||
for (const n of [0, 1, 2]) {
|
||||
const content = n === 0 ? planWith({ taskType: 'auto', n: 1 }) : planWith({ taskType: 'tracer', n });
|
||||
const out = verifyPlan(tmpDir, content);
|
||||
assert.strictEqual(out.valid, true, `${n}-tracer plan must be valid, errors: ${JSON.stringify(out.errors)}`);
|
||||
}
|
||||
});
|
||||
|
||||
// A tracer task is NOT a checkpoint: an autonomous:true tracer plan must not trip
|
||||
// the "Has checkpoint tasks but autonomous is not false" rule.
|
||||
test('a tracer task is not misclassified as a checkpoint', (t) => {
|
||||
const tmpDir = createTempProject();
|
||||
t.after(() => cleanup(tmpDir));
|
||||
|
||||
const out = verifyPlan(tmpDir, planWith({ taskType: 'tracer', n: 1, autonomous: 'true' }));
|
||||
assert.ok(
|
||||
!out.errors.some((e) => /checkpoint/i.test(e)),
|
||||
`tracer must not be treated as a checkpoint, errors: ${JSON.stringify(out.errors)}`,
|
||||
);
|
||||
});
|
||||
});
|
||||
@@ -25,7 +25,7 @@
|
||||
"edit-phase.md": 12927,
|
||||
"eval-review.md": 9967,
|
||||
"execute-phase.md": 93583,
|
||||
"execute-plan.md": 32655,
|
||||
"execute-plan.md": 33113,
|
||||
"explore.md": 10541,
|
||||
"extract-learnings.md": 12893,
|
||||
"fast.md": 7613,
|
||||
@@ -53,7 +53,7 @@
|
||||
"onboard.md": 8590,
|
||||
"pause-work.md": 14441,
|
||||
"plan-milestone-gaps.md": 11809,
|
||||
"plan-phase.md": 93113,
|
||||
"plan-phase.md": 93959,
|
||||
"plan-review-convergence.md": 23512,
|
||||
"plant-seed.md": 11785,
|
||||
"pr-branch.md": 15963,
|
||||
|
||||
Reference in New Issue
Block a user