qualia-framework 4.5.0 → 5.3.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.
- package/AGENTS.md +24 -0
- package/CLAUDE.md +12 -75
- package/README.md +23 -16
- package/agents/builder.md +9 -21
- package/agents/planner.md +8 -0
- package/agents/verifier.md +8 -0
- package/agents/visual-evaluator.md +132 -0
- package/bin/cli.js +54 -18
- package/bin/install.js +369 -29
- package/bin/qualia-ui.js +208 -1
- package/bin/slop-detect.mjs +5 -0
- package/bin/state.js +34 -1
- package/docs/install-redesign-builder-prompt.md +290 -0
- package/docs/install-redesign-pilot.md +234 -0
- package/docs/playwright-loop-builder-prompt.md +185 -0
- package/docs/playwright-loop-design-notes.md +108 -0
- package/docs/playwright-loop-pilot-results.md +170 -0
- package/docs/playwright-loop-tester-prompt.md +213 -0
- package/docs/polish-loop-supervised-run.md +111 -0
- package/docs/reviews/matt-pocock-skills-analysis.md +300 -0
- package/guide.md +9 -5
- package/hooks/env-empty-guard.js +74 -0
- package/hooks/pre-compact.js +19 -9
- package/hooks/pre-deploy-gate.js +8 -2
- package/hooks/pre-push.js +26 -12
- package/hooks/supabase-destructive-guard.js +62 -0
- package/hooks/vercel-account-guard.js +91 -0
- package/package.json +2 -1
- package/rules/design-brand.md +4 -0
- package/rules/design-laws.md +4 -0
- package/rules/design-product.md +4 -0
- package/rules/design-rubric.md +4 -0
- package/rules/grounding.md +4 -0
- package/skills/qualia-build/SKILL.md +40 -46
- package/skills/qualia-discuss/SKILL.md +51 -68
- package/skills/qualia-handoff/SKILL.md +1 -0
- package/skills/qualia-hook-gen/SKILL.md +206 -0
- package/skills/qualia-issues/SKILL.md +151 -0
- package/skills/qualia-map/SKILL.md +78 -35
- package/skills/qualia-new/REFERENCE.md +139 -0
- package/skills/qualia-new/SKILL.md +45 -121
- package/skills/qualia-optimize/REFERENCE.md +265 -0
- package/skills/qualia-optimize/SKILL.md +92 -232
- package/skills/qualia-plan/SKILL.md +58 -65
- package/skills/qualia-polish-loop/REFERENCE.md +265 -0
- package/skills/qualia-polish-loop/SKILL.md +201 -0
- package/skills/qualia-polish-loop/fixtures/broken.html +117 -0
- package/skills/qualia-polish-loop/fixtures/clean.html +196 -0
- package/skills/qualia-polish-loop/scripts/loop.mjs +323 -0
- package/skills/qualia-polish-loop/scripts/playwright-capture.mjs +206 -0
- package/skills/qualia-polish-loop/scripts/score.mjs +176 -0
- package/skills/qualia-prd/SKILL.md +199 -0
- package/skills/qualia-report/SKILL.md +141 -200
- package/skills/qualia-research/SKILL.md +28 -33
- package/skills/qualia-road/SKILL.md +103 -0
- package/skills/qualia-ship/SKILL.md +1 -0
- package/skills/qualia-task/SKILL.md +1 -1
- package/skills/qualia-test/SKILL.md +50 -2
- package/skills/qualia-triage/SKILL.md +152 -0
- package/skills/qualia-verify/SKILL.md +63 -104
- package/skills/qualia-zoom/SKILL.md +51 -0
- package/skills/zoho-workflow/SKILL.md +1 -1
- package/templates/CONTEXT.md +36 -0
- package/templates/decisions/ADR-template.md +30 -0
- package/tests/bin.test.sh +598 -7
- package/tests/state.test.sh +58 -0
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: qualia-zoom
|
|
3
|
+
description: "Zoom out and map an unfamiliar code area in domain-glossary terms — list the modules, who calls them, what they hide, and the smallest safe edit window. User-fired only (never auto). Use when you don't know an area of code well, before editing an unfamiliar file, or when the user says 'zoom out', 'map this area', 'show me the bigger picture', 'I don't know this code'."
|
|
4
|
+
disable-model-invocation: true
|
|
5
|
+
allowed-tools:
|
|
6
|
+
- Read
|
|
7
|
+
- Grep
|
|
8
|
+
- Glob
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# /qualia-zoom — Map an Unfamiliar Area
|
|
12
|
+
|
|
13
|
+
I don't know this area of code well. Go up a layer of abstraction.
|
|
14
|
+
|
|
15
|
+
Give me a map of:
|
|
16
|
+
|
|
17
|
+
1. **Modules** in this area — what they expose, what they hide
|
|
18
|
+
2. **Callers** — who uses these modules and from where
|
|
19
|
+
3. **Dependencies** — what these modules pull in
|
|
20
|
+
4. **Domain terms involved** — quoted from `.planning/CONTEXT.md` if it exists
|
|
21
|
+
|
|
22
|
+
Use the **vocabulary in `.planning/CONTEXT.md`** wherever applicable. If a term in this code conflicts with the glossary, flag it for `/qualia-discuss` (which now grills + updates CONTEXT.md inline).
|
|
23
|
+
|
|
24
|
+
## Output format
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
## Where you are
|
|
28
|
+
{file or path being zoomed out from}
|
|
29
|
+
|
|
30
|
+
## Module map
|
|
31
|
+
- {module/file} — exposes: {x} — hides: {y}
|
|
32
|
+
- ...
|
|
33
|
+
|
|
34
|
+
## Caller map
|
|
35
|
+
- {caller} → {module} (used for {purpose})
|
|
36
|
+
- ...
|
|
37
|
+
|
|
38
|
+
## Domain terms
|
|
39
|
+
- {term from glossary} — appears in {files}
|
|
40
|
+
- {term NOT in glossary but present in code} — flag for /qualia-discuss
|
|
41
|
+
|
|
42
|
+
## Smallest safe edit window
|
|
43
|
+
{which files form the natural unit for this change}
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Rules
|
|
47
|
+
|
|
48
|
+
- Keep the report under **50 lines**. Orient, don't refactor.
|
|
49
|
+
- **Don't propose changes** — that's the next skill's job.
|
|
50
|
+
- Read `.planning/CONTEXT.md` first if it exists. Use its language.
|
|
51
|
+
- If the area is huge, pick the entry point the user named and zoom from there.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: zoho-workflow
|
|
3
|
-
description: Zoho Invoice and Mail operations -
|
|
3
|
+
description: "Zoho Invoice and Mail operations via ERP-first routing. Creates invoices from templates, sends cover emails, manages contacts, reads inbox, and handles payment reminders. Use when the user says 'invoice this client', 'send an email', 'check inbox', 'create a Zoho contact', 'send payment reminder', or mentions invoicing, billing, or Zoho."
|
|
4
4
|
tags: [zoho, invoice, email, billing, crm]
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# {{PROJECT_NAME}} — Domain Glossary
|
|
2
|
+
|
|
3
|
+
<!-- Domain glossary. Loaded by every road agent. Update via /qualia-discuss. Keep entries terse (1 sentence + Avoid line). -->
|
|
4
|
+
|
|
5
|
+
## Language
|
|
6
|
+
|
|
7
|
+
### Term Name
|
|
8
|
+
One-sentence definition. Use the term consistently in code, comments, commits, and conversation.
|
|
9
|
+
**Avoid:** alternative terms that mean the same thing but aren't this one.
|
|
10
|
+
|
|
11
|
+
### {{Add terms as the project clarifies them. Examples below.}}
|
|
12
|
+
|
|
13
|
+
### User
|
|
14
|
+
**Avoid until disambiguated.** Currently overloaded — see "Flagged ambiguities" below.
|
|
15
|
+
|
|
16
|
+
### Phase
|
|
17
|
+
A unit of work inside a milestone. 2–5 tasks. Ends in a verification gate.
|
|
18
|
+
**Avoid:** epic, story, ticket, sprint.
|
|
19
|
+
|
|
20
|
+
### Task
|
|
21
|
+
A single commit-sized unit with one verification contract.
|
|
22
|
+
**Avoid:** subtask, chore, todo.
|
|
23
|
+
|
|
24
|
+
## Relationships
|
|
25
|
+
- Project holds many Milestones
|
|
26
|
+
- Milestone holds many Phases
|
|
27
|
+
- Phase holds many Tasks
|
|
28
|
+
- Task carries one Verification Contract
|
|
29
|
+
- {{add domain-specific relationships, e.g. "Customer holds many Orders"}}
|
|
30
|
+
|
|
31
|
+
## Flagged ambiguities
|
|
32
|
+
|
|
33
|
+
### "User" → AuthUser vs Customer
|
|
34
|
+
- **AuthUser** = the row in `auth.users` (Supabase)
|
|
35
|
+
- **Customer** = the profile row owned by an AuthUser (1:1)
|
|
36
|
+
- {{replace with real ambiguities as they appear}}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# ADR-{{NNNN}} — {{Decision title in present tense}}
|
|
2
|
+
|
|
3
|
+
- **Date:** {{YYYY-MM-DD}}
|
|
4
|
+
- **Phase:** {{N}} — {{phase name}}
|
|
5
|
+
- **Status:** Proposed | Accepted | Superseded by ADR-XXXX
|
|
6
|
+
- **Domain terms:** {{any new/affected terms — also update CONTEXT.md}}
|
|
7
|
+
|
|
8
|
+
## Context
|
|
9
|
+
What is the situation that requires a decision? Why are we deciding this now? What constraints apply (regulatory, performance, team skill, deadlines)?
|
|
10
|
+
|
|
11
|
+
## Decision
|
|
12
|
+
What we are doing. State it as a single declarative sentence first, then expand.
|
|
13
|
+
|
|
14
|
+
## Consequences
|
|
15
|
+
- **What becomes easier:** ...
|
|
16
|
+
- **What becomes harder:** ...
|
|
17
|
+
- **What is now load-bearing on this decision:** ...
|
|
18
|
+
|
|
19
|
+
## Alternatives considered
|
|
20
|
+
Why each alternative was rejected — keep this honest. Future-you will read it.
|
|
21
|
+
|
|
22
|
+
- **Alt A** — {{rejected because…}}
|
|
23
|
+
- **Alt B** — {{rejected because…}}
|
|
24
|
+
|
|
25
|
+
## Notes
|
|
26
|
+
Any non-obvious context, links to discussion threads, related issues. Optional.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
**When to write an ADR (per Matt Pocock's rule):** only when the decision is hard-to-reverse, surprising-without-context, AND involves real trade-offs. If any of those three is missing, just put it in CONTEXT.md or a phase plan instead. ADRs are scarce on purpose.
|