@enterpriseai/cli 3.19.0 → 3.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 (364) hide show
  1. package/package.json +3 -3
  2. package/resources/deploy/eai-app-template/producer-pin.json +5 -5
  3. package/resources/deploy/eai-app-template/tests/source-unknown-deployment-evidence.test.mjs +2141 -1
  4. package/resources/gofer/.gofer-version +4 -357
  5. package/resources/gofer/agents-skills/eai/SKILL.md +365 -0
  6. package/resources/gofer/agents-skills/eai-update/SKILL.md +56 -0
  7. package/resources/gofer/agents-skills/gofer-documentation/SKILL.md +93 -0
  8. package/resources/gofer/bash-scripts/create-new-feature.sh +3 -1
  9. package/resources/gofer/bash-scripts/sync-implementation-status.sh +4 -3
  10. package/resources/gofer/bash-scripts/update-agent-context.sh +7 -8
  11. package/resources/gofer/bash-scripts/validate-artifact.sh +10 -6
  12. package/resources/gofer/bash-scripts/verify-object-type-routing-workspace.sh +184 -0
  13. package/resources/gofer/claude-commands/eai-update.md +46 -0
  14. package/resources/gofer/claude-commands/eai.md +355 -0
  15. package/resources/gofer/claude-skills/eai/SKILL.md +365 -0
  16. package/resources/gofer/claude-skills/eai-update/SKILL.md +56 -0
  17. package/resources/gofer/claude-skills/gofer-documentation/SKILL.md +93 -0
  18. package/resources/gofer/commands/0_gofer_start.md +440 -99
  19. package/resources/gofer/commands/0a_problem_validation.md +187 -27
  20. package/resources/gofer/commands/10_gofer_cloud.md +183 -23
  21. package/resources/gofer/commands/1_gofer_research.md +239 -30
  22. package/resources/gofer/commands/2_gofer_specify.md +239 -35
  23. package/resources/gofer/commands/3_gofer_plan.md +259 -43
  24. package/resources/gofer/commands/4_gofer_tasks.md +401 -81
  25. package/resources/gofer/commands/5_gofer_implement.md +375 -84
  26. package/resources/gofer/commands/6_gofer_validate.md +284 -53
  27. package/resources/gofer/commands/7_gofer_save.md +187 -26
  28. package/resources/gofer/commands/7a_stakeholder_comms.md +183 -23
  29. package/resources/gofer/commands/8_gofer_branding.md +183 -23
  30. package/resources/gofer/commands/9_gofer_tests.md +212 -23
  31. package/resources/gofer/commands/gofer_bootstrap_workspace.md +121 -8
  32. package/resources/gofer/commands/gofer_check_workspace.md +123 -8
  33. package/resources/gofer/commands/gofer_constitution.md +183 -23
  34. package/resources/gofer/commands/gofer_diagnose.md +183 -23
  35. package/resources/gofer/commands/gofer_eai_first_run.md +254 -25
  36. package/resources/gofer/commands/gofer_hydrate.md +183 -23
  37. package/resources/gofer/commands/gofer_personality.md +117 -6
  38. package/resources/gofer/commands/gofer_plan.md +117 -6
  39. package/resources/gofer/commands/gofer_side.md +117 -6
  40. package/resources/gofer/commands/gofer_spec_summary.md +183 -23
  41. package/resources/gofer/commands/gofer_tdd.md +183 -23
  42. package/resources/gofer/commands/gofer_vocabulary.md +185 -25
  43. package/resources/gofer/commands/gofer_zoom_out.md +183 -23
  44. package/resources/gofer/config/typesafe-learning-review.json +16 -0
  45. package/resources/gofer/config/typesafe-semantic-review.json +9 -0
  46. package/resources/gofer/copilot-instructions/gofer-cost.instructions.md +15 -6
  47. package/resources/gofer/copilot-instructions/typescript.instructions.md +1 -1
  48. package/resources/gofer/copilot-prompts/eai-update.prompt.md +58 -0
  49. package/resources/gofer/copilot-prompts/eai.prompt.md +367 -0
  50. package/resources/gofer/gemini/commands/gofer/eai-update.md +22 -0
  51. package/resources/gofer/gemini/commands/gofer/eai-update.toml +2 -0
  52. package/resources/gofer/gemini/commands/gofer/eai.md +357 -0
  53. package/resources/gofer/gemini/commands/gofer/eai.toml +2 -0
  54. package/resources/gofer/gemini/commands/gofer/manifest.json +3 -27
  55. package/resources/gofer/gemini/extension.json +4 -4
  56. package/resources/gofer/github-agents/eai.agent.md +83 -0
  57. package/resources/gofer/github-agents/gofer-business.agent.md +73 -4
  58. package/resources/gofer/github-agents/gofer-implement.agent.md +71 -2
  59. package/resources/gofer/github-agents/gofer-plan.agent.md +72 -2
  60. package/resources/gofer/github-agents/gofer-research.agent.md +72 -2
  61. package/resources/gofer/github-agents/gofer-validate.agent.md +72 -2
  62. package/resources/gofer/github-skills/eai/SKILL.md +365 -0
  63. package/resources/gofer/github-skills/eai-update/SKILL.md +56 -0
  64. package/resources/gofer/github-skills/gofer-documentation/SKILL.md +93 -0
  65. package/resources/gofer/grok-skills/eai/SKILL.md +267 -14
  66. package/resources/gofer/grok-skills/eai-update/SKILL.md +56 -0
  67. package/resources/gofer/hook-scripts/user-prompt-submit.mjs +58 -13
  68. package/resources/gofer/instruction-templates/base/agents-base.md +8 -4
  69. package/resources/gofer/instruction-templates/gofer/gofer-claude.md +7 -5
  70. package/resources/gofer/instruction-templates/gofer/gofer-copilot.md +10 -8
  71. package/resources/gofer/memory/constitution.md +9 -7
  72. package/resources/gofer/memory/gofer-model-policy.yaml +23 -1
  73. package/resources/gofer/memory/lessons.md +0 -31
  74. package/resources/gofer/node-scripts/canonical-descriptions.mjs +1 -1
  75. package/resources/gofer/node-scripts/check-version-alignment.mjs +4 -7
  76. package/resources/gofer/node-scripts/delivery-lineage-corpus.mjs +156 -0
  77. package/resources/gofer/node-scripts/generate-commands.mjs +1073 -265
  78. package/resources/gofer/node-scripts/gofer-acceptance-check.mjs +143 -0
  79. package/resources/gofer/node-scripts/gofer-agent-catalog.mjs +271 -0
  80. package/resources/gofer/node-scripts/gofer-benchmark-executor.mjs +123 -0
  81. package/resources/gofer/node-scripts/gofer-benchmark-sign.mjs +62 -0
  82. package/resources/gofer/node-scripts/gofer-benchmark-signer.mjs +89 -0
  83. package/resources/gofer/node-scripts/gofer-benchmark.mjs +76 -0
  84. package/resources/gofer/node-scripts/gofer-blocker-control.mjs +274 -0
  85. package/resources/gofer/node-scripts/gofer-claude-adapter.mjs +154 -0
  86. package/resources/gofer/node-scripts/gofer-closed-loop-audit.mjs +19 -2
  87. package/resources/gofer/node-scripts/gofer-delivery-check.mjs +121 -0
  88. package/resources/gofer/node-scripts/gofer-encrypted-key.mjs +58 -0
  89. package/resources/gofer/node-scripts/gofer-execution-metrics.mjs +477 -0
  90. package/resources/gofer/node-scripts/gofer-execution-recovery.mjs +334 -0
  91. package/resources/gofer/node-scripts/gofer-grok-adapter.mjs +184 -0
  92. package/resources/gofer/node-scripts/gofer-heldout-corpus.mjs +73 -0
  93. package/resources/gofer/node-scripts/gofer-heldout-snapshot.mjs +286 -0
  94. package/resources/gofer/node-scripts/gofer-heldout-verifier.mjs +211 -0
  95. package/resources/gofer/node-scripts/gofer-host-capability.mjs +335 -0
  96. package/resources/gofer/node-scripts/gofer-independent-reviewer.mjs +130 -0
  97. package/resources/gofer/node-scripts/gofer-live-routing.mjs +109 -0
  98. package/resources/gofer/node-scripts/gofer-local-capability-issuer.mjs +71 -0
  99. package/resources/gofer/node-scripts/gofer-local-isolation.mjs +175 -0
  100. package/resources/gofer/node-scripts/gofer-local-settings-cleanup.mjs +388 -0
  101. package/resources/gofer/node-scripts/gofer-loop-audit.mjs +54 -3
  102. package/resources/gofer/node-scripts/gofer-native-adapter.mjs +567 -0
  103. package/resources/gofer/node-scripts/gofer-native-benchmark-dispatch.mjs +145 -0
  104. package/resources/gofer/node-scripts/gofer-native-runtime.mjs +169 -0
  105. package/resources/gofer/node-scripts/gofer-pre-edit-check.mjs +204 -0
  106. package/resources/gofer/node-scripts/gofer-priority-check.mjs +214 -0
  107. package/resources/gofer/node-scripts/gofer-response-check.mjs +56 -0
  108. package/resources/gofer/node-scripts/gofer-reviewed-learning.mjs +1232 -0
  109. package/resources/gofer/node-scripts/gofer-run-verified-task.mjs +330 -0
  110. package/resources/gofer/node-scripts/gofer-runtime-ledger.mjs +289 -0
  111. package/resources/gofer/node-scripts/gofer-semantic-drift.mjs +584 -0
  112. package/resources/gofer/node-scripts/gofer-surface-update.mjs +1178 -0
  113. package/resources/gofer/node-scripts/gofer-trust-bootstrap.mjs +77 -0
  114. package/resources/gofer/node-scripts/gofer-trusted-benchmark.mjs +102 -0
  115. package/resources/gofer/node-scripts/gofer-trusted-evaluator.mjs +274 -0
  116. package/resources/gofer/node-scripts/gofer-tty-prompt.mjs +34 -0
  117. package/resources/gofer/node-scripts/gofer-typesafe-credentials.mjs +435 -0
  118. package/resources/gofer/node-scripts/gofer-ui-preview.mjs +1212 -0
  119. package/resources/gofer/node-scripts/gofer-verified-execution.mjs +484 -0
  120. package/resources/gofer/node-scripts/gofer-verifier-key-ceremony.mjs +101 -0
  121. package/resources/gofer/node-scripts/gofer-worktree-layout.mjs +32 -0
  122. package/resources/gofer/node-scripts/object-type-routing-phase-bundle.mjs +360 -0
  123. package/resources/gofer/node-scripts/package-agent-plugin.mjs +574 -82
  124. package/resources/gofer/node-scripts/parse-stage-command.mjs +1 -1
  125. package/resources/gofer/node-scripts/render-delivery-lineage.mjs +178 -0
  126. package/resources/gofer/node-scripts/sync-extension-resources.mjs +78 -2
  127. package/resources/gofer/node-scripts/validate-object-type-identifiers.mjs +767 -0
  128. package/resources/gofer/node-scripts/validate-object-type-routing-workspace.mjs +1325 -0
  129. package/resources/gofer/node-scripts/validate-v4-resource-contract.d.mts +44 -0
  130. package/resources/gofer/node-scripts/validate-v4-resource-contract.mjs +957 -0
  131. package/resources/gofer/node-scripts/workspace-bootstrap-lib.mjs +685 -116
  132. package/resources/gofer/references/agent-catalog.json +126 -0
  133. package/resources/gofer/references/blocker-mediation.md +156 -0
  134. package/resources/gofer/references/business-updates-and-goal-checks.md +109 -0
  135. package/resources/gofer/references/delivery-lineage.md +48 -0
  136. package/resources/gofer/references/mvp-capability-validation.md +102 -0
  137. package/resources/gofer/references/platform/README.md +1 -1
  138. package/resources/gofer/references/platform/eai-app-template.md +15 -13
  139. package/resources/gofer/references/platform/eai-auth-access.md +104 -0
  140. package/resources/gofer/references/platform/eai-config-driven-ui.md +5 -5
  141. package/resources/gofer/references/platform/eai-error-catalog.yaml +77 -19
  142. package/resources/gofer/references/platform/eai-repo-contract.md +61 -23
  143. package/resources/gofer/references/platform/eai-service-patterns.md +102 -105
  144. package/resources/gofer/references/platform/eai.md +44 -8
  145. package/resources/gofer/references/platform/vertical-template.md +10 -9
  146. package/resources/gofer/references/priority-outcome-protection.md +152 -0
  147. package/resources/gofer/references/verified-agent-execution.md +179 -0
  148. package/resources/gofer/schemas/gofer-learning-trace-v1.json +70 -0
  149. package/resources/gofer/specify-commands/0_gofer_start.md +440 -99
  150. package/resources/gofer/specify-commands/0a_problem_validation.md +187 -27
  151. package/resources/gofer/specify-commands/10_gofer_cloud.md +183 -23
  152. package/resources/gofer/specify-commands/1_gofer_research.md +239 -30
  153. package/resources/gofer/specify-commands/2_gofer_specify.md +239 -35
  154. package/resources/gofer/specify-commands/3_gofer_plan.md +259 -43
  155. package/resources/gofer/specify-commands/4_gofer_tasks.md +401 -81
  156. package/resources/gofer/specify-commands/5_gofer_implement.md +375 -84
  157. package/resources/gofer/specify-commands/6_gofer_validate.md +284 -53
  158. package/resources/gofer/specify-commands/7_gofer_save.md +187 -26
  159. package/resources/gofer/specify-commands/7a_stakeholder_comms.md +183 -23
  160. package/resources/gofer/specify-commands/8_gofer_branding.md +183 -23
  161. package/resources/gofer/specify-commands/9_gofer_tests.md +212 -23
  162. package/resources/gofer/specify-commands/gofer_bootstrap_workspace.md +121 -8
  163. package/resources/gofer/specify-commands/gofer_check_workspace.md +123 -8
  164. package/resources/gofer/specify-commands/gofer_constitution.md +183 -23
  165. package/resources/gofer/specify-commands/gofer_diagnose.md +183 -23
  166. package/resources/gofer/specify-commands/gofer_eai_first_run.md +254 -25
  167. package/resources/gofer/specify-commands/gofer_hydrate.md +183 -23
  168. package/resources/gofer/specify-commands/gofer_personality.md +117 -6
  169. package/resources/gofer/specify-commands/gofer_plan.md +117 -6
  170. package/resources/gofer/specify-commands/gofer_side.md +117 -6
  171. package/resources/gofer/specify-commands/gofer_spec_summary.md +183 -23
  172. package/resources/gofer/specify-commands/gofer_tdd.md +183 -23
  173. package/resources/gofer/specify-commands/gofer_vocabulary.md +185 -25
  174. package/resources/gofer/specify-commands/gofer_zoom_out.md +183 -23
  175. package/resources/gofer/specify-config/object-type-routing.json +24 -0
  176. package/resources/gofer/specify-config/typesafe-learning-review.json +16 -0
  177. package/resources/gofer/specify-config/typesafe-semantic-review.json +9 -0
  178. package/resources/gofer/system-skills/eai/SKILL.md +365 -0
  179. package/resources/gofer/system-skills/eai-update/SKILL.md +56 -0
  180. package/resources/gofer/system-skills/gofer-documentation/SKILL.md +93 -0
  181. package/resources/gofer/templates/build-map-template.md +64 -0
  182. package/resources/gofer/templates/business-scenarios-template.json +14 -0
  183. package/resources/gofer/templates/ciso-security-summary-template.md +3 -3
  184. package/resources/gofer/templates/context-bundle-template.md +4 -3
  185. package/resources/gofer/templates/contract-pack-template.md +8 -8
  186. package/resources/gofer/templates/cto-architecture-summary-template.md +3 -3
  187. package/resources/gofer/templates/delivery-lineage-template.json +8 -0
  188. package/resources/gofer/templates/eai-preflight-template.md +109 -68
  189. package/resources/gofer/templates/goal-ledger-template.json +1 -1
  190. package/resources/gofer/templates/gofer-model-policy.yaml +28 -6
  191. package/resources/gofer/templates/loop-contract-template.json +3 -1
  192. package/resources/gofer/templates/plan-template.md +8 -7
  193. package/resources/gofer/templates/priority-plan-template.json +29 -0
  194. package/resources/gofer/templates/proposal-review-template.md +6 -3
  195. package/resources/gofer/templates/release-capability-ledger-template.md +24 -0
  196. package/resources/gofer/templates/research-template.md +7 -6
  197. package/resources/gofer/templates/spec-summary-template.md +1 -1
  198. package/resources/gofer/templates/spec-template.md +45 -6
  199. package/resources/gofer/templates/tasks-template.md +12 -3
  200. package/resources/gofer/templates/ui-preview-brief-template.md +55 -5
  201. package/resources/gofer/templates/ui-review-log-template.md +21 -3
  202. package/resources/gofer/templates/ui-show-and-tell-template.md +46 -0
  203. package/resources/gofer/templates/visuals/capability-heatmap-template.md +2 -2
  204. package/resources/gofer/templates/working-backwards-prfaq-template.md +9 -8
  205. package/resources/linked-sources.json +4 -4
  206. package/resources/gofer/agents-skills/0_gofer_start/SKILL.md +0 -1287
  207. package/resources/gofer/agents-skills/0a_problem_validation/SKILL.md +0 -429
  208. package/resources/gofer/agents-skills/10_gofer_cloud/SKILL.md +0 -635
  209. package/resources/gofer/agents-skills/1_gofer_research/SKILL.md +0 -1159
  210. package/resources/gofer/agents-skills/2_gofer_specify/SKILL.md +0 -860
  211. package/resources/gofer/agents-skills/3_gofer_plan/SKILL.md +0 -899
  212. package/resources/gofer/agents-skills/4_gofer_tasks/SKILL.md +0 -760
  213. package/resources/gofer/agents-skills/5_gofer_implement/SKILL.md +0 -944
  214. package/resources/gofer/agents-skills/6_gofer_validate/SKILL.md +0 -2302
  215. package/resources/gofer/agents-skills/7_gofer_save/SKILL.md +0 -423
  216. package/resources/gofer/agents-skills/7a_stakeholder_comms/SKILL.md +0 -508
  217. package/resources/gofer/agents-skills/8_gofer_branding/SKILL.md +0 -315
  218. package/resources/gofer/agents-skills/9_gofer_tests/SKILL.md +0 -558
  219. package/resources/gofer/agents-skills/gofer_bootstrap_workspace/SKILL.md +0 -148
  220. package/resources/gofer/agents-skills/gofer_check_workspace/SKILL.md +0 -119
  221. package/resources/gofer/agents-skills/gofer_constitution/SKILL.md +0 -612
  222. package/resources/gofer/agents-skills/gofer_diagnose/SKILL.md +0 -114
  223. package/resources/gofer/agents-skills/gofer_eai_first_run/SKILL.md +0 -397
  224. package/resources/gofer/agents-skills/gofer_hydrate/SKILL.md +0 -561
  225. package/resources/gofer/agents-skills/gofer_personality/SKILL.md +0 -44
  226. package/resources/gofer/agents-skills/gofer_plan/SKILL.md +0 -40
  227. package/resources/gofer/agents-skills/gofer_side/SKILL.md +0 -45
  228. package/resources/gofer/agents-skills/gofer_spec_summary/SKILL.md +0 -112
  229. package/resources/gofer/agents-skills/gofer_tdd/SKILL.md +0 -112
  230. package/resources/gofer/agents-skills/gofer_vocabulary/SKILL.md +0 -112
  231. package/resources/gofer/agents-skills/gofer_zoom_out/SKILL.md +0 -112
  232. package/resources/gofer/claude-commands/0_gofer_start.md +0 -1282
  233. package/resources/gofer/claude-commands/0a_problem_validation.md +0 -424
  234. package/resources/gofer/claude-commands/10_gofer_cloud.md +0 -630
  235. package/resources/gofer/claude-commands/1_gofer_research.md +0 -1154
  236. package/resources/gofer/claude-commands/2_gofer_specify.md +0 -855
  237. package/resources/gofer/claude-commands/3_gofer_plan.md +0 -894
  238. package/resources/gofer/claude-commands/4_gofer_tasks.md +0 -755
  239. package/resources/gofer/claude-commands/5_gofer_implement.md +0 -939
  240. package/resources/gofer/claude-commands/6_gofer_validate.md +0 -2297
  241. package/resources/gofer/claude-commands/7_gofer_save.md +0 -418
  242. package/resources/gofer/claude-commands/7a_stakeholder_comms.md +0 -503
  243. package/resources/gofer/claude-commands/8_gofer_branding.md +0 -310
  244. package/resources/gofer/claude-commands/9_gofer_tests.md +0 -553
  245. package/resources/gofer/claude-commands/gofer_bootstrap_workspace.md +0 -143
  246. package/resources/gofer/claude-commands/gofer_check_workspace.md +0 -114
  247. package/resources/gofer/claude-commands/gofer_constitution.md +0 -607
  248. package/resources/gofer/claude-commands/gofer_diagnose.md +0 -109
  249. package/resources/gofer/claude-commands/gofer_eai_first_run.md +0 -392
  250. package/resources/gofer/claude-commands/gofer_hydrate.md +0 -556
  251. package/resources/gofer/claude-commands/gofer_personality.md +0 -39
  252. package/resources/gofer/claude-commands/gofer_plan.md +0 -35
  253. package/resources/gofer/claude-commands/gofer_side.md +0 -40
  254. package/resources/gofer/claude-commands/gofer_spec_summary.md +0 -107
  255. package/resources/gofer/claude-commands/gofer_tdd.md +0 -107
  256. package/resources/gofer/claude-commands/gofer_vocabulary.md +0 -107
  257. package/resources/gofer/claude-commands/gofer_zoom_out.md +0 -107
  258. package/resources/gofer/claude-skills/eai-gofer/SKILL.md +0 -56
  259. package/resources/gofer/copilot-prompts/0_gofer_start.prompt.md +0 -1308
  260. package/resources/gofer/copilot-prompts/0a_problem_validation.prompt.md +0 -429
  261. package/resources/gofer/copilot-prompts/10_gofer_cloud.prompt.md +0 -644
  262. package/resources/gofer/copilot-prompts/1_gofer_research.prompt.md +0 -1177
  263. package/resources/gofer/copilot-prompts/2_gofer_specify.prompt.md +0 -878
  264. package/resources/gofer/copilot-prompts/3_gofer_plan.prompt.md +0 -917
  265. package/resources/gofer/copilot-prompts/4_gofer_tasks.prompt.md +0 -778
  266. package/resources/gofer/copilot-prompts/5_gofer_implement.prompt.md +0 -962
  267. package/resources/gofer/copilot-prompts/6_gofer_validate.prompt.md +0 -2310
  268. package/resources/gofer/copilot-prompts/7_gofer_save.prompt.md +0 -433
  269. package/resources/gofer/copilot-prompts/7a_stakeholder_comms.prompt.md +0 -516
  270. package/resources/gofer/copilot-prompts/8_gofer_branding.prompt.md +0 -323
  271. package/resources/gofer/copilot-prompts/9_gofer_tests.prompt.md +0 -566
  272. package/resources/gofer/copilot-prompts/gofer_bootstrap_workspace.prompt.md +0 -161
  273. package/resources/gofer/copilot-prompts/gofer_check_workspace.prompt.md +0 -132
  274. package/resources/gofer/copilot-prompts/gofer_constitution.prompt.md +0 -621
  275. package/resources/gofer/copilot-prompts/gofer_diagnose.prompt.md +0 -127
  276. package/resources/gofer/copilot-prompts/gofer_eai_first_run.prompt.md +0 -410
  277. package/resources/gofer/copilot-prompts/gofer_hydrate.prompt.md +0 -571
  278. package/resources/gofer/copilot-prompts/gofer_personality.prompt.md +0 -57
  279. package/resources/gofer/copilot-prompts/gofer_plan.prompt.md +0 -53
  280. package/resources/gofer/copilot-prompts/gofer_side.prompt.md +0 -58
  281. package/resources/gofer/copilot-prompts/gofer_spec_summary.prompt.md +0 -125
  282. package/resources/gofer/copilot-prompts/gofer_tdd.prompt.md +0 -125
  283. package/resources/gofer/copilot-prompts/gofer_vocabulary.prompt.md +0 -125
  284. package/resources/gofer/copilot-prompts/gofer_zoom_out.prompt.md +0 -125
  285. package/resources/gofer/gemini/commands/gofer/0_gofer_start.md +0 -1282
  286. package/resources/gofer/gemini/commands/gofer/0_gofer_start.toml +0 -2
  287. package/resources/gofer/gemini/commands/gofer/0a_problem_validation.md +0 -424
  288. package/resources/gofer/gemini/commands/gofer/0a_problem_validation.toml +0 -2
  289. package/resources/gofer/gemini/commands/gofer/10_gofer_cloud.md +0 -630
  290. package/resources/gofer/gemini/commands/gofer/10_gofer_cloud.toml +0 -2
  291. package/resources/gofer/gemini/commands/gofer/1_gofer_research.md +0 -1154
  292. package/resources/gofer/gemini/commands/gofer/1_gofer_research.toml +0 -2
  293. package/resources/gofer/gemini/commands/gofer/2_gofer_specify.md +0 -855
  294. package/resources/gofer/gemini/commands/gofer/2_gofer_specify.toml +0 -2
  295. package/resources/gofer/gemini/commands/gofer/3_gofer_plan.md +0 -894
  296. package/resources/gofer/gemini/commands/gofer/3_gofer_plan.toml +0 -2
  297. package/resources/gofer/gemini/commands/gofer/4_gofer_tasks.md +0 -755
  298. package/resources/gofer/gemini/commands/gofer/4_gofer_tasks.toml +0 -2
  299. package/resources/gofer/gemini/commands/gofer/5_gofer_implement.md +0 -939
  300. package/resources/gofer/gemini/commands/gofer/5_gofer_implement.toml +0 -2
  301. package/resources/gofer/gemini/commands/gofer/6_gofer_validate.md +0 -2297
  302. package/resources/gofer/gemini/commands/gofer/6_gofer_validate.toml +0 -2
  303. package/resources/gofer/gemini/commands/gofer/7_gofer_save.md +0 -418
  304. package/resources/gofer/gemini/commands/gofer/7_gofer_save.toml +0 -2
  305. package/resources/gofer/gemini/commands/gofer/7a_stakeholder_comms.md +0 -503
  306. package/resources/gofer/gemini/commands/gofer/7a_stakeholder_comms.toml +0 -2
  307. package/resources/gofer/gemini/commands/gofer/8_gofer_branding.md +0 -310
  308. package/resources/gofer/gemini/commands/gofer/8_gofer_branding.toml +0 -2
  309. package/resources/gofer/gemini/commands/gofer/9_gofer_tests.md +0 -553
  310. package/resources/gofer/gemini/commands/gofer/9_gofer_tests.toml +0 -2
  311. package/resources/gofer/gemini/commands/gofer/gofer_bootstrap_workspace.md +0 -143
  312. package/resources/gofer/gemini/commands/gofer/gofer_bootstrap_workspace.toml +0 -2
  313. package/resources/gofer/gemini/commands/gofer/gofer_check_workspace.md +0 -114
  314. package/resources/gofer/gemini/commands/gofer/gofer_check_workspace.toml +0 -2
  315. package/resources/gofer/gemini/commands/gofer/gofer_constitution.md +0 -607
  316. package/resources/gofer/gemini/commands/gofer/gofer_constitution.toml +0 -2
  317. package/resources/gofer/gemini/commands/gofer/gofer_diagnose.md +0 -109
  318. package/resources/gofer/gemini/commands/gofer/gofer_diagnose.toml +0 -2
  319. package/resources/gofer/gemini/commands/gofer/gofer_eai_first_run.md +0 -392
  320. package/resources/gofer/gemini/commands/gofer/gofer_eai_first_run.toml +0 -2
  321. package/resources/gofer/gemini/commands/gofer/gofer_hydrate.md +0 -556
  322. package/resources/gofer/gemini/commands/gofer/gofer_hydrate.toml +0 -2
  323. package/resources/gofer/gemini/commands/gofer/gofer_personality.md +0 -39
  324. package/resources/gofer/gemini/commands/gofer/gofer_personality.toml +0 -2
  325. package/resources/gofer/gemini/commands/gofer/gofer_plan.md +0 -35
  326. package/resources/gofer/gemini/commands/gofer/gofer_plan.toml +0 -2
  327. package/resources/gofer/gemini/commands/gofer/gofer_side.md +0 -40
  328. package/resources/gofer/gemini/commands/gofer/gofer_side.toml +0 -2
  329. package/resources/gofer/gemini/commands/gofer/gofer_spec_summary.md +0 -107
  330. package/resources/gofer/gemini/commands/gofer/gofer_spec_summary.toml +0 -2
  331. package/resources/gofer/gemini/commands/gofer/gofer_tdd.md +0 -107
  332. package/resources/gofer/gemini/commands/gofer/gofer_tdd.toml +0 -2
  333. package/resources/gofer/gemini/commands/gofer/gofer_vocabulary.md +0 -107
  334. package/resources/gofer/gemini/commands/gofer/gofer_vocabulary.toml +0 -2
  335. package/resources/gofer/gemini/commands/gofer/gofer_zoom_out.md +0 -107
  336. package/resources/gofer/gemini/commands/gofer/gofer_zoom_out.toml +0 -2
  337. package/resources/gofer/github-skills/eai-gofer/SKILL.md +0 -56
  338. package/resources/gofer/system-skills/0_gofer_start/SKILL.md +0 -1287
  339. package/resources/gofer/system-skills/0a_problem_validation/SKILL.md +0 -429
  340. package/resources/gofer/system-skills/10_gofer_cloud/SKILL.md +0 -635
  341. package/resources/gofer/system-skills/1_gofer_research/SKILL.md +0 -1159
  342. package/resources/gofer/system-skills/2_gofer_specify/SKILL.md +0 -860
  343. package/resources/gofer/system-skills/3_gofer_plan/SKILL.md +0 -899
  344. package/resources/gofer/system-skills/4_gofer_tasks/SKILL.md +0 -760
  345. package/resources/gofer/system-skills/5_gofer_implement/SKILL.md +0 -944
  346. package/resources/gofer/system-skills/6_gofer_validate/SKILL.md +0 -2302
  347. package/resources/gofer/system-skills/7_gofer_save/SKILL.md +0 -423
  348. package/resources/gofer/system-skills/7a_stakeholder_comms/SKILL.md +0 -508
  349. package/resources/gofer/system-skills/8_gofer_branding/SKILL.md +0 -315
  350. package/resources/gofer/system-skills/9_gofer_tests/SKILL.md +0 -558
  351. package/resources/gofer/system-skills/gofer_bootstrap_workspace/SKILL.md +0 -148
  352. package/resources/gofer/system-skills/gofer_check_workspace/SKILL.md +0 -119
  353. package/resources/gofer/system-skills/gofer_constitution/SKILL.md +0 -612
  354. package/resources/gofer/system-skills/gofer_diagnose/SKILL.md +0 -114
  355. package/resources/gofer/system-skills/gofer_eai_first_run/SKILL.md +0 -397
  356. package/resources/gofer/system-skills/gofer_hydrate/SKILL.md +0 -561
  357. package/resources/gofer/system-skills/gofer_personality/SKILL.md +0 -44
  358. package/resources/gofer/system-skills/gofer_plan/SKILL.md +0 -40
  359. package/resources/gofer/system-skills/gofer_side/SKILL.md +0 -45
  360. package/resources/gofer/system-skills/gofer_spec_summary/SKILL.md +0 -112
  361. package/resources/gofer/system-skills/gofer_tdd/SKILL.md +0 -112
  362. package/resources/gofer/system-skills/gofer_vocabulary/SKILL.md +0 -112
  363. package/resources/gofer/system-skills/gofer_zoom_out/SKILL.md +0 -112
  364. package/resources/gofer/templates/ui-approval-template.md +0 -32
@@ -1,939 +0,0 @@
1
- ## Workspace Preflight
2
-
3
- Before doing stage/helper work:
4
-
5
- 1. Resolve the repository root.
6
- 2. Check the core Gofer sentinels:
7
- - `.specify/.gofer-version`
8
- - `.specify/commands/0_gofer_start.md`
9
- - `.specify/templates/spec-template.md`
10
- - `.specify/templates/loop-contract-template.json`
11
- - `.specify/templates/working-backwards-prfaq-template.md`
12
- - `.specify/templates/business-owner-summary-template.md`
13
- - `.specify/templates/cto-architecture-summary-template.md`
14
- - `.specify/templates/ciso-security-summary-template.md`
15
- - `.specify/templates/stakeholder-review-index-template.md`
16
- - `.specify/scripts/bash/create-new-feature.sh`
17
- - `.specify/scripts/node/parse-stage-command.mjs`
18
- - `.specify/scripts/node/gofer-loop-audit.mjs`
19
- - `.specify/scripts/hooks/post-tool-use.mjs`
20
- - `.specify/scripts/powershell/install-optional-tools.ps1`
21
- - `.specify/templates/gofer-model-policy.yaml`
22
- - `.specify/memory/gofer-model-policy.yaml`
23
- - `.specify/specs/`
24
- - `.specify/memory/`
25
- 3. Check host-specific repo-owned files when relevant:
26
- - Claude: `AGENTS.md`, `CLAUDE.md`, `.claude/settings.json`
27
- - Codex: `AGENTS.md`
28
- - Copilot: `.github/copilot-instructions.md`
29
- - VS Code extension mirrors Claude/Copilot/Gemini resources itself and should still keep the core scaffold healthy
30
- 4. If the repo already has the workspace checker script, prefer running:
31
- - `node .specify/scripts/node/gofer-workspace-check.mjs --host gemini --json`
32
- 5. If the workspace is missing or stale, ask exactly:
33
- - **"This repo is missing or stale for Gofer. Initialize/update it now?"**
34
- 6. If the user says yes, run the Gofer workspace bootstrap helper and then resume this command from the top.
35
- 7. If the user says no, stop and explain that Gofer stage/helper work depends on the repo-owned scaffold.
36
-
37
- ---
38
- description: Execute tasks from tasks.md to implement the feature
39
- ---
40
-
41
- # Gofer Implement
42
-
43
- ## EAI Platform Session Preflight
44
-
45
- Before any Gofer stage/helper command does pipeline work:
46
-
47
- 1. Treat durable delivery as EAI Platform delivery by default, with Azure second
48
- and every other stack only by explicit exception.
49
- 2. Run `eai whoami` and confirm the EAI CLI is installed, the user is logged in,
50
- and an active workspace is visible.
51
- 3. If `eai` is missing, `eai whoami` fails, the token is expired, or no active
52
- workspace is available, stop and run `/gofer:eai-first-run` or ask the user to
53
- approve login/setup before continuing.
54
- 4. For EAI app delivery, do not continue into research, specification, planning,
55
- tasks, implementation, or validation until
56
- `.specify/specs/{feature}/eai-preflight.md` records login, workspace, template,
57
- app-readiness, and next-action evidence.
58
- 5. Do not write tokens, secrets, private workspace IDs, Entra/CIAM authority tenant IDs, or local `.env` values into
59
- Gofer artifacts; record only product-safe readiness status and evidence.
60
-
61
- ## Token And Cost Policy
62
- <!-- gofer:token-cost-policy:start -->
63
-
64
- Before spawning agents, calling tools, or loading large files:
65
-
66
- 1. Treat `.specify/memory/gofer-model-policy.yaml` as the repo-owned source of truth for simple, medium, hard, and arbiter model routing. If it is missing, run `/gofer:bootstrap-workspace` before continuing.
67
- 2. Use the cheapest capable model first.
68
- - Claude: Haiku for scouting/extraction; Sonnet for normal implementation, synthesis, validation, and security; Opus for high-risk arbitration or release-critical failures.
69
- - Codex/OpenAI: GPT mini for simple coding; GPT nano only for locate/classify/summarize/mechanical work; GPT-5.3-Codex or flagship GPT for tool-heavy coding, architecture, and release-critical validation.
70
- - Gemini: Flash-Lite for cheap large-context scan/summarize; Flash for default research synthesis; Pro for large-context architecture or high-risk arbitration.
71
- - Copilot: prefer Auto for simple and default work; ask the user before choosing a paid/high-tier picker model for hard security, architecture, or release gates.
72
- 3. Keep raw tool output out of the main conversation context. Save stable findings to `.specify/specs/{feature}/context-bundle.md`, then work from summaries.
73
- 4. Use provider prompt/context caching only for stable, non-secret prefixes: Gofer scaffold, AGENTS/CLAUDE/Copilot instructions, constitution, repo map, stage contracts, and validation rubric.
74
- 5. Before continuing after large research, planning, implementation, or validation bursts, checkpoint the durable artifacts and compact/clear/resume context when the host supports it.
75
- 6. Escalate model tier only when a cheaper pass is low-confidence, contradictory, security-sensitive, or blocking release quality.
76
- <!-- gofer:token-cost-policy:end -->
77
-
78
- ## User Input
79
-
80
- ```text
81
- $ARGUMENTS
82
- ```
83
-
84
- You **MUST** consider the user input before proceeding (if not empty).
85
-
86
- ## Execution Profile During Implementation
87
-
88
- Before editing, re-check the planned depth and generic risk labels from
89
- `tasks.md` / `plan.md`:
90
-
91
- - **fast**: for `docs-only` or very small low-risk changes, make the smallest
92
- scoped edit, run focused checks, and avoid regenerating optional artifacts
93
- unless they are directly affected.
94
- - **standard**: implement phase by phase with normal focused test evidence.
95
- - **full**: open the relevant contracts, security, data, infra, release, and
96
- rollback artifacts before code changes; update tests before or alongside the
97
- fix.
98
- - **dynamic**: confirm `workflow-dag.md` exists and `requiresConfirmation` is
99
- false before executing shard-oriented work. Run each shard against its declared
100
- inputs/outputs, then run the reducer and verifier/refuter pass before marking
101
- tasks complete.
102
-
103
- If the implementation reveals a higher-risk surface than planned, stop and
104
- upgrade the depth before continuing. Do not silently broaden scope.
105
-
106
- ## Prerequisites
107
-
108
- This command expects in `.specify/specs/{feature}/`:
109
-
110
- - `research.md` - Codebase analysis (from /1_gofer_research)
111
- - `spec.md` - Feature specification (from /2_gofer_specify)
112
- - `plan.md` - Implementation plan (from /3_gofer_plan)
113
- - `tasks.md` - Task breakdown (from /4_gofer_tasks)
114
- - `loop-contract.json` - Bounded eval commands and stop rules (from /1 through /4)
115
-
116
- If missing, prompt user to run the prerequisite stage.
117
-
118
- ---
119
-
120
- ## Spec Artifact Guard
121
-
122
- Before implementation, `.specify/scripts/bash/check-prerequisites.sh --json
123
- --require-tasks --include-tasks` must confirm that `{FEATURE_DIR}/spec.md`
124
- exists, is non-empty, and is not the unfilled spec template. If the helper
125
- reports `spec.md` as missing, empty, or `template`, stop and run
126
- `/2_gofer_specify` before editing code. Implementation must never proceed from
127
- `tasks.md` or `plan.md` without an authoritative spec for acceptance criteria
128
- and protected boundaries.
129
-
130
- ## Outline
131
-
132
- 1. Context health check
133
- 2. Load implementation context
134
- 3. Load scope boundaries
135
- 4. Check checklists status
136
- 5. Verify project setup
137
- 6. Execute tasks phase by phase (with feedback loops)
138
- 7. Track progress and handle errors
139
- 8. Output: Implemented feature code
140
-
141
- ---
142
-
143
- ## Step 1: Context Health Check
144
-
145
- Before starting implementation, assess context window health:
146
-
147
- ```bash
148
- .specify/scripts/bash/check-context-health.sh
149
- ```
150
-
151
- **Evaluate thresholds (2025-2026 research-based)**:
152
-
153
- | Status | Token Usage | Action |
154
- | -------- | ----------- | ---------------------------------------- |
155
- | Healthy | < 50% | Proceed normally |
156
- | Warning | 50-70% | Use sub-agents, checkpoint every 5 tasks |
157
- | Critical | > 70% | Run `/7_gofer_save`, start new session |
158
-
159
- ### Context Management Techniques
160
-
161
- During implementation, use these techniques to preserve context quality:
162
-
163
- 1. **Sub-Agent Architecture** (Recommended)
164
- - Use Task tool with specialized agents for exploration
165
- - Each agent returns condensed results (1-2k tokens)
166
- - Keeps main context focused on implementation
167
-
168
- 2. **Observation Masking**
169
- - Old file reads become stale quickly
170
- - Re-read files only when actively editing
171
- - Avoid keeping full file contents in context
172
-
173
- 3. **Periodic Checkpoints**
174
- - Every 5 completed tasks, check context health
175
- - If Warning status: Run `/7_gofer_save`
176
- - This enables resumption with fresh context
177
-
178
- **If compaction needed**:
179
-
180
- ```bash
181
- /7_gofer_save # Creates comprehensive checkpoint
182
- # Start a fresh supported AI coding app session
183
- # Read .specify/specs/{feature}/session-checkpoint.md
184
- # Continue with /5_gofer_implement or the stage named in the checkpoint
185
- ```
186
-
187
- ---
188
-
189
- ## Step 2: Load Context
190
-
191
- 1. **Run setup script**:
192
-
193
- ```bash
194
- .specify/scripts/bash/check-prerequisites.sh --json --require-tasks --include-tasks
195
- ```
196
-
197
- Parse JSON for FEATURE_DIR and task list
198
-
199
- 2. **Load implementation documents**:
200
- - **Required**: tasks.md (task list and execution plan)
201
- - **Required**: plan.md (tech stack, architecture, file structure)
202
- - **Required**: spec.md (scope boundaries and protected files)
203
- - **Required**: loop-contract.json (bounded loop objective, eval commands,
204
- maximum iterations, stop conditions, and escalation rules)
205
- - **Optional**: data-model.md (entities and relationships)
206
- - **Optional**: contracts/ (API specifications)
207
- - **Optional**: research.md (technical decisions)
208
- - **Optional**: quickstart.md (integration scenarios)
209
-
210
- ---
211
-
212
- ## Step 3: Load Scope Boundaries
213
-
214
- Extract protected boundaries from spec.md and tasks.md:
215
-
216
- 1. **Read "Protected Boundaries" section from spec.md**
217
- 2. **Read "Protected Files" section from tasks.md**
218
- 3. **Build exclusion list**:
219
-
220
- ```
221
- PROTECTED_FILES:
222
- - path/to/file1.ts (reason: backward compatibility)
223
- - path/to/directory/ (reason: out of scope)
224
- ```
225
-
226
- 4. **Display to confirm**:
227
-
228
- ```
229
- ⚠️ SCOPE BOUNDARIES LOADED
230
- The following files/patterns are PROTECTED and must NOT be modified:
231
- - [list files]
232
-
233
- If you need to modify these, STOP and ask for approval.
234
- ```
235
-
236
- ---
237
-
238
- ## Step 4: Check Checklists Status
239
-
240
- If `{FEATURE_DIR}/checklists/` exists:
241
-
242
- 1. **Scan all checklist files**
243
- 2. **Count completion status** for each:
244
- - Total items: `- [ ]` or `- [X]` or `- [x]`
245
- - Completed: `- [X]` or `- [x]`
246
- - Incomplete: `- [ ]`
247
-
248
- 3. **Display status table**:
249
-
250
- ```
251
- | Checklist | Total | Completed | Incomplete | Status |
252
- |----------------|-------|-----------|------------|--------|
253
- | requirements.md| 12 | 12 | 0 | ✓ PASS |
254
- | ux.md | 8 | 5 | 3 | ✗ FAIL |
255
- ```
256
-
257
- 4. **If any incomplete**:
258
- - Display the table
259
- - **STOP** and ask: "Some checklists are incomplete. Proceed anyway?
260
- (yes/no)"
261
- - Wait for user response
262
-
263
- 5. **If all complete**: Proceed automatically
264
-
265
- ---
266
-
267
- ## Step 5: Project Setup Verification
268
-
269
- Create/verify ignore files based on project setup:
270
-
271
- ### Detection Logic
272
-
273
- - Git repo? → verify `.gitignore`
274
- - Dockerfile exists? → verify `.dockerignore`
275
- - ESLint config? → verify `.eslintignore`
276
- - Prettier config? → verify `.prettierignore`
277
-
278
- ### Common Patterns by Tech Stack
279
-
280
- Read tech stack from plan.md and ensure appropriate patterns:
281
-
282
- - **Node.js**: `node_modules/`, `dist/`, `build/`, `*.log`, `.env*`
283
- - **Python**: `__pycache__/`, `*.pyc`, `.venv/`, `dist/`
284
- - **TypeScript**: `node_modules/`, `dist/`, `*.js.map`, `.tsbuildinfo`
285
- - **Universal**: `.DS_Store`, `*.tmp`, `*.swp`, `.vscode/`, `.idea/`
286
-
287
- ---
288
-
289
- ## Step 6: Parse Tasks Structure
290
-
291
- Extract from tasks.md:
292
-
293
- 1. **Task phases**: Setup, Foundational, User Stories, Polish
294
- 2. **Dependencies**: Sequential vs parallel execution
295
- 3. **Task details**: ID, description, file paths, [P] markers
296
- 4. **Current progress**: Which tasks are already `[X]` completed
297
- 5. **Protected files**: List from "Protected Files" section
298
- 6. **Loop evidence tasks**: eval command tasks, ledger append tasks, and
299
- stop/escalation rules
300
-
301
- ---
302
-
303
- ## Step 7: Execute Implementation
304
-
305
- ### Loop Contract Preflight
306
-
307
- Before editing code, run:
308
-
309
- ```bash
310
- node .specify/scripts/node/gofer-loop-audit.mjs --feature-dir {FEATURE_DIR} --stage 4_tasks --init --json
311
- ```
312
-
313
- If this reports contract blocking findings, repair `loop-contract.json` before
314
- editing code. If `loop-contract.json` was initialized for an older feature, keep
315
- going but make sure task execution appends real `loop-ledger.jsonl` evidence
316
- before this stage completes.
317
-
318
- ### Checkpoint Strategy
319
-
320
- Create checkpoints (git commits) at strategic points:
321
-
322
- | Checkpoint Point | Command |
323
- | -------------------------------- | ------------------------------------------------------------------ |
324
- | Before starting each phase | `git add -A && git commit -m "WIP: checkpoint before Phase N"` |
325
- | After completing each user story | `git add -A && git commit -m "feat: complete US1 - [description]"` |
326
- | Before any risky operation | `git add -A && git commit -m "WIP: checkpoint before [operation]"` |
327
-
328
- **Risky operations requiring checkpoint**:
329
-
330
- - Modifying database schemas or migrations
331
- - Changing authentication/authorization logic
332
- - Modifying core infrastructure or shared utilities
333
- - Large refactoring (> 5 files)
334
- - Deleting or renaming significant code
335
-
336
- ### Scope Enforcement
337
-
338
- **Before EACH file modification**:
339
-
340
- 1. ✓ Check file path is in planned scope (listed in tasks.md)
341
- 2. ✓ Check file is NOT in Protected Files list (from Step 3)
342
- 3. If file is protected:
343
-
344
- ```
345
- ⚠️ SCOPE BOUNDARY VIOLATION
346
- File: [path/to/file]
347
- Reason: [from Protected Files list]
348
-
349
- This file is marked as protected and must NOT be modified.
350
- Options:
351
- 1. Find alternative approach that doesn't touch this file
352
- 2. STOP and ask user for explicit approval to cross boundary
353
- ```
354
-
355
- ### Execution Rules
356
-
357
- 1. **Phase-by-phase**: Complete each phase before next
358
- 2. **Respect dependencies**: Sequential tasks in order
359
- 3. **Parallel tasks**: [P] marked tasks can run together
360
- 4. **File coordination**: Same-file tasks run sequentially
361
- 5. **Scope check**: Verify every file against protected list
362
- 6. **Loop evidence**: After each focused implementation/check-repair loop,
363
- append a ledger record:
364
-
365
- ```bash
366
- node .specify/scripts/node/gofer-loop-audit.mjs --feature-dir {FEATURE_DIR} --stage 5_implement --record '{"iteration":1,"action":"<command-or-review>","result":"pass","summary":"<evidence summary>"}' --json
367
- ```
368
-
369
- Use `result: "fail"` or `"blocked"` when a check fails and include a
370
- material `nextAction`. Stop and escalate instead of continuing silently when
371
- the same action reaches `humanEscalation.maxFailedIterations`.
372
-
373
- ### Execution Order
374
-
375
- 1. **Setup first**: Project structure, dependencies, config
376
- 2. **Foundational next**: Shared components blocking user stories
377
- 3. **User stories**: In priority order (P1, P2, P3...)
378
- 4. **Polish last**: Documentation, optimization, final tests
379
-
380
- ### Minimal Changes Only
381
-
382
- **Before EVERY file modification**, verify against Constitution Principle VIII:
383
-
384
- 1. Is this change directly required by the current task? If not, **do not make
385
- it**.
386
- 2. Am I modifying only the files listed in the task scope? If touching other
387
- files, **stop and justify**.
388
- 3. Am I refactoring surrounding code? If yes, **revert** — only change what the
389
- task specifies.
390
- 4. Am I adding features, documentation, or tests beyond what's specified? If
391
- yes, **remove them**.
392
- 5. Am I adding error handling for scenarios that cannot occur? If yes, **remove
393
- it**.
394
- 6. Am I creating an abstraction for a one-time operation? If yes, **inline it**.
395
- 7. Am I gold-plating (better variable names, extra comments, type annotations on
396
- unchanged code)? If yes, **revert**.
397
-
398
- **This is a per-modification check, not a per-task check.** Apply it to every
399
- line you write.
400
-
401
- ### For Each Task
402
-
403
- 1. Read the task description and file path
404
- 2. **SCOPE CHECK**: Verify file is not protected
405
- 3. Load relevant context (data-model, contracts, research)
406
- 4. Implement according to plan.md architecture
407
- 5. Follow existing codebase patterns (from research.md)
408
- 6. **MINIMAL CHANGE CHECK**: Verify every modification against the 7-point
409
- checklist above
410
- 7. Mark the task `in_progress` before editing:
411
-
412
- ```bash
413
- # Use the Gofer task status tool if available
414
- gofer_update_task_status <spec-id> <task-id> in_progress
415
- ```
416
-
417
- 8. **RUN FEEDBACK LOOP** (see below)
418
- 9. After the task passes its feedback loop, immediately mark it complete in
419
- `tasks.md` using `gofer_update_task_status <spec-id> <task-id> completed` or
420
- `.specify/scripts/bash/mark-task-complete.sh <feature-dir> <task-id>`
421
- 10. Report progress
422
-
423
- ### Feedback Loop (After EACH Task)
424
-
425
- **Immediately after completing each task, run verification**:
426
-
427
- ```bash
428
- # 1. Run relevant tests (if test file exists for this component)
429
- npm test -- --grep "[component pattern]" # or pytest -k "pattern"
430
-
431
- # 2. Run linter on modified files
432
- npm run lint -- [modified files] # or ruff check [files]
433
-
434
- # 3. Run type check (TypeScript projects)
435
- npm run typecheck # or tsc --noEmit
436
- ```
437
-
438
- **Feedback Loop Rules**:
439
-
440
- - If tests fail → **FIX BEFORE** proceeding to next task
441
- - If lint errors → **FIX BEFORE** proceeding
442
- - If type errors → **FIX BEFORE** proceeding
443
- - **DO NOT** mark a task complete until the feedback loop passes
444
- - **DO NOT** accumulate failures across tasks
445
-
446
- ### After Each Phase
447
-
448
- Run full verification before proceeding:
449
-
450
- ```bash
451
- # Full test suite
452
- npm test
453
-
454
- # Full build
455
- npm run build
456
-
457
- # Full lint
458
- npm run lint
459
- ```
460
-
461
- **Phase Gate**: Do NOT proceed to next phase if build is broken.
462
-
463
- ### Multi-Perspective Implementation Options (Optional)
464
-
465
- When facing complex implementation decisions during task execution, invoke one
466
- or more of the following strategies. Each spawns multiple sub-agents that
467
- explore different approaches, then a judge synthesizes the best result.
468
-
469
- **Trigger conditions** — use these when:
470
-
471
- | Strategy | Agent | When to Trigger | Converge Model |
472
- | ------------------------ | -------------------------------- | -------------------------------------------------------------------------- | -------------- |
473
- | #1 Variant Generator | `implement-variant-generator` | Multiple valid coding paradigms exist for a task (e.g., functional vs OOP) | sonnet |
474
- | #3 Bug Triangulator | `implement-bug-triangulator` | Debugging a defect with unclear root cause | sonnet |
475
- | #4 Test Diversifier | `implement-test-diversifier` | Writing tests for critical or complex logic | sonnet |
476
- | #8 Error Hardener | `implement-error-hardener` | Implementing error-prone code (I/O, external APIs, resource mgmt) | sonnet |
477
- | #11 Performance Explorer | `implement-performance-explorer` | Optimizing a hot path or resource-intensive operation | sonnet |
478
- | #15 Code Review Council | `implement-code-review-council` | After completing a complex task, before marking done | sonnet |
479
- | #17 Doc Writer | `implement-doc-writer` | Writing documentation for a user-facing feature | sonnet |
480
-
481
- **Invocation pattern** (example for #1 Variant Generator):
482
-
483
- ```
484
- # Diverge: Launch 3-5 agents with different approaches
485
- Task: subagent_type="implement-variant-generator", model="sonnet"
486
- prompt="Perspective 1: Implement [task] using functional approach. Files: [list]"
487
-
488
- Task: subagent_type="implement-variant-generator", model="sonnet"
489
- prompt="Perspective 2: Implement [task] using OOP approach. Files: [list]"
490
-
491
- Task: subagent_type="implement-variant-generator", model="sonnet"
492
- prompt="Perspective 3: Implement [task] using event-driven approach. Files: [list]"
493
-
494
- # Converge: Judge synthesizes best approach
495
- Task: subagent_type="multi-perspective-judge", model="opus"
496
- prompt="Synthesize 3 implementation variants for [task]. Select best approach.
497
- Variant 1: [result]. Variant 2: [result]. Variant 3: [result]."
498
- ```
499
-
500
- **Rules**:
501
-
502
- - These are OPTIONAL — only invoke when trigger conditions are met
503
- - Each diverge agent returns <2000 tokens; judge returns <4000 tokens
504
- - Do NOT use for trivial tasks (config changes, simple getters, boilerplate)
505
- - Prefer strategies that match the task type (debugging → #3, testing → #4)
506
-
507
- ---
508
-
509
- ## Step 8: Progress Tracking
510
-
511
- ### After Each Task
512
-
513
- ```
514
- ✓ T001 Create directory structure - DONE
515
- → T002 [P] Set up configuration files - IN PROGRESS
516
- ```
517
-
518
- ### After Each Phase
519
-
520
- ```
521
- ═══════════════════════════════════════
522
- Phase 1: Setup - COMPLETE
523
- ═══════════════════════════════════════
524
- Tasks completed: 4/4
525
- Files created:
526
- - src/index.ts
527
- - src/config.ts
528
- - package.json
529
- - tsconfig.json
530
-
531
- → Starting Phase 2: Foundational
532
- ═══════════════════════════════════════
533
- ```
534
-
535
- ---
536
-
537
- ## Step 9: Error Handling
538
-
539
- ### If Task Fails
540
-
541
- 1. Report the error with context
542
- 2. **For sequential tasks**: Halt execution
543
- 3. **For parallel [P] tasks**: Continue others, report failed
544
- 4. Provide debugging suggestions
545
- 5. Ask user how to proceed:
546
- - Retry the task
547
- - Skip and continue
548
- - Stop implementation
549
-
550
- ### If Blocked
551
-
552
- 1. Identify the blocker
553
- 2. Check if it's a missing prerequisite
554
- 3. Suggest running earlier stage if needed
555
- 4. Document the issue in tasks.md
556
-
557
- ### If Something Goes Wrong (Rollback)
558
-
559
- 1. **STOP immediately** - don't make more changes
560
- 2. **Assess damage**:
561
- ```bash
562
- git status
563
- git diff
564
- ```
565
- 3. **Rollback options**:
566
- - Single file: `git checkout HEAD -- <file>`
567
- - All uncommitted: `git reset --hard HEAD`
568
- - To last checkpoint: `git reset --hard <checkpoint-commit>`
569
- 4. **Document** what went wrong in tasks.md
570
- 5. **Retry** with modified approach
571
-
572
- ---
573
-
574
- ## Step 10: Completion Validation
575
-
576
- After all tasks complete:
577
-
578
- 1. **Verify all tasks marked [X]**
579
- 2. **Check implementation matches spec**
580
- 3. **Run automated tests** if they exist
581
- 4. **Validate against plan.md architecture**
582
- 5. **Run loop audit in strict mode**:
583
-
584
- ```bash
585
- node .specify/scripts/node/gofer-loop-audit.mjs --feature-dir {FEATURE_DIR} --stage 5_implement --json --strict
586
- ```
587
-
588
- If the audit fails, implementation is not complete. Repair the contract,
589
- append missing ledger evidence, run the failing eval command, or escalate
590
- according to the stop condition.
591
-
592
- ---
593
-
594
- ## Step 11: Engineering Review Gate (Up to 5 cycles)
595
-
596
- Before proceeding to validation, run an iterative engineering review to catch
597
- implementation issues early.
598
-
599
- ### Review Cycle (repeat up to 5 times)
600
-
601
- **CRITICAL**: You **MUST** dispatch 3 review agents in parallel using the Task
602
- tool. Do NOT perform this review work inline in the main context.
603
-
604
- **Agent 1**: engineer-review (sonnet) — cross-check spec↔plan↔implementation
605
- alignment
606
-
607
- ```
608
- Task: subagent_type="engineer-review", model="sonnet"
609
- Prompt: "Review alignment between spec.md, plan.md, tasks.md, and the
610
- implemented code in {FEATURE_DIR}. Check that all acceptance criteria are
611
- implemented. Report Red/Yellow/Gray findings."
612
- ```
613
-
614
- **Agent 2**: codebase-analyzer (sonnet) — verify implementation patterns
615
-
616
- ```
617
- Task: subagent_type="codebase-analyzer", model="sonnet"
618
- Prompt: "Verify that the implemented code follows existing codebase patterns
619
- from {FEATURE_DIR}/research.md and matches the architecture in
620
- {FEATURE_DIR}/plan.md. Report Red/Yellow/Gray findings."
621
- ```
622
-
623
- **Agent 3**: validation-correctness (sonnet) — verify acceptance criteria
624
- coverage
625
-
626
- ```
627
- Task: subagent_type="validation-correctness", model="sonnet"
628
- Prompt: "Verify that every acceptance criterion in {FEATURE_DIR}/spec.md
629
- has been implemented and has corresponding test coverage.
630
- Report Red/Yellow/Gray findings with coverage gaps."
631
- ```
632
-
633
- **After agents return:**
634
-
635
- 1. Classify findings: Red (blocking) / Yellow (should fix) / Gray
636
- (informational)
637
- 2. If NO Red or Yellow findings → PASS → proceed to auto-chain
638
- 3. If Red or Yellow findings exist: a. Fix findings directly in implementation
639
- code (Red first, then Yellow) b. Re-run build/test/lint to verify fixes c.
640
- Increment cycle counter d. If cycle <= 5 → re-run review agents e. If cycle >
641
- 5 → log remaining findings, proceed with warnings
642
-
643
- ---
644
-
645
- ## Step 12: Report and Continue
646
-
647
- After implementation complete, strict loop audit passes, and review gate passes,
648
- update the stakeholder-facing implementation record:
649
-
650
- 1. Update `{FEATURE_DIR}/working-backwards-prfaq.md`.
651
- - In "The Launch" and Delivery / Operations FAQ, describe what is now built.
652
- - Add "What changed from plan" when implementation differs from `plan.md`,
653
- `tasks.md`, or stakeholder-approved scope.
654
- - Link to code/test evidence, `loop-ledger.jsonl`, and any preview evidence.
655
- 2. Write `{FEATURE_DIR}/prfaq-history/05-implement.md` as an immutable
656
- implementation snapshot.
657
- 3. Update `{FEATURE_DIR}/business-owner-summary.md` if implementation changed
658
- process, scope, user-facing behavior, assumptions, or success metrics.
659
- 4. Update `{FEATURE_DIR}/cto-architecture-summary.md` if implementation changed
660
- architecture, EAI Platform/Azure usage, auth, tenancy, data, contracts, or
661
- integration boundaries.
662
- 5. Update `{FEATURE_DIR}/stakeholder-review-index.md` with:
663
- - Business Owner review ask for implemented behavior and demo readiness.
664
- - CTO review ask for implementation deltas against the architecture summary.
665
- - Delivery review ask for completed scope, outstanding risks, and rollback
666
- evidence.
667
- 6. Do not mark implementation complete unless the existing feedback loops,
668
- `loop-ledger.jsonl`, and strict loop audit requirements remain satisfied.
669
-
670
- After the stakeholder PR/FAQ artifacts are updated:
671
-
672
- ```
673
- ════════════════════════════════════════════════════════════════
674
- ✓ IMPLEMENTATION COMPLETE: [Feature Name]
675
- ════════════════════════════════════════════════════════════════
676
-
677
- Tasks: [N]/[N] completed
678
- Loop evidence: {FEATURE_DIR}/loop-ledger.jsonl
679
- Working Backwards PR/FAQ: {FEATURE_DIR}/working-backwards-prfaq.md
680
- PR/FAQ implementation snapshot: {FEATURE_DIR}/prfaq-history/05-implement.md
681
- Stakeholder review index: {FEATURE_DIR}/stakeholder-review-index.md
682
-
683
- Phases completed:
684
- - Phase 1: Setup ✓
685
- - Phase 2: Foundational ✓
686
- - Phase 3: US1 ✓
687
- - Phase 4: US2 ✓
688
- - Phase 5: Polish ✓
689
-
690
- Engineering Review: PASSED (cycle [N] of 5)
691
-
692
- Files created/modified:
693
- - src/models/user.ts (new)
694
- - src/services/userService.ts (new)
695
- - src/routes/users.ts (new)
696
- - src/index.ts (modified)
697
-
698
- ════════════════════════════════════════════════════════════════
699
- ```
700
-
701
- **AUTO-CHAIN (MANDATORY)**: You MUST immediately invoke the next pipeline stage
702
- by calling the Skill tool with skill="/6_gofer_validate". Do NOT ask the user
703
- for confirmation. Do NOT output "Ready for next stage". Just invoke the skill
704
- NOW.
705
-
706
- ---
707
-
708
- ## Resumption Support
709
-
710
- If implementation was interrupted:
711
-
712
- 1. Parse tasks.md for `- [X]` completed tasks
713
- 2. Find first incomplete task `- [ ]`
714
- 3. Resume from that task
715
- 4. Report what was already done
716
-
717
- **Note**: Implementation is stateful - it resumes from the last completed task.
718
-
719
- ---
720
-
721
- ## EnterpriseAI Runtime Deployment Preflight Gate
722
-
723
- For selected EAI-maintained source, check the current app before implementation,
724
- after each source edit batch, and before any readiness claim or publication:
725
-
726
- ```bash
727
- node .specify/scripts/node/eai-app-template-readiness.mjs --root . --source eai-managed --json
728
- ```
729
-
730
- Verify `eai deploy source validate --help` from the installed CLI first. Add
731
- `--cli <executable>` when the app already selected a CLI executable; do not fall
732
- back to a global CLI after that executable fails. Require `ready: true` and
733
- `sourceValidation.status: passed`. A missing validator, rejected scope, or
734
- malformed result blocks this capability. Include all customer-authored app files,
735
- including runners, tests, backend code, scripts, documentation, and supported dot
736
- configuration. Preserve protected EAI authentication, platform-service,
737
- deployment, and workflow controls from `.specify/references/platform/eai-app-template.md`.
738
- Unsupported custom runtimes must fail explicitly. Never omit business changes or
739
- customer app files, weaken protected controls, or restore files automatically.
740
- Local-only and customer-owned source retain their validation paths.
741
- This read-only check does not prove publication, runtime health, or deployment.
742
-
743
- The standard Gofer workflow is the public default. EnterpriseAI deployment
744
- preflight is migration-only and runs only when `workflowProfile` is explicitly
745
- `enterpriseai`.
746
-
747
- Before any deployment task emitted by `/4_gofer_tasks` completes, this stage
748
- MUST execute deployment preflight checks for the runtime contract and deploy
749
- doctor gate. A task that invokes `eai deploy` is not marked complete until all
750
- of the following files are present at the workspace root and pass their
751
- readiness checks:
752
-
753
- | Required File | Purpose |
754
- | ------------------------- | -------------------------------------------------------------- |
755
- | `eai.runtime.json` | Provider-neutral runtime contract from the EAI app template |
756
- | `.eai/deploy-doctor.json` | Black-box deploy doctor evidence from the deployed app runtime |
757
-
758
- Required commands:
759
-
760
- ```bash
761
- eai runtime validate
762
- mkdir -p .eai
763
- eai deploy doctor --url <deployed-url> --format json > .eai/deploy-doctor.json
764
- ```
765
-
766
- `/health` alone is not enough. Auth.js, runtime config, workspace/workflow config,
767
- PublicAPI/BFF reachability, service-identity requirements, and declared smoke
768
- tests must pass before deployment is complete.
769
-
770
- ### Gate behaviour
771
-
772
- - If any required file is missing, the stage emits `EVT-012` via the
773
- deployment-readiness event bus and blocks task completion.
774
- - Paths are resolved relative to the workspace root. Any attempt to resolve a
775
- required file outside the workspace (for example `/etc/passwd`) throws
776
- `IMPL_DEPLOYMENT_PATH_INVALID`.
777
- - When the gate passes, `readinessPassed=true` is recorded in the emitted event
778
- and the deployment task is allowed to continue.
779
-
780
- ### EnterpriseAI Red/Green Implementation Discipline
781
-
782
- For EnterpriseAI runs, implementation MUST preserve the test/implementation
783
- separation from `tasks.md`:
784
-
785
- - Run the spec-derived tests before implementation and record the expected
786
- failure when the implementation is missing or incomplete.
787
- - Implement only against the approved `contract-pack.md`, `context-bundle.md`,
788
- `reuse-scan.md`, `journeys/base-journey.md`, `plan.md`, and `goal-ledger.json`.
789
- - For application delivery, stop and return to the preview loop if
790
- `{FEATURE_DIR}/ui-approval.md` is missing or not approved. App-delivery runs
791
- MUST NOT continue as though the UI is settled when approval has not been
792
- recorded.
793
- - For application delivery, use the EAI App Template already installed in the
794
- workspace as the default UI lego-block source. Any create-new UI concept must
795
- be justified in the approved plan and approval artifacts.
796
- - For application delivery, implement on EAI Platform first, including the EAI
797
- app template, and Azure second: use the EAI scaffold, PublicAPI/object
798
- types/workflows/block catalog, ResourceAPI/`eai resources schema`, workspace/app
799
- enrollment, provisioning, diagnostics, and Azure-compatible
800
- deployment/supporting services before any non-EAI exception. Do not introduce a
801
- non-EAI primary runtime, database, hosting platform, or app stack unless
802
- `plan.md`, `service-fit-matrix.md`, and approval artifacts record it as an
803
- explicit exception.
804
- - Before implementing UI, run or inspect `eai --describe`, `eai blocks list`,
805
- `eai blocks describe <id>` for every selected block, and
806
- `eai resources schema --format json`. Implementation notes must cite the block IDs,
807
- required resources, bindings, package lane, coupling status, Storybook story
808
- IDs, theme override points, and any approved custom-block exception.
809
- - Reject unknown component names during implementation unless `tasks.md` and
810
- `ui-approval.md` explicitly authorize a custom extension block and manifest.
811
- - Treat package-profile, block-porting, source-platform decoupling, and public-readiness
812
- tasks as first-class implementation tasks, not polish. Update
813
- `{FEATURE_DIR}/goal-ledger.json` whenever a task changes an owner, target
814
- metric, delivery state, promotion criterion, or re-loop trigger. External and
815
- hybrid profile work is incomplete until package exports, Storybook stories,
816
- theme overrides, consumer smoke checks, and unsupported custom-block
817
- exceptions are resolved or explicitly deferred by approval artifacts.
818
- - Do not let public or hybrid package lanes import source-platform internals directly.
819
- Use `eai resources schema`, an adapter boundary, or an approved
820
- restricted-source exception; record the coupling status in implementation
821
- notes and `ui-review-log.md`.
822
- - For EAI app delivery, read `.specify/references/platform/eai-repo-contract.md`,
823
- `.specify/references/platform/eai-error-catalog.yaml`, and
824
- `.specify/specs/{feature}/eai-preflight.md` before remote platform changes.
825
- - Carry forward the last completed gate, blocked gate, and next recovery
826
- command from `eai-preflight.md` whenever provisioning, object-type publish,
827
- schema/storage health, workflow readiness, or preview readiness changes.
828
- - After any failed `eai` command, run `eai errors explain <code-or-reason>
829
- --format json` when advertised before proposing a fix. If the command is not
830
- advertised, match `.specify/references/platform/eai-error-catalog.yaml`. Run
831
- read-only diagnostics before mutating fixes, ask for approval before workspace
832
- membership or admin changes, and stop at the guidance retry/escalation
833
- condition instead of repeatedly rerunning the same command.
834
- - Treat resource provisioning, object-type publish, schema/storage health, and preview readiness as separate gates even when the CLI reports progress in a single run.
835
- - Track workflow readiness alongside those gates; do not collapse it into
836
- provisioning, schema/storage health, or preview status.
837
- - Use `eai app provision <key> --tenant-id <workspace-id> --select --format json`,
838
- `eai provision entra --force --redirect-uri <confirmed-callback-uri>`,
839
- `eai types seed --tenant-key <key> --tenant-id <workspace-id> --format json`,
840
- `eai resources schema --tenant-id <workspace-id> --format json`,
841
- `eai resources storage doctor --tenant-id <workspace-id> --format json`, and
842
- `eai verify storage --tenant-id <workspace-id>` in the recovery order recorded
843
- by the preflight artifact instead of improvising a new sequence. Use EAI
844
- `--debug` flags only with explicit user approval, and never write private
845
- hostnames, workspace IDs, Entra/CIAM authority tenant IDs, client IDs, tokens, or raw debug output to committed
846
- artifacts.
847
- - For v4 passive ResourceAPI search, treat `capabilities.search.fulltext`,
848
- `capabilities.search.hybrid`, and `capabilities.search.vector` from
849
- `eai resources storage doctor --tenant-id <workspace-id> --format json` as
850
- separate readiness states. If hybrid/vector are unavailable but fulltext is
851
- ready, use `eai resources search "<query>" --fulltext --tenant-id <workspace-id>`
852
- and record semantic search as a deferred platform capability only when the
853
- business scenario genuinely requires it. Do not apply this fallback to legacy
854
- v1/v3 or active ResourceAPI behavior.
855
- - If a browser or runtime auth log reports `AADSTS50011`, `redirect_uri`,
856
- "reply URL specified in the request does not match", or
857
- `/api/auth/callback/microsoft-entra-id`, match
858
- `EAI_ENTRA_REDIRECT_URI_MISMATCH` in the error catalog. Confirm `eai whoami`
859
- and workspace selection first, then use EAI Entra provisioning to register the
860
- confirmed callback URI before asking the user to edit Azure manually. Record
861
- only a redacted callback route pattern and recovery status in implementation
862
- notes or validation artifacts.
863
- - If `eai user invite` fails with `EXTERNAL_SERVICE_ERROR`, a 5xx response, or
864
- `user_invite_external_service_existing_member`, treat it as a workspace-member
865
- recovery flow: run `eai user list --workspace <workspace-id> --search <email>
866
- --format json`, use `eai user role set --workspace <workspace-id> --member-id
867
- <member-id> --role tenant-admin --format json` only when an existing direct
868
- member is verified and the user approves, verify the read-back, and tell the
869
- affected app user to sign out and sign back in because Auth.js session or JWT
870
- role data may be cached. Do not edit databases or cloud portals directly
871
- unless EAI guidance reports an operator-only block.
872
- - For application delivery, implement the four-step-or-fewer AI-augmented
873
- process as the user-facing spine. Each step must preserve its business goal,
874
- AI assistance mode, contextual prefill or conversational support, completion
875
- criteria, human controls, audit trail, and fallback/escalation path.
876
- - Preserve dual-state delivery discipline: when a capability stays in `mock` or
877
- `hybrid`, record why, what promotion criteria remain, and what validation
878
- evidence is still required before it can move to `live`.
879
- - For application delivery, before showing any new MVP preview to the
880
- stakeholder, collect screenshot, local render proof, or Playwright-style
881
- self-review evidence and append it to `{FEATURE_DIR}/ui-review-log.md`.
882
- - For application delivery, after UI approval and before treating platform
883
- selection as complete, update `{FEATURE_DIR}/service-fit-matrix.md` with
884
- workspace context evidence from `eai --describe`, `eai whoami`, `eai workspace
885
- select`, `eai resources schema --format json`, `eai workflow readiness
886
- --format json`, `eai verify calls --format json`, or equivalent approved
887
- platform evidence. The matrix must distinguish
888
- accessible now, purchasable but unavailable now, and unavailable without new
889
- platform work.
890
- - For non-app work, skip the preview, approval, branding, and service-fit gates
891
- while preserving the same numbered stage flow.
892
- - Do not add extra user-facing app steps unless `plan.md` records why they
893
- cannot be combined, automated, or handled by generative AI assistance.
894
- - Re-run the same tests and validation checks after implementation.
895
- - Update `audit-history.md` with stable finding IDs for every blocking issue,
896
- recurring issue, accepted exception, owner, expiry, and review cadence.
897
-
898
- ---
899
-
900
- ## Observability Logging
901
-
902
- At stage completion, log metrics:
903
-
904
- ```bash
905
- .specify/scripts/bash/log-stage.sh 5_implement --complete --tokens [N] --compactions [N]
906
- ```
907
-
908
- Logs to: `.specify/logs/pipeline.jsonl`
909
-
910
- ---
911
-
912
- ## Key Rules
913
-
914
- - ALWAYS mark tasks complete in tasks.md as you finish them
915
- - Use absolute paths for all file operations
916
- - Follow existing codebase patterns from research.md
917
- - Follow architecture from plan.md
918
- - Report progress clearly after each task
919
- - Stop on errors for sequential tasks
920
- - Implementation must match specification
921
- - Log stage completion for observability tracking
922
-
923
- ---
924
-
925
- ## Optional Helpers: TDD and Diagnose
926
-
927
- - If the operator explicitly requests `tdd-assist` and both `spec.md` and
928
- `tasks.md` are present, run `gofer:tdd` inline and write
929
- `.specify/specs/{feature}/tdd-session.md` using the same artifact contract as
930
- the standalone helper.
931
- - If the operator explicitly requests `diagnose` and `spec.md` is present, run
932
- `gofer:diagnose` inline; bug context, failing output, or equivalent failure
933
- evidence may supplement the investigation. Write
934
- `.specify/specs/{feature}/diagnose-report.md` using the same artifact
935
- contract as the standalone helper.
936
- - If the required inputs are missing, continue the stage normally and report
937
- that the helper was not run.
938
- - These selectors are optional and do not change stage progress, routing, or
939
- pipeline state.