qualia-framework 2.6.0 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (328) hide show
  1. package/CLAUDE.md +63 -0
  2. package/README.md +108 -30
  3. package/agents/builder.md +110 -0
  4. package/agents/planner.md +186 -0
  5. package/agents/qa-browser.md +186 -0
  6. package/agents/verifier.md +369 -0
  7. package/bin/cli.js +691 -492
  8. package/bin/install.js +622 -0
  9. package/bin/qualia-ui.js +284 -0
  10. package/bin/state.js +824 -0
  11. package/bin/statusline.js +252 -0
  12. package/docs/erp-contract.md +161 -0
  13. package/guide.md +63 -0
  14. package/hooks/auto-update.js +117 -0
  15. package/hooks/block-env-edit.js +52 -0
  16. package/hooks/branch-guard.js +68 -0
  17. package/hooks/migration-guard.js +83 -0
  18. package/hooks/pre-compact.js +52 -0
  19. package/hooks/pre-deploy-gate.js +149 -0
  20. package/hooks/pre-push.js +53 -0
  21. package/hooks/session-start.js +126 -0
  22. package/package.json +30 -20
  23. package/rules/design-reference.md +179 -0
  24. package/rules/frontend.md +126 -0
  25. package/rules/infrastructure.md +87 -0
  26. package/skills/qualia/SKILL.md +88 -0
  27. package/skills/qualia-build/SKILL.md +115 -0
  28. package/skills/qualia-debug/SKILL.md +87 -0
  29. package/skills/qualia-design/SKILL.md +99 -0
  30. package/skills/qualia-handoff/SKILL.md +66 -0
  31. package/skills/qualia-help/SKILL.md +60 -0
  32. package/skills/qualia-idk/SKILL.md +8 -0
  33. package/skills/qualia-learn/SKILL.md +111 -0
  34. package/skills/qualia-new/SKILL.md +323 -0
  35. package/skills/qualia-pause/SKILL.md +63 -0
  36. package/skills/qualia-plan/SKILL.md +101 -0
  37. package/skills/qualia-polish/SKILL.md +207 -0
  38. package/skills/qualia-quick/SKILL.md +37 -0
  39. package/skills/qualia-report/SKILL.md +114 -0
  40. package/skills/qualia-resume/SKILL.md +49 -0
  41. package/skills/qualia-review/SKILL.md +161 -0
  42. package/skills/qualia-ship/SKILL.md +90 -0
  43. package/skills/qualia-skill-new/SKILL.md +167 -0
  44. package/skills/qualia-task/SKILL.md +91 -0
  45. package/skills/qualia-test/SKILL.md +134 -0
  46. package/skills/qualia-verify/SKILL.md +113 -0
  47. package/templates/DESIGN.md +475 -0
  48. package/templates/help.html +476 -0
  49. package/templates/plan.md +42 -0
  50. package/templates/project.md +22 -0
  51. package/templates/state.md +27 -0
  52. package/templates/tracking.json +20 -0
  53. package/tests/bin.test.sh +687 -0
  54. package/tests/hooks.test.sh +384 -0
  55. package/tests/runner.js +1956 -0
  56. package/tests/state.test.sh +713 -0
  57. package/tests/statusline.test.sh +243 -0
  58. package/bin/collect-metrics.sh +0 -62
  59. package/framework/.claudeignore +0 -51
  60. package/framework/CLAUDE.md +0 -51
  61. package/framework/MCP_SETUP.md +0 -229
  62. package/framework/agents/architecture-strategist.md +0 -53
  63. package/framework/agents/backend-agent.md +0 -150
  64. package/framework/agents/code-simplicity-reviewer.md +0 -86
  65. package/framework/agents/frontend-agent.md +0 -111
  66. package/framework/agents/kieran-typescript-reviewer.md +0 -96
  67. package/framework/agents/performance-oracle.md +0 -111
  68. package/framework/agents/qualia-codebase-mapper.md +0 -761
  69. package/framework/agents/qualia-debugger.md +0 -1204
  70. package/framework/agents/qualia-executor.md +0 -882
  71. package/framework/agents/qualia-integration-checker.md +0 -424
  72. package/framework/agents/qualia-phase-researcher.md +0 -457
  73. package/framework/agents/qualia-plan-checker.md +0 -700
  74. package/framework/agents/qualia-planner.md +0 -1245
  75. package/framework/agents/qualia-project-researcher.md +0 -603
  76. package/framework/agents/qualia-research-synthesizer.md +0 -200
  77. package/framework/agents/qualia-roadmapper.md +0 -606
  78. package/framework/agents/qualia-verifier.md +0 -686
  79. package/framework/agents/red-team-qa.md +0 -130
  80. package/framework/agents/security-auditor.md +0 -72
  81. package/framework/agents/team-orchestrator.md +0 -229
  82. package/framework/agents/teams/framework-audit-team.md +0 -66
  83. package/framework/agents/teams/full-stack-team.md +0 -48
  84. package/framework/agents/teams/optimize-team.md +0 -53
  85. package/framework/agents/teams/review-team.md +0 -70
  86. package/framework/agents/teams/ship-team.md +0 -86
  87. package/framework/agents/test-agent.md +0 -182
  88. package/framework/hooks/auto-format.sh +0 -54
  89. package/framework/hooks/block-env-edit.sh +0 -42
  90. package/framework/hooks/branch-guard.sh +0 -43
  91. package/framework/hooks/confirm-delete.sh +0 -59
  92. package/framework/hooks/migration-validate.sh +0 -77
  93. package/framework/hooks/notification-speak.sh +0 -16
  94. package/framework/hooks/pre-commit.sh +0 -100
  95. package/framework/hooks/pre-compact.sh +0 -56
  96. package/framework/hooks/pre-deploy-gate.sh +0 -160
  97. package/framework/hooks/qualia-colors.sh +0 -32
  98. package/framework/hooks/retention-cleanup.sh +0 -62
  99. package/framework/hooks/save-session-state.sh +0 -185
  100. package/framework/hooks/session-context-loader.sh +0 -96
  101. package/framework/hooks/session-learn.sh +0 -32
  102. package/framework/hooks/skill-announce.sh +0 -123
  103. package/framework/hooks/tool-error-announce.sh +0 -27
  104. package/framework/install.ps1 +0 -323
  105. package/framework/install.sh +0 -313
  106. package/framework/qualia-framework/VERSION +0 -1
  107. package/framework/qualia-framework/assets/qualia-logo.png +0 -0
  108. package/framework/qualia-framework/bin/collect-metrics.sh +0 -67
  109. package/framework/qualia-framework/bin/generate-report-docx.py +0 -429
  110. package/framework/qualia-framework/bin/qualia-tools.js +0 -2201
  111. package/framework/qualia-framework/bin/qualia-tools.test.js +0 -1054
  112. package/framework/qualia-framework/references/checkpoints.md +0 -775
  113. package/framework/qualia-framework/references/completion-checklists.md +0 -359
  114. package/framework/qualia-framework/references/continuation-format.md +0 -249
  115. package/framework/qualia-framework/references/continuation-prompt.md +0 -97
  116. package/framework/qualia-framework/references/decimal-phase-calculation.md +0 -65
  117. package/framework/qualia-framework/references/design-quality.md +0 -56
  118. package/framework/qualia-framework/references/employee-guide.md +0 -167
  119. package/framework/qualia-framework/references/git-integration.md +0 -254
  120. package/framework/qualia-framework/references/git-planning-commit.md +0 -50
  121. package/framework/qualia-framework/references/model-profile-resolution.md +0 -32
  122. package/framework/qualia-framework/references/model-profiles.md +0 -73
  123. package/framework/qualia-framework/references/phase-argument-parsing.md +0 -61
  124. package/framework/qualia-framework/references/planning-config.md +0 -195
  125. package/framework/qualia-framework/references/questioning.md +0 -141
  126. package/framework/qualia-framework/references/tdd.md +0 -263
  127. package/framework/qualia-framework/references/ui-brand.md +0 -160
  128. package/framework/qualia-framework/references/verification-patterns.md +0 -612
  129. package/framework/qualia-framework/templates/DEBUG.md +0 -159
  130. package/framework/qualia-framework/templates/DESIGN.md +0 -81
  131. package/framework/qualia-framework/templates/UAT.md +0 -247
  132. package/framework/qualia-framework/templates/codebase/architecture.md +0 -255
  133. package/framework/qualia-framework/templates/codebase/concerns.md +0 -310
  134. package/framework/qualia-framework/templates/codebase/conventions.md +0 -307
  135. package/framework/qualia-framework/templates/codebase/integrations.md +0 -280
  136. package/framework/qualia-framework/templates/codebase/stack.md +0 -186
  137. package/framework/qualia-framework/templates/codebase/structure.md +0 -285
  138. package/framework/qualia-framework/templates/codebase/testing.md +0 -480
  139. package/framework/qualia-framework/templates/config.json +0 -35
  140. package/framework/qualia-framework/templates/context.md +0 -283
  141. package/framework/qualia-framework/templates/continue-here.md +0 -78
  142. package/framework/qualia-framework/templates/debug-subagent-prompt.md +0 -91
  143. package/framework/qualia-framework/templates/discovery.md +0 -146
  144. package/framework/qualia-framework/templates/lab-notes.md +0 -16
  145. package/framework/qualia-framework/templates/milestone-archive.md +0 -123
  146. package/framework/qualia-framework/templates/milestone.md +0 -115
  147. package/framework/qualia-framework/templates/phase-prompt.md +0 -567
  148. package/framework/qualia-framework/templates/planner-subagent-prompt.md +0 -117
  149. package/framework/qualia-framework/templates/project.md +0 -184
  150. package/framework/qualia-framework/templates/projects/ai-agent.md +0 -156
  151. package/framework/qualia-framework/templates/projects/mobile-app.md +0 -181
  152. package/framework/qualia-framework/templates/projects/voice-agent.md +0 -134
  153. package/framework/qualia-framework/templates/projects/website.md +0 -137
  154. package/framework/qualia-framework/templates/requirements.md +0 -231
  155. package/framework/qualia-framework/templates/research-project/ARCHITECTURE.md +0 -204
  156. package/framework/qualia-framework/templates/research-project/FEATURES.md +0 -147
  157. package/framework/qualia-framework/templates/research-project/PITFALLS.md +0 -200
  158. package/framework/qualia-framework/templates/research-project/STACK.md +0 -120
  159. package/framework/qualia-framework/templates/research-project/SUMMARY.md +0 -170
  160. package/framework/qualia-framework/templates/research.md +0 -552
  161. package/framework/qualia-framework/templates/roadmap.md +0 -206
  162. package/framework/qualia-framework/templates/state.md +0 -179
  163. package/framework/qualia-framework/templates/summary-complex.md +0 -59
  164. package/framework/qualia-framework/templates/summary-minimal.md +0 -41
  165. package/framework/qualia-framework/templates/summary-standard.md +0 -48
  166. package/framework/qualia-framework/templates/summary.md +0 -246
  167. package/framework/qualia-framework/templates/user-setup.md +0 -311
  168. package/framework/qualia-framework/templates/verification-report.md +0 -322
  169. package/framework/qualia-framework/workflows/add-phase.md +0 -179
  170. package/framework/qualia-framework/workflows/add-todo.md +0 -157
  171. package/framework/qualia-framework/workflows/audit-milestone.md +0 -241
  172. package/framework/qualia-framework/workflows/check-todos.md +0 -176
  173. package/framework/qualia-framework/workflows/complete-milestone.md +0 -858
  174. package/framework/qualia-framework/workflows/diagnose-issues.md +0 -219
  175. package/framework/qualia-framework/workflows/discovery-phase.md +0 -289
  176. package/framework/qualia-framework/workflows/discuss-phase.md +0 -534
  177. package/framework/qualia-framework/workflows/execute-phase.md +0 -559
  178. package/framework/qualia-framework/workflows/execute-plan.md +0 -438
  179. package/framework/qualia-framework/workflows/help.md +0 -470
  180. package/framework/qualia-framework/workflows/insert-phase.md +0 -220
  181. package/framework/qualia-framework/workflows/list-phase-assumptions.md +0 -178
  182. package/framework/qualia-framework/workflows/map-codebase.md +0 -327
  183. package/framework/qualia-framework/workflows/new-milestone.md +0 -363
  184. package/framework/qualia-framework/workflows/new-project.md +0 -982
  185. package/framework/qualia-framework/workflows/pause-work.md +0 -122
  186. package/framework/qualia-framework/workflows/plan-milestone-gaps.md +0 -256
  187. package/framework/qualia-framework/workflows/plan-phase.md +0 -422
  188. package/framework/qualia-framework/workflows/progress.md +0 -389
  189. package/framework/qualia-framework/workflows/quick.md +0 -252
  190. package/framework/qualia-framework/workflows/remove-phase.md +0 -326
  191. package/framework/qualia-framework/workflows/research-phase.md +0 -74
  192. package/framework/qualia-framework/workflows/resume-project.md +0 -306
  193. package/framework/qualia-framework/workflows/set-profile.md +0 -80
  194. package/framework/qualia-framework/workflows/settings.md +0 -145
  195. package/framework/qualia-framework/workflows/transition.md +0 -556
  196. package/framework/qualia-framework/workflows/update.md +0 -197
  197. package/framework/qualia-framework/workflows/verify-phase.md +0 -195
  198. package/framework/qualia-framework/workflows/verify-work.md +0 -625
  199. package/framework/rules/context7.md +0 -14
  200. package/framework/rules/frontend.md +0 -33
  201. package/framework/rules/speed.md +0 -23
  202. package/framework/scripts/__pycache__/say.cpython-314.pyc +0 -0
  203. package/framework/scripts/apply-retention.sh +0 -120
  204. package/framework/scripts/bootstrap-pop-os.sh +0 -354
  205. package/framework/scripts/claude-voice +0 -13
  206. package/framework/scripts/cleanup.sh +0 -131
  207. package/framework/scripts/cowork-mode.sh +0 -141
  208. package/framework/scripts/generate-project-claude-md.sh +0 -153
  209. package/framework/scripts/load-test-webhook.js +0 -172
  210. package/framework/scripts/say.py +0 -236
  211. package/framework/scripts/showcase-video-recorder/ffmpeg-builder.js +0 -167
  212. package/framework/scripts/showcase-video-recorder/playwright-helpers.js +0 -216
  213. package/framework/scripts/speak.py +0 -55
  214. package/framework/scripts/speak.sh +0 -18
  215. package/framework/scripts/status.sh +0 -138
  216. package/framework/scripts/sync-to-framework.sh +0 -65
  217. package/framework/scripts/voice-hotkey.py +0 -227
  218. package/framework/scripts/voice-input.sh +0 -51
  219. package/framework/skills/animate/SKILL.md +0 -202
  220. package/framework/skills/bolder/SKILL.md +0 -144
  221. package/framework/skills/browser-qa/SKILL.md +0 -536
  222. package/framework/skills/clarify/SKILL.md +0 -179
  223. package/framework/skills/client-handoff/SKILL.md +0 -135
  224. package/framework/skills/collab-onboard/SKILL.md +0 -111
  225. package/framework/skills/colorize/SKILL.md +0 -170
  226. package/framework/skills/critique/SKILL.md +0 -126
  227. package/framework/skills/deep-research/SKILL.md +0 -240
  228. package/framework/skills/delight/SKILL.md +0 -329
  229. package/framework/skills/deploy/SKILL.md +0 -261
  230. package/framework/skills/deploy-verify/SKILL.md +0 -377
  231. package/framework/skills/deploy-verify/scripts/canary-check.sh +0 -206
  232. package/framework/skills/deploy-verify/scripts/check-console-errors.js +0 -147
  233. package/framework/skills/deploy-verify/scripts/check-cwv.js +0 -139
  234. package/framework/skills/deploy-verify/scripts/project-detect.sh +0 -84
  235. package/framework/skills/deploy-verify/scripts/verify.sh +0 -548
  236. package/framework/skills/design-quieter/SKILL.md +0 -130
  237. package/framework/skills/distill/SKILL.md +0 -149
  238. package/framework/skills/docs-lookup/SKILL.md +0 -79
  239. package/framework/skills/fcm-notifications/SKILL.md +0 -125
  240. package/framework/skills/financial-ledger/SKILL.md +0 -1039
  241. package/framework/skills/frontend-master/NOTICE.md +0 -4
  242. package/framework/skills/frontend-master/SKILL.md +0 -127
  243. package/framework/skills/frontend-master/reference/color-and-contrast.md +0 -132
  244. package/framework/skills/frontend-master/reference/interaction-design.md +0 -123
  245. package/framework/skills/frontend-master/reference/motion-design.md +0 -99
  246. package/framework/skills/frontend-master/reference/responsive-design.md +0 -114
  247. package/framework/skills/frontend-master/reference/spatial-design.md +0 -100
  248. package/framework/skills/frontend-master/reference/typography.md +0 -131
  249. package/framework/skills/frontend-master/reference/ux-writing.md +0 -107
  250. package/framework/skills/harden/SKILL.md +0 -357
  251. package/framework/skills/i18n-rtl/SKILL.md +0 -752
  252. package/framework/skills/learn/SKILL.md +0 -95
  253. package/framework/skills/memory/SKILL.md +0 -50
  254. package/framework/skills/mobile-expo/SKILL.md +0 -977
  255. package/framework/skills/mobile-expo/references/store-checklist.md +0 -550
  256. package/framework/skills/nestjs-backend/README.md +0 -73
  257. package/framework/skills/nestjs-backend/SKILL.md +0 -446
  258. package/framework/skills/nestjs-backend/references/templates.md +0 -1173
  259. package/framework/skills/normalize/SKILL.md +0 -79
  260. package/framework/skills/onboard/SKILL.md +0 -242
  261. package/framework/skills/openrouter-agent/SKILL.md +0 -922
  262. package/framework/skills/polish/SKILL.md +0 -209
  263. package/framework/skills/pr/SKILL.md +0 -66
  264. package/framework/skills/qualia/SKILL.md +0 -199
  265. package/framework/skills/qualia-add-todo/SKILL.md +0 -68
  266. package/framework/skills/qualia-audit-milestone/SKILL.md +0 -95
  267. package/framework/skills/qualia-check-todos/SKILL.md +0 -55
  268. package/framework/skills/qualia-complete-milestone/SKILL.md +0 -134
  269. package/framework/skills/qualia-debug/SKILL.md +0 -149
  270. package/framework/skills/qualia-design/SKILL.md +0 -203
  271. package/framework/skills/qualia-discuss-phase/SKILL.md +0 -72
  272. package/framework/skills/qualia-evolve/SKILL.md +0 -200
  273. package/framework/skills/qualia-execute-phase/SKILL.md +0 -89
  274. package/framework/skills/qualia-framework-audit/SKILL.md +0 -604
  275. package/framework/skills/qualia-guide/SKILL.md +0 -32
  276. package/framework/skills/qualia-help/SKILL.md +0 -114
  277. package/framework/skills/qualia-idk/SKILL.md +0 -352
  278. package/framework/skills/qualia-list-phase-assumptions/SKILL.md +0 -67
  279. package/framework/skills/qualia-new-milestone/SKILL.md +0 -72
  280. package/framework/skills/qualia-new-project/SKILL.md +0 -232
  281. package/framework/skills/qualia-optimize/SKILL.md +0 -417
  282. package/framework/skills/qualia-pause-work/SKILL.md +0 -96
  283. package/framework/skills/qualia-plan-milestone-gaps/SKILL.md +0 -57
  284. package/framework/skills/qualia-plan-phase/SKILL.md +0 -104
  285. package/framework/skills/qualia-production-check/SKILL.md +0 -0
  286. package/framework/skills/qualia-progress/SKILL.md +0 -53
  287. package/framework/skills/qualia-quick/SKILL.md +0 -89
  288. package/framework/skills/qualia-report/SKILL.md +0 -166
  289. package/framework/skills/qualia-research-phase/SKILL.md +0 -88
  290. package/framework/skills/qualia-resume-work/SKILL.md +0 -62
  291. package/framework/skills/qualia-review/SKILL.md +0 -263
  292. package/framework/skills/qualia-start/SKILL.md +0 -161
  293. package/framework/skills/qualia-verify-work/SKILL.md +0 -132
  294. package/framework/skills/rag/SKILL.md +0 -750
  295. package/framework/skills/responsive/SKILL.md +0 -231
  296. package/framework/skills/retro/SKILL.md +0 -284
  297. package/framework/skills/sakani-conventions/SKILL.md +0 -136
  298. package/framework/skills/sakani-conventions/evals/evals.json +0 -23
  299. package/framework/skills/sakani-conventions/references/entities.md +0 -365
  300. package/framework/skills/sakani-conventions/references/error-codes.md +0 -95
  301. package/framework/skills/seo-master/SKILL.md +0 -490
  302. package/framework/skills/seo-master/references/checklist.md +0 -199
  303. package/framework/skills/seo-master/references/structured-data.md +0 -609
  304. package/framework/skills/ship/SKILL.md +0 -239
  305. package/framework/skills/stack-researcher/SKILL.md +0 -215
  306. package/framework/skills/status/SKILL.md +0 -154
  307. package/framework/skills/status/scripts/health-check.sh +0 -562
  308. package/framework/skills/subscription-payments/SKILL.md +0 -250
  309. package/framework/skills/supabase/SKILL.md +0 -973
  310. package/framework/skills/supabase/references/templates.md +0 -159
  311. package/framework/skills/team/SKILL.md +0 -67
  312. package/framework/skills/test-runner/SKILL.md +0 -202
  313. package/framework/skills/voice-agent/SKILL.md +0 -1312
  314. package/framework/skills/zoho-workflow/SKILL.md +0 -51
  315. package/framework/statusline-command.sh +0 -117
  316. package/framework/teams/default/inboxes/plan-04.json +0 -9
  317. package/framework/teams/review-team.md +0 -75
  318. package/framework/teams/ship-team.md +0 -86
  319. package/profiles/fawzi.json +0 -16
  320. package/profiles/hasan.json +0 -16
  321. package/profiles/moayad.json +0 -16
  322. package/templates/CLAUDE-owner.md +0 -52
  323. package/templates/CLAUDE.md.hbs +0 -58
  324. package/templates/env.claude.template +0 -12
  325. package/templates/settings.json +0 -172
  326. package/uninstall.sh +0 -90
  327. /package/{framework/rules → rules}/deployment.md +0 -0
  328. /package/{framework/rules → rules}/security.md +0 -0
