@skillcap/gdh 0.19.0 → 0.19.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/INSTALL-BUNDLE.json +1 -1
  2. package/README.md +1 -1
  3. package/RELEASE-SPAN-UPDATE-CONTRACTS.json +138 -0
  4. package/node_modules/@gdh/adapters/dist/authoring-hook-render.d.ts.map +1 -1
  5. package/node_modules/@gdh/adapters/dist/authoring-hook-render.js +26 -16
  6. package/node_modules/@gdh/adapters/dist/authoring-hook-render.js.map +1 -1
  7. package/node_modules/@gdh/adapters/dist/claude-settings-patch.d.ts +14 -13
  8. package/node_modules/@gdh/adapters/dist/claude-settings-patch.d.ts.map +1 -1
  9. package/node_modules/@gdh/adapters/dist/claude-settings-patch.js +27 -40
  10. package/node_modules/@gdh/adapters/dist/claude-settings-patch.js.map +1 -1
  11. package/node_modules/@gdh/adapters/dist/claude-statusline-render.d.ts +12 -13
  12. package/node_modules/@gdh/adapters/dist/claude-statusline-render.d.ts.map +1 -1
  13. package/node_modules/@gdh/adapters/dist/claude-statusline-render.js +12 -13
  14. package/node_modules/@gdh/adapters/dist/claude-statusline-render.js.map +1 -1
  15. package/node_modules/@gdh/adapters/dist/index.d.ts.map +1 -1
  16. package/node_modules/@gdh/adapters/dist/index.js +122 -18
  17. package/node_modules/@gdh/adapters/dist/index.js.map +1 -1
  18. package/node_modules/@gdh/adapters/dist/skill-rendering.d.ts.map +1 -1
  19. package/node_modules/@gdh/adapters/dist/skill-rendering.js +22 -7
  20. package/node_modules/@gdh/adapters/dist/skill-rendering.js.map +1 -1
  21. package/node_modules/@gdh/adapters/package.json +8 -8
  22. package/node_modules/@gdh/authoring/package.json +2 -2
  23. package/node_modules/@gdh/cli/dist/migrate.d.ts.map +1 -1
  24. package/node_modules/@gdh/cli/dist/migrate.js +12 -2
  25. package/node_modules/@gdh/cli/dist/migrate.js.map +1 -1
  26. package/node_modules/@gdh/cli/dist/setup.d.ts.map +1 -1
  27. package/node_modules/@gdh/cli/dist/setup.js +11 -4
  28. package/node_modules/@gdh/cli/dist/setup.js.map +1 -1
  29. package/node_modules/@gdh/cli/package.json +10 -10
  30. package/node_modules/@gdh/core/dist/index.d.ts +11 -6
  31. package/node_modules/@gdh/core/dist/index.d.ts.map +1 -1
  32. package/node_modules/@gdh/core/dist/index.js +6 -6
  33. package/node_modules/@gdh/core/dist/index.js.map +1 -1
  34. package/node_modules/@gdh/core/package.json +1 -1
  35. package/node_modules/@gdh/docs/dist/agent-contract.d.ts +8 -3
  36. package/node_modules/@gdh/docs/dist/agent-contract.d.ts.map +1 -1
  37. package/node_modules/@gdh/docs/dist/agent-contract.js +53 -6
  38. package/node_modules/@gdh/docs/dist/agent-contract.js.map +1 -1
  39. package/node_modules/@gdh/docs/dist/guidance.d.ts.map +1 -1
  40. package/node_modules/@gdh/docs/dist/guidance.js +5 -4
  41. package/node_modules/@gdh/docs/dist/guidance.js.map +1 -1
  42. package/node_modules/@gdh/docs/dist/query.d.ts.map +1 -1
  43. package/node_modules/@gdh/docs/dist/query.js +94 -22
  44. package/node_modules/@gdh/docs/dist/query.js.map +1 -1
  45. package/node_modules/@gdh/docs/package.json +2 -2
  46. package/node_modules/@gdh/mcp/package.json +8 -8
  47. package/node_modules/@gdh/observability/package.json +2 -2
  48. package/node_modules/@gdh/runtime/dist/bridge-surface.js +5 -3
  49. package/node_modules/@gdh/runtime/dist/bridge-surface.js.map +1 -1
  50. package/node_modules/@gdh/runtime/package.json +2 -2
  51. package/node_modules/@gdh/scan/dist/onboard.d.ts.map +1 -1
  52. package/node_modules/@gdh/scan/dist/onboard.js +11 -2
  53. package/node_modules/@gdh/scan/dist/onboard.js.map +1 -1
  54. package/node_modules/@gdh/scan/package.json +3 -3
  55. package/node_modules/@gdh/verify/package.json +7 -7
  56. package/package.json +11 -11
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "product": "GDH",
3
- "version": "0.19.0",
3
+ "version": "0.19.2",
4
4
  "installMode": "packaged_install"
5
5
  }
package/README.md CHANGED
@@ -19,7 +19,7 @@ Then open your agent in that project and run:
19
19
  /gdh-onboard
20
20
  ```
21
21
 
22
- GDH writes the project guidance, agent skill surfaces, MCP config, and local state that supported agents use for future work. Setup records the resolved GDH version in the target project so later updates can migrate that project deliberately.
22
+ GDH writes the project guidance, agent skill surfaces, MCP config, and local state that supported agents use for future work. In monorepos, full guidance and skills stay in the selected Godot project directory while only thin root routing/config surfaces are installed for agents launched from the repo root. Setup records the resolved GDH version in the target project so later updates can migrate that project deliberately.
23
23
 
24
24
  ## Requirements
25
25
 
@@ -1777,6 +1777,144 @@
1777
1777
  }
1778
1778
  ]
1779
1779
  }
1780
+ },
1781
+ {
1782
+ "version": "0.19.1",
1783
+ "releaseTag": "v0.19.1",
1784
+ "migrationStatus": "no_op",
1785
+ "summary": "v0.19.1 hardens supported-agent adapter behavior without changing managed schema or lifecycle surface versions. Claude adapter install no longer auto-registers GDH in Claude Code's single project `statusLine` slot, removes only the exact old GDH-managed statusLine entry during repair/update, and preserves custom statuslines. Generated gdh-update, gdh-status, and gdh-onboard skill guidance is clearer, but no release-scoped schema migration is required.",
1786
+ "releaseHighlights": {
1787
+ "summary": "v0.19.1 hardens supported-agent adapter behavior from dogfooding feedback. Claude project installs no longer auto-own Claude Code's single `statusLine` slot, so existing user or global statuslines stay visible. The release also tightens generated `/gdh-update`, `/gdh-status`, and `/gdh-onboard` skill guidance so agents have clearer operational context during update, status, and onboarding flows.",
1788
+ "operatorChanges": [
1789
+ "**Claude statusline ownership is non-destructive.** GDH still bakes `.claude/hooks/gdh-statusline.js` as an optional script, but adapter install no longer writes a project-level `statusLine` entry when one is absent. This prevents GDH from shadowing user/global Claude statuslines.",
1790
+ "**Old GDH-managed statusline entries are cleaned up safely.** Adapter repair/update removes only the exact prior GDH-managed `statusLine` entry. Custom, user-owned, or tool-owned statuslines are preserved.",
1791
+ "**Shipped skill guidance is clearer.** `/gdh-update` now emphasizes terminal-state follow-through, drift verification, explicit target handling, and stale MCP cleanup boundaries. `/gdh-status` and `/gdh-onboard` define the operational terms agents need instead of assuming project-specific vocabulary is already known."
1792
+ ]
1793
+ },
1794
+ "updateContract": {
1795
+ "summary": "No release-scoped managed schema migration is required for v0.19.1. After self-update, the adapter re-bake path applies the Claude statusline cleanup automatically: exact old GDH-managed statusLine ownership is removed, custom statuslines are preserved, and the optional GDH statusline script remains available for projects that explicitly opt into it.",
1796
+ "steps": [
1797
+ {
1798
+ "id": "rebake_agent_adapters",
1799
+ "kind": "mechanical",
1800
+ "summary": "Re-bake supported-agent surfaces at the new GDH pin.",
1801
+ "detail": "`gdh self-update` re-runs the adapter install path. If an agent needs to repair surfaces manually, run `gdh adapters install <target>` for repo-local agent surfaces.",
1802
+ "commands": [
1803
+ "gdh adapters install <target>"
1804
+ ],
1805
+ "validationCommands": [
1806
+ "gdh adapters status <target>",
1807
+ "gdh verify drift <target>"
1808
+ ]
1809
+ },
1810
+ {
1811
+ "id": "preserve_claude_statusline",
1812
+ "kind": "agent_reasoning",
1813
+ "summary": "Do not replace project or user Claude statuslines with GDH's optional statusline script.",
1814
+ "detail": "Claude Code exposes one statusLine command slot. GDH no longer auto-registers its optional statusline script because a project-level entry can shadow a user's global/custom statusline. If a project deliberately wants the GDH hint, it can configure `.claude/hooks/gdh-statusline.js` itself.",
1815
+ "commands": [],
1816
+ "validationCommands": [
1817
+ "gdh adapters status <target>"
1818
+ ]
1819
+ },
1820
+ {
1821
+ "id": "verify_custom_statusline_survived",
1822
+ "kind": "mechanical",
1823
+ "summary": "When a project had a custom Claude statusLine, confirm it remains configured.",
1824
+ "detail": "Inspect `.claude/settings.json` only when statusline behavior is relevant. Custom statusLine entries should remain unchanged; only the exact prior GDH-managed command is removed.",
1825
+ "commands": [
1826
+ "gdh adapters status <target>"
1827
+ ],
1828
+ "validationCommands": [
1829
+ "gdh adapters status <target>"
1830
+ ]
1831
+ }
1832
+ ]
1833
+ }
1834
+ },
1835
+ {
1836
+ "version": "0.19.2",
1837
+ "releaseTag": "v0.19.2",
1838
+ "migrationStatus": "required",
1839
+ "summary": "v0.19.2 scopes GDH-managed guidance, hooks, skills, Cursor rules, and supporting docs to the configured nested Godot target while keeping monorepo-root agent launches supported through thin pointer guidance and root metadata. Existing targets need `gdh migrate --apply` because GDH_AGENT_CONTRACT_VERSION moves 3 -> 4, GDH_GUIDANCE_INDEX_VERSION moves 3 -> 4, GDH_GUIDANCE_UNIT_VERSION moves 11 -> 12, GDH_CURSOR_RULE_VERSION moves 2 -> 3, GDH_UPDATE_HOOK_VERSION moves 1 -> 2, and GDH_RUNTIME_BRIDGE_SURFACE_VERSION moves 10 -> 11.",
1840
+ "releaseHighlights": {
1841
+ "summary": "v0.19.2 scopes GDH-managed agent guidance, hooks, skills, Cursor rules, and supporting docs to the actual Godot project directory instead of treating a monorepo root as the target surface. This keeps non-game work in a monorepo from loading Godot-specific guidance or firing GDH hooks while still supporting agents and coding harnesses launched from the repository root. The release also fixes a Godot runtime bridge typing issue and keeps the bridge inert when the runtime environment variable is disabled.",
1842
+ "operatorChanges": [
1843
+ "**Target guidance is nested under the Godot project.** GDH writes the full managed `AGENTS.md` contract and generated `docs/agent/` guidance in the target Godot project directory. A monorepo-root `AGENTS.md` is only a thin pointer for Godot/GDH work.",
1844
+ "**Agent adapter surfaces are target-scoped.** Claude hooks, Claude skills, Codex skills, Cursor rules, and related generated docs use target-relative scoping so file edits outside the Godot target do not trigger GDH checks.",
1845
+ "**Monorepo root launch still works.** Root-level project metadata can still point GDH at the nested Godot project, so teams can start agents from the repository root without leaking game-specific instructions into unrelated work.",
1846
+ "**Runtime bridge generation is refreshed.** The managed bridge surface moves to version 11. The bridge script now uses an explicit `Variant` for `JSON.parse_string(...)` and avoids always-on processing when runtime support is disabled."
1847
+ ]
1848
+ },
1849
+ "updateContract": {
1850
+ "summary": "Managed targets need release-specific migration for v0.19.2 because agent contracts, generated guidance, Cursor rules, Claude hooks, shipped skill guidance, and the runtime bridge surface changed to enforce nested Godot target scoping. After self-update, run `gdh migrate --apply` from the monorepo root or target directory so GDH can refresh only the configured Godot target surfaces.",
1851
+ "steps": [
1852
+ {
1853
+ "id": "verify_configured_target_path",
1854
+ "kind": "mechanical",
1855
+ "summary": "Confirm GDH resolves the intended nested Godot target.",
1856
+ "detail": "Run `gdh status` from the monorepo root or target directory and verify the reported target path is the actual Godot project directory, for example `apps/game`, before applying migration.",
1857
+ "commands": [
1858
+ "gdh status"
1859
+ ],
1860
+ "validationCommands": [
1861
+ "gdh status"
1862
+ ]
1863
+ },
1864
+ {
1865
+ "id": "apply_scoped_surface_migration",
1866
+ "kind": "mechanical",
1867
+ "summary": "Refresh nested target guidance, hooks, skills, Cursor rules, and runtime bridge files.",
1868
+ "detail": "Run `gdh migrate --apply` so GDH re-bakes managed target files at the new surface versions. The migration should place full GDH instructions and extra guidance docs under the target project directory while leaving root-level files limited to required metadata and thin routing guidance.",
1869
+ "commands": [
1870
+ "gdh migrate --apply"
1871
+ ],
1872
+ "validationCommands": [
1873
+ "gdh guidance status",
1874
+ "gdh adapters status",
1875
+ "gdh verify drift"
1876
+ ]
1877
+ },
1878
+ {
1879
+ "id": "check_root_instruction_scope",
1880
+ "kind": "agent_reasoning",
1881
+ "summary": "Keep root agent guidance narrow for non-game monorepo work.",
1882
+ "detail": "If the repository root has AGENTS.md or equivalent instruction shims, confirm GDH-managed text only tells agents to read the nested target AGENTS.md for Godot/GDH work. Do not copy the full GDH target contract into the monorepo root.",
1883
+ "commands": [
1884
+ "gdh guidance status"
1885
+ ],
1886
+ "validationCommands": [
1887
+ "gdh verify drift"
1888
+ ]
1889
+ },
1890
+ {
1891
+ "id": "confirm_hooks_ignore_non_target_edits",
1892
+ "kind": "mechanical",
1893
+ "summary": "Confirm generated hooks are gated to the target path.",
1894
+ "detail": "For monorepos with non-game apps or packages, inspect the generated hook status after migration and confirm GDH hooks report no action for file edits outside the configured Godot target directory.",
1895
+ "commands": [
1896
+ "gdh adapters status"
1897
+ ],
1898
+ "validationCommands": [
1899
+ "gdh adapters status",
1900
+ "gdh verify drift"
1901
+ ]
1902
+ },
1903
+ {
1904
+ "id": "verify_runtime_bridge_surface",
1905
+ "kind": "mechanical",
1906
+ "summary": "Refresh the runtime bridge surface only for targets that use GDH runtime support.",
1907
+ "detail": "The bridge surface is versioned with the other managed target files. Projects that use runtime verification should let `gdh migrate --apply` refresh the bridge and then run their normal runtime smoke. When runtime support is disabled by environment, the bridge should remain inert.",
1908
+ "commands": [
1909
+ "gdh migrate --apply"
1910
+ ],
1911
+ "validationCommands": [
1912
+ "gdh status",
1913
+ "gdh verify drift"
1914
+ ]
1915
+ }
1916
+ ]
1917
+ }
1780
1918
  }
1781
1919
  ]
1782
1920
  }
@@ -1 +1 @@
1
- {"version":3,"file":"authoring-hook-render.d.ts","sourceRoot":"","sources":["../src/authoring-hook-render.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mCAAmC,yCAAyC,CAAC;AAC1F,eAAO,MAAM,kCAAkC,wCAAwC,CAAC;AACxF,eAAO,MAAM,6BAA6B,uRAC4O,CAAC;AACvR,eAAO,MAAM,4BAA4B,qRAC2O,CAAC;AAErR,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,CAAC;CACpC,GAAG,MAAM,CA+IT"}
1
+ {"version":3,"file":"authoring-hook-render.d.ts","sourceRoot":"","sources":["../src/authoring-hook-render.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,mCAAmC,yCAAyC,CAAC;AAC1F,eAAO,MAAM,kCAAkC,wCAAwC,CAAC;AACxF,eAAO,MAAM,6BAA6B,uRAC4O,CAAC;AACvR,eAAO,MAAM,4BAA4B,qRAC2O,CAAC;AAErR,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,QAAQ,CAAC;CACpC,GAAG,MAAM,CAyJT"}
@@ -51,7 +51,7 @@ export function renderGdhAuthoringHook(input) {
51
51
  "",
52
52
  "function handleStop(input, targetRoot) {",
53
53
  " const state = readDirtyState(targetRoot);",
54
- " const dirtyFiles = unique(state.dirtyFiles || []);",
54
+ " const dirtyFiles = sanitizeDirtyFiles(state.dirtyFiles || []);",
55
55
  " if (dirtyFiles.length === 0) return allow();",
56
56
  " const result = runGdh(targetRoot, ['authoring', 'check', '--target', targetRoot, '--mode', 'final', '--format', 'compact']);",
57
57
  " if (result.ok && /Completion allowed\\./.test(result.output)) {",
@@ -76,22 +76,23 @@ export function renderGdhAuthoringHook(input) {
76
76
  "}",
77
77
  "",
78
78
  "function collectChangedFiles(input, targetRoot) {",
79
+ " const baseCwd = input && typeof input.cwd === 'string' ? input.cwd : process.cwd();",
79
80
  " const files = [];",
80
- " addFile(files, input.file_path, targetRoot);",
81
- " addFromToolPayload(files, input.tool_input, targetRoot);",
82
- " addFromToolPayload(files, input.tool_response, targetRoot);",
81
+ " addFile(files, input.file_path, targetRoot, baseCwd);",
82
+ " addFromToolPayload(files, input.tool_input, targetRoot, baseCwd);",
83
+ " addFromToolPayload(files, input.tool_response, targetRoot, baseCwd);",
83
84
  " const command = input && input.tool_input && typeof input.tool_input.command === 'string' ? input.tool_input.command : '';",
84
- " for (const file of parsePatchFileNames(command)) addFile(files, file, targetRoot);",
85
+ " for (const file of parsePatchFileNames(command)) addFile(files, file, targetRoot, baseCwd);",
85
86
  " return unique(files);",
86
87
  "}",
87
88
  "",
88
- "function addFromToolPayload(files, payload, targetRoot) {",
89
+ "function addFromToolPayload(files, payload, targetRoot, baseCwd) {",
89
90
  " if (!payload || typeof payload !== 'object') return;",
90
- " addFile(files, payload.file_path, targetRoot);",
91
- " addFile(files, payload.filePath, targetRoot);",
92
- " addFile(files, payload.path, targetRoot);",
93
- " if (Array.isArray(payload.file_paths)) for (const file of payload.file_paths) addFile(files, file, targetRoot);",
94
- " if (Array.isArray(payload.files)) for (const file of payload.files) addFile(files, file, targetRoot);",
91
+ " addFile(files, payload.file_path, targetRoot, baseCwd);",
92
+ " addFile(files, payload.filePath, targetRoot, baseCwd);",
93
+ " addFile(files, payload.path, targetRoot, baseCwd);",
94
+ " if (Array.isArray(payload.file_paths)) for (const file of payload.file_paths) addFile(files, file, targetRoot, baseCwd);",
95
+ " if (Array.isArray(payload.files)) for (const file of payload.files) addFile(files, file, targetRoot, baseCwd);",
95
96
  "}",
96
97
  "",
97
98
  "function parsePatchFileNames(command) {",
@@ -102,19 +103,27 @@ export function renderGdhAuthoringHook(input) {
102
103
  " return files;",
103
104
  "}",
104
105
  "",
105
- "function addFile(files, value, targetRoot) {",
106
+ "function addFile(files, value, targetRoot, baseCwd) {",
106
107
  " if (typeof value !== 'string' || value.trim() === '') return;",
107
- " const normalized = normalizeToTargetRelative(value.trim(), targetRoot);",
108
+ " const normalized = normalizeToTargetRelative(value.trim(), targetRoot, baseCwd);",
108
109
  " if (normalized) files.push(normalized);",
109
110
  "}",
110
111
  "",
111
- "function normalizeToTargetRelative(value, targetRoot) {",
112
+ "function normalizeToTargetRelative(value, targetRoot, baseCwd) {",
112
113
  " if (value.startsWith('res://')) return value.slice('res://'.length);",
113
- " const absolute = path.isAbsolute(value) ? path.resolve(value) : path.resolve(targetRoot, value);",
114
- " const relative = path.relative(targetRoot, absolute);",
114
+ " const canonicalTargetRoot = canonicalPath(targetRoot);",
115
+ " const canonicalBaseCwd = canonicalPath(baseCwd || targetRoot);",
116
+ " const absolute = path.isAbsolute(value) ? canonicalPath(value) : path.resolve(canonicalBaseCwd, value);",
117
+ " const relative = path.relative(canonicalTargetRoot, absolute);",
118
+ " if ((relative.startsWith('..') || path.isAbsolute(relative)) && !path.isAbsolute(value) && isInside(canonicalTargetRoot, canonicalBaseCwd)) {",
119
+ " const fallbackRelative = path.relative(canonicalTargetRoot, path.resolve(canonicalTargetRoot, value));",
120
+ " if (!fallbackRelative.startsWith('..') && !path.isAbsolute(fallbackRelative)) return fallbackRelative.split(path.sep).join('/');",
121
+ " }",
115
122
  " if (relative.startsWith('..') || path.isAbsolute(relative)) return null;",
116
123
  " return relative.split(path.sep).join('/');",
117
124
  "}",
125
+ "function isInside(root, candidate) { const rel = path.relative(root, path.resolve(candidate)); return rel === '' || (!rel.startsWith('..') && !path.isAbsolute(rel)); }",
126
+ "function canonicalPath(value) { try { return fs.realpathSync.native ? fs.realpathSync.native(value) : fs.realpathSync(value); } catch { return path.resolve(value); } }",
118
127
  "",
119
128
  "function isAuthoringPath(file) {",
120
129
  " if (file === 'project.godot' || file.endsWith('/project.godot')) return true;",
@@ -133,6 +142,7 @@ export function renderGdhAuthoringHook(input) {
133
142
  "function readDirtyState(targetRoot) { try { return JSON.parse(fs.readFileSync(dirtyStatePath(targetRoot), 'utf8')); } catch { return { dirtyFiles: [], lastBlockedHash: null }; } }",
134
143
  "function writeDirtyState(targetRoot, state) { const file = dirtyStatePath(targetRoot); fs.mkdirSync(path.dirname(file), { recursive: true }); fs.writeFileSync(file, `${JSON.stringify(state, null, 2)}\\n`, 'utf8'); }",
135
144
  "function clearDirtyState(targetRoot) { try { fs.rmSync(dirtyStatePath(targetRoot), { force: true }); } catch {} }",
145
+ "function sanitizeDirtyFiles(values) { return unique(values).filter((file) => typeof file === 'string' && file !== '' && !file.startsWith('../') && !path.isAbsolute(file) && isAuthoringPath(file)); }",
136
146
  "function unique(values) { return [...new Set(values.filter(Boolean))].sort(); }",
137
147
  "function hash(value) { return crypto.createHash('sha256').update(value).digest('hex'); }",
138
148
  "function readHookInput() { try { return JSON.parse(fs.readFileSync(0, 'utf8') || '{}'); } catch { return {}; } }",
@@ -1 +1 @@
1
- {"version":3,"file":"authoring-hook-render.js","sourceRoot":"","sources":["../src/authoring-hook-render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"authoring-hook-render.js","sourceRoot":"","sources":["../src/authoring-hook-render.ts"],"names":[],"mappings":"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"}
@@ -39,21 +39,22 @@ export declare const GDH_AUTHORING_HOOK_COMMAND = "node -e \"const fs=require('f
39
39
  */
40
40
  export declare function patchClaudeSettingsForGdhSessionStart(existingContent: string): string;
41
41
  /**
42
- * Patch-merge .claude/settings.json so the GDH statusline is registered ONLY
43
- * when no existing `statusLine` entry is configured (write-if-absent).
42
+ * Patch-merge .claude/settings.json so GDH does not own Claude's single
43
+ * statusLine slot automatically.
44
44
  *
45
- * Planner-lock #2 resolution (Plan 03) per D-18:
46
- * - If `settings.statusLine` is present as ANY truthy value, leave it
47
- * untouched. GDH does not clobber a user-configured statusline; other
48
- * tools (e.g. GSD) can own the slot, and UPD-02 silently no-ops for
49
- * that target. The universal cross-adapter detection surface is MCP
50
- * `_meta` (UPD-03), so a no-op here is acceptable degradation.
51
- * - If `settings.statusLine` is `undefined` or `null`, register GDH's
52
- * `{ type: "command", command: "node .claude/hooks/gdh-statusline.js" }`.
53
- * - Preserves every sibling top-level key verbatim (hooks, env,
45
+ * Claude Code exposes one project `statusLine` command. Project settings can
46
+ * shadow user/global statusline configuration, so GDH must not create a
47
+ * project-level statusLine entry just to show update hints. The SessionStart
48
+ * hook, MCP `_meta`, and CLI banner are the non-destructive update surfaces.
49
+ *
50
+ * Migration behavior:
51
+ * - If `settings.statusLine` is the exact old GDH-managed entry, remove it.
52
+ * This lets existing targets fall back to user/global statusline behavior.
53
+ * - If `settings.statusLine` is absent, null, or anything else, leave it
54
+ * untouched. GDH does not compose or guess at other tools' commands.
55
+ * - Preserve every sibling top-level key verbatim (hooks, env,
54
56
  * permissions, etc.). Composes cleanly with
55
- * `patchClaudeSettingsForGdhSessionStart` (idempotent + commutative,
56
- * proven by the Task 1 Test J suite).
57
+ * `patchClaudeSettingsForGdhSessionStart` and authoring hook patches.
57
58
  *
58
59
  * Input handling:
59
60
  * - Empty string / whitespace-only → fresh `{}` base (GDH-only output).
@@ -1 +1 @@
1
- {"version":3,"file":"claude-settings-patch.d.ts","sourceRoot":"","sources":["../src/claude-settings-patch.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,eAAO,MAAM,6BAA6B,0BAA0B,CAAC;AAErE;;;;;;;GAOG;AACH,eAAO,MAAM,8BAA8B,2CAA2C,CAAC;AACvF,eAAO,MAAM,0BAA0B,uRAAgC,CAAC;AA8DxE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,qCAAqC,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAuCrF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,mCAAmC,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CA6BnF;AAED,wBAAgB,uCAAuC,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CA2CvF"}
1
+ {"version":3,"file":"claude-settings-patch.d.ts","sourceRoot":"","sources":["../src/claude-settings-patch.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,eAAO,MAAM,6BAA6B,0BAA0B,CAAC;AAErE;;;;;;;GAOG;AACH,eAAO,MAAM,8BAA8B,2CAA2C,CAAC;AACvF,eAAO,MAAM,0BAA0B,uRAAgC,CAAC;AA8DxE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,qCAAqC,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAuCrF;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,mCAAmC,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAQnF;AAeD,wBAAgB,uCAAuC,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CA2CvF"}
@@ -105,21 +105,22 @@ export function patchClaudeSettingsForGdhSessionStart(existingContent) {
105
105
  return `${JSON.stringify(settings, null, 2)}\n`;
106
106
  }
107
107
  /**
108
- * Patch-merge .claude/settings.json so the GDH statusline is registered ONLY
109
- * when no existing `statusLine` entry is configured (write-if-absent).
108
+ * Patch-merge .claude/settings.json so GDH does not own Claude's single
109
+ * statusLine slot automatically.
110
110
  *
111
- * Planner-lock #2 resolution (Plan 03) per D-18:
112
- * - If `settings.statusLine` is present as ANY truthy value, leave it
113
- * untouched. GDH does not clobber a user-configured statusline; other
114
- * tools (e.g. GSD) can own the slot, and UPD-02 silently no-ops for
115
- * that target. The universal cross-adapter detection surface is MCP
116
- * `_meta` (UPD-03), so a no-op here is acceptable degradation.
117
- * - If `settings.statusLine` is `undefined` or `null`, register GDH's
118
- * `{ type: "command", command: "node .claude/hooks/gdh-statusline.js" }`.
119
- * - Preserves every sibling top-level key verbatim (hooks, env,
111
+ * Claude Code exposes one project `statusLine` command. Project settings can
112
+ * shadow user/global statusline configuration, so GDH must not create a
113
+ * project-level statusLine entry just to show update hints. The SessionStart
114
+ * hook, MCP `_meta`, and CLI banner are the non-destructive update surfaces.
115
+ *
116
+ * Migration behavior:
117
+ * - If `settings.statusLine` is the exact old GDH-managed entry, remove it.
118
+ * This lets existing targets fall back to user/global statusline behavior.
119
+ * - If `settings.statusLine` is absent, null, or anything else, leave it
120
+ * untouched. GDH does not compose or guess at other tools' commands.
121
+ * - Preserve every sibling top-level key verbatim (hooks, env,
120
122
  * permissions, etc.). Composes cleanly with
121
- * `patchClaudeSettingsForGdhSessionStart` (idempotent + commutative,
122
- * proven by the Task 1 Test J suite).
123
+ * `patchClaudeSettingsForGdhSessionStart` and authoring hook patches.
123
124
  *
124
125
  * Input handling:
125
126
  * - Empty string / whitespace-only → fresh `{}` base (GDH-only output).
@@ -138,36 +139,22 @@ export function patchClaudeSettingsForGdhSessionStart(existingContent) {
138
139
  * that both sides import from.
139
140
  */
140
141
  export function patchClaudeSettingsForGdhStatusline(existingContent) {
141
- let settings;
142
- try {
143
- const trimmed = existingContent.trim();
144
- if (trimmed.length === 0) {
145
- settings = {};
146
- }
147
- else {
148
- const parsed = JSON.parse(trimmed);
149
- if (parsed !== null && typeof parsed === "object" && !Array.isArray(parsed)) {
150
- settings = parsed;
151
- }
152
- else {
153
- settings = {};
154
- }
155
- }
156
- }
157
- catch {
158
- settings = {};
159
- }
160
- // Write-if-absent semantics: any existing truthy statusLine value is
161
- // preserved verbatim (D-18 — another tool already owns the slot, we
162
- // silently no-op for UPD-02 on this target).
163
- if (settings.statusLine === undefined || settings.statusLine === null) {
164
- settings.statusLine = {
165
- type: "command",
166
- command: GDH_STATUSLINE_COMMAND,
167
- };
142
+ const settings = parseClaudeSettings(existingContent);
143
+ if (isExactGdhManagedStatusline(settings.statusLine)) {
144
+ delete settings.statusLine;
168
145
  }
169
146
  return `${JSON.stringify(settings, null, 2)}\n`;
170
147
  }
148
+ function isExactGdhManagedStatusline(value) {
149
+ if (value === null || typeof value !== "object" || Array.isArray(value)) {
150
+ return false;
151
+ }
152
+ const record = value;
153
+ const keys = Object.keys(record);
154
+ return (keys.length === 2 &&
155
+ record["type"] === "command" &&
156
+ record["command"] === GDH_STATUSLINE_COMMAND);
157
+ }
171
158
  export function patchClaudeSettingsForGdhAuthoringHooks(existingContent) {
172
159
  const settings = parseClaudeSettings(existingContent);
173
160
  const existingHooks = settings.hooks;
@@ -1 +1 @@
1
- {"version":3,"file":"claude-settings-patch.js","sourceRoot":"","sources":["../src/claude-settings-patch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-settings-patch.js","sourceRoot":"","sources":["../src/claude-settings-patch.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,19 @@
1
1
  /**
2
- * Relative path of the managed Claude statusline renderer script. This is
3
- * the .js file Claude Code invokes on every prompt render when the managed
4
- * target has registered `statusLine.command = "node .claude/hooks/gdh-statusline.js"`
5
- * in its `.claude/settings.json`.
2
+ * Relative path of the optional managed Claude statusline renderer script.
3
+ * GDH bakes this file so projects can opt into it manually, but adapter
4
+ * install does not register it in `.claude/settings.json` because Claude
5
+ * exposes only one statusLine command slot and a project-level entry can
6
+ * shadow a user's global statusline.
6
7
  */
7
8
  export declare const CLAUDE_STATUSLINE_RELATIVE_PATH = ".claude/hooks/gdh-statusline.js";
8
9
  /**
9
- * Exact command literal GDH uses to register its statusline in
10
- * `.claude/settings.json`.
10
+ * Exact command literal for the optional GDH statusline script.
11
11
  *
12
12
  * `patchClaudeSettingsForGdhStatusline` (in claude-settings-patch.ts) imports
13
- * this constant and writes it into the `statusLine.command` field ONLY when
14
- * the target has no pre-existing `statusLine` registration (write-if-absent
15
- * policy planner-lock #2 resolution per D-18). If another tool already owns
16
- * the slot, GDH leaves it untouched and UPD-02 silently no-ops on that repo;
17
- * the universal cross-adapter detection surface is MCP `_meta` (UPD-03).
13
+ * this constant only to remove the exact old GDH-managed statusLine entry
14
+ * during migration. GDH does not auto-register this command anymore; update
15
+ * detection still exists via SessionStart, MCP `_meta`, and CLI banner
16
+ * surfaces.
18
17
  */
19
18
  export declare const GDH_STATUSLINE_COMMAND = "node .claude/hooks/gdh-statusline.js";
20
19
  /**
@@ -23,8 +22,8 @@ export declare const GDH_STATUSLINE_COMMAND = "node .claude/hooks/gdh-statusline
23
22
  *
24
23
  * The returned string is written verbatim to `.claude/hooks/gdh-statusline.js`
25
24
  * by the adapter install pipeline. At runtime, Claude Code invokes the
26
- * rendered script (when `statusLine.command` points at it — see D-18 /
27
- * planner-lock #2) on every prompt render; the script reads the shared
25
+ * rendered script (when a project deliberately points `statusLine.command` at
26
+ * it) on every prompt render; the script reads the shared
28
27
  * cache at `~/.cache/gdh/update-check.json` and prints the yellow
29
28
  * `⬆ /gdh-update │ ` indicator when `cache.updateAvailable` is truthy.
30
29
  *
@@ -1 +1 @@
1
- {"version":3,"file":"claude-statusline-render.d.ts","sourceRoot":"","sources":["../src/claude-statusline-render.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,oCACT,CAAC;AAEpC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,sBAAsB,yCAAyC,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,4BAA4B,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CA4B5E"}
1
+ {"version":3,"file":"claude-statusline-render.d.ts","sourceRoot":"","sources":["../src/claude-statusline-render.ts"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,eAAO,MAAM,+BAA+B,oCACT,CAAC;AAEpC;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,yCAAyC,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,4BAA4B,CAAC,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,CA4B5E"}
@@ -1,21 +1,20 @@
1
1
  import { GDH_UPDATE_HOOK_VERSION } from "@gdh/core";
2
2
  /**
3
- * Relative path of the managed Claude statusline renderer script. This is
4
- * the .js file Claude Code invokes on every prompt render when the managed
5
- * target has registered `statusLine.command = "node .claude/hooks/gdh-statusline.js"`
6
- * in its `.claude/settings.json`.
3
+ * Relative path of the optional managed Claude statusline renderer script.
4
+ * GDH bakes this file so projects can opt into it manually, but adapter
5
+ * install does not register it in `.claude/settings.json` because Claude
6
+ * exposes only one statusLine command slot and a project-level entry can
7
+ * shadow a user's global statusline.
7
8
  */
8
9
  export const CLAUDE_STATUSLINE_RELATIVE_PATH = ".claude/hooks/gdh-statusline.js";
9
10
  /**
10
- * Exact command literal GDH uses to register its statusline in
11
- * `.claude/settings.json`.
11
+ * Exact command literal for the optional GDH statusline script.
12
12
  *
13
13
  * `patchClaudeSettingsForGdhStatusline` (in claude-settings-patch.ts) imports
14
- * this constant and writes it into the `statusLine.command` field ONLY when
15
- * the target has no pre-existing `statusLine` registration (write-if-absent
16
- * policy planner-lock #2 resolution per D-18). If another tool already owns
17
- * the slot, GDH leaves it untouched and UPD-02 silently no-ops on that repo;
18
- * the universal cross-adapter detection surface is MCP `_meta` (UPD-03).
14
+ * this constant only to remove the exact old GDH-managed statusLine entry
15
+ * during migration. GDH does not auto-register this command anymore; update
16
+ * detection still exists via SessionStart, MCP `_meta`, and CLI banner
17
+ * surfaces.
19
18
  */
20
19
  export const GDH_STATUSLINE_COMMAND = "node .claude/hooks/gdh-statusline.js";
21
20
  /**
@@ -24,8 +23,8 @@ export const GDH_STATUSLINE_COMMAND = "node .claude/hooks/gdh-statusline.js";
24
23
  *
25
24
  * The returned string is written verbatim to `.claude/hooks/gdh-statusline.js`
26
25
  * by the adapter install pipeline. At runtime, Claude Code invokes the
27
- * rendered script (when `statusLine.command` points at it — see D-18 /
28
- * planner-lock #2) on every prompt render; the script reads the shared
26
+ * rendered script (when a project deliberately points `statusLine.command` at
27
+ * it) on every prompt render; the script reads the shared
29
28
  * cache at `~/.cache/gdh/update-check.json` and prints the yellow
30
29
  * `⬆ /gdh-update │ ` indicator when `cache.updateAvailable` is truthy.
31
30
  *
@@ -1 +1 @@
1
- {"version":3,"file":"claude-statusline-render.js","sourceRoot":"","sources":["../src/claude-statusline-render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEpD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAC1C,iCAAiC,CAAC;AAEpC;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,sCAAsC,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,4BAA4B,CAAC,cAAuB;IAClE,OAAO;QACL,qBAAqB;QACrB,wBAAwB,uBAAuB,EAAE;QACjD,gGAAgG;QAChG,wFAAwF;QACxF,qFAAqF;QACrF,EAAE;QACF,2BAA2B;QAC3B,+BAA+B;QAC/B,2BAA2B;QAC3B,EAAE;QACF,+BAA+B;QAC/B,6EAA6E;QAC7E,EAAE;QACF,qBAAqB;QACrB,iCAAiC;QACjC,SAAS;QACT,mEAAmE;QACnE,2CAA2C;QAC3C,wDAAwD;QACxD,OAAO;QACP,kBAAkB;QAClB,GAAG;QACH,EAAE;QACF,kCAAkC;QAClC,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"claude-statusline-render.js","sourceRoot":"","sources":["../src/claude-statusline-render.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AAEpD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAC1C,iCAAiC,CAAC;AAEpC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,sCAAsC,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,4BAA4B,CAAC,cAAuB;IAClE,OAAO;QACL,qBAAqB;QACrB,wBAAwB,uBAAuB,EAAE;QACjD,gGAAgG;QAChG,wFAAwF;QACxF,qFAAqF;QACrF,EAAE;QACF,2BAA2B;QAC3B,+BAA+B;QAC/B,2BAA2B;QAC3B,EAAE;QACF,+BAA+B;QAC/B,6EAA6E;QAC7E,EAAE;QACF,qBAAqB;QACrB,iCAAiC;QACjC,SAAS;QACT,mEAAmE;QACnE,2CAA2C;QAC3C,wDAAwD;QACxD,OAAO;QACP,kBAAkB;QAClB,GAAG;QACH,EAAE;QACF,kCAAkC;QAClC,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}