opencastle 0.10.7 → 0.12.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 (132) hide show
  1. package/README.md +4 -0
  2. package/bin/cli.mjs +4 -0
  3. package/dist/cli/convoy/events.d.ts +10 -0
  4. package/dist/cli/convoy/events.d.ts.map +1 -0
  5. package/dist/cli/convoy/events.js +27 -0
  6. package/dist/cli/convoy/events.js.map +1 -0
  7. package/dist/cli/convoy/events.test.d.ts +2 -0
  8. package/dist/cli/convoy/events.test.d.ts.map +1 -0
  9. package/dist/cli/convoy/events.test.js +94 -0
  10. package/dist/cli/convoy/events.test.js.map +1 -0
  11. package/dist/cli/convoy/store.d.ts +23 -0
  12. package/dist/cli/convoy/store.d.ts.map +1 -0
  13. package/dist/cli/convoy/store.js +210 -0
  14. package/dist/cli/convoy/store.js.map +1 -0
  15. package/dist/cli/convoy/store.test.d.ts +2 -0
  16. package/dist/cli/convoy/store.test.d.ts.map +1 -0
  17. package/dist/cli/convoy/store.test.js +387 -0
  18. package/dist/cli/convoy/store.test.js.map +1 -0
  19. package/dist/cli/convoy/types.d.ts +56 -0
  20. package/dist/cli/convoy/types.d.ts.map +1 -0
  21. package/dist/cli/convoy/types.js +2 -0
  22. package/dist/cli/convoy/types.js.map +1 -0
  23. package/dist/cli/dashboard.d.ts.map +1 -1
  24. package/dist/cli/dashboard.js +5 -1
  25. package/dist/cli/dashboard.js.map +1 -1
  26. package/dist/cli/init.test.js +1 -1
  27. package/dist/cli/init.test.js.map +1 -1
  28. package/dist/cli/lesson.d.ts +17 -0
  29. package/dist/cli/lesson.d.ts.map +1 -0
  30. package/dist/cli/lesson.js +294 -0
  31. package/dist/cli/lesson.js.map +1 -0
  32. package/dist/cli/log.d.ts +7 -0
  33. package/dist/cli/log.d.ts.map +1 -0
  34. package/dist/cli/log.js +131 -0
  35. package/dist/cli/log.js.map +1 -0
  36. package/dist/cli/run/executor.js.map +1 -1
  37. package/dist/cli/run/executor.test.js +1 -0
  38. package/dist/cli/run/executor.test.js.map +1 -1
  39. package/dist/cli/run/loop-executor.d.ts +3 -0
  40. package/dist/cli/run/loop-executor.d.ts.map +1 -0
  41. package/dist/cli/run/loop-executor.js +155 -0
  42. package/dist/cli/run/loop-executor.js.map +1 -0
  43. package/dist/cli/run/loop-reporter.d.ts +6 -0
  44. package/dist/cli/run/loop-reporter.d.ts.map +1 -0
  45. package/dist/cli/run/loop-reporter.js +112 -0
  46. package/dist/cli/run/loop-reporter.js.map +1 -0
  47. package/dist/cli/run/reporter.d.ts.map +1 -1
  48. package/dist/cli/run/reporter.js +28 -1
  49. package/dist/cli/run/reporter.js.map +1 -1
  50. package/dist/cli/run/schema.d.ts +4 -0
  51. package/dist/cli/run/schema.d.ts.map +1 -1
  52. package/dist/cli/run/schema.js +178 -50
  53. package/dist/cli/run/schema.js.map +1 -1
  54. package/dist/cli/run/schema.test.js +598 -1
  55. package/dist/cli/run/schema.test.js.map +1 -1
  56. package/dist/cli/run.d.ts.map +1 -1
  57. package/dist/cli/run.js +84 -3
  58. package/dist/cli/run.js.map +1 -1
  59. package/dist/cli/types.d.ts +78 -1
  60. package/dist/cli/types.d.ts.map +1 -1
  61. package/dist/cli/update.d.ts.map +1 -1
  62. package/dist/cli/update.js +54 -1
  63. package/dist/cli/update.js.map +1 -1
  64. package/package.json +3 -2
  65. package/src/cli/convoy/events.test.ts +118 -0
  66. package/src/cli/convoy/events.ts +41 -0
  67. package/src/cli/convoy/store.test.ts +446 -0
  68. package/src/cli/convoy/store.ts +308 -0
  69. package/src/cli/convoy/types.ts +68 -0
  70. package/src/cli/dashboard.ts +5 -1
  71. package/src/cli/init.test.ts +1 -1
  72. package/src/cli/lesson.ts +312 -0
  73. package/src/cli/log.ts +133 -0
  74. package/src/cli/run/executor.test.ts +1 -0
  75. package/src/cli/run/executor.ts +8 -8
  76. package/src/cli/run/loop-executor.ts +199 -0
  77. package/src/cli/run/loop-reporter.ts +125 -0
  78. package/src/cli/run/reporter.ts +30 -1
  79. package/src/cli/run/schema.test.ts +704 -3
  80. package/src/cli/run/schema.ts +206 -56
  81. package/src/cli/run.ts +82 -5
  82. package/src/cli/types.ts +87 -1
  83. package/src/cli/update.ts +62 -1
  84. package/src/dashboard/dist/index.html +14 -15
  85. package/src/dashboard/node_modules/.vite/deps/_metadata.json +6 -6
  86. package/src/dashboard/scripts/generate-seed-data.ts +23 -43
  87. package/src/dashboard/seed-data/events.ndjson +104 -0
  88. package/src/dashboard/src/pages/index.astro +14 -15
  89. package/src/orchestrator/agents/api-designer.agent.md +1 -1
  90. package/src/orchestrator/agents/architect.agent.md +1 -1
  91. package/src/orchestrator/agents/content-engineer.agent.md +1 -1
  92. package/src/orchestrator/agents/copywriter.agent.md +1 -1
  93. package/src/orchestrator/agents/data-expert.agent.md +1 -1
  94. package/src/orchestrator/agents/database-engineer.agent.md +1 -1
  95. package/src/orchestrator/agents/developer.agent.md +1 -1
  96. package/src/orchestrator/agents/devops-expert.agent.md +1 -1
  97. package/src/orchestrator/agents/documentation-writer.agent.md +1 -1
  98. package/src/orchestrator/agents/performance-expert.agent.md +1 -1
  99. package/src/orchestrator/agents/release-manager.agent.md +1 -1
  100. package/src/orchestrator/agents/security-expert.agent.md +1 -1
  101. package/src/orchestrator/agents/seo-specialist.agent.md +1 -1
  102. package/src/orchestrator/agents/session-guard.agent.md +9 -21
  103. package/src/orchestrator/agents/team-lead.agent.md +8 -34
  104. package/src/orchestrator/agents/testing-expert.agent.md +1 -1
  105. package/src/orchestrator/agents/ui-ux-expert.agent.md +1 -1
  106. package/src/orchestrator/customizations/AGENT-PERFORMANCE.md +11 -12
  107. package/src/orchestrator/customizations/DISPUTES.md +2 -2
  108. package/src/orchestrator/customizations/README.md +1 -3
  109. package/src/orchestrator/customizations/logs/README.md +66 -14
  110. package/src/orchestrator/instructions/ai-optimization.instructions.md +21 -132
  111. package/src/orchestrator/instructions/general.instructions.md +35 -181
  112. package/src/orchestrator/plugins/nx/SKILL.md +1 -1
  113. package/src/orchestrator/prompts/bootstrap-customizations.prompt.md +4 -8
  114. package/src/orchestrator/prompts/bug-fix.prompt.md +4 -4
  115. package/src/orchestrator/prompts/implement-feature.prompt.md +3 -3
  116. package/src/orchestrator/prompts/quick-refinement.prompt.md +3 -3
  117. package/src/orchestrator/prompts/resolve-pr-comments.prompt.md +1 -1
  118. package/src/orchestrator/skills/agent-hooks/SKILL.md +11 -11
  119. package/src/orchestrator/skills/decomposition/SKILL.md +1 -1
  120. package/src/orchestrator/skills/fast-review/SKILL.md +4 -19
  121. package/src/orchestrator/skills/git-workflow/SKILL.md +72 -0
  122. package/src/orchestrator/skills/memory-merger/SKILL.md +1 -1
  123. package/src/orchestrator/skills/observability-logging/SKILL.md +129 -0
  124. package/src/orchestrator/skills/orchestration-protocols/SKILL.md +2 -2
  125. package/src/orchestrator/skills/panel-majority-vote/SKILL.md +4 -7
  126. package/src/orchestrator/skills/self-improvement/SKILL.md +13 -26
  127. package/src/orchestrator/skills/team-lead-reference/SKILL.md +2 -2
  128. package/src/orchestrator/customizations/logs/delegations.ndjson +0 -1
  129. package/src/orchestrator/customizations/logs/panels.ndjson +0 -1
  130. package/src/orchestrator/customizations/logs/reviews.ndjson +0 -0
  131. package/src/orchestrator/customizations/logs/sessions.ndjson +0 -1
  132. /package/src/orchestrator/customizations/logs/{disputes.ndjson → events.ndjson} +0 -0
@@ -13,7 +13,7 @@ applyTo: '**'
13
13
  3. **Leave code better than you found it** — fix adjacent issues when the cost is low.
14
14
  4. **Fail visibly** — surface errors clearly; never swallow exceptions silently.
15
15
  5. **Verify, don't trust** — confirm outcomes with tools (tests, lint, build) rather than assuming success.
16
- 6. **Log every session** — append observability records to `.github/customizations/logs/` before yielding to the user. No exceptions. See § Observability Logging below.
16
+ 6. **Log every session** — append observability records to `.github/customizations/logs/` before yielding to the user. No exceptions. Load the **observability-logging** skill for details.
17
17
 
18
18
  ## Instruction Priority Hierarchy
19
19
 
@@ -66,40 +66,6 @@ Before starting multi-step work, decompose it into individually verifiable tasks
66
66
  - **Browser testing mandatory** for any UI change — verified at responsive breakpoints defined in `testing-config.md`
67
67
  - Load the **testing-workflow** skill for test patterns and the **browser-testing** skill for E2E automation
68
68
 
69
- ## Git Workflow
70
-
71
- **NEVER commit or push directly to the `main` branch.** All changes must go through a feature/fix branch and a pull request.
72
-
73
- 1. **Create a branch** from `main` before making any changes: `git checkout -b <type>/<ticket-id>-<short-description>` (e.g., `fix/tas-21-places-redirect-loop`, `feat/tas-15-new-filter`)
74
- 2. **Commit to the branch** — never to `main`. Reference the task tracker issue ID in every commit message (e.g., `TAS-42: Fix token refresh logic`)
75
- 3. **Push the branch** and open a pull request on GitHub. **Do NOT merge** — PRs are opened for review only
76
- 4. **Link the PR to the task tracker** — Update the issue description with the PR URL so progress is traceable
77
- 5. **Merge via PR** — the only way code reaches `main`, and only after review/approval
78
-
79
- Branch naming convention: `<type>/<ticket-id>-<short-description>` where type is `fix`, `feat`, `chore`, `refactor`, `perf`, or `docs`.
80
-
81
- **This rule has NO exceptions.** Not for "small fixes", not for "just config changes", not for urgent hotfixes. Every change goes through a PR.
82
-
83
- ### PR Safety Rules
84
-
85
- - **Never** use `git push --force` or `git commit --amend` on shared branches
86
- - **Never** expose secrets in commits, PR descriptions, or terminal output (per Constitution #1)
87
- - Use `git push --force-with-lease` only when explicitly asked and on personal branches
88
- - If a secret is accidentally committed, immediately rotate it — git history is permanent
89
-
90
- ### Delivery Outcome (Required for Every Task)
91
-
92
- Every task that produces code changes — whether a roadmap feature, bug fix, follow-up, data pipeline, or refactor — must deliver:
93
-
94
- 1. **Dedicated branch** — `<type>/<ticket-id>-<short-description>` created from `main`
95
- 2. **Atomic commits** — Each commit references the issue ID (e.g., `TAS-42: Add filter component`)
96
- 3. **Pushed branch** — Branch pushed to origin
97
- 4. **Open PR** — Use `gh` CLI to create the PR. **Do NOT merge** — PRs are opened for review only:
98
- ```bash
99
- GH_PAGER=cat gh pr create --base main --title "TAS-XX: Short description" --body "Resolves TAS-XX"
100
- ```
101
- 5. **Task tracker linkage** — The issue is updated with the PR URL, and the PR description references the issue ID
102
-
103
69
  ## Build & Task Commands
104
70
 
105
71
  Use the project's configured task runner for all build, test, lint, and serve commands. **Never invoke test runners or linters directly** — always use the task runner wrapper.
@@ -120,182 +86,70 @@ Follow markdown formatting and documentation standards when writing docs. For te
120
86
 
121
87
  ## AI Optimization
122
88
 
123
- Follow prompt caching and batch processing best practices. See [AI Optimization Guide](ai-optimization.instructions.md) for details.
124
-
125
- ## Discovered Issues Policy
89
+ See [ai-optimization.instructions.md](ai-optimization.instructions.md) for batch processing, tool efficiency, and anti-patterns.
126
90
 
127
- > **⛔ No issue gets ignored.** Untracked bugs discovered during work are a quality gate failure.
128
-
129
- When you encounter a bug, error, or unexpected behavior that is unrelated to the current task:
130
-
131
- 1. **Check if already tracked:**
132
- - Search `.github/customizations/KNOWN-ISSUES.md` for a matching entry
133
- - If you have task tracker tools available, also search for open bugs (use `search_issues` or `list_issues` with bug label)
134
- 2. **If found tracked** — skip it, continue with your current work
135
- 3. **If NOT tracked** — you must act:
136
- - **Unfixable limitation** (third-party constraint, platform restriction, upstream dependency) → add it to `.github/customizations/KNOWN-ISSUES.md` with: Issue ID, Status, Severity, Evidence, Root Cause, Solution Options
137
- - **Fixable bug** → if you have task tracker tools, create a ticket with label `bug`, appropriate priority, and a clear description of the symptoms, reproduction steps, and affected files. If you do NOT have task tracker tools, add a `**Discovered Issues**` section to your output listing the bug details so the Team Lead can track it.
91
+ ## Project Context
138
92
 
139
- Never assume a pre-existing issue is somebody else's problem. If it's not tracked, track it.
93
+ For project-specific context (apps, libraries, tech stack, ports, URLs), see [project.instructions.md](../customizations/project.instructions.md).
140
94
 
141
- ## Task Tracking
95
+ ## Git Workflow
142
96
 
143
- Feature work is tracked in the **task tracker** (see `tracker-config.md` for project details). The Team Lead agent creates and updates issues via MCP. For conventions, load the **task-management** skill.
97
+ **NEVER commit or push directly to the `main` branch.** All changes go through a feature/fix branch and a pull request. Load the **git-workflow** skill for branch naming, PR rules, and the Delivery Outcome checklist.
144
98
 
145
- ### When Task Tracker MCP Tools Are Unavailable
99
+ ## Discovered Issues Policy
146
100
 
147
- If task tracker MCP tools are not available in the current session, do NOT block on issue creation. Instead:
101
+ > **⛔ No issue gets ignored.** Untracked bugs discovered during work are a quality gate failure.
148
102
 
149
- 1. **Document planned issues** in your output with the title, description, and acceptance criteria you would have used
150
- 2. **Proceed with implementation** — the work is still valuable without a ticket number
151
- 3. **Placeholder value for `tracker_issue`:**
152
- - **No tracker configured** (no `task-management` slot bound in `skill-matrix.json`) → use `"N/A"`
153
- - **Tracker configured but tools unavailable** → use the project prefix + `PENDING` (e.g., `"TAS-PENDING"`)
154
- 4. **Ask the user** to create the issues manually if tracking is critical for the task
155
- 5. After implementation, update commit messages and PR descriptions when issue IDs become available
103
+ When you encounter a bug unrelated to the current task: check if already tracked in `KNOWN-ISSUES.md` or the task tracker. If NOT tracked, track it (known issue entry or bug ticket). Never assume a pre-existing issue is somebody else's problem. See the **git-workflow** skill for the full procedure.
156
104
 
157
- ## Observability Logging (Mandatory)
105
+ ## Observability Logging
158
106
 
159
107
  > **⛔ HARD GATE — This is a blocking requirement, not a suggestion.**
160
108
  > Do NOT respond to the user until you have appended the required log records.
161
109
  > A session without log records is a failed session — regardless of code quality.
162
110
 
163
- **Every agent MUST log every session to the observability NDJSON files.** No exceptions. No threshold. No "too small to log." The dashboard depends on this data.
164
-
165
- ### What to log
166
-
167
- | File | Who appends | When | Example command below |
168
- |------|------------|------|----------------------|
169
- | `sessions.ndjson` | **All agents** | After every session — always | ✅ |
170
- | `delegations.ndjson` | **Team Lead** | After each delegation to a specialist agent | ✅ |
171
- | `reviews.ndjson` | **Team Lead** (via fast-review skill) | After each fast review | ✅ |
172
- | `panels.ndjson` | **Panel runner** (via panel majority vote skill) | After each majority-vote review | ✅ |
173
- | `disputes.ndjson` | **Team Lead** (via dispute protocol) | After each dispute record | ✅ |
174
-
175
- See `.github/customizations/logs/README.md` for the full schema of each record.
176
-
177
- ### How to log
178
-
179
- Append one JSON line per task using `echo '...' >> <file>`. When the Team Lead works directly, use the agent role that best describes the work (e.g., `"agent": "Developer"`, `"agent": "UI-UX Expert"`). If a single conversation involves multiple distinct tasks, log one record per task.
180
-
181
- **Session record** (ALL agents, EVERY session):
182
- ```bash
183
- echo '{"timestamp":"2026-03-01T14:00:00Z","agent":"Developer","model":"claude-opus-4-6","task":"Fix login redirect bug","outcome":"success","duration_min":15,"files_changed":3,"retries":0,"lessons_added":[],"discoveries":[]}' >> .github/customizations/logs/sessions.ndjson
184
- ```
185
-
186
- **Delegation record** (Team Lead only, **immediately after each delegation — not at session end**):
187
- ```bash
188
- echo '{"timestamp":"2026-03-01T14:00:00Z","session_id":"feat/prj-57","agent":"Developer","model":"gemini-3.1-pro","tier":"standard","mechanism":"sub-agent","tracker_issue":"PRJ-57","outcome":"success","retries":0,"phase":2,"file_partition":["src/components/"]}' >> .github/customizations/logs/delegations.ndjson
189
- ```
190
- Verify: `tail -1 .github/customizations/logs/delegations.ndjson`
191
-
192
- > **`model` and `tier` must reflect the delegated agent's assignment from the agent registry** — not the Team Lead's own model.
193
-
194
- **Fast review record** (Team Lead, **immediately after each fast review**):
195
- ```bash
196
- echo '{"timestamp":"2026-03-01T14:30:00Z","tracker_issue":"PRJ-42","agent":"Developer","reviewer_model":"gpt-5-mini","verdict":"pass","attempt":1,"issues_critical":0,"issues_major":0,"issues_minor":2,"confidence":"high","escalated":false,"duration_sec":45}' >> .github/customizations/logs/reviews.ndjson
197
- ```
198
- Verify: `tail -1 .github/customizations/logs/reviews.ndjson`
199
-
200
- **Panel record** (Panel runner, **immediately after each panel majority vote**):
201
- ```bash
202
- echo '{"timestamp":"2026-03-01T15:00:00Z","panel_key":"auth-review","verdict":"pass","pass_count":2,"block_count":1,"must_fix":0,"should_fix":3,"reviewer_model":"claude-opus-4-6","weighted":false,"attempt":1,"tracker_issue":"PRJ-42","artifacts_count":5}' >> .github/customizations/logs/panels.ndjson
203
- ```
204
- Verify: `tail -1 .github/customizations/logs/panels.ndjson`
205
-
206
- **Dispute record** (Team Lead, **immediately after each dispute**):
207
- ```bash
208
- echo '{"timestamp":"2026-03-01T16:00:00Z","dispute_id":"DSP-001","tracker_issue":"PRJ-42","priority":"high","trigger":"panel-3x-block","implementing_agent":"Developer","reviewing_agents":["Reviewer","Panel (3x)"],"total_attempts":6,"est_tokens_spent":120000,"status":"pending","resolution_option_chosen":null,"resolved_at":null}' >> .github/customizations/logs/disputes.ndjson
209
- ```
210
- Verify: `tail -1 .github/customizations/logs/disputes.ndjson`
211
-
212
- ### Pre-Response Logging Checklist
213
-
214
- **STOP before responding to the user.** Verify each applicable item:
215
-
216
- - [ ] **Session logged** — `sessions.ndjson` has a new line for this session (ALWAYS required)
217
- - [ ] **Delegations logged** — `delegations.ndjson` has a line for **each** delegation (Team Lead only). Count delegations → count records → must match
218
- - [ ] **Reviews logged** — `reviews.ndjson` has a line for **each** fast review performed. Count reviews → count records → must match
219
- - [ ] **Panels logged** — `panels.ndjson` has a line for **each** panel review performed. Count panels → count records → must match
220
- - [ ] **Disputes logged** — `disputes.ndjson` has a line for **each** dispute created. Count disputes → count records → must match
221
-
222
- If ANY required log is missing, append it NOW before responding.
223
-
224
- ### Rules
225
-
226
- - **Log before yielding to the user** — logging is the LAST action before responding. This is Constitution rule #6.
227
- - **Log per task**, not per conversation. Multiple tasks = multiple records.
228
- - **Never batch-log retrospectively** across sessions.
229
- - **Verify the append succeeded** — if unsure, `tail -1` the file to confirm.
111
+ **Every agent MUST log every session** to `.github/customizations/logs/events.ndjson`. No exceptions. No threshold. No "too small to log." Load the **observability-logging** skill for CLI commands, record schemas, and the full logging checklist.
230
112
 
231
113
  ## Self-Improvement Protocol
232
114
 
233
115
  > **⛔ HARD GATE — Lessons are the team's collective memory. Skipping them causes repeated failures.**
234
116
 
235
- **Every agent must learn from mistakes and share knowledge.** This prevents the same pitfalls from being repeated across sessions.
236
-
237
117
  1. **Before starting work:** Read `.github/customizations/LESSONS-LEARNED.md` — apply relevant lessons proactively. This is NOT optional.
238
- 2. **During execution:** If any of these triggers occur, **immediately** add a lesson entry to `.github/customizations/LESSONS-LEARNED.md`:
239
- - Retry with different approach that works
240
- - Tool call fails unexpectedly (discover correct parameter format)
241
- - Workaround needed for platform limitation
242
- - Docs are misleading (reality differs from documentation)
243
- - Configuration surprise (default behavior differs from expectation)
244
- - Error message is unhelpful (real cause was something else)
245
- 3. **Update source files:** If the lesson reveals a gap in instruction/skill files, update those files too
246
- 4. **Update instructions:** Proactively suggest updates to `.github/instructions/` or `.github/skills/` files when:
247
- - The user had to intervene or correct the agent's approach
248
- - Multiple back-and-forth attempts were needed to get something right
249
- - A change touched files you wouldn't have guessed from the task description
250
- - Something worked differently than expected (API quirk, tool behavior, config side-effect)
251
- - A recurring pattern should be codified (workaround, convention, tool quirk)
252
-
253
- **When NOT to update:** Don't add obvious patterns, standard practices, or things easily discoverable by reading a few files. Instruction files capture *tribal knowledge* — what isn't obvious from the code.
254
-
255
- For the full protocol, load the **self-improvement** skill.
256
-
257
- ## Project Context
258
-
259
- For project-specific context (apps, libraries, tech stack, ports, URLs), see [project.instructions.md](../customizations/project.instructions.md).
118
+ 2. **During execution:** If you retry with a different approach and it works, use the **self-improvement** skill to add a lesson immediately.
119
+ 3. **Update source files:** If the lesson reveals a gap in instruction/skill files, update those files too.
260
120
 
261
121
  ## Universal Agent Rules
262
122
 
263
123
  These rules apply to ALL specialist agents automatically. **Do not duplicate them in individual agent files.**
264
124
 
265
- 1. **Never delegate** — Specialist agents complete their own work and return results. Never invoke the Team Lead or spawn sub-agents. If work requires another domain, document the need in your output contract.
266
- 2. **Follow the Discovered Issues Policy** — Track any pre-existing bugs found during your work (see § Discovered Issues Policy above).
267
- 3. **Read and update lessons** — Read `.github/customizations/LESSONS-LEARNED.md` before starting. If you retry anything with a different approach that works, add a lesson immediately.
268
- 4. **Log every session** — Append to `.github/customizations/logs/sessions.ndjson` after every session. No exceptions. See § Observability Logging above. This is Constitution rule #6 — a blocking gate, not optional.
269
-
270
- ## Base Output Contract
125
+ 1. **Never delegate** — Specialist agents complete their own work and return results. Never invoke the Team Lead or spawn sub-agents.
126
+ 2. **Follow the Discovered Issues Policy** — Track any pre-existing bugs found during your work (see above).
127
+ 3. **Read and update lessons** — See Self-Improvement Protocol above.
128
+ 4. **Log every session** — See Observability Logging above. This is Constitution rule #6 — a blocking gate, not optional.
271
129
 
272
- Every specialist agent's Output Contract MUST end with these standard items (in addition to domain-specific items above them):
130
+ ## Pre-Response Quality Gate
273
131
 
274
- - **Observability Logged** Confirm ALL applicable log records were appended (Constitution rule #6):
275
- - `sessions.ndjson` — ALWAYS (every agent, every session)
276
- - `delegations.ndjson` — if delegations occurred (Team Lead only)
277
- - `reviews.ndjson` — if fast reviews occurred
278
- - `panels.ndjson` — if panel reviews occurred
279
- - `disputes.ndjson` — if disputes were created
280
- - **Discovered Issues** — Pre-existing bugs or anomalies found during work, with tracking action taken per the Discovered Issues Policy
281
- - **Lessons Applied** — Lessons from `.github/customizations/LESSONS-LEARNED.md` that influenced this work, and any new lessons added
132
+ > **⛔ STOP before responding to the user.** Run through this checklist. If ANY required item is missing, fix it NOW.
282
133
 
283
- Agents reference this contract with: `See **Base Output Contract** in general.instructions.md for the standard closing items.`
134
+ - [ ] **Lessons read** `LESSONS-LEARNED.md` was read at session start
135
+ - [ ] **Lessons captured** — If any retry occurred, a new lesson was added via the **self-improvement** skill
136
+ - [ ] **Discovered issues tracked** — Any pre-existing bugs found were tracked (Discovered Issues Policy)
137
+ - [ ] **Lint/type/test pass** — No new errors introduced; verification ran after code changes (Constitution rule #5)
138
+ - [ ] **Session logged** — `events.ndjson` has a new `session` record (Constitution rule #6 — ALWAYS required)
139
+ - [ ] **Delegations logged** — `events.ndjson` has a `delegation` record for each delegation (Team Lead only)
140
+ - [ ] **Reviews logged** — `events.ndjson` has a `review` record for each fast review (if any)
141
+ - [ ] **Panels logged** — `events.ndjson` has a `panel` record for each panel review (if any)
284
142
 
285
- ## Pre-Response Quality Gate
143
+ Load the **observability-logging** skill for CLI commands, Base Output Contract, and detailed schemas.
286
144
 
287
- > **⛔ STOP before responding to the user.** Run through this checklist. If ANY required item is missing, fix it NOW.
145
+ ## Workflow & Governance Skills
288
146
 
289
- This is the single exit gate for every session. All items are mandatory unless marked conditional.
147
+ These skills provide detailed procedures. Load when their phase is reached.
290
148
 
291
- - [ ] **Lessons read** — `.github/customizations/LESSONS-LEARNED.md` was read at session start (Self-Improvement Protocol)
292
- - [ ] **Lessons captured** — If any retry occurred, a new lesson was added to `LESSONS-LEARNED.md`
293
- - [ ] **Discovered issues tracked** Any pre-existing bugs found were added to `KNOWN-ISSUES.md` or a tracker ticket was created (Discovered Issues Policy)
294
- - [ ] **Lint/type/test pass** No new errors introduced; verification ran after code changes (Constitution rule #5)
295
- - [ ] **Session logged** `sessions.ndjson` has a new line for this session (Constitution rule #6 — ALWAYS required)
296
- - [ ] **Delegations logged** — `delegations.ndjson` has a line for each delegation (Team Lead only)
297
- - [ ] **Reviews logged** — `reviews.ndjson` has a line for each fast review performed (if any)
298
- - [ ] **Panels logged** — `panels.ndjson` has a line for each panel review performed (if any)
299
- - [ ] **Disputes logged** — `disputes.ndjson` has a line for each dispute created (if any)
149
+ | Concern | Skill |
150
+ |---------|-------|
151
+ | Branch naming, PR rules, delivery outcome, task tracking | **git-workflow** |
152
+ | Log CLI commands, record schemas, output contracts | **observability-logging** |
153
+ | Lesson writing CLI, categories, quality standards | **self-improvement** |
300
154
 
301
155
  <!-- End of Coding Standards -->
@@ -154,7 +154,7 @@ Before running any generator, complete these steps:
154
154
  - Read the error message carefully
155
155
  - Common causes: missing required options, invalid values, conflicting files, missing dependencies
156
156
  - Adjust options and retry
157
- - Add a lesson to `.github/customizations/LESSONS-LEARNED.md` if the fix was non-obvious
157
+ - Use the **self-improvement** skill to add a lesson if the fix was non-obvious
158
158
 
159
159
  ### Phase 4: Post-Generation
160
160
 
@@ -142,11 +142,9 @@ Files are organized into subdirectories by domain:
142
142
  ├── project/ # Project management config
143
143
  │ ├── docs-structure.md
144
144
  │ └── <tracker>-config.md # e.g. linear-config.md, jira-config.md
145
- └── logs/ # Append-only NDJSON session logs
145
+ └── logs/ # Append-only NDJSON event log
146
146
  ├── README.md
147
- ├── sessions.ndjson
148
- ├── delegations.ndjson
149
- └── panels.ndjson
147
+ └── events.ndjson
150
148
  ```
151
149
 
152
150
  #### Root Files (always create)
@@ -241,10 +239,8 @@ Files are organized into subdirectories by domain:
241
239
 
242
240
  #### `logs/` — Session Logs (always create)
243
241
 
244
- 16. **`logs/README.md`** — Schema documentation for the NDJSON log files
245
- 17. **`logs/sessions.ndjson`** — Empty file for structured session log entries
246
- 18. **`logs/delegations.ndjson`** — Empty file for delegation log entries
247
- 19. **`logs/panels.ndjson`** — Empty file for panel review log entries
242
+ 16. **`logs/README.md`** — Schema documentation for the unified NDJSON event log
243
+ 17. **`logs/events.ndjson`** — Empty file for all structured event log entries (sessions, delegations, reviews, panels, disputes)
248
244
 
249
245
  ### Phase 3: Cross-Reference Verification
250
246
 
@@ -93,7 +93,7 @@ Delegate to the appropriate specialist agent via **sub-agent** (inline). For bug
93
93
  - **File paths** — Exact files to read and modify
94
94
  - **Reproduction steps** — So the agent can verify the fix
95
95
  - **Boundaries** — "Only modify files listed above. Fix the bug, do not refactor surrounding code."
96
- - **Self-improvement reminder** — include per `general.instructions.md` § Self-Improvement Protocol
96
+ - **Self-improvement reminder** — include per the **self-improvement** skill
97
97
 
98
98
  #### Implementation Rules
99
99
 
@@ -121,13 +121,13 @@ Every bug fix must pass ALL applicable gates:
121
121
 
122
122
  ### 6. Delivery
123
123
 
124
- Follow the **Delivery Outcome** defined in `general.instructions.md` — commit, push, open PR (not merged), and link to the tracker.
124
+ Follow the **Delivery Outcome** defined in the **git-workflow** skill — commit, push, open PR (not merged), and link to the tracker.
125
125
 
126
126
  ### 7. Wrap Up
127
127
 
128
128
  1. **Move tracker issue to Done** — Only after all validation passes
129
129
  2. **Update Known Issues** — If this was a documented known issue, remove or update the entry in `.github/customizations/KNOWN-ISSUES.md`
130
- 3. **Capture lessons** — If the root cause reveals a pattern that other agents should know about, add it to `.github/customizations/LESSONS-LEARNED.md`
130
+ 3. **Capture lessons** — If the root cause reveals a pattern that other agents should know about, use the **self-improvement** skill to add a lesson
131
131
  4. **Note prevention** — If this class of bug could be caught earlier (by a lint rule, test, or type check), note that in the tracker issue as a follow-up suggestion
132
132
 
133
133
  ### 8. Completion Criteria
@@ -142,7 +142,7 @@ The bug fix is complete when:
142
142
  - [ ] Bug verified fixed in the browser
143
143
  - [ ] No regressions in adjacent functionality
144
144
  - [ ] Both apps checked if shared code was modified
145
- - [ ] Delivery Outcome completed (see `general.instructions.md`) — branch pushed, PR opened (not merged), tracker linked
145
+ - [ ] Delivery Outcome completed (see the **git-workflow** skill) — branch pushed, PR opened (not merged), tracker linked
146
146
  - [ ] Tracker issue moved to Done
147
147
  - [ ] Known issues updated if applicable
148
148
  - [ ] Lessons learned captured if any retries occurred
@@ -64,7 +64,7 @@ Every subtask must be tracked. **No issue = no implementation.** This step produ
64
64
 
65
65
  #### Self-Improvement
66
66
 
67
- Include the self-improvement reminder in every delegation prompt (see `general.instructions.md` § Self-Improvement Protocol).
67
+ Include the self-improvement reminder in every delegation prompt (see the **self-improvement** skill).
68
68
 
69
69
  #### Visual Consistency
70
70
 
@@ -91,7 +91,7 @@ Every subtask must pass ALL gates before being marked Done:
91
91
 
92
92
  ### 5. Delivery
93
93
 
94
- Follow the **Delivery Outcome** defined in `general.instructions.md` — commit, push, open PR (not merged), and link to the tracker.
94
+ Follow the **Delivery Outcome** defined in the **git-workflow** skill — commit, push, open PR (not merged), and link to the tracker.
95
95
 
96
96
  ### 6. Documentation & Traceability
97
97
 
@@ -127,5 +127,5 @@ The roadmap task is complete when:
127
127
  - [ ] Documentation updated (roadmap, known issues, decisions)
128
128
  - [ ] Panel review passed for any high-stakes changes
129
129
  - [ ] Roadmap item marked complete in `.github/customizations/project/roadmap.md`
130
- - [ ] Delivery Outcome completed (see `general.instructions.md`) — branch pushed, PR opened (not merged), tracker linked
130
+ - [ ] Delivery Outcome completed (see the **git-workflow** skill) — branch pushed, PR opened (not merged), tracker linked
131
131
  - [ ] Lessons learned captured if any retries occurred
@@ -84,7 +84,7 @@ Delegate to the appropriate specialist agent(s). Since follow-ups are scoped and
84
84
  - **Where** — exact file paths to read and modify
85
85
  - **How to verify** — what the result should look like or how to test it
86
86
  - **Boundaries** — "Only modify files listed above. Do not refactor unrelated code."
87
- - **Self-improvement reminder** — include per `general.instructions.md` § Self-Improvement Protocol
87
+ - **Self-improvement reminder** — include per the **self-improvement** skill
88
88
 
89
89
  #### Implementation Rules
90
90
 
@@ -110,7 +110,7 @@ Every follow-up, no matter how small, must pass these gates:
110
110
 
111
111
  ### 6. Delivery
112
112
 
113
- If triage determined this follow-up needs tracker tracking, follow the **Delivery Outcome** defined in `general.instructions.md` — commit, push, open PR (not merged), and link to the tracker.
113
+ If triage determined this follow-up needs tracker tracking, follow the **Delivery Outcome** defined in the **git-workflow** skill — commit, push, open PR (not merged), and link to the tracker.
114
114
 
115
115
  If triage determined no tracker tracking is needed (pure cosmetic/isolated/trivial), commit the changes to the current working branch. A dedicated branch and PR are not required because the Team Lead will include these changes in the parent task's existing PR — the "every change goes through a PR" rule is still satisfied via the parent PR.
116
116
 
@@ -138,6 +138,6 @@ The follow-up is complete when:
138
138
  - [ ] **Visual changes verified in Chrome with screenshot taken as proof**
139
139
  - [ ] No regressions in adjacent functionality
140
140
  - [ ] Shared component changes tested across all consuming apps
141
- - [ ] Delivery Outcome completed if tracked (see `general.instructions.md`) — branch pushed, PR opened (not merged), tracker linked
141
+ - [ ] Delivery Outcome completed if tracked (see the **git-workflow** skill) — branch pushed, PR opened (not merged), tracker linked
142
142
  - [ ] Lessons learned captured if any retries occurred
143
143
  - [ ] Known issues updated if a new limitation was discovered
@@ -113,4 +113,4 @@ After resolving comments, report:
113
113
  - **Preserve the reviewer's intent** — don't just technically satisfy the comment, address the underlying concern
114
114
  - **Don't over-fix** — resolve only what was commented on. Save unrelated improvements for a separate PR
115
115
  - **Respond to every comment** — nothing should be silently ignored
116
- - **Self-improvement** — Follow `general.instructions.md` § Self-Improvement Protocol
116
+ - **Self-improvement** — Follow the **self-improvement** skill
@@ -53,13 +53,13 @@ Load relevant skills before writing code.
53
53
 
54
54
  **When:** Before the agent yields control back to the user — every time, unconditionally.
55
55
 
56
- > **⛔ HARD GATE — Run the Pre-Response Quality Gate checklist from `general.instructions.md` before responding.**
56
+ > **⛔ HARD GATE — Run the Pre-Response Quality Gate checklist from the **observability-logging** skill before responding.**
57
57
  > A session without log records is a failed session. A session without lessons captured after retries is a failed session.
58
58
 
59
59
  ### Actions
60
60
 
61
61
  1. **Call Session Guard** (Team Lead only) — Delegate to the **Session Guard** agent with a session summary (delegations, retries, discoveries, files changed). Execute any fix commands it returns. This replaces the manual Pre-Response Quality Gate checklist — the guard runs it automatically with a fresh context window.
62
- 2. **For specialist agents** (not Team Lead) — Run the Pre-Response Quality Gate checklist from `general.instructions.md` manually. Specialist agents don't have access to the Session Guard.
62
+ 2. **For specialist agents** (not Team Lead) — Run the Pre-Response Quality Gate checklist from the **observability-logging** skill manually. Specialist agents don't have access to the Session Guard.
63
63
  3. **Save checkpoint** (Team Lead only) — If work is incomplete, write `.github/customizations/SESSION-CHECKPOINT.md` with current state so the next session can resume. Load **session-checkpoints** skill for format.
64
64
  4. **Memory merge check** — If `LESSONS-LEARNED.md` has grown significantly (5+ new entries this session), flag for memory merge consideration.
65
65
  5. **Clean up** — Remove any temporary files created during the session (e.g., test fixtures, debug outputs).
@@ -67,9 +67,9 @@ Load relevant skills before writing code.
67
67
  ### Template for Delegation Prompts
68
68
 
69
69
  ```
70
- **Session End:** Run the Pre-Response Quality Gate from general.instructions.md:
71
- - Log your session to `.github/customizations/logs/sessions.ndjson` (Constitution rule #6)
72
- - If you retried anything with a different approach that worked, add a lesson to `.github/customizations/LESSONS-LEARNED.md`
70
+ **Session End:** Run the Pre-Response Quality Gate from the **observability-logging** skill:
71
+ - Log your session using the observability-logging skill's session record command (Constitution rule #6)
72
+ - If you retried anything with a different approach that worked, use the **self-improvement** skill to add a lesson
73
73
  - Track any discovered issues in KNOWN-ISSUES.md or a tracker ticket
74
74
  - Clean up temp files
75
75
  ```
@@ -92,26 +92,26 @@ Run the 5-point Pre-Delegation Checks from the Team Lead agent file: (1) Tracker
92
92
 
93
93
  ### Actions
94
94
 
95
- 0. **Log the delegation** — Append a record to `.github/customizations/logs/delegations.ndjson` **before** proceeding to review or verification.
96
- Use the delegation echo command template from the Team Lead agent file § Delegation.
97
- 1. **Fast review (mandatory)** — Run the `fast-review` skill against the agent's output. This is a **non-skippable gate**. See the fast-review skill for the full procedure (single reviewer sub-agent, automatic retry, escalation). Log the review to `reviews.ndjson` immediately after. Only after the fast review passes do you proceed to the remaining post-delegate actions below.
95
+ 0. **Log the delegation (⛔ hard gate)** — Use the **observability-logging** skill's delegation record command. Do NOT proceed to review or any other action until the delegation is logged and verified.
96
+ 1. **Fast review (mandatory)** — Run the `fast-review` skill against the agent's output. This is a **non-skippable gate**. See the fast-review skill for the full procedure (single reviewer sub-agent, automatic retry, escalation). **Log the review (⛔ hard gate)** using the **observability-logging** skill's review record command immediately after — do NOT proceed until logged. Only after both the fast review passes and the review is logged do you proceed to the remaining post-delegate actions below.
98
97
  2. **Verify output** — Read changed files. Check that changes stay within the agent's file partition.
99
98
  2. **Run verification** — Execute appropriate checks: lint, type-check, tests, or visual inspection.
100
99
  3. **Check acceptance criteria** — Compare output against the tracker issue's acceptance criteria. Each criterion must be independently verified.
101
100
  4. **Discovered issues tracked** — Verify the agent followed the Discovered Issues Policy. If they found issues, check that they're in KNOWN-ISSUES.md or a new tracker ticket.
102
- 5. **Lessons captured** — If the agent retried anything, verify a lesson was added to LESSONS-LEARNED.md.
101
+ 5. **Lessons captured** — If the agent retried anything, verify a lesson was added via the **self-improvement** skill.
103
102
  6. **Update tracker** — Move the issue to Done (if passing) or add failure notes and re-delegate (if failing).
104
103
 
105
104
  ### Quick Checklist
106
105
 
107
106
  ```
108
107
  Post-Delegate:
109
- ☐ Delegation logged to delegations.ndjson (before review — verify with tail -1)
108
+ Delegation logged (observability-logging skill — verify with tail -1) — BLOCKING
110
109
  ☐ Changed files reviewed
111
110
  ☐ Files within partition
112
111
  ☐ Lint/test/build passes
113
112
  ☐ Fast review PASS (mandatory — load fast-review skill)
114
- ☐ Review logged to reviews.ndjson (verify with tail -1)
113
+ Review logged (observability-logging skill verify with tail -1) — BLOCKING
114
+ ☐ ⛔ Panel logged if escalated (observability-logging skill — verify with tail -1) — BLOCKING
115
115
  ☐ Acceptance criteria met
116
116
  ☐ Discovered issues tracked (not ignored)
117
117
  ☐ Lessons captured (if retries occurred)
@@ -70,7 +70,7 @@ Return a structured summary with:
70
70
  **Note:** Follow the Structured Output Contract from the team-lead-reference skill. Include all standard fields plus agent-specific extensions.
71
71
 
72
72
  ### Self-Improvement
73
- Read `.github/customizations/LESSONS-LEARNED.md` before starting. If you retry any command/tool with a different approach that works, immediately add a lesson to that file.
73
+ Read `.github/customizations/LESSONS-LEARNED.md` before starting. If you retry any command/tool with a different approach that works, use the **self-improvement** skill to add a lesson immediately.
74
74
  ```
75
75
 
76
76
  For simpler tasks (score 1-3), the existing prompt format (objective + files + criteria) is sufficient. Don't over-engineer delegation for trivial work.
@@ -221,24 +221,9 @@ CONFIDENCE: low | medium | high
221
221
 
222
222
  ## Logging
223
223
 
224
- Append a JSON line to `.github/customizations/logs/reviews.ndjson` after each fast review:
225
-
226
- ```json
227
- {
228
- "timestamp": "2026-02-28T14:30:00Z",
229
- "tracker_issue": "PRJ-42",
230
- "agent": "Developer",
231
- "reviewer_model": "gpt-5-mini",
232
- "verdict": "pass",
233
- "attempt": 1,
234
- "issues_critical": 0,
235
- "issues_major": 0,
236
- "issues_minor": 2,
237
- "confidence": "high",
238
- "escalated": false,
239
- "duration_sec": 45
240
- }
241
- ```
224
+ > **⛔ HARD GATE — Do NOT proceed to the next task or accept the review result until the review is logged.**
225
+
226
+ After each fast review, log the result using the **observability-logging** skill's review record command. See the skill for the exact CLI syntax, required fields, and verify step. An unlogged review is a failed review.
242
227
 
243
228
  ## Integration with Existing Workflow
244
229
 
@@ -326,7 +311,7 @@ For autonomous overnight sessions, fast review is the primary quality gate. Addi
326
311
 
327
312
  ## Metrics & Continuous Improvement
328
313
 
329
- Track these metrics from `reviews.ndjson` to optimize the review process:
314
+ Track these metrics from `events.ndjson` (filter by `"type":"review"`) to optimize the review process:
330
315
 
331
316
  | Metric | Target | Action if Off-Target |
332
317
  |--------|--------|---------------------|
@@ -0,0 +1,72 @@
1
+ ---
2
+ name: git-workflow
3
+ description: "Git branching, PR workflow, delivery requirements, discovered issues policy, and task tracking conventions. Load when committing, pushing, or opening PRs."
4
+ ---
5
+
6
+ # Git Workflow & Delivery
7
+
8
+ ## Git Workflow
9
+
10
+ **NEVER commit or push directly to the `main` branch.** All changes must go through a feature/fix branch and a pull request.
11
+
12
+ 1. **Create a branch** from `main` before making any changes: `git checkout -b <type>/<ticket-id>-<short-description>` (e.g., `fix/tas-21-places-redirect-loop`, `feat/tas-15-new-filter`)
13
+ 2. **Commit to the branch** — never to `main`. Reference the task tracker issue ID in every commit message (e.g., `TAS-42: Fix token refresh logic`)
14
+ 3. **Push the branch** and open a pull request on GitHub. **Do NOT merge** — PRs are opened for review only
15
+ 4. **Link the PR to the task tracker** — Update the issue description with the PR URL so progress is traceable
16
+ 5. **Merge via PR** — the only way code reaches `main`, and only after review/approval
17
+
18
+ Branch naming convention: `<type>/<ticket-id>-<short-description>` where type is `fix`, `feat`, `chore`, `refactor`, `perf`, or `docs`.
19
+
20
+ **This rule has NO exceptions.** Not for "small fixes", not for "just config changes", not for urgent hotfixes. Every change goes through a PR.
21
+
22
+ ### PR Safety Rules
23
+
24
+ - **Never** use `git push --force` or `git commit --amend` on shared branches
25
+ - **Never** expose secrets in commits, PR descriptions, or terminal output (per Constitution #1)
26
+ - Use `git push --force-with-lease` only when explicitly asked and on personal branches
27
+ - If a secret is accidentally committed, immediately rotate it — git history is permanent
28
+
29
+ ### Delivery Outcome (Required for Every Task)
30
+
31
+ Every task that produces code changes — whether a roadmap feature, bug fix, follow-up, data pipeline, or refactor — must deliver:
32
+
33
+ 1. **Dedicated branch** — `<type>/<ticket-id>-<short-description>` created from `main`
34
+ 2. **Atomic commits** — Each commit references the issue ID (e.g., `TAS-42: Add filter component`)
35
+ 3. **Pushed branch** — Branch pushed to origin
36
+ 4. **Open PR** — Use `gh` CLI to create the PR. **Do NOT merge** — PRs are opened for review only:
37
+ ```bash
38
+ GH_PAGER=cat gh pr create --base main --title "TAS-XX: Short description" --body "Resolves TAS-XX"
39
+ ```
40
+ 5. **Task tracker linkage** — The issue is updated with the PR URL, and the PR description references the issue ID
41
+
42
+ ## Discovered Issues Policy
43
+
44
+ > **⛔ No issue gets ignored.** Untracked bugs discovered during work are a quality gate failure.
45
+
46
+ When you encounter a bug, error, or unexpected behavior that is unrelated to the current task:
47
+
48
+ 1. **Check if already tracked:**
49
+ - Search `.github/customizations/KNOWN-ISSUES.md` for a matching entry
50
+ - If you have task tracker tools available, also search for open bugs (use `search_issues` or `list_issues` with bug label)
51
+ 2. **If found tracked** — skip it, continue with your current work
52
+ 3. **If NOT tracked** — you must act:
53
+ - **Unfixable limitation** (third-party constraint, platform restriction, upstream dependency) → add it to `.github/customizations/KNOWN-ISSUES.md` with: Issue ID, Status, Severity, Evidence, Root Cause, Solution Options
54
+ - **Fixable bug** → if you have task tracker tools, create a ticket with label `bug`, appropriate priority, and a clear description of the symptoms, reproduction steps, and affected files. If you do NOT have task tracker tools, add a `**Discovered Issues**` section to your output listing the bug details so the Team Lead can track it.
55
+
56
+ Never assume a pre-existing issue is somebody else's problem. If it's not tracked, track it.
57
+
58
+ ## Task Tracking
59
+
60
+ Feature work is tracked in the **task tracker** (see `tracker-config.md` for project details). The Team Lead agent creates and updates issues via MCP. For conventions, load the **task-management** skill.
61
+
62
+ ### When Task Tracker MCP Tools Are Unavailable
63
+
64
+ If task tracker MCP tools are not available in the current session, do NOT block on issue creation. Instead:
65
+
66
+ 1. **Document planned issues** in your output with the title, description, and acceptance criteria you would have used
67
+ 2. **Proceed with implementation** — the work is still valuable without a ticket number
68
+ 3. **Placeholder value for `tracker_issue`:**
69
+ - **No tracker configured** (no `task-management` slot bound in `skill-matrix.json`) → use `"N/A"`
70
+ - **Tracker configured but tools unavailable** → use the project prefix + `PENDING` (e.g., `"TAS-PENDING"`)
71
+ 4. **Ask the user** to create the issues manually if tracking is critical for the task
72
+ 5. After implementation, update commit messages and PR descriptions when issue IDs become available
@@ -49,7 +49,7 @@ Each lesson has a natural home in the instruction/skill hierarchy:
49
49
  | `cms` | The skill mapped by the `cms` slot in the skill matrix |
50
50
  | `database` | The skill mapped by the `database` slot in the skill matrix |
51
51
  | `browser-testing` | The skill mapped by the `e2e-testing` slot in the skill matrix |
52
- | `git-workflow` | `.github/instructions/general.instructions.md` |
52
+ | `git-workflow` | `.github/skills/git-workflow/SKILL.md` |
53
53
  | `deployment` | `.github/skills/deployment-infrastructure/SKILL.md` |
54
54
  | `delegation` | `.github/agents/team-lead.agent.md` or `.github/skills/team-lead-reference/SKILL.md` |
55
55
  | `testing` | `.github/skills/testing-workflow/SKILL.md` |