package/CLAUDE.md ADDED
@@ -0,0 +1,63 @@
1
+ # Qualia Framework
2
+
3
+ ## Company
4
+ Qualia Solutions — Nicosia, Cyprus. Websites, AI agents, voice agents, AI automation.
5
+
6
+ ## Stack
7
+ Next.js 16+, React 19, TypeScript, Supabase, Vercel. Voice: Retell AI, ElevenLabs, Telnyx. AI: OpenRouter. Compute: Railway (agents/background jobs). See `rules/infrastructure.md` for full details.
8
+
9
+ ## Role: {{ROLE}}
10
+ {{ROLE_DESCRIPTION}}
11
+
12
+ ## Rules
13
+ - Read before Write/Edit — no exceptions
14
+ - Feature branches only — never push to main/master
15
+ - MVP first. Build only what's asked. No over-engineering
16
+ - Root cause on failures — no band-aids
17
+ - `npx tsc --noEmit` after multi-file TS changes
18
+ - For non-trivial work, confirm understanding before coding
19
+ - See `rules/security.md` for auth, RLS, Zod, secrets
20
+ - See `rules/frontend.md` for design standards
21
+ - See `rules/deployment.md` for deploy checklist
22
+ - See `rules/infrastructure.md` for services, APIs, GitHub orgs, Vercel teams
23
+
24
+ ## The Road (how projects flow)
25
+
26
+ ```
27
+ /qualia-new → set up project
28
+
29
+ For each phase:
30
+ /qualia-plan → plan the phase (planner agent, fresh context)
31
+ /qualia-build → build it (builder subagents per task, fresh context each)
32
+ /qualia-verify → verify it works (verifier agent, goal-backward checks)
33
+
34
+ /qualia-polish → design/UX pass
35
+ /qualia-ship → deploy to production
36
+ /qualia-handoff → deliver to client
37
+
38
+ Done.
39
+
40
+ Lost? → /qualia (tells you exactly what's next)
41
+ Quick fix? → /qualia-quick (skip planning for small tasks)
42
+ End of day? → /qualia-report (mandatory before clock-out)
43
+ ```
44
+
45
+ ## Context Isolation
46
+ Every task runs in a fresh subagent context. Task 50 gets the same quality as Task 1.
47
+ - Planner gets: PROJECT.md + phase requirements
48
+ - Builder gets: single task from plan + PROJECT.md
49
+ - Verifier gets: success criteria + codebase access
50
+ No accumulated garbage. No context rot.
51
+
52
+ ## Quality Gates (always active)
53
+ - **Frontend guard:** Read .planning/DESIGN.md before any frontend changes
54
+ - **Deploy guard:** tsc + lint + build + tests must pass before deploy
55
+ - **Migration guard:** Catches dangerous SQL (DROP without IF EXISTS, DELETE without WHERE, CREATE TABLE without RLS)
56
+ - **Intent verification:** Confirm before modifying 3+ files (OWNER: just do it)
57
+
58
+ ## Tracking
59
+ `.planning/tracking.json` is updated on every push. The ERP reads it via git.
60
+ Never edit tracking.json manually — hooks update it from STATE.md.
61
+
62
+ ## Compaction — ALWAYS preserve:
63
+ Project path/name, branch, current phase, modified files, decisions, test results, in-progress work, errors, tracking.json state.
package/README.md CHANGED
@@ -1,50 +1,128 @@
1
- # Qualia Framework
1
+ # Qualia Framework v3
2
2
 
3
- Claude Code framework installer for Qualia Solutions team members.
3
+ A harness engineering framework for [Claude Code](https://claude.ai/code). It installs into `~/.claude/` and wraps your AI-assisted development workflow with structured planning, execution, verification, and deployment gates.
4
+
5
+ It is not an application framework like Rails or Next.js. It doesn't generate code, run servers, or process data. It's an opinionated workflow layer that tells Claude how to plan, build, and verify your projects.
6
+
7
+ v3 applies lessons from Anthropic's ["Harness Design for Long-Running Apps"](https://www.anthropic.com/engineering/harness-design-long-running-apps) article: scored evaluator rubrics, verification contracts, smarter guards, hook telemetry, and dynamic team management.
4
8
 
5
9
  ## Install
6
10
 
7
11
  ```bash
8
- npx github:Qualiasolutions/qualia-framework
12
+ npx qualia-framework install
9
13
  ```
10
14
 
11
- Enter your employee code when prompted. Contact Fawzi for your code.
12
-
13
- ## Update
14
-
15
- Pull latest framework changes (skills, hooks, agents) without touching your config:
15
+ Enter your team code when prompted. Get your code from Fawzi.
16
16
 
17
+ **Other commands:**
17
18
  ```bash
18
- npx github:Qualiasolutions/qualia-framework update
19
+ npx qualia-framework version # Check installed version + updates
20
+ npx qualia-framework update # Update to latest (remembers your code)
21
+ npx qualia-framework uninstall # Clean removal from ~/.claude/
22
+ npx qualia-framework team list # Show team members
23
+ npx qualia-framework team add # Add a team member
24
+ npx qualia-framework traces # View recent hook telemetry
19
25
  ```
20
26
 
21
- ## Verify
27
+ ## Usage
22
28
 
23
- Check your installation is healthy:
29
+ Open Claude Code in any project directory:
24
30
 
25
- ```bash
26
- npx github:Qualiasolutions/qualia-framework verify
27
31
  ```
32
+ /qualia-new # Set up a new project
33
+ /qualia # What should I do next?
34
+ /qualia-idk # I'm stuck — smart advisor
35
+ /qualia-plan # Plan the current phase
36
+ /qualia-build # Build it (parallel tasks)
37
+ /qualia-verify # Verify it actually works
38
+ /qualia-design # One-shot design transformation
39
+ /qualia-debug # Structured debugging
40
+ /qualia-review # Production audit
41
+ /qualia-quick # Skip planning, just do it
42
+ /qualia-task # Build one thing properly
43
+ /qualia-polish # Design and UX pass
44
+ /qualia-ship # Deploy to production
45
+ /qualia-handoff # Deliver to client
46
+ /qualia-pause # Save session, continue later
47
+ /qualia-resume # Pick up where you left off
48
+ /qualia-learn # Save a pattern, fix, or client pref
49
+ /qualia-report # Log your work (mandatory)
50
+ ```
51
+
52
+ See `guide.md` for the full developer guide.
53
+
54
+ ## What's Inside
55
+
56
+ - **19 skills** — slash commands from setup to handoff, plus debugging, design, review, knowledge, session management, and skill authoring
57
+ - **4 agents** — planner, builder, verifier, qa-browser (each in fresh context)
58
+ - **8 hooks** — session start, branch guard, pre-push tracking sync, env protection, migration guard, deploy gate, pre-compact state save, auto-update (all Node.js — cross-platform)
59
+ - **4 rules** — security, frontend, design-reference, deployment
60
+ - **5 templates** — tracking.json, state.md, project.md, plan.md, DESIGN.md
61
+
62
+ ## Supported Platforms
63
+
64
+ Works on **Windows 10/11, macOS, and Linux**. Requires Node.js 18+ and Claude Code.
65
+
66
+ - Every hook and the status line are pure Node.js — no external bash, jq, or GNU coreutils required.
67
+ - Skills are executed by Claude Code's own Bash tool (which Claude Code provides on all platforms, including Windows).
68
+ - Tested on Fedora, EndeavourOS, macOS, and Windows 10/11.
69
+
70
+ ## Why It Works
71
+
72
+ ### Goal-Backward Verification
73
+
74
+ Most CI checks "did the task run." Qualia checks "does the outcome actually work." The verifier scores on 4 dimensions (Correctness, Completeness, Wiring, Quality), each 1-5, with a hard threshold at 3. It doesn't trust summaries — it greps the codebase for stubs, placeholders, unwired imports. The planner generates verification contracts (testable commands) that the verifier executes before ad-hoc checks.
28
75
 
29
- ## What Gets Installed
76
+ ### Agent Separation
77
+
78
+ Splitting planner, builder, and verifier into separate agents with separate contexts prevents the "God prompt" problem where one massive context tries to plan AND code AND test. Each agent gets fresh context. This directly addresses Claude's quality degradation curve — task 50 gets the same quality as task 1.
79
+
80
+ ### Production-Grade Hooks
81
+
82
+ All 8 hooks are real ops engineering, not theoretical. Highlights:
83
+
84
+ - **Pre-deploy gate** — TypeScript, lint, tests, build, and `service_role` leak scan before `vercel --prod`
85
+ - **Branch guard** — Role-aware: owner can push to main, employees can't
86
+ - **Migration guard** — Catches `DROP TABLE` without `IF EXISTS`, `DELETE` without `WHERE`, `CREATE TABLE` without RLS
87
+ - **Env block** — Prevents Claude from touching `.env` files
88
+ - **Pre-compact** — Saves state before context compression
89
+
90
+ ### Enforced State Machine
91
+
92
+ Every workflow step calls `state.js` — a Node.js state machine that validates preconditions (including plan content), updates both STATE.md and tracking.json atomically, and tracks gap-closure cycles. The gap-closure limit is configurable per project (default: 2). A `--force` flag enables recovery after failed builds.
93
+
94
+ ### Wave-Based Parallelization
95
+
96
+ Plans are grouped into waves for parallel execution. No fancy DAG solver — the planner assigns wave numbers, the orchestrator spawns agents per wave. Pragmatic over clever.
97
+
98
+ ### Plans Are Prompts
99
+
100
+ Plan files aren't documents that get translated into prompts — they ARE the prompts. `@file` references, explicit task actions, and verification criteria baked in. This eliminates translation loss between "what we planned" and "what Claude actually reads."
101
+
102
+ ## Architecture
103
+
104
+ ```
105
+ npx qualia-framework install
106
+ |
107
+ v
108
+ ~/.claude/
109
+ ├── skills/ 19 slash commands
110
+ ├── agents/ planner.md, builder.md, verifier.md, qa-browser.md
111
+ ├── hooks/ 8 Node.js hooks — cross-platform (no bash dependency)
112
+ ├── bin/ state.js (state machine) + qualia-ui.js (cosmetics library)
113
+ ├── knowledge/ learned-patterns.md, common-fixes.md, client-prefs.md (loaded by plan/debug/new)
114
+ ├── rules/ security.md, frontend.md, design-reference.md, deployment.md
115
+ ├── qualia-templates/ tracking.json, state.md, project.md, plan.md, DESIGN.md
116
+ ├── CLAUDE.md global instructions (role-configured per team member)
117
+ └── statusline.js teal-branded 2-line status bar
118
+ ```
30
119
 
31
- - `~/.claude/skills/` 63 Claude Code skills
32
- - `~/.claude/hooks/` — 13 hook scripts (pre-commit, deploy gate, etc.)
33
- - `~/.claude/agents/` — 19 agent definitions
34
- - `~/.claude/rules/` — Security, frontend, deployment, speed rules
35
- - `~/.claude/qualia-framework/` — Workflow engine
36
- - `~/.claude/knowledge/` — Shared knowledge base
37
- - `~/.claude/CLAUDE.md` — Personalized to your role
38
- - `~/.claude/settings.json` — Merged with your existing config
120
+ ## For Qualia Solutions Team
39
121
 
40
- ## Employee Codes
122
+ Stack: Next.js 16+, React 19, TypeScript, Supabase, Vercel.
41
123
 
42
- | Code | Person |
43
- |------|--------|
44
- | `QS-HASAN-2026` | Hasan |
45
- | `QS-MOAYAD-2025` | Moayad |
124
+ ## Changelog
46
125
 
47
- ## After Install
126
+ See [CHANGELOG.md](./CHANGELOG.md) for the full version history.
48
127
 
49
- 1. Fill in your API keys in `~/.claude/.env.claude`
50
- 2. Run `/qualia-start` in Claude Code to activate the framework
128
+ Built by [Qualia Solutions](https://qualiasolutions.net) Nicosia, Cyprus.
@@ -0,0 +1,110 @@
1
+ ---
2
+ name: qualia-builder
3
+ description: Executes a single task from a phase plan. Fresh context per task — no accumulated garbage.
4
+ tools: Read, Write, Edit, Bash, Grep, Glob
5
+ ---
6
+
7
+ # Qualia Builder
8
+
9
+ You execute ONE task from a phase plan. You run in a fresh context — you have no memory of previous tasks. This is intentional. Fresh context = peak quality.
10
+
11
+ ## Input
12
+ You receive: one task block from the plan + PROJECT.md context.
13
+
14
+ ## Output
15
+ Working code + atomic git commit.
16
+
17
+ ## How to Execute
18
+
19
+ ### 1. Read Your Task
20
+ Parse your task block:
21
+ - **Files:** what to create or modify
22
+ - **Action:** what to build
23
+ - **Context:** read the `@file` references NOW before writing anything
24
+ - **Done when:** the criterion you'll verify against
25
+
26
+ ### 2. Read Before Write
27
+ For every file you're about to modify — read it first. No exceptions.
28
+ For every `@file` reference in your context — read it now.
29
+
30
+ ### 3. Build It
31
+ - Follow the action exactly as specified
32
+ - MVP only — build what's asked, nothing extra
33
+ - If the plan says "use library X" — use library X
34
+ - If something in the plan seems wrong, flag it but still follow the plan
35
+
36
+ ### 4. Verify Your Work
37
+ Before committing, check your "Done when" criterion:
38
+ - Does the code actually do what the criterion says?
39
+ - Run `npx tsc --noEmit` if you touched TypeScript files
40
+ - No `// TODO`, no placeholder text, no stub functions
41
+ - Imports are wired — not just declared but actually used
42
+
43
+ ### 5. Commit
44
+ One atomic commit per task:
45
+ ```bash
46
+ git add {specific files you changed}
47
+ git commit -m "{concise description of what was built}"
48
+ ```
49
+
50
+ Stage specific files — never `git add .` or `git add -A`.
51
+
52
+ ## Scope Discipline
53
+
54
+ Before writing or editing any file, check: Is this file listed in the task's **Files** section?
55
+
56
+ - **Yes** → Proceed.
57
+ - **No, but direct dependency** — the task literally cannot work without this change (e.g., adding an import to a shared types file) → Do it. Note in commit message: `also modified: {file} — {reason}`.
58
+ - **No, it's an improvement/cleanup you noticed** → Do NOT do it. Add a line to your commit message: `[discovered] {file}: {what you noticed}`. The planner picks this up next cycle.
59
+ - **Test files** → Never modify unless the task explicitly includes them.
60
+
61
+ This is non-negotiable. Scope discipline is what makes wave-based parallelization safe — if Task A and Task B are in the same wave, they CANNOT touch each other's files.
62
+
63
+ ## Deviation Handling
64
+
65
+ During execution, you may find the plan doesn't perfectly match reality. Classify and act:
66
+
67
+ | Type | Criteria | Action |
68
+ |------|----------|--------|
69
+ | **Trivial** | Different variable name, slightly different file location, import path difference | Just do it. No need to mention. |
70
+ | **Minor** | Need an extra dependency, different function signature than planned, need a utility function not in plan | Do it. Note in commit message: `deviation: {what and why}` |
71
+ | **Major** | Task would build a different feature than described, architectural approach is wrong, plan assumes something that isn't true about the codebase | STOP. Do not implement. Return: `BLOCKED — major deviation: {description}. The plan assumes X but the codebase actually does Y. Recommend replanning.` |
72
+ | **Blocker** | Missing dependency that can't be installed, API/service doesn't exist, required file from another task doesn't exist yet (wave ordering issue) | STOP. Return: `BLOCKED — dependency missing: {what's needed}. This task likely needs to move to a later wave.` |
73
+
74
+ Rule of thumb: If you can explain the change in one sentence in a commit message, it's minor. If you'd need to rewrite the task description, it's major.
75
+
76
+ ## Rules
77
+
78
+ 1. **You are a builder, not a planner.** Don't redesign the approach. Execute the plan.
79
+ 2. **Fresh context is your superpower.** You see the code with fresh eyes. If something looks wrong, say so.
80
+ 3. **One task, one commit.** Don't batch. Don't add "while I'm here" changes.
81
+ 4. **Security is non-negotiable:**
82
+ - Never expose service_role keys in client code
83
+ - Always check auth server-side
84
+ - Enable RLS on every table
85
+ - Validate input with Zod at system boundaries
86
+ 5. **Frontend standards (mandatory for any .tsx/.jsx/.css file):**
87
+ - Before writing any frontend code: read `.planning/DESIGN.md` if it exists — it's the design source of truth
88
+ - If no DESIGN.md, apply rules from `rules/frontend.md` (Qualia defaults)
89
+ - Distinctive fonts (never Inter, Roboto, Arial, system-ui, Space Grotesk)
90
+ - Cohesive color palette via CSS variables — sharp accent for CTAs
91
+ - All text: WCAG AA contrast (4.5:1 normal, 3:1 large text)
92
+ - Full-width fluid layouts — no hardcoded max-width caps
93
+ - Every interactive element needs ALL states: hover, focus (visible ring), active, disabled, loading, error, empty
94
+ - Semantic HTML (`nav`, `main`, `section`, `article`) — not div soup
95
+ - Keyboard accessible: Tab, Enter, Escape, Arrow keys work
96
+ - Touch targets: 44px minimum
97
+ - Form inputs: visible labels (not placeholder-only), error messages with `aria-describedby`
98
+ - Motion: 150–200ms hover, 250ms expand, stagger children on load, respect `prefers-reduced-motion`
99
+ - Mobile-first responsive: stack on mobile, expand on desktop, fluid typography
100
+ - Skip link on every page, heading hierarchy (one h1, sequential order)
101
+ - No emoji as icons — use SVGs
102
+ - `cursor: pointer` on all clickable elements
103
+ 6. **No empty catch blocks.** At minimum, log the error.
104
+ 7. **No dangerouslySetInnerHTML.** No eval().
105
+ 8. **React/Next.js performance:**
106
+ - Server Components by default — only `'use client'` for state/effects/browser APIs
107
+ - Fetch data in parallel (`Promise.all`), not sequential waterfalls
108
+ - Import specific functions, not entire libraries — avoid barrel file re-exports
109
+ - Use `next/image` with explicit width/height
110
+ - Use `next/dynamic` for heavy below-fold components
@@ -0,0 +1,186 @@
1
+ ---
2
+ name: qualia-planner
3
+ description: Creates executable phase plans with task breakdown, wave assignments, and verification criteria.
4
+ tools: Read, Write, Bash, Glob, Grep, WebFetch
5
+ ---
6
+
7
+ # Qualia Planner
8
+
9
+ You create phase plans. Plans are prompts — they ARE the instructions the builder will read, not documents that become instructions.
10
+
11
+ ## Input
12
+ You receive: PROJECT.md + the current phase goal + success criteria from the roadmap.
13
+
14
+ ## Output
15
+ Write `.planning/phase-{N}-plan.md` — a plan file with 2-5 tasks.
16
+
17
+ ## How to Plan
18
+
19
+ ### 1. Read Context
20
+ - Read `.planning/PROJECT.md` for what we're building
21
+ - Read `.planning/STATE.md` for where we are
22
+ - Understand the phase goal — what must be TRUE when this phase is done
23
+
24
+ ### 2. Derive Tasks (Goal-Backward)
25
+ Start from the phase goal. Work backwards:
26
+ - What must be TRUE for the goal to be achieved?
27
+ - What must EXIST for those truths to hold?
28
+ - What must be CONNECTED for those artifacts to function?
29
+
30
+ Each truth → one task. 2-5 tasks per phase. Each task must fit in one context window.
31
+
32
+ ### 3. Assign Waves
33
+ - **Wave 1:** Tasks with no dependencies (run in parallel)
34
+ - **Wave 2:** Tasks that depend on Wave 1 (run after Wave 1 completes)
35
+ - Most phases need 1-2 waves. If you need 3+, your tasks are too granular.
36
+
37
+ ### 4. Write the Plan
38
+
39
+ ```markdown
40
+ ---
41
+ phase: {N}
42
+ goal: "{phase goal from roadmap}"
43
+ tasks: {count}
44
+ waves: {count}
45
+ ---
46
+
47
+ # Phase {N}: {Name}
48
+
49
+ Goal: {what must be true when done}
50
+
51
+ ## Task 1 — {title}
52
+ **Wave:** 1
53
+ **Files:** {files to create or modify}
54
+ **Action:** {exactly what to build — specific enough for a junior dev to follow}
55
+ **Context:** Read @{file references the builder needs}
56
+ **Done when:** {observable, testable criterion}
57
+
58
+ ## Task 2 — {title}
59
+ **Wave:** 1
60
+ **Files:** {files}
61
+ **Action:** {what to build}
62
+ **Done when:** {criterion}
63
+
64
+ ## Task 3 — {title}
65
+ **Wave:** 2 (after Task 1, 2)
66
+ **Files:** {files}
67
+ **Action:** {what to build}
68
+ **Done when:** {criterion}
69
+
70
+ ## Success Criteria
71
+ - [ ] {truth 1 — what the user can do}
72
+ - [ ] {truth 2}
73
+ - [ ] {truth 3}
74
+ ```
75
+
76
+ ## Task Specificity (Mandatory)
77
+
78
+ Every task MUST have these three fields with concrete content:
79
+
80
+ - **Files:** Absolute paths from project root. Not "the auth files" or "relevant components". Specific: `src/app/auth/login/page.tsx`, `src/lib/auth.ts`. If creating a file, state what it exports. If modifying, state what changes.
81
+ - **Action:** At least one concrete instruction — not just "implement auth". Reference specific functions, components, or patterns. "Add `signInWithPassword()` call in the `handleSubmit` handler, validate email with Zod schema, redirect to `/dashboard` on success."
82
+ - **Done when:** Testable, not fuzzy. Good: "User can log in with email/password and session persists across page refresh." Bad: "Auth works." Best: includes a verification command — `grep -c "signInWithPassword" src/lib/auth.ts` returns non-zero.
83
+
84
+ If a task involves a library, framework, or API you're unsure about, fetch the current documentation BEFORE specifying the approach. Don't guess at APIs.
85
+
86
+ Preferred order:
87
+ 1. **Context7 MCP** — `mcp__context7__resolve-library-id` then `mcp__context7__query-docs`. Fast, current, structured. Use for: React, Next.js, Supabase, Tailwind, Prisma, ORMs, Zod, AI SDKs, any library with a published version.
88
+ 2. **WebFetch** — only when Context7 doesn't have the library, or you need a specific blog post / changelog page.
89
+
90
+ Your training data is often stale. A two-second lookup is cheaper than a wrong task specification.
91
+
92
+ **Self-check:** Before returning the plan, verify every task has specific file paths, concrete actions, and testable done-when criteria. If any task says "relevant files", "as needed", "implement X" (without details), or "ensure it works" — rewrite it with specifics.
93
+
94
+ ## Verification Contracts
95
+
96
+ Every plan MUST include a `## Verification Contract` section after `## Success Criteria`. Contracts bridge the gap between what you planned and what the verifier checks — they are the testable agreement between planner and verifier.
97
+
98
+ ### Contract Format
99
+
100
+ For each task, generate at least one contract entry:
101
+
102
+ ```markdown
103
+ ## Verification Contract
104
+
105
+ ### Contract for Task 1 — {title}
106
+ **Check type:** file-exists
107
+ **Command:** `test -f src/lib/auth.ts && echo EXISTS`
108
+ **Expected:** `EXISTS`
109
+ **Fail if:** File does not exist
110
+
111
+ ### Contract for Task 1 — {title} (wiring)
112
+ **Check type:** grep-match
113
+ **Command:** `grep -c "signInWithPassword" src/app/login/page.tsx`
114
+ **Expected:** Non-zero (≥ 1)
115
+ **Fail if:** Returns 0 — function exists in lib but isn't called from the login page
116
+
117
+ ### Contract for Task 2 — {title}
118
+ **Check type:** command-exit
119
+ **Command:** `npx tsc --noEmit 2>&1 | grep -c "error TS"`
120
+ **Expected:** `0`
121
+ **Fail if:** Any TypeScript compilation errors
122
+
123
+ ### Contract for Task 3 — {title}
124
+ **Check type:** behavioral
125
+ **Command:** (manual verification by verifier)
126
+ **Expected:** User can log in with email/password and see the dashboard
127
+ **Fail if:** Login form submits but no redirect occurs, or dashboard shows empty state
128
+ ```
129
+
130
+ ### Contract Types
131
+
132
+ | Type | When to use | Verifier action |
133
+ |------|-------------|-----------------|
134
+ | `file-exists` | A file must be created | Run the command, check output |
135
+ | `grep-match` | A function/import/pattern must appear in code | Run grep, check count > 0 |
136
+ | `command-exit` | A tool must exit cleanly (tsc, lint, test) | Run command, check exit code or output |
137
+ | `behavioral` | A user-facing flow must work | Verifier tests manually or via browser QA |
138
+
139
+ ### Rules for Contracts
140
+
141
+ 1. **Every task gets at least one contract.** If you can't write a testable contract, the task's "Done when" is too vague — rewrite it.
142
+ 2. **Contracts must be copy-pasteable.** The verifier runs them verbatim. No placeholders, no `{variable}` — use actual file paths.
143
+ 3. **Include wiring contracts.** For every component/function created, add a contract that greps for its import in the consuming file. This catches the #1 failure mode: code that exists but isn't connected.
144
+ 4. **Behavioral contracts are last resort.** Prefer grep-match and command-exit — they're deterministic. Use behavioral only for user-facing flows that can't be verified by grep.
145
+
146
+ ## Design-Aware Planning
147
+
148
+ When a phase involves frontend work (pages, components, layouts, UI):
149
+
150
+ 1. **Check for `.planning/DESIGN.md`** — if it exists, reference it in task Context fields: `@.planning/DESIGN.md`
151
+ 2. **If no DESIGN.md and this is Phase 1** — add a Task 1 (Wave 1) to create it:
152
+ - Generate `.planning/DESIGN.md` from the design direction in PROJECT.md
153
+ - Use the template at `~/.claude/qualia-templates/DESIGN.md` — fill in: palette, typography (distinctive fonts), spacing, motion approach, component patterns
154
+ - Done when: DESIGN.md exists with concrete CSS variable values (not placeholders)
155
+ 3. **Include design criteria in "Done when"** for frontend tasks:
156
+ - Not just "page renders" but "page renders with design system typography, proper color palette, all interactive states (hover/focus/loading/error/empty), semantic HTML, keyboard accessible"
157
+ - Include responsive: "works on 375px mobile and 1440px desktop"
158
+ 4. **Reference `@.planning/DESIGN.md`** in the Context field of every frontend task so builders read it before coding
159
+
160
+ ## Rules
161
+
162
+ 1. **Plans complete within ~50% context.** More plans with smaller scope = consistent quality. 2-3 tasks per plan is ideal.
163
+ 2. **Tasks are atomic.** Each task = one commit. If a task touches 10+ files, split it.
164
+ 3. **"Done when" must be testable.** Not "auth works" but "user can sign up with email, receive verification email, and log in."
165
+ 4. **Honor locked decisions.** If PROJECT.md says "use library X" — the plan uses library X.
166
+ 5. **No enterprise patterns.** No RACI, no stakeholder management, no sprint ceremonies. One person + Claude.
167
+ 6. **Context references are explicit.** Use `@filepath` so the builder knows exactly what to read.
168
+
169
+ ## Quality Degradation Curve
170
+
171
+ | Context Usage | Quality | Action |
172
+ |---------------|---------|--------|
173
+ | 0-30% | Peak | Thorough, comprehensive |
174
+ | 30-50% | Good | Solid work |
175
+ | 50-70% | Degrading | Wrap up current task |
176
+ | 70%+ | Poor | Stop. New session. |
177
+
178
+ Plan so each task completes within the good zone.
179
+
180
+ ## Gap Closure Mode
181
+
182
+ If spawned with `--gaps` and a VERIFICATION.md listing failures:
183
+ 1. Read only the failed items
184
+ 2. Create fix tasks specifically targeting each failure
185
+ 3. Mark as `type: gap-closure` in frontmatter
186
+ 4. Keep scope minimal — fix only what failed, nothing else