@3fn/core 13.0.0 → 14.1.0

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 (284) hide show
  1. package/.kiro/agents/ada-prompt.md +80 -132
  2. package/.kiro/agents/ada-prompt.md.attribution.json +45 -0
  3. package/.kiro/agents/ada.json +44 -59
  4. package/.kiro/agents/ada.json.attribution.json +13 -0
  5. package/.kiro/agents/data-prompt.md +83 -74
  6. package/.kiro/agents/data-prompt.md.attribution.json +53 -0
  7. package/.kiro/agents/data.json +31 -38
  8. package/.kiro/agents/data.json.attribution.json +13 -0
  9. package/.kiro/agents/kenya-prompt.md +83 -72
  10. package/.kiro/agents/kenya-prompt.md.attribution.json +53 -0
  11. package/.kiro/agents/kenya.json +27 -35
  12. package/.kiro/agents/kenya.json.attribution.json +13 -0
  13. package/.kiro/agents/leonardo-prompt.md +176 -234
  14. package/.kiro/agents/leonardo-prompt.md.attribution.json +45 -0
  15. package/.kiro/agents/leonardo.json +28 -36
  16. package/.kiro/agents/leonardo.json.attribution.json +13 -0
  17. package/.kiro/agents/lina-prompt.md +110 -151
  18. package/.kiro/agents/lina-prompt.md.attribution.json +53 -0
  19. package/.kiro/agents/lina.json +46 -59
  20. package/.kiro/agents/lina.json.attribution.json +13 -0
  21. package/.kiro/agents/sparky-prompt.md +89 -72
  22. package/.kiro/agents/sparky-prompt.md.attribution.json +53 -0
  23. package/.kiro/agents/sparky.json +37 -37
  24. package/.kiro/agents/sparky.json.attribution.json +13 -0
  25. package/.kiro/agents/stacy-prompt.md +74 -48
  26. package/.kiro/agents/stacy-prompt.md.attribution.json +45 -0
  27. package/.kiro/agents/stacy.json +28 -30
  28. package/.kiro/agents/stacy.json.attribution.json +13 -0
  29. package/.kiro/agents/thurgood-prompt.md +94 -138
  30. package/.kiro/agents/thurgood-prompt.md.attribution.json +45 -0
  31. package/.kiro/agents/thurgood.json +31 -35
  32. package/.kiro/agents/thurgood.json.attribution.json +13 -0
  33. package/.kiro/steering/AI-Collaboration-Principles.md +3 -3
  34. package/.kiro/steering/Civitas-System-Overview.md +7 -16
  35. package/.kiro/steering/DesignerPunk-Systems-Overview.md +6 -6
  36. package/.kiro/steering/Spec-Feedback-Protocol.md +2 -11
  37. package/.kiro/steering/Task-Completion-Protocol.md +98 -17
  38. package/.kiro/steering/core-goals.md +3 -3
  39. package/.kiro/steering/personal-note.md +1 -1
  40. package/.kiro/steering/start-up-tasks.md +17 -6
  41. package/application-mcp-server/src/index.ts +26 -0
  42. package/dist/ComponentTokens.android.kt +12 -12
  43. package/dist/ComponentTokens.ios.swift +12 -12
  44. package/dist/ComponentTokens.web.css +3 -3
  45. package/dist/DesignTokens.android.kt +1 -1
  46. package/dist/DesignTokens.dtcg.json +8 -5
  47. package/dist/DesignTokens.figma.json +2 -2
  48. package/dist/DesignTokens.ios.swift +1 -1
  49. package/dist/DesignTokens.web.css +1 -1
  50. package/dist/android/DesignTokens.android.kt +1 -1
  51. package/dist/blend/OklchBlendCalculator.js +1 -0
  52. package/dist/blend/ThemeAwareBlendUtilities.web.d.ts +13 -2
  53. package/dist/blend/ThemeAwareBlendUtilities.web.js +6 -1
  54. package/dist/browser/designerpunk.esm.js +36 -90
  55. package/dist/browser/designerpunk.esm.min.js +33 -36
  56. package/dist/browser/designerpunk.umd.js +36 -90
  57. package/dist/browser/designerpunk.umd.min.js +47 -50
  58. package/dist/browser/tokens.css +3 -3
  59. package/dist/build/tokens/defineComponentTokens.d.ts +10 -0
  60. package/dist/build/tokens/defineComponentTokens.js +26 -0
  61. package/dist/components/core/Avatar-Base/avatar.tokens.d.ts +21 -26
  62. package/dist/components/core/Avatar-Base/avatar.tokens.js +31 -34
  63. package/dist/components/core/Avatar-Base/index.d.ts +1 -1
  64. package/dist/components/core/Avatar-Base/index.js +2 -2
  65. package/dist/components/core/Avatar-Base/platforms/web/Avatar.web.js +24 -5
  66. package/dist/components/core/Button-CTA/examples/BasicUsage.d.ts +16 -28
  67. package/dist/components/core/Button-CTA/examples/BasicUsage.js +18 -43
  68. package/dist/components/core/Button-CTA/platforms/web/ButtonCTA.web.d.ts +3 -15
  69. package/dist/components/core/Button-CTA/platforms/web/ButtonCTA.web.js +9 -58
  70. package/dist/components/core/Button-CTA/types.d.ts +0 -24
  71. package/dist/components/core/Button-CTA/types.js +6 -0
  72. package/dist/components/core/Button-Icon/buttonIcon.tokens.d.ts +28 -14
  73. package/dist/components/core/Button-Icon/buttonIcon.tokens.js +35 -20
  74. package/dist/components/core/Input-Text-Base/types.d.ts +13 -1
  75. package/dist/components/core/Input-Text-Password/platforms/web/InputTextPassword.web.js +11 -2
  76. package/dist/generators/DTCGFormatGenerator.js +8 -0
  77. package/dist/generators/TokenFileGenerator.js +7 -2
  78. package/dist/integration/BuildErrorHandler.js +2 -2
  79. package/dist/ios/DesignTokens.ios.swift +1 -1
  80. package/dist/mcp/application-mcp.js +24 -0
  81. package/dist/mcp/docs-mcp.js +130 -15
  82. package/dist/mcp/product-mcp.js +25 -0
  83. package/dist/tokens/OpacityTokens.js +1 -1
  84. package/dist/tokens/component/progress.d.ts +65 -5
  85. package/dist/tokens/component/progress.js +79 -18
  86. package/dist/tokens/semantic/BlendTokens.d.ts +10 -3
  87. package/dist/tokens/semantic/BlendTokens.js +17 -5
  88. package/dist/tokens/semantic/OpacityTokens.d.ts +4 -4
  89. package/dist/tokens/semantic/OpacityTokens.js +4 -4
  90. package/dist/types/ComponentTypes.d.ts +1 -1
  91. package/dist/types/generated/TokenTypes.d.ts +1 -1
  92. package/dist/types/generated/TokenTypes.js +1 -1
  93. package/dist/validators/StemmaTokenUsageValidator.js +3 -2
  94. package/dist/web/DesignTokens.web.css +1 -1
  95. package/governance/BUILD-SYSTEM-SETUP.md +1 -2
  96. package/governance/Component-Development-Guide.md +23 -13
  97. package/governance/Component-Development-Standards.md +21 -20
  98. package/governance/Component-Family-Avatar.md +6 -7
  99. package/governance/Component-Family-Badge.md +19 -20
  100. package/governance/Component-Family-Button.md +30 -43
  101. package/governance/Component-Family-Chip.md +14 -15
  102. package/governance/Component-Family-Container.md +12 -13
  103. package/governance/Component-Family-Data-Display.md +1 -2
  104. package/governance/Component-Family-Divider.md +1 -2
  105. package/governance/Component-Family-Form-Inputs.md +65 -65
  106. package/governance/Component-Family-Icon.md +9 -10
  107. package/governance/Component-Family-Loading.md +1 -2
  108. package/governance/Component-Family-Modal.md +1 -2
  109. package/governance/Component-Family-Navigation.md +1 -2
  110. package/governance/Component-Family-Progress.md +0 -1
  111. package/governance/Component-Inheritance-Structures.md +219 -99
  112. package/governance/Component-MCP-Document-Template.md +6 -5
  113. package/governance/Component-Primitive-vs-Semantic-Philosophy.md +1 -1
  114. package/governance/Component-Quick-Reference.md +33 -33
  115. package/governance/Component-Readiness-Status.md +59 -44
  116. package/governance/Component-Templates.md +57 -61
  117. package/governance/Contract-System-Reference.md +7 -7
  118. package/governance/MCP-Integration-Guide.md +1 -1
  119. package/governance/Process-Cross-Reference-Standards.md +31 -13
  120. package/governance/Process-Development-Workflow.md +49 -59
  121. package/governance/Process-File-Organization.md +25 -28
  122. package/governance/Process-Hook-Operations.md +22 -11
  123. package/governance/Process-Orchestration-Model-Selection.md +92 -0
  124. package/governance/Process-Spec-Planning.md +98 -52
  125. package/governance/Process-Task-Type-Definitions.md +80 -4
  126. package/governance/Product-Handoff-Protocol.md +2 -0
  127. package/governance/Rosetta-System-Architecture.md +13 -11
  128. package/governance/Test-Behavioral-Contract-Validation.md +38 -31
  129. package/governance/Test-Failure-Audit-Methodology.md +1 -1
  130. package/governance/Token-Family-Accessibility.md +1 -2
  131. package/governance/Token-Family-Blend.md +18 -16
  132. package/governance/Token-Family-Blur.md +0 -1
  133. package/governance/Token-Family-Border.md +1 -2
  134. package/governance/Token-Family-Color.md +0 -1
  135. package/governance/Token-Family-Glow.md +1 -2
  136. package/governance/Token-Family-Layering.md +0 -1
  137. package/governance/Token-Family-Motion.md +1 -2
  138. package/governance/Token-Family-Opacity.md +0 -1
  139. package/governance/Token-Family-Radius.md +1 -2
  140. package/governance/Token-Family-Responsive.md +1 -2
  141. package/governance/Token-Family-Shadow.md +1 -2
  142. package/governance/Token-Family-Sizing.md +0 -1
  143. package/governance/Token-Family-Spacing.md +1 -2
  144. package/governance/Token-Family-Typography.md +1 -2
  145. package/governance/Token-Governance.md +8 -8
  146. package/governance/Token-Quick-Reference.md +47 -34
  147. package/governance/Token-Resolution-Patterns.md +1 -1
  148. package/governance/Token-Semantic-Structure.md +1 -1
  149. package/governance/Web-Authoring-Standards.md +5 -5
  150. package/governance/browser-distribution-guide.md +1 -4
  151. package/governance/classification-map.md +474 -0
  152. package/governance/completion-documentation-guide.md +23 -37
  153. package/governance/component-meta-authoring-guide.md +1 -1
  154. package/governance/cross-platform-vs-platform-specific-decision-framework.md +1 -1
  155. package/governance/platform-implementation-guidelines.md +2 -3
  156. package/governance/release-management-system.md +28 -63
  157. package/governance/rosetta-system-principles.md +8 -6
  158. package/governance/stemma-system-principles.md +18 -17
  159. package/mcp-server/src/index.ts +24 -6
  160. package/mcp-server/src/indexer/DocumentIndexer.ts +119 -9
  161. package/mcp-server/src/indexer/__tests__/bare-id-crossrefs.test.ts +250 -0
  162. package/mcp-server/src/indexer/cross-ref-parser.ts +29 -1
  163. package/mcp-server/src/indexer/index-health.ts +27 -2
  164. package/mcp-server/src/query/__tests__/find-docs-calibration.test.ts +11 -26
  165. package/mcp-server/src/relocation-integrity-gate/__tests__/relocation-integrity-gate.test.ts +72 -5
  166. package/mcp-server/src/relocation-integrity-gate/relocation-integrity-gate.ts +81 -24
  167. package/mcp-server/src/tools/list-cross-references.ts +2 -2
  168. package/package.json +24 -26
  169. package/src/__tests__/browser-distribution/css-bundling.test.ts +6 -4
  170. package/src/__tests__/console-allowlist.json +14 -0
  171. package/src/__tests__/console-fail-setup.ts +169 -0
  172. package/src/__tests__/integration/Spec107-DesignLanguageContext.test.ts +16 -0
  173. package/src/__tests__/stemma-system/behavioral-contract-validation.test.ts +70 -17
  174. package/src/__tests__/stemma-system/contract-catalog-name-validation.test.ts +28 -0
  175. package/src/__tests__/stemma-system/form-inputs-contracts.test.ts +223 -16
  176. package/src/__tests__/stemma-system/input-text-native-base-call-alignment.test.ts +298 -0
  177. package/src/blend/OklchBlendCalculator.ts +3 -0
  178. package/src/blend/ThemeAwareBlendUtilities.android.kt +3 -0
  179. package/src/blend/ThemeAwareBlendUtilities.ios.swift +3 -0
  180. package/src/blend/ThemeAwareBlendUtilities.web.ts +9 -1
  181. package/src/blend/__tests__/InteractionStateAudit.test.ts +12 -9
  182. package/src/build/errors/__tests__/ErrorHandler.integration.test.ts +8 -0
  183. package/src/build/errors/__tests__/ErrorHandler.test.ts +5 -0
  184. package/src/build/tokens/__tests__/defineComponentTokens.test.ts +113 -0
  185. package/src/build/tokens/defineComponentTokens.ts +43 -1
  186. package/src/build/workflow/__tests__/CICDIntegration.test.ts +12 -1
  187. package/src/cli/__tests__/init.test.ts +45 -11
  188. package/src/components/core/Avatar-Base/Avatar-Base.schema.yaml +1 -1
  189. package/src/components/core/Avatar-Base/__tests__/Avatar.accessibility.test.ts +121 -7
  190. package/src/components/core/Avatar-Base/__tests__/Avatar.image.test.ts +3 -0
  191. package/src/components/core/Avatar-Base/__tests__/Avatar.test.ts +15 -6
  192. package/src/components/core/Avatar-Base/avatar.tokens.ts +31 -34
  193. package/src/components/core/Avatar-Base/contracts.yaml +11 -1
  194. package/src/components/core/Avatar-Base/index.ts +1 -1
  195. package/src/components/core/Avatar-Base/platforms/web/Avatar.web.ts +24 -5
  196. package/src/components/core/Badge-Count-Base/contracts.yaml +1 -1
  197. package/src/components/core/Badge-Label-Base/contracts.yaml +1 -1
  198. package/src/components/core/Button-CTA/Button-CTA.schema.yaml +2 -12
  199. package/src/components/core/Button-CTA/README.md +3 -6
  200. package/src/components/core/Button-CTA/__tests__/ButtonCTA.test.ts +35 -89
  201. package/src/components/core/Button-CTA/__tests__/setup.test.ts +0 -2
  202. package/src/components/core/Button-CTA/__tests__/test-utils.ts +0 -2
  203. package/src/components/core/Button-CTA/contracts.yaml +6 -29
  204. package/src/components/core/Button-CTA/examples/BasicUsage.html +2 -14
  205. package/src/components/core/Button-CTA/examples/BasicUsage.tsx +17 -44
  206. package/src/components/core/Button-CTA/platforms/android/ButtonCTA.android.kt +12 -20
  207. package/src/components/core/Button-CTA/platforms/ios/ButtonCTA.ios.swift +12 -51
  208. package/src/components/core/Button-CTA/platforms/web/ButtonCTA.web.css +2 -26
  209. package/src/components/core/Button-CTA/platforms/web/ButtonCTA.web.ts +18 -71
  210. package/src/components/core/Button-CTA/types.ts +10 -28
  211. package/src/components/core/Button-Icon/buttonIcon.tokens.ts +43 -27
  212. package/src/components/core/Chip-Base/__tests__/ChipBase.test.ts +13 -0
  213. package/src/components/core/Chip-Filter/__tests__/ChipFilter.test.ts +13 -0
  214. package/src/components/core/Chip-Input/__tests__/ChipInput.test.ts +13 -0
  215. package/src/components/core/Input-Text-Base/Input-Text-Base.schema.yaml +30 -2
  216. package/src/components/core/Input-Text-Base/README.md +25 -2
  217. package/src/components/core/Input-Text-Base/__tests__/focusIndicators.test.ts +16 -15
  218. package/src/components/core/Input-Text-Base/contracts.yaml +90 -0
  219. package/src/components/core/Input-Text-Base/platforms/android/InputTextBase.android.kt +26 -12
  220. package/src/components/core/Input-Text-Base/platforms/ios/InputTextBase.ios.swift +195 -59
  221. package/src/components/core/Input-Text-Base/types.ts +13 -1
  222. package/src/components/core/Input-Text-Email/Input-Text-Email.schema.yaml +5 -1
  223. package/src/components/core/Input-Text-Email/README.md +8 -7
  224. package/src/components/core/Input-Text-Email/platforms/android/InputTextEmail.android.kt +1 -4
  225. package/src/components/core/Input-Text-Email/platforms/ios/InputTextEmail.ios.swift +2 -16
  226. package/src/components/core/Input-Text-Password/Input-Text-Password.schema.yaml +10 -3
  227. package/src/components/core/Input-Text-Password/README.md +9 -8
  228. package/src/components/core/Input-Text-Password/contracts.yaml +5 -0
  229. package/src/components/core/Input-Text-Password/platforms/android/InputTextPassword.android.kt +17 -7
  230. package/src/components/core/Input-Text-Password/platforms/ios/InputTextPassword.ios.swift +22 -20
  231. package/src/components/core/Input-Text-Password/platforms/web/InputTextPassword.web.ts +11 -2
  232. package/src/components/core/Input-Text-PhoneNumber/Input-Text-PhoneNumber.schema.yaml +5 -1
  233. package/src/components/core/Input-Text-PhoneNumber/README.md +9 -8
  234. package/src/components/core/Input-Text-PhoneNumber/platforms/android/InputTextPhoneNumber.android.kt +2 -5
  235. package/src/components/core/Input-Text-PhoneNumber/platforms/ios/InputTextPhoneNumber.ios.swift +3 -17
  236. package/src/components/core/Nav-Header-App/contracts.yaml +1 -1
  237. package/src/components/core/Nav-SegmentedChoice-Base/contracts.yaml +1 -1
  238. package/src/components/core/Progress-Indicator-Connector-Base/contracts.yaml +1 -1
  239. package/src/components/core/Progress-Indicator-Label-Base/contracts.yaml +1 -1
  240. package/src/components/core/Progress-Indicator-Node-Base/contracts.yaml +1 -1
  241. package/src/components/core/Progress-Stepper-Base/__tests__/StepperBase.test.ts +5 -2
  242. package/src/components/core/Progress-Stepper-Detailed/__tests__/StepperDetailed.test.ts +5 -2
  243. package/src/generators/DTCGFormatGenerator.ts +6 -0
  244. package/src/generators/TokenFileGenerator.ts +7 -2
  245. package/src/generators/__tests__/DTCGConfigOptions.test.ts +14 -5
  246. package/src/integration/BuildErrorHandler.ts +2 -2
  247. package/src/tokens/OpacityTokens.ts +1 -1
  248. package/src/tokens/__tests__/OpacityTokens.test.ts +3 -1
  249. package/src/tokens/__tests__/ProgressTokenCompliance.test.ts +5 -3
  250. package/src/tokens/__tests__/ProgressTokenFormulas.test.ts +11 -11
  251. package/src/tokens/__tests__/ProgressTokenTranslation.test.ts +22 -20
  252. package/src/tokens/component/progress.ts +83 -21
  253. package/src/tokens/semantic/BlendTokens.ts +26 -5
  254. package/src/tokens/semantic/OpacityTokens.ts +4 -4
  255. package/src/types/ComponentTypes.ts +1 -1
  256. package/src/types/generated/TokenTypes.ts +1 -1
  257. package/src/validators/StemmaTokenUsageValidator.ts +3 -2
  258. package/token-index/components.yaml +8 -8
  259. package/token-index/semantics.yaml +1 -2
  260. package/src/tools/release/__tests__/ChangeClassifier.test.ts +0 -133
  261. package/src/tools/release/__tests__/ChangeExtractor.test.ts +0 -222
  262. package/src/tools/release/__tests__/GitHubPublisher.test.ts +0 -240
  263. package/src/tools/release/__tests__/NotesRenderer.test.ts +0 -142
  264. package/src/tools/release/__tests__/NpmPublisher.test.ts +0 -289
  265. package/src/tools/release/__tests__/PipelineIntegration.test.ts +0 -188
  266. package/src/tools/release/__tests__/ReleasePipeline.test.ts +0 -192
  267. package/src/tools/release/__tests__/SemanticVersionValidator.test.ts +0 -49
  268. package/src/tools/release/__tests__/SummaryScanner.test.ts +0 -141
  269. package/src/tools/release/__tests__/TagResolver.test.ts +0 -91
  270. package/src/tools/release/__tests__/VersionCalculator.test.ts +0 -270
  271. package/src/tools/release/__tests__/helpers/NpmMockHelper.ts +0 -80
  272. package/src/tools/release/cli/ReleasePipeline.ts +0 -165
  273. package/src/tools/release/cli/release-tool.ts +0 -107
  274. package/src/tools/release/pipeline/ChangeClassifier.ts +0 -61
  275. package/src/tools/release/pipeline/ChangeExtractor.ts +0 -87
  276. package/src/tools/release/pipeline/NotesRenderer.ts +0 -66
  277. package/src/tools/release/pipeline/SummaryScanner.ts +0 -70
  278. package/src/tools/release/pipeline/TagResolver.ts +0 -40
  279. package/src/tools/release/pipeline/VersionCalculator.ts +0 -375
  280. package/src/tools/release/publishers/GitHubPublisher.ts +0 -228
  281. package/src/tools/release/publishers/NpmPublisher.ts +0 -196
  282. package/src/tools/release/release-config.json +0 -5
  283. package/src/tools/release/types/index.ts +0 -282
  284. package/src/tools/release/validators/SemanticVersionValidator.ts +0 -67
@@ -151,7 +151,7 @@ Both `find_docs` and keyworded `find_components` emit a three-layer confidence s
151
151
 
152
152
  **Token exemption:** token tools perform structured predicate retrieval with no relevance ranking — the three-layer model does not apply. Trigger: if a token tool is introduced with open-ended intent input and ranked output, it inherits this model. Bright line: predicate filter → no tier; relevance ranking → tier required.
153
153
 
154
- **119 Decision 4a cross-reference:** the agent-side certainty-calibration protocol that consumes a `partial` (propose best-fit + confidence + rationale → human go/no-go, with the proposal required to carry its own uncertainty) is captured in `.kiro/specs/119-steering-progressive-disclosure-redesign/design-outline.md` under Decision 4a. 121 emits the signal; 119 defines what the agent does with a `partial`.
154
+ **119 Decision 4a cross-reference:** the agent-side certainty-calibration protocol that consumes a `partial` (propose best-fit + confidence + rationale → human go/no-go, with the proposal required to carry its own uncertainty) is captured in `.kiro/specs/119-agent-experience-architecture/design-outline.md` under Decision 4a. 121 emits the signal; 119 defines what the agent does with a `partial`.
155
155
 
156
156
  ---
157
157
 
@@ -8,7 +8,7 @@ description: Cross-reference standards for documentation — formatting rules, c
8
8
  # Process-Cross-Reference-Standards
9
9
 
10
10
  **Date**: 2026-01-03
11
- **Last Reviewed**: 2026-01-03
11
+ **Last Reviewed**: 2026-07-09
12
12
  **Purpose**: Comprehensive guide for creating and maintaining cross-references in documentation
13
13
  **Organization**: process-standard
14
14
  **Scope**: cross-project
@@ -34,7 +34,7 @@ Cross-references MUST be used in the following documentation types:
34
34
  - **Completion Documents**: Task completion documentation in `.kiro/specs/[spec-name]/completion/`
35
35
  - **README Files**: Project and directory README files that provide navigation and context
36
36
  - **Overview Documents**: Master documents that map components to their documentation (e.g., `docs/token-system-overview.md`)
37
- - **Process Documentation**: Standards and methodology documents in `.kiro/steering/` and `docs/processes/`
37
+ - **Process Documentation**: Standards and methodology documents in the MCP-served governance corpus (`governance/`), the always-loaded identity docs (`.kiro/steering/`), and `docs/processes/`
38
38
 
39
39
  **Rationale**: These are documentation artifacts where cross-references add value by helping readers discover related information and navigate between connected concepts.
40
40
 
@@ -113,11 +113,25 @@ export const TypographyTokens = {
113
113
 
114
114
  ## How to Format Cross-References
115
115
 
116
- Cross-references should follow consistent formatting patterns to ensure clarity and maintainability.
116
+ Cross-references should follow consistent formatting patterns to ensure clarity and maintainability. **Which pattern applies depends on what you are linking to** — there are two reference classes:
117
+
118
+ ### Two Reference Classes (pick by target)
119
+
120
+ | Target | How to reference | Example |
121
+ |--------|------------------|---------|
122
+ | **Governance corpus** — an MCP-served doc under `governance/` that carries an `id:` | **Bare-`id`** markdown link: `[Human Label](<doc-id>)` — the target's `id`, no path, no `.md`. Bare-id links are validated against the served index (Spec 119-B OB-1): a target that is not MCP-served will be dropped from cross-ref enumeration and flagged unresolved | `[Token Governance](token-governance)` |
123
+ | **The 9 identity docs** under `.kiro/steering/` — always-loaded, NEVER MCP-served (Spec 119-A: identity refs never take the MCP round-trip; they carry `id:` for the uniqueness guard, not for resolution) | **Relative path** markdown link, like other non-id-indexed repo files (amended 2026-08-02, Civitas health-check follow-up #4 — the prior bare-id clause implied MCP resolvability these docs deliberately do not have) | `[Core Goals](../.kiro/steering/core-goals.md)` |
124
+ | **Spec-local / repo-file** — spec artifacts (requirements/design/tasks/completion docs, spec guides), READMEs, and other repo files that are **not** `id`-indexed | **Relative path** markdown link (see "Relative Path Usage" below) | `[Design Decisions](../design.md#design-decisions)` |
125
+
126
+ **Why the split.** Spec 119-A gave every doc in the MCP-served corpus a stable, relocation-independent `id` and made bare-`id` the addressing form (226 intra-corpus refs migrated). An `id`-addressed link survives file moves because the `id` — not the path — is the address. Spec artifacts and loose repo files carry no `id`, so relative paths remain their correct form.
127
+
128
+ **The addressing grammar is owned elsewhere — do not re-derive it here.** The canonical source for the `id` form, the composite `docid#sectionid` section grammar, kebab-case filenames, and `aliases` is [Steering Addressing Conventions](steering-addressing-conventions). This document governs cross-reference *practice* (when to link, link-text quality, anti-patterns, maintenance); it defers the *grammar* to that doc so the two never drift.
129
+
130
+ > **Tooling caveat (119-B OB-1).** Bare-`id` cross-refs **resolve** correctly (resolver strategy-1), but the cross-reference *parser* still only enumerates `.md`-suffixed targets, so `list_cross_references` and the `crossReferences` map currently under-count bare-`id` links. Enumeration parity is deferred to 119-B OB-1. Until then, do not treat an empty `list_cross_references` result as proof a doc has no inbound links.
117
131
 
118
132
  ### Relative Path Usage
119
133
 
120
- Always use relative paths from the current document location. Relative paths ensure links remain valid when the repository structure changes or when viewing documentation in different contexts.
134
+ For **spec-local and repo-file references** (the second class above), use relative paths from the current document location. Relative paths ensure these links remain valid when viewed across different contexts. (For steering/governance-corpus targets, use the bare-`id` form instead — see the table above.)
121
135
 
122
136
  **Pattern**: Use `../` to navigate up directories and `./` for same-directory references
123
137
 
@@ -483,7 +497,7 @@ where properties are separated by concern.
483
497
 
484
498
  ## Related Guides
485
499
 
486
- - [Compositional Color Guide](https://github.com/3fn/DesignerPunkv2/blob/main/.kiro/specs/typography-token-expansion/compositional-color-guide.md)
500
+ - [Compositional Color Guide](https://github.com/3fn/DesignerPunk/blob/main/.kiro/specs/typography-token-expansion/compositional-color-guide.md)
487
501
  - [Strategic Flexibility Guide](/Users/peter/.kiro/specs/typography-token-expansion/strategic-flexibility-guide.md)
488
502
  - [Inline Emphasis Guide](/.kiro/specs/typography-token-expansion/inline-emphasis-guide.md)
489
503
  ```
@@ -611,7 +625,7 @@ Strategic Flexibility Guide.
611
625
 
612
626
  When files are moved during organization:
613
627
 
614
- 1. Update all cross-reference links to reflect new locations
628
+ 1. **Bare-`id` references to steering/governance-corpus docs need no update** — the `id` is the address, so it survives the move (this move-resilience is the reason 119-A adopted `id`-addressing). Update the *relative-path* references (spec-local / repo-file links) to reflect new locations.
615
629
  2. Verify bidirectional links remain consistent
616
630
  3. Test navigation by clicking links in rendered markdown
617
631
  4. Document any broken links and fix them immediately
@@ -621,10 +635,12 @@ When files are moved during organization:
621
635
  Periodically validate cross-reference integrity:
622
636
 
623
637
  - Verify all links resolve to existing documents
624
- - Check that relative paths are correct from document location
638
+ - Check that relative paths are correct from document location (bare-`id` links resolve by `id`, not path, so there is no path to verify — confirm the `id` exists)
625
639
  - Confirm section anchors exist in target documents
626
640
  - Test navigation efficiency (related docs reachable in 2 clicks or less)
627
641
 
642
+ > **Caveat (119-B OB-1):** automated link-graph tooling built on `list_cross_references` currently under-counts bare-`id` links (the parser enumerates only `.md`-suffixed targets). Until OB-1 lands, supplement automated enumeration with a text search for bare-`id` targets when auditing a doc's inbound/outbound links.
643
+
628
644
  ### Navigation as Aid, Not Dependency
629
645
 
630
646
  Cross-references should be navigation aids, not content dependencies:
@@ -654,12 +670,14 @@ Cross-references should be navigation aids, not content dependencies:
654
670
 
655
671
  ## Related Documentation
656
672
 
657
- - **File Organization Standards** - Metadata and directory structure
658
- - **Completion Documentation Guide** - Completion doc cross-reference patterns
659
- - **Development Workflow** - Task completion workflow
673
+ - [Steering Addressing Conventions](steering-addressing-conventions) - **Canonical** `id` / `docid#sectionid` grammar, filename and `aliases` conventions (this doc defers the grammar there)
674
+ - [Process File Organization](process-file-organization) - Metadata and directory structure
675
+ - [Completion Documentation Guide](completion-documentation-guide) - Completion doc cross-reference patterns
676
+ - [Process Development Workflow](process-development-workflow) - Task completion workflow
660
677
 
661
- **MCP Queries**:
678
+ **MCP Queries** (bare-`id` in the `path` argument — the resolver addresses by `id`):
662
679
  ```
663
- get_section({ path: ".kiro/steering/Process-File-Organization.md", heading: "Required Metadata Fields" })
664
- get_document_full({ path: ".kiro/steering/Completion Documentation Guide.md" })
680
+ get_section({ path: "steering-addressing-conventions", heading: "Convention 2: Composite `docid#sectionid` Addressing Grammar" })
681
+ get_section({ path: "process-file-organization", heading: "Required Metadata Fields" })
682
+ get_document_full({ path: "completion-documentation-guide" })
665
683
  ```
@@ -8,7 +8,7 @@ description: Development workflow and task completion practices — task complet
8
8
  # Development Workflow and Task Completion Practices
9
9
 
10
10
  **Date**: 2025-10-20
11
- **Last Reviewed**: 2026-07-03
11
+ **Last Reviewed**: 2026-08-12
12
12
  **Purpose**: Task completion workflow and git practices for all development work
13
13
  **Organization**: process-standard
14
14
  **Scope**: cross-project
@@ -31,10 +31,10 @@ description: Development workflow and task completion practices — task complet
31
31
  5. ❌ **SKIP**: Agent Hook Dependency Chains (priming only - query MCP for details), Troubleshooting sections, Hook Integration details
32
32
 
33
33
  **MCP Queries for Detailed Guidance** (query when needed):
34
- - **Completion Documentation**: `get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Two-Document Workflow" })`
35
- - **Release Detection**: `get_section({ path: ".kiro/steering/Release Management System.md", heading: "Release Pipeline Architecture" })`
36
- - **File Organization**: `get_section({ path: ".kiro/steering/Process-File-Organization.md", heading: "Organization Implementation (Conditional Loading)" })`
37
- - **Hook Operations**: `get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Agent Hook Dependency Chains" })`
34
+ - **Completion Documentation**: `get_section({ path: "completion-documentation-guide", heading: "Two-Document Workflow" })`
35
+ - **Releases**: `get_section({ path: "release-management-system", heading: "The Release Recipe" })`
36
+ - **File Organization**: `get_section({ path: "process-file-organization", heading: "Organization Implementation (Conditional Loading)" })`
37
+ - **Hook Operations**: `get_section({ path: "process-hook-operations", heading: "Agent Hook Dependency Chains" })`
38
38
 
39
39
  ### WHEN Debugging Hook Issues THEN Read:
40
40
  1. ✅ **Task Completion Workflow** (context)
@@ -43,11 +43,11 @@ description: Development workflow and task completion practices — task complet
43
43
  4. ❌ **SKIP**: Spec Planning, Kiro Agent Hook Integration
44
44
 
45
45
  **MCP Queries for Detailed Guidance** (query when needed):
46
- - **Hook Dependency Chains**: `get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Agent Hook Dependency Chains" })`
47
- - **Hook Troubleshooting**: `get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Troubleshooting" })`
48
- - **Common Issues**: `get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Common Issues and Solutions" })`
49
- - **Release Detection Issues**: `get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Release Detection Not Triggering" })`
50
- - **Hook Best Practices**: `get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Best Practices" })`
46
+ - **Hook Dependency Chains**: `get_section({ path: "process-hook-operations", heading: "Agent Hook Dependency Chains" })`
47
+ - **Hook Troubleshooting**: `get_section({ path: "process-hook-operations", heading: "Troubleshooting" })`
48
+ - **Common Issues**: `get_section({ path: "process-hook-operations", heading: "Common Issues and Solutions" })`
49
+ - **Release Detection Issues**: `get_section({ path: "process-hook-operations", heading: "Release Detection Not Triggering" })`
50
+ - **Hook Best Practices**: `get_section({ path: "process-hook-operations", heading: "Best Practices" })`
51
51
 
52
52
  ### WHEN Setting Up or Modifying Hooks THEN Read:
53
53
  1. ✅ **Agent Hook Dependency Chains** (priming - then query MCP for detailed guidance)
@@ -56,15 +56,15 @@ description: Development workflow and task completion practices — task complet
56
56
  4. ❌ **SKIP**: Task Completion Workflow, Quality Standards
57
57
 
58
58
  **MCP Queries for Detailed Guidance** (query when needed):
59
- - **Hook Dependency Chains**: `get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Agent Hook Dependency Chains" })`
60
- - **Hook Troubleshooting**: `get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Troubleshooting" })`
61
- - **Kiro Agent Hook Integration**: `get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Kiro Agent Hook Integration" })`
59
+ - **Hook Dependency Chains**: `get_section({ path: "process-hook-operations", heading: "Agent Hook Dependency Chains" })`
60
+ - **Hook Troubleshooting**: `get_section({ path: "process-hook-operations", heading: "Troubleshooting" })`
61
+ - **Kiro Agent Hook Integration**: `get_section({ path: "process-hook-operations", heading: "Kiro Agent Hook Integration" })`
62
62
 
63
63
  ### WHEN Creating Completion Documentation THEN Read:
64
64
  1. ✅ **Task Completion Workflow** (quick reference section)
65
65
  2. ✅ Query **Completion Documentation Guide** via MCP for detailed guidance:
66
- - `get_document_full({ path: ".kiro/steering/Completion Documentation Guide.md" })`
67
- - Or specific sections: `get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Documentation Tiers" })`
66
+ - `get_document_full({ path: "completion-documentation-guide" })`
67
+ - Or specific sections: `get_section({ path: "completion-documentation-guide", heading: "Documentation Tiers" })`
68
68
 
69
69
  ---
70
70
 
@@ -72,18 +72,12 @@ description: Development workflow and task completion practices — task complet
72
72
 
73
73
  ### Recommended Process (IDE-based with Automation)
74
74
  1. **[MANUAL]** **Complete Task Work**: Implement all requirements and create specified artifacts
75
- 2. **[MANUAL]** **Validate Implementation**:
76
- - For regular tasks: Run `npm test` (functional lanes only, timing-assertion-free; ~1 min warm)
77
- - For parent tasks (default): Run `npm test` (comprehensive functional validation, ~1 min warm)
78
- - For parent tasks modifying release tool: Run `npm run test:all` (~1 min — includes performance suites; the cost delta over `npm test` is seconds)
79
- - For performance tasks: Run `npm run test:performance` AND `npm run test:performance:isolated` (seconds each; perf coverage is split across the two lanes — or run `npm run test:all`). Performance assertions are wall-clock-sensitive: run on an otherwise-idle machine
80
-
81
- > Lane semantics reworked 2026-07-03 (commit `29bba7de`; see Spec 125 design-outline addendum): default lanes are timing-assertion-free; performance coverage is split across `test:performance` + `test:performance:isolated`.
75
+ 2. **[MANUAL]** **Local validation**: the unit PR's required checks run the full functional suite at the gate; validating locally first catches failures before they block the merge. Test-command and lane selection (incl. the performance lanes and the 2026-07-03 lane-semantics note): Start Up Tasks §4–§5.
82
76
  3. **[MANUAL]** **Create Detailed Completion Document**: For parent tasks, create comprehensive completion doc at `.kiro/specs/[spec-name]/completion/task-N-parent-completion.md` (Tier 3)
83
77
  4. **[MANUAL]** **Create Summary Document**: For parent tasks, create concise summary doc at `docs/specs/[spec-name]/task-N-summary.md`
84
78
  5. **[MANUAL]** **Mark Task Complete**: Use `taskStatus` tool to update task status to "completed" when finished
85
- 6. **[MANUAL]** **Commit Changes**: Run `./.kiro/hooks/commit-task.sh "Task Name"` to automatically commit, push, and run release analysis
86
- 7. **[MANUAL]** **Verify on GitHub**: Confirm changes appear in repository with correct commit message
79
+ 6. **[MANUAL]** **Open the Task PR**: Run `./.kiro/hooks/complete-task.sh "Task Name"` to commit on the task branch, push, and open the PR; report the PR URL and STOP
80
+ 7. **[MANUAL]** **Merge = completion**: Peter merges on green — the merge accepts the work into `main` (no separate GitHub verification step; the merged PR is the verification). Release analysis runs post-merge on `main`.
87
81
 
88
82
  **Why use `taskStatus` tool?**
89
83
  - Triggers agent hooks for automatic file organization
@@ -100,22 +94,22 @@ description: Development workflow and task completion practices — task complet
100
94
  **For detailed guidance** on documentation tiers, naming conventions, templates, and the two-document workflow, query Completion Documentation Guide via MCP:
101
95
 
102
96
  ```
103
- get_document_full({ path: ".kiro/steering/Completion Documentation Guide.md" })
97
+ get_document_full({ path: "completion-documentation-guide" })
104
98
  ```
105
99
 
106
100
  Or query specific sections:
107
101
  ```
108
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Two-Document Workflow" })
109
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Documentation Tiers" })
110
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Naming Conventions" })
102
+ get_section({ path: "completion-documentation-guide", heading: "Two-Document Workflow" })
103
+ get_section({ path: "completion-documentation-guide", heading: "Documentation Tiers" })
104
+ get_section({ path: "completion-documentation-guide", heading: "Naming Conventions" })
111
105
  ```
112
106
 
113
107
  ### Alternative Process (Script-based without Automation)
114
108
  1. **Complete Task Work**: Implement all requirements and create specified artifacts
115
109
  2. **Manually update tasks.md**: Change task status from `[ ]` to `[x]`
116
- 3. **Commit Changes**: Run `./.kiro/hooks/commit-task.sh "Task Name"` to automatically commit and push
117
- 4. **Verify on GitHub**: Confirm changes appear in repository with correct commit message
118
- 5. **[OPTIONAL]** **Release Analysis**: Run `npm run release:analyze` if you want detailed release analysis beyond what commit-task.sh provides
110
+ 3. **Open the Task PR**: Run `./.kiro/hooks/complete-task.sh "Task Name"` to commit on the task branch, push, and open the PR
111
+ 4. **Merge = completion**: Peter merges on green; the merged PR is the verification
112
+ 5. **[OPTIONAL]** **Release-delta check**: `git log $(git describe --tags --abbrev=0)..main --oneline` shows everything shipped since the last release (squash titles are the changelog spine — see Release Management System)
119
113
 
120
114
  **When to use this approach:**
121
115
  - Quick fixes or minor changes
@@ -131,10 +125,10 @@ get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading:
131
125
  - Example: "Task 6 Complete: Strategic Framework Documentation Package"
132
126
 
133
127
  ### Git Practices
134
- - **Repository**: https://github.com/3fn/DesignerPunkv2
135
- - **Branch**: All work on `main` branch (single-branch workflow for now)
136
- - **Commits**: Atomic commits per task completion with descriptive messages
137
- - **Push**: Always push immediately after commit to maintain synchronization
128
+ - **Repository**: https://github.com/3fn/DesignerPunk
129
+ - **Branch**: All work on task branches (`task/<spec>-<N>-<slug>`); `main` is protected — direct pushes are rejected, admins included
130
+ - **Commits**: Atomic commits per subtask on the branch; squash-merge yields one `main` commit per **merge unit** with the PR title as its subject (a unit is the whole spec for small specs, or a tasks.md-declared grouping for large specs — see Task-Completion-Protocol § Coherent Units)
131
+ - **PRs**: Title = `Task <N> Complete: <Description> (<spec>)`; body carries Spec / Task / Agent / completion-doc path / validation note
138
132
 
139
133
  ## Spec Planning (Conditional Loading)
140
134
 
@@ -167,17 +161,13 @@ See **Spec Planning Standards** (`.kiro/steering/Process-Spec-Planning.md`) for
167
161
  ## Hook System Usage
168
162
 
169
163
  ### Available Tools
170
- - **`.kiro/hooks/commit-task.sh`**: Simple wrapper for task completion commits
171
- - **`.kiro/hooks/task-completion-commit.sh`**: Full automation script with message extraction
164
+ - **`.kiro/hooks/complete-task.sh`**: Task-completion PR tooling — branch, commit, push, PR-open, URL report
172
165
  - **`.kiro/hooks/README.md`**: Complete documentation and usage examples
173
166
 
174
167
  ### Usage Examples
175
168
  ```bash
176
- # Standard task completion commit
177
- ./.kiro/hooks/commit-task.sh "1. Create North Star Vision Document"
178
-
179
- # For different specs or custom task files
180
- ./.kiro/hooks/task-completion-commit.sh path/to/tasks.md "Task Name"
169
+ # Standard task completion — opens the task PR
170
+ ./.kiro/hooks/complete-task.sh "Task N Complete: Description (spec)"
181
171
  ```
182
172
 
183
173
  ---
@@ -195,14 +185,14 @@ Agent hooks use `runAfter` configuration to create dependency chains where hooks
195
185
  **For detailed guidance** on dependency chain behavior, troubleshooting, and best practices, query Process-Hook-Operations via MCP:
196
186
 
197
187
  ```
198
- get_document_full({ path: ".kiro/steering/Process-Hook-Operations.md" })
188
+ get_document_full({ path: "process-hook-operations" })
199
189
  ```
200
190
 
201
191
  Or query specific sections:
202
192
  ```
203
- get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Agent Hook Dependency Chains" })
204
- get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Dependency Chain Behavior" })
205
- get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Best Practices" })
193
+ get_section({ path: "process-hook-operations", heading: "Agent Hook Dependency Chains" })
194
+ get_section({ path: "process-hook-operations", heading: "Dependency Chain Behavior" })
195
+ get_section({ path: "process-hook-operations", heading: "Best Practices" })
206
196
  ```
207
197
 
208
198
  ---
@@ -237,15 +227,15 @@ When experiencing errors or failures during task completion, hooks not triggerin
237
227
  **For detailed troubleshooting guidance**, query Process-Hook-Operations via MCP:
238
228
 
239
229
  ```
240
- get_document_full({ path: ".kiro/steering/Process-Hook-Operations.md" })
230
+ get_document_full({ path: "process-hook-operations" })
241
231
  ```
242
232
 
243
233
  Or query specific sections:
244
234
  ```
245
- get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Troubleshooting" })
246
- get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Common Issues and Solutions" })
247
- get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Release Detection Not Triggering" })
248
- get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Quick Reference: Diagnostic Commands" })
235
+ get_section({ path: "process-hook-operations", heading: "Troubleshooting" })
236
+ get_section({ path: "process-hook-operations", heading: "Common Issues and Solutions" })
237
+ get_section({ path: "process-hook-operations", heading: "Release Detection Not Triggering" })
238
+ get_section({ path: "process-hook-operations", heading: "Quick Reference: Diagnostic Commands" })
249
239
  ```
250
240
 
251
241
  **Quick Reference - Common Issues**:
@@ -255,9 +245,9 @@ get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Quick
255
245
  - **Hook script errors**: Ensure scripts have execute permissions (`chmod +x`)
256
246
 
257
247
  **Quick Reference - Error Recovery**:
258
- - If commit fails: Fix issues and re-run hook script
259
- - If push fails: Run `git push origin main` manually
260
- - If wrong message: Use `git commit --amend -m "Correct Message"` then force push
248
+ - If commit fails: Fix issues and re-run the tooling
249
+ - If push fails: Push the TASK BRANCH manually (`git push -u origin <branch>`)
250
+ - If the PR title is wrong: Edit the PR title on GitHub (squash-merge takes the title as the commit subject)
261
251
 
262
252
 
263
253
  ---
@@ -298,13 +288,13 @@ Agent hooks provide automatic file organization and release detection when tasks
298
288
  **For detailed guidance** on hook execution order, automatic file organization, release detection, and troubleshooting, query Process-Hook-Operations via MCP:
299
289
 
300
290
  ```
301
- get_document_full({ path: ".kiro/steering/Process-Hook-Operations.md" })
291
+ get_document_full({ path: "process-hook-operations" })
302
292
  ```
303
293
 
304
294
  Or query specific sections:
305
295
  ```
306
- get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Kiro Agent Hook Integration" })
307
- get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Agent Hook Execution Order" })
308
- get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Automatic File Organization" })
309
- get_section({ path: ".kiro/steering/Process-Hook-Operations.md", heading: "Release Detection" })
296
+ get_section({ path: "process-hook-operations", heading: "Kiro Agent Hook Integration" })
297
+ get_section({ path: "process-hook-operations", heading: "Agent Hook Execution Order" })
298
+ get_section({ path: "process-hook-operations", heading: "Automatic File Organization" })
299
+ get_section({ path: "process-hook-operations", heading: "Release Detection" })
310
300
  ```
@@ -9,7 +9,7 @@ description: File organization standards — metadata-driven organization, direc
9
9
  # File Organization Standards
10
10
 
11
11
  **Date**: 2025-01-10
12
- **Last Reviewed**: 2026-06-23
12
+ **Last Reviewed**: 2026-07-05
13
13
  **Purpose**: Metadata-driven file organization system for sustainable project structure
14
14
  **Organization**: process-standard
15
15
  **Scope**: cross-project
@@ -34,8 +34,8 @@ description: File organization standards — metadata-driven organization, direc
34
34
 
35
35
  **Query via MCP for detailed guidance:**
36
36
  ```
37
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Two-Document Workflow" })
38
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Cross-References" })
37
+ get_section({ path: "completion-documentation-guide", heading: "Two-Document Workflow" })
38
+ get_section({ path: "completion-documentation-guide", heading: "Cross-References" })
39
39
  ```
40
40
 
41
41
  ### WHEN Creating Spec Documents (Requirements, Design, Tasks)
@@ -58,8 +58,8 @@ get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading:
58
58
 
59
59
  **Query via MCP for detailed guidance:**
60
60
  ```
61
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Naming Conventions" })
62
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Document Templates" })
61
+ get_section({ path: "completion-documentation-guide", heading: "Naming Conventions" })
62
+ get_section({ path: "completion-documentation-guide", heading: "Document Templates" })
63
63
  ```
64
64
 
65
65
  ### WHEN Adding Cross-References
@@ -69,9 +69,9 @@ get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading:
69
69
 
70
70
  **Query via MCP for detailed guidance:**
71
71
  ```
72
- get_section({ path: ".kiro/steering/Process-Cross-Reference-Standards.md", heading: "How to Format Cross-References" })
73
- get_section({ path: ".kiro/steering/Process-Cross-Reference-Standards.md", heading: "Common Cross-Reference Patterns" })
74
- get_section({ path: ".kiro/steering/Process-Cross-Reference-Standards.md", heading: "Anti-Patterns to Avoid" })
72
+ get_section({ path: "process-cross-reference-standards", heading: "How to Format Cross-References" })
73
+ get_section({ path: "process-cross-reference-standards", heading: "Common Cross-Reference Patterns" })
74
+ get_section({ path: "process-cross-reference-standards", heading: "Anti-Patterns to Avoid" })
75
75
  ```
76
76
 
77
77
  ### WHEN Organizing Existing Files AND Creating New Implementation Files
@@ -109,10 +109,7 @@ All files use explicit metadata to declare organizational intent, enabling safe
109
109
  **Task**: Associated task number and name (if applicable)
110
110
  ```
111
111
 
112
- **Civitas Governance Note:** Steering documents require additional metadata fields (`Last Reviewed`, `Layer`, `Relevant Tasks`, `inclusion` in YAML frontmatter). For the complete steering doc metadata requirements and lifecycle process (creation → review → update → deprecation), see Thurgood's Civitas Steward operational mode or query:
113
- ```
114
- get_section({ path: ".kiro/steering/Civitas-System-Overview.md", heading: "Governance Processes" })
115
- ```
112
+ **Civitas Governance Note:** Steering documents require additional metadata fields (`Last Reviewed`, `Layer`, `Relevant Tasks`, `inclusion` in YAML frontmatter). For the complete steering doc metadata requirements and lifecycle process (creation → review → update → deprecation), see Thurgood's Civitas Steward operational mode, or the always-loaded Civitas System Overview § "Governance Processes" (an identity doc — never MCP-served, already in every agent's context; no query needed).
116
113
 
117
114
  #### Optional: `aliases:` frontmatter field (steering docs)
118
115
 
@@ -172,13 +169,13 @@ aliases: RTL, bidirectional, internationalization, i18n
172
169
  **For detailed guidance** on completion documentation naming conventions, templates, and the two-document workflow, query Completion Documentation Guide via MCP:
173
170
 
174
171
  ```
175
- get_document_full({ path: ".kiro/steering/Completion Documentation Guide.md" })
172
+ get_document_full({ path: "completion-documentation-guide" })
176
173
  ```
177
174
 
178
175
  Or query specific sections:
179
176
  ```
180
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Naming Conventions" })
181
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Directory Structure" })
177
+ get_section({ path: "completion-documentation-guide", heading: "Naming Conventions" })
178
+ get_section({ path: "completion-documentation-guide", heading: "Directory Structure" })
182
179
  ```
183
180
 
184
181
  #### Summary Documents
@@ -194,19 +191,19 @@ get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading:
194
191
  - Summary docs are ONLY for parent tasks (not subtasks)
195
192
  - Naming pattern: `task-N-summary.md` (e.g., `task-1-summary.md`)
196
193
  - Hook pattern: `**/task-*-summary.md`
197
- - AI workflows: `commit-task.sh` runs release analysis automatically after commit
194
+ - AI workflows: release analysis runs post-merge on `main` (summary docs traverse the PR gate with the work)
198
195
 
199
196
  **For detailed guidance** on summary document templates, cross-references, and the two-document workflow, query Completion Documentation Guide via MCP:
200
197
 
201
198
  ```
202
- get_document_full({ path: ".kiro/steering/Completion Documentation Guide.md" })
199
+ get_document_full({ path: "completion-documentation-guide" })
203
200
  ```
204
201
 
205
202
  Or query specific sections:
206
203
  ```
207
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Two-Document Workflow" })
208
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Cross-References" })
209
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Document Templates" })
204
+ get_section({ path: "completion-documentation-guide", heading: "Two-Document Workflow" })
205
+ get_section({ path: "completion-documentation-guide", heading: "Cross-References" })
206
+ get_section({ path: "completion-documentation-guide", heading: "Document Templates" })
210
207
  ```
211
208
 
212
209
  #### Spec-Specific Guides
@@ -293,13 +290,13 @@ strategic-framework/
293
290
  **For detailed guidance** on completion documentation directory structure, naming patterns, and the two-document workflow, query Completion Documentation Guide via MCP:
294
291
 
295
292
  ```
296
- get_document_full({ path: ".kiro/steering/Completion Documentation Guide.md" })
293
+ get_document_full({ path: "completion-documentation-guide" })
297
294
  ```
298
295
 
299
296
  Or query specific sections:
300
297
  ```
301
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Directory Structure" })
302
- get_section({ path: ".kiro/steering/Completion Documentation Guide.md", heading: "Naming Conventions" })
298
+ get_section({ path: "completion-documentation-guide", heading: "Directory Structure" })
299
+ get_section({ path: "completion-documentation-guide", heading: "Naming Conventions" })
303
300
  ```
304
301
 
305
302
  ### Audit Findings
@@ -388,7 +385,7 @@ After moving files, update any cross-reference links to reflect new locations.
388
385
 
389
386
  #### Enhanced Commit Hook
390
387
  ```bash
391
- # .kiro/hooks/commit-task-organized.sh "Task Name" [--organize]
388
+ # .kiro/hooks/complete-task.sh "Task Name" [--organize] (organization option folded into the PR-flow tooling)
392
389
  # Optional organization during task completion
393
390
  # Human-controlled with hook assistance
394
391
  # Maintains fallback to current behavior
@@ -561,14 +558,14 @@ Cross-references are markdown links that connect related documentation, enabling
561
558
  **For detailed guidance** on cross-reference formatting, patterns, anti-patterns, and maintenance, query Process-Cross-Reference-Standards via MCP:
562
559
 
563
560
  ```
564
- get_document_full({ path: ".kiro/steering/Process-Cross-Reference-Standards.md" })
561
+ get_document_full({ path: "process-cross-reference-standards" })
565
562
  ```
566
563
 
567
564
  Or query specific sections:
568
565
  ```
569
- get_section({ path: ".kiro/steering/Process-Cross-Reference-Standards.md", heading: "How to Format Cross-References" })
570
- get_section({ path: ".kiro/steering/Process-Cross-Reference-Standards.md", heading: "Common Cross-Reference Patterns" })
571
- get_section({ path: ".kiro/steering/Process-Cross-Reference-Standards.md", heading: "Anti-Patterns to Avoid" })
566
+ get_section({ path: "process-cross-reference-standards", heading: "How to Format Cross-References" })
567
+ get_section({ path: "process-cross-reference-standards", heading: "Common Cross-Reference Patterns" })
568
+ get_section({ path: "process-cross-reference-standards", heading: "Anti-Patterns to Avoid" })
572
569
  ```
573
570
 
574
571
  ---
@@ -2,13 +2,13 @@
2
2
  id: process-hook-operations
3
3
  inclusion: manual
4
4
  name: Process-Hook-Operations
5
- description: Agent hook operational guidance — dependency chains, execution order, automatic file organization, troubleshooting, and best practices. Load when debugging hook issues, setting up or modifying hooks, or troubleshooting automation failures. NOTE - Release detection sections are outdated; the release system was rebuilt in Spec 065 as an on-demand CLI tool at src/tools/release/. See Release Management System.md for current architecture.
5
+ description: Agent hook operational guidance — dependency chains, execution order, automatic file organization, troubleshooting, and best practices. Load when debugging hook issues, setting up or modifying hooks, or troubleshooting automation failures. NOTE - Release detection sections are historical; the Spec-065 release CLI was RETIRED 2026-08-12 (Q6 ballot) in favor of the manual release recipe. See Release Management System for current process.
6
6
  ---
7
7
 
8
8
  # Hook Operations Guide
9
9
 
10
10
  **Date**: 2026-01-04
11
- **Last Reviewed**: 2026-01-04
11
+ **Last Reviewed**: 2026-07-09
12
12
  **Purpose**: Comprehensive operational guidance for agent hook dependency chains, troubleshooting, and best practices
13
13
  **Organization**: process-standard
14
14
  **Scope**: cross-project
@@ -19,6 +19,16 @@ description: Agent hook operational guidance — dependency chains, execution or
19
19
 
20
20
  This document provides detailed operational guidance for working with Kiro agent hooks. It covers dependency chain behavior, troubleshooting procedures, and best practices for reliable automation.
21
21
 
22
+ > ## ⚠️ Scope & runtime — read before applying any of this
23
+ >
24
+ > **1. This describes a Kiro-IDE-only mechanism.** The "agent hooks" here are the Kiro event-hook runtime — `.kiro/agent-hooks/*.json` configs fired by the Kiro IDE on `taskStatusChange` events. **Claude Code has no equivalent event-hook system** (the same runtime gap that the always-layer has under CC — see 122 / OB-7). Under Claude Code none of these hooks fire; file organization and any release steps are performed by explicit tooling/CLI steps, not by IDE events. Read every "hooks fire on task completion" statement below as *Kiro-runtime behavior*, not a cross-runtime guarantee.
25
+ >
26
+ > **2. "Task completion" now means merge (125-A PR-gate).** Since the ratified 125-A workflow, a task is accepted when its unit's **PR is merged** — not when a local status flips. The completion tool is `./.kiro/hooks/complete-task.sh` (opens the PR), which **superseded** the old commit-on-completion tooling. Work reaches `main` only through a merged, branch-protected PR. So the troubleshooting guidance below that frames "direct git commits" as *bypassing hooks* (versus using the `taskStatus` tool) is **Kiro-IDE-specific and predates the branch→PR→merge flow** — under the current workflow, committing and pushing a branch is a *correct, expected* step, not an error to avoid.
27
+ >
28
+ > **3. Release detection here is historical.** The Spec-065 release CLI was itself RETIRED on 2026-08-12 (Q6 ballot: `.kiro/docs/ballots/2026-08-12-q6-release-manager-retirement.md`), and the `release-manager.sh` hook described below was DELETED the same day; this content is retained solely as Kiro-hook operational history. See [Release Management System](release-management-system) for the current release recipe.
29
+ >
30
+ > This doc is preserved for Kiro-runtime hook operations and history. A cross-runtime rework belongs with the 122 agent-generator work (OB-7), not here.
31
+
22
32
  **When to use this document**:
23
33
  - Debugging hook issues or automation failures
24
34
  - Understanding hook dependencies and execution order
@@ -509,6 +519,8 @@ ls -la .kiro/release-triggers/
509
519
  # git commit -m "message" && git push
510
520
  ```
511
521
 
522
+ > **Kiro-runtime framing only (see the Scope banner).** "`git commit && push` bypasses hooks" is true *only* of the Kiro IDE event mechanism. Under the 125-A PR-gate workflow, committing and pushing a branch is the **correct** step — subtask/parent work reaches `main` through a merged PR, and `taskStatus` marks completion *on the branch*. This "wrong approach" label applies to Kiro hook-triggering, not to the git workflow itself.
523
+
512
524
  2. **Verify task status changed**: Check tasks.md to confirm task is marked `[x]`
513
525
 
514
526
  3. **Check hook configurations**: Verify JSON files are valid and enabled
@@ -1155,13 +1167,13 @@ File organization triggers automatically when task status changes to "completed"
1155
1167
  **For detailed guidance** on file organization workflow, metadata values, directory structure, scope rationale, and manual organization options, query File Organization Standards via MCP:
1156
1168
 
1157
1169
  ```
1158
- get_document_full({ path: ".kiro/steering/Process-File-Organization.md" })
1170
+ get_document_full({ path: "process-file-organization" })
1159
1171
  ```
1160
1172
 
1161
1173
  Or query specific sections:
1162
1174
  ```
1163
- get_section({ path: ".kiro/steering/Process-File-Organization.md", heading: "Organization Implementation (Conditional Loading)" })
1164
- get_section({ path: ".kiro/steering/Process-File-Organization.md", heading: "File Organization Scope (Conditional Loading)" })
1175
+ get_section({ path: "process-file-organization", heading: "Organization Implementation (Conditional Loading)" })
1176
+ get_section({ path: "process-file-organization", heading: "File Organization Scope (Conditional Loading)" })
1165
1177
  ```
1166
1178
 
1167
1179
  ### Release Detection
@@ -1175,20 +1187,19 @@ Release detection triggers automatically when parent task summary documents are
1175
1187
  - `.kiro/` directory is filtered from Kiro IDE file watching (hooks don't trigger there)
1176
1188
 
1177
1189
  **Quick Reference**:
1178
- - **Summary docs**: `docs/specs/[spec-name]/task-N-summary.md` (triggers hooks)
1190
+ - **Summary docs**: `docs/specs/[spec-name]/task-N-summary.md` (release-note source material)
1179
1191
  - **Detailed docs**: `.kiro/specs/[spec-name]/completion/task-N-parent-completion.md` (internal)
1180
- - **Manual trigger**: `./.kiro/hooks/release-manager.sh auto`
1181
1192
 
1182
- **For detailed guidance** on release detection pipeline, troubleshooting, hook debugging, and manual triggers, query Release Management System via MCP:
1193
+ **For the current release process** (the manual recipe; the detection hook was deleted 2026-08-12, Q6 ballot), query Release Management System via MCP:
1183
1194
 
1184
1195
  ```
1185
- get_document_full({ path: ".kiro/steering/Release Management System.md" })
1196
+ get_document_full({ path: "release-management-system" })
1186
1197
  ```
1187
1198
 
1188
1199
  Or query specific sections:
1189
1200
  ```
1190
- get_section({ path: ".kiro/steering/Release Management System.md", heading: "Release Pipeline Architecture" })
1191
- get_section({ path: ".kiro/steering/Release Management System.md", heading: "AI Agent Decision Points" })
1201
+ get_section({ path: "release-management-system", heading: "The Release Recipe" })
1202
+ get_section({ path: "release-management-system", heading: "Discovering What Changed and Why" })
1192
1203
  ```
1193
1204
 
1194
1205
  ---