@xhulz/nina 0.79.0 → 0.81.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/bin/nina.mjs +3 -0
- package/package.json +1 -1
- package/releases/0.80.0/core/GAPS.md +125 -0
- package/releases/0.80.0/core/answered.json +128 -0
- package/releases/0.80.0/core/defaults/tree/.claude/agents/architect.md +1 -0
- package/releases/0.80.0/core/defaults/tree/.claude/agents/dba.md +3 -0
- package/releases/0.80.0/core/defaults/tree/.claude/agents/devops.md +1 -0
- package/releases/0.80.0/core/defaults/tree/.claude/agents/implementer.md +1 -0
- package/releases/0.80.0/core/defaults/tree/.claude/agents/integration-tester.md +3 -0
- package/releases/0.80.0/core/defaults/tree/.claude/agents/qa.md +7 -0
- package/releases/0.80.0/core/defaults/tree/.claude/agents/reviewer.md +3 -0
- package/releases/0.80.0/core/defaults/tree/.claude/agents/secops.md +3 -0
- package/releases/0.80.0/core/defaults/tree/.claude/agents/solidity-auditor.md +3 -0
- package/releases/0.80.0/core/defaults/tree/.claude/agents/solidity-dev.md +3 -0
- package/releases/0.80.0/core/tree/.claude/agents/architect.md +140 -0
- package/releases/0.80.0/core/tree/.claude/agents/dba.md +123 -0
- package/releases/0.80.0/core/tree/.claude/agents/design-reviewer.md +82 -0
- package/releases/0.80.0/core/tree/.claude/agents/devops.md +122 -0
- package/releases/0.80.0/core/tree/.claude/agents/implementer.md +208 -0
- package/releases/0.80.0/core/tree/.claude/agents/integration-tester.md +174 -0
- package/releases/0.80.0/core/tree/.claude/agents/planner.md +132 -0
- package/releases/0.80.0/core/tree/.claude/agents/qa.md +154 -0
- package/releases/0.80.0/core/tree/.claude/agents/reviewer.md +191 -0
- package/releases/0.80.0/core/tree/.claude/agents/secops.md +124 -0
- package/releases/0.80.0/core/tree/.claude/agents/solidity-auditor.md +130 -0
- package/releases/0.80.0/core/tree/.claude/agents/solidity-dev.md +127 -0
- package/releases/0.80.0/core/tree/.claude/agents-overview.md +65 -0
- package/releases/0.80.0/core/tree/.claude/frontend.md +10 -0
- package/releases/0.80.0/core/tree/.claude/graph.md +79 -0
- package/releases/0.80.0/core/tree/.claude/patterns.md +256 -0
- package/releases/0.80.0/core/tree/.claude/pills/README.md +150 -0
- package/releases/0.80.0/core/tree/.claude/pipeline.md +101 -0
- package/releases/0.80.0/core/tree/.claude/retrieval.md +103 -0
- package/releases/0.80.0/core/tree/.claude/router.md +224 -0
- package/releases/0.80.0/core/tree/.claude/templates/integration.md +48 -0
- package/releases/0.80.0/core/tree/CLAUDE.md +167 -0
- package/releases/0.80.0/core/tree/scripts/cost-watch.mjs +27 -0
- package/releases/0.80.0/core/tree/scripts/edit-guard.mjs +24 -0
- package/releases/0.80.0/core/tree/scripts/harness-check.mjs +84 -0
- package/releases/0.80.0/core/tree/scripts/loop-gate.mjs +19 -0
- package/releases/0.80.0/core/vocabulary.json +15 -0
- package/releases/0.80.0/surfaces/blockchain/tree/.claude/agents/architect.md +5 -0
- package/releases/0.80.0/surfaces/blockchain/tree/.claude/agents/devops.md +5 -0
- package/releases/0.80.0/surfaces/blockchain/tree/.claude/agents/reviewer.md +5 -0
- package/releases/0.80.0/surfaces/blockchain/tree/.claude/agents/solidity-auditor.md +18 -0
- package/releases/0.80.0/surfaces/blockchain/tree/.claude/agents/solidity-dev.md +16 -0
- package/releases/0.80.0/surfaces/blockchain/tree/.claude/agents-overview.md +6 -0
- package/releases/0.80.0/surfaces/blockchain/tree/.claude/graph.md +11 -0
- package/releases/0.80.0/surfaces/blockchain/tree/.claude/router.md +6 -0
- package/releases/0.80.0/surfaces/blockchain/tree/CLAUDE.md +12 -0
- package/releases/0.80.0/surfaces/d1/tree/.claude/agents/dba.md +15 -0
- package/releases/0.80.0/surfaces/d1/tree/.claude/agents/devops.md +2 -0
- package/releases/0.80.0/surfaces/d1/tree/.claude/agents/implementer.md +2 -0
- package/releases/0.80.0/surfaces/d1/tree/.claude/patterns.md +8 -0
- package/releases/0.80.0/surfaces/d1/tree/CLAUDE.md +2 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/agents/architect.md +5 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/agents/dba.md +54 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/agents/devops.md +5 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/agents/implementer.md +2 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/agents/integration-tester.md +10 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/agents/planner.md +2 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/agents/reviewer.md +22 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/agents/secops.md +2 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/agents-overview.md +5 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/graph.md +8 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/patterns.md +22 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/pipeline.md +13 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/retrieval.md +5 -0
- package/releases/0.80.0/surfaces/db/tree/.claude/router.md +4 -0
- package/releases/0.80.0/surfaces/db/tree/CLAUDE.md +17 -0
- package/releases/0.80.0/surfaces/drizzle/tree/.claude/agents/dba.md +9 -0
- package/releases/0.80.0/surfaces/drizzle/tree/.claude/agents/devops.md +5 -0
- package/releases/0.80.0/surfaces/drizzle/tree/.claude/agents/implementer.md +2 -0
- package/releases/0.80.0/surfaces/drizzle/tree/.claude/patterns.md +7 -0
- package/releases/0.80.0/surfaces/edge-cf/tree/.claude/agents/architect.md +14 -0
- package/releases/0.80.0/surfaces/edge-cf/tree/.claude/agents/dba.md +2 -0
- package/releases/0.80.0/surfaces/edge-cf/tree/.claude/agents/devops.md +29 -0
- package/releases/0.80.0/surfaces/edge-cf/tree/.claude/agents/implementer.md +14 -0
- package/releases/0.80.0/surfaces/edge-cf/tree/.claude/agents/integration-tester.md +11 -0
- package/releases/0.80.0/surfaces/edge-cf/tree/.claude/agents/qa.md +3 -0
- package/releases/0.80.0/surfaces/edge-cf/tree/.claude/agents/reviewer.md +8 -0
- package/releases/0.80.0/surfaces/edge-cf/tree/.claude/agents/secops.md +8 -0
- package/releases/0.80.0/surfaces/edge-cf/tree/.claude/patterns.md +17 -0
- package/releases/0.80.0/surfaces/edge-cf/tree/.claude/retrieval.md +8 -0
- package/releases/0.80.0/surfaces/edge-cf/tree/CLAUDE.md +29 -0
- package/releases/0.80.0/surfaces/frontend/tree/.claude/agents/architect.md +20 -0
- package/releases/0.80.0/surfaces/frontend/tree/.claude/agents/devops.md +28 -0
- package/releases/0.80.0/surfaces/frontend/tree/.claude/agents/implementer.md +25 -0
- package/releases/0.80.0/surfaces/frontend/tree/.claude/agents/qa.md +17 -0
- package/releases/0.80.0/surfaces/frontend/tree/.claude/agents/reviewer.md +56 -0
- package/releases/0.80.0/surfaces/frontend/tree/.claude/patterns.md +8 -0
- package/releases/0.80.0/surfaces/frontend/tree/.claude/retrieval.md +2 -0
- package/releases/0.80.0/surfaces/frontend/tree/.claude/router.md +14 -0
- package/releases/0.80.0/surfaces/frontend/tree/CLAUDE.md +5 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/agents/architect.md +16 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/agents/implementer.md +12 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/agents/integration-tester.md +20 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/agents/planner.md +2 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/agents/reviewer.md +21 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/agents/secops.md +2 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/agents-overview.md +8 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/graph.md +10 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/patterns.md +38 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/pipeline.md +16 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/retrieval.md +16 -0
- package/releases/0.80.0/surfaces/integrations/tree/.claude/router.md +6 -0
- package/releases/0.80.0/surfaces/integrations/tree/CLAUDE.md +17 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/agents/architect.md +12 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/agents/dba.md +14 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/agents/implementer.md +11 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/agents/integration-tester.md +3 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/agents/reviewer.md +23 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/agents/secops.md +5 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/agents/solidity-auditor.md +4 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/agents/solidity-dev.md +4 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/graph.md +2 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/patterns.md +49 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/pipeline.md +2 -0
- package/releases/0.80.0/surfaces/money/tree/.claude/retrieval.md +2 -0
- package/releases/0.80.0/surfaces/money/tree/CLAUDE.md +11 -0
- package/releases/0.80.0/surfaces/pii/tree/.claude/agents/dba.md +2 -0
- package/releases/0.80.0/surfaces/pii/tree/.claude/agents/devops.md +8 -0
- package/releases/0.80.0/surfaces/pii/tree/.claude/agents/reviewer.md +8 -0
- package/releases/0.80.0/surfaces/pii/tree/.claude/agents/secops.md +2 -0
- package/releases/0.80.0/surfaces/pii/tree/.claude/agents/solidity-auditor.md +5 -0
- package/releases/0.80.0/surfaces/pii/tree/CLAUDE.md +5 -0
- package/releases/0.80.0/surfaces/prisma/tree/.claude/agents/architect.md +2 -0
- package/releases/0.80.0/surfaces/prisma/tree/.claude/agents/dba.md +42 -0
- package/releases/0.80.0/surfaces/prisma/tree/.claude/agents/devops.md +11 -0
- package/releases/0.80.0/surfaces/prisma/tree/.claude/agents/implementer.md +2 -0
- package/releases/0.80.0/surfaces/prisma/tree/.claude/agents/integration-tester.md +2 -0
- package/releases/0.80.0/surfaces/prisma/tree/.claude/agents/reviewer.md +2 -0
- package/releases/0.80.0/surfaces/prisma/tree/.claude/patterns.md +15 -0
- package/releases/0.80.0/surfaces/prisma/tree/CLAUDE.md +5 -0
- package/releases/0.81.0/core/GAPS.md +125 -0
- package/releases/0.81.0/core/answered.json +128 -0
- package/releases/0.81.0/core/defaults/tree/.claude/agents/architect.md +1 -0
- package/releases/0.81.0/core/defaults/tree/.claude/agents/dba.md +3 -0
- package/releases/0.81.0/core/defaults/tree/.claude/agents/devops.md +1 -0
- package/releases/0.81.0/core/defaults/tree/.claude/agents/implementer.md +1 -0
- package/releases/0.81.0/core/defaults/tree/.claude/agents/integration-tester.md +3 -0
- package/releases/0.81.0/core/defaults/tree/.claude/agents/qa.md +7 -0
- package/releases/0.81.0/core/defaults/tree/.claude/agents/reviewer.md +3 -0
- package/releases/0.81.0/core/defaults/tree/.claude/agents/secops.md +3 -0
- package/releases/0.81.0/core/defaults/tree/.claude/agents/solidity-auditor.md +3 -0
- package/releases/0.81.0/core/defaults/tree/.claude/agents/solidity-dev.md +3 -0
- package/releases/0.81.0/core/tiers.json +5 -0
- package/releases/0.81.0/core/tree/.claude/agents/architect.md +140 -0
- package/releases/0.81.0/core/tree/.claude/agents/dba.md +123 -0
- package/releases/0.81.0/core/tree/.claude/agents/design-reviewer.md +82 -0
- package/releases/0.81.0/core/tree/.claude/agents/devops.md +122 -0
- package/releases/0.81.0/core/tree/.claude/agents/implementer.md +208 -0
- package/releases/0.81.0/core/tree/.claude/agents/integration-tester.md +174 -0
- package/releases/0.81.0/core/tree/.claude/agents/planner.md +132 -0
- package/releases/0.81.0/core/tree/.claude/agents/qa.md +154 -0
- package/releases/0.81.0/core/tree/.claude/agents/reviewer.md +191 -0
- package/releases/0.81.0/core/tree/.claude/agents/secops.md +124 -0
- package/releases/0.81.0/core/tree/.claude/agents/solidity-auditor.md +130 -0
- package/releases/0.81.0/core/tree/.claude/agents/solidity-dev.md +127 -0
- package/releases/0.81.0/core/tree/.claude/agents-overview.md +65 -0
- package/releases/0.81.0/core/tree/.claude/frontend.md +10 -0
- package/releases/0.81.0/core/tree/.claude/graph.md +79 -0
- package/releases/0.81.0/core/tree/.claude/patterns.md +256 -0
- package/releases/0.81.0/core/tree/.claude/pills/README.md +150 -0
- package/releases/0.81.0/core/tree/.claude/pipeline.md +101 -0
- package/releases/0.81.0/core/tree/.claude/retrieval.md +103 -0
- package/releases/0.81.0/core/tree/.claude/router.md +224 -0
- package/releases/0.81.0/core/tree/.claude/templates/integration.md +48 -0
- package/releases/0.81.0/core/tree/CLAUDE.md +167 -0
- package/releases/0.81.0/core/tree/scripts/cost-watch.mjs +27 -0
- package/releases/0.81.0/core/tree/scripts/edit-guard.mjs +24 -0
- package/releases/0.81.0/core/tree/scripts/harness-check.mjs +84 -0
- package/releases/0.81.0/core/tree/scripts/loop-gate.mjs +19 -0
- package/releases/0.81.0/core/vocabulary.json +18 -0
- package/releases/0.81.0/surfaces/blockchain/tree/.claude/agents/architect.md +5 -0
- package/releases/0.81.0/surfaces/blockchain/tree/.claude/agents/devops.md +5 -0
- package/releases/0.81.0/surfaces/blockchain/tree/.claude/agents/reviewer.md +5 -0
- package/releases/0.81.0/surfaces/blockchain/tree/.claude/agents/solidity-auditor.md +18 -0
- package/releases/0.81.0/surfaces/blockchain/tree/.claude/agents/solidity-dev.md +16 -0
- package/releases/0.81.0/surfaces/blockchain/tree/.claude/agents-overview.md +6 -0
- package/releases/0.81.0/surfaces/blockchain/tree/.claude/graph.md +11 -0
- package/releases/0.81.0/surfaces/blockchain/tree/.claude/router.md +6 -0
- package/releases/0.81.0/surfaces/blockchain/tree/CLAUDE.md +12 -0
- package/releases/0.81.0/surfaces/d1/tree/.claude/agents/dba.md +15 -0
- package/releases/0.81.0/surfaces/d1/tree/.claude/agents/devops.md +2 -0
- package/releases/0.81.0/surfaces/d1/tree/.claude/agents/implementer.md +2 -0
- package/releases/0.81.0/surfaces/d1/tree/.claude/patterns.md +8 -0
- package/releases/0.81.0/surfaces/d1/tree/CLAUDE.md +2 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/agents/architect.md +5 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/agents/dba.md +54 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/agents/devops.md +5 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/agents/implementer.md +2 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/agents/integration-tester.md +10 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/agents/planner.md +2 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/agents/reviewer.md +22 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/agents/secops.md +2 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/agents-overview.md +5 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/graph.md +8 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/patterns.md +22 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/pipeline.md +13 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/retrieval.md +5 -0
- package/releases/0.81.0/surfaces/db/tree/.claude/router.md +4 -0
- package/releases/0.81.0/surfaces/db/tree/CLAUDE.md +17 -0
- package/releases/0.81.0/surfaces/drizzle/tree/.claude/agents/dba.md +9 -0
- package/releases/0.81.0/surfaces/drizzle/tree/.claude/agents/devops.md +5 -0
- package/releases/0.81.0/surfaces/drizzle/tree/.claude/agents/implementer.md +2 -0
- package/releases/0.81.0/surfaces/drizzle/tree/.claude/patterns.md +7 -0
- package/releases/0.81.0/surfaces/edge-cf/tree/.claude/agents/architect.md +14 -0
- package/releases/0.81.0/surfaces/edge-cf/tree/.claude/agents/dba.md +2 -0
- package/releases/0.81.0/surfaces/edge-cf/tree/.claude/agents/devops.md +29 -0
- package/releases/0.81.0/surfaces/edge-cf/tree/.claude/agents/implementer.md +14 -0
- package/releases/0.81.0/surfaces/edge-cf/tree/.claude/agents/integration-tester.md +11 -0
- package/releases/0.81.0/surfaces/edge-cf/tree/.claude/agents/qa.md +3 -0
- package/releases/0.81.0/surfaces/edge-cf/tree/.claude/agents/reviewer.md +8 -0
- package/releases/0.81.0/surfaces/edge-cf/tree/.claude/agents/secops.md +8 -0
- package/releases/0.81.0/surfaces/edge-cf/tree/.claude/patterns.md +17 -0
- package/releases/0.81.0/surfaces/edge-cf/tree/.claude/retrieval.md +8 -0
- package/releases/0.81.0/surfaces/edge-cf/tree/CLAUDE.md +29 -0
- package/releases/0.81.0/surfaces/frontend/tree/.claude/agents/architect.md +20 -0
- package/releases/0.81.0/surfaces/frontend/tree/.claude/agents/devops.md +28 -0
- package/releases/0.81.0/surfaces/frontend/tree/.claude/agents/implementer.md +25 -0
- package/releases/0.81.0/surfaces/frontend/tree/.claude/agents/qa.md +17 -0
- package/releases/0.81.0/surfaces/frontend/tree/.claude/agents/reviewer.md +56 -0
- package/releases/0.81.0/surfaces/frontend/tree/.claude/patterns.md +8 -0
- package/releases/0.81.0/surfaces/frontend/tree/.claude/retrieval.md +2 -0
- package/releases/0.81.0/surfaces/frontend/tree/.claude/router.md +14 -0
- package/releases/0.81.0/surfaces/frontend/tree/CLAUDE.md +5 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/agents/architect.md +16 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/agents/implementer.md +12 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/agents/integration-tester.md +20 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/agents/planner.md +2 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/agents/reviewer.md +21 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/agents/secops.md +2 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/agents-overview.md +8 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/graph.md +10 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/patterns.md +38 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/pipeline.md +16 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/retrieval.md +16 -0
- package/releases/0.81.0/surfaces/integrations/tree/.claude/router.md +6 -0
- package/releases/0.81.0/surfaces/integrations/tree/CLAUDE.md +17 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/agents/architect.md +12 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/agents/dba.md +14 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/agents/implementer.md +11 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/agents/integration-tester.md +3 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/agents/reviewer.md +23 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/agents/secops.md +5 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/agents/solidity-auditor.md +4 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/agents/solidity-dev.md +4 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/graph.md +2 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/patterns.md +49 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/pipeline.md +2 -0
- package/releases/0.81.0/surfaces/money/tree/.claude/retrieval.md +2 -0
- package/releases/0.81.0/surfaces/money/tree/CLAUDE.md +11 -0
- package/releases/0.81.0/surfaces/pii/tree/.claude/agents/dba.md +2 -0
- package/releases/0.81.0/surfaces/pii/tree/.claude/agents/devops.md +8 -0
- package/releases/0.81.0/surfaces/pii/tree/.claude/agents/reviewer.md +8 -0
- package/releases/0.81.0/surfaces/pii/tree/.claude/agents/secops.md +2 -0
- package/releases/0.81.0/surfaces/pii/tree/.claude/agents/solidity-auditor.md +5 -0
- package/releases/0.81.0/surfaces/pii/tree/CLAUDE.md +5 -0
- package/releases/0.81.0/surfaces/prisma/tree/.claude/agents/architect.md +2 -0
- package/releases/0.81.0/surfaces/prisma/tree/.claude/agents/dba.md +42 -0
- package/releases/0.81.0/surfaces/prisma/tree/.claude/agents/devops.md +11 -0
- package/releases/0.81.0/surfaces/prisma/tree/.claude/agents/implementer.md +2 -0
- package/releases/0.81.0/surfaces/prisma/tree/.claude/agents/integration-tester.md +2 -0
- package/releases/0.81.0/surfaces/prisma/tree/.claude/agents/reviewer.md +2 -0
- package/releases/0.81.0/surfaces/prisma/tree/.claude/patterns.md +15 -0
- package/releases/0.81.0/surfaces/prisma/tree/CLAUDE.md +5 -0
- package/src/commands/check.mjs +4 -2
- package/src/commands/compose.mjs +58 -4
- package/src/commands/eval.mjs +35 -24
- package/src/commands/init.mjs +14 -4
- package/src/commands/status.mjs +11 -1
- package/src/commands/upgrade.mjs +17 -2
- package/src/vocabulary.mjs +76 -2
package/src/commands/upgrade.mjs
CHANGED
|
@@ -23,7 +23,7 @@ import { tidyRetired } from './pills.mjs';
|
|
|
23
23
|
import { lacksPackage, missingFragment, missingWiring, shippedScripts } from '../wiring.mjs';
|
|
24
24
|
import { runSteps } from '../steps.mjs';
|
|
25
25
|
import { granted } from '../tools.mjs';
|
|
26
|
-
import { defaultVocabulary } from '../vocabulary.mjs';
|
|
26
|
+
import { TOOK_OVER, defaultVocabulary, tierProblem, tiers } from '../vocabulary.mjs';
|
|
27
27
|
|
|
28
28
|
/** What stops a move from outside it: Ctrl-C, a `kill`, the terminal closing. */
|
|
29
29
|
const SIGNALS = ['SIGINT', 'SIGTERM', 'SIGHUP'];
|
|
@@ -288,6 +288,14 @@ export async function upgrade(argv, ctx) {
|
|
|
288
288
|
);
|
|
289
289
|
return 1;
|
|
290
290
|
}
|
|
291
|
+
// A tier the target release lacks would fail the compose that ends the move, after the pin had moved. Not
|
|
292
|
+
// forceable, and said before anything is read: the tier is set back first, or the move goes to a release that has it.
|
|
293
|
+
const tierError = tierProblem(onto.dir, profile.tier, to);
|
|
294
|
+
if (tierError) {
|
|
295
|
+
const way = Object.keys(tiers(onto.dir)).length > 0 ? `set one ${to} has with \`nina compose --tier\`, or take` : 'take';
|
|
296
|
+
console.error(` ${tierError} — ${way} "tier" out of ${HARNESS}/profile.json before the move\n`);
|
|
297
|
+
return 1;
|
|
298
|
+
}
|
|
291
299
|
|
|
292
300
|
const surfaces = profile.surfaces ?? [];
|
|
293
301
|
const available = (await surfacesIn(onto.dir));
|
|
@@ -313,7 +321,7 @@ export async function upgrade(argv, ctx) {
|
|
|
313
321
|
|
|
314
322
|
const declared = profile.vocabulary ?? {};
|
|
315
323
|
// A name the new release supplies a default for is not owed: it composes as the default until declared.
|
|
316
|
-
const defaultsAfter = defaultVocabulary(onto.dir);
|
|
324
|
+
const defaultsAfter = defaultVocabulary(onto.dir, profile.tier);
|
|
317
325
|
const waits = (key) => typeof profile.deferred?.[key] === 'string' && profile.deferred[key].trim() !== '';
|
|
318
326
|
const needed = [...vocabAfter].filter((v) => ((!(v in declared) && !(v in defaultsAfter)) || declared[v] === null) && !waits(v)).sort();
|
|
319
327
|
const unused = Object.keys(declared).filter((v) => !vocabAfter.has(v)).sort();
|
|
@@ -352,6 +360,13 @@ export async function upgrade(argv, ctx) {
|
|
|
352
360
|
if (unused.length > 0) {
|
|
353
361
|
console.log(` · ${unused.length} vocabulary entr(ies) nothing in ${to} references: ${unused.join(', ')}\n`);
|
|
354
362
|
}
|
|
363
|
+
// Stages that ran on a value this profile declares and, after the move, read a name of their own that it does not.
|
|
364
|
+
const tookOver = Object.entries(TOOK_OVER).filter(([name, was]) => vocabAfter.has(name) && !vocabBefore.has(name) && typeof declared[was] === 'string' && !(name in declared));
|
|
365
|
+
if (tookOver.length > 0) {
|
|
366
|
+
console.log(` · ${tookOver.length} name(s) ${to} reads where it read one this profile declares — each composes as ${to}'s default until declared:`);
|
|
367
|
+
for (const [name, was] of tookOver) console.log(` ${name}, was ${was}: ${defaultsAfter[name] ?? '(no default)'}, where ${was} is ${declared[was]}`);
|
|
368
|
+
console.log('');
|
|
369
|
+
}
|
|
355
370
|
if (newSlots.length > 0) {
|
|
356
371
|
console.log(` · ${newSlots.length} new project slot(s) to fill:`);
|
|
357
372
|
for (const s of newSlots.slice(0, 15)) console.log(` ${s}`);
|
package/src/vocabulary.mjs
CHANGED
|
@@ -27,18 +27,92 @@ export const NAME = /^[A-Z][A-Z0-9_]*$/;
|
|
|
27
27
|
/** A placeholder in a text, its name captured. */
|
|
28
28
|
export const PLACEHOLDER = /\{\{([A-Z][A-Z0-9_]*)\}\}/g;
|
|
29
29
|
|
|
30
|
+
/** A name a tier may move: a stage's model or its effort, never a command, a path or a limit. */
|
|
31
|
+
const TIERED = /_(?:MODEL|EFFORT)$/;
|
|
32
|
+
|
|
33
|
+
/**
|
|
34
|
+
* Names that took over stages from another, the new name → the one those stages read before. A project that
|
|
35
|
+
* declared the old name had them on its value; after the move they read the new one, at the release's default
|
|
36
|
+
* until it is declared too, and `upgrade` says so rather than move them in silence.
|
|
37
|
+
*/
|
|
38
|
+
export const TOOK_OVER = { ARCHITECT_MODEL: 'DEEP_MODEL', IMMUTABLE_MODEL: 'DEEP_MODEL', IMMUTABLE_EFFORT: 'DEEP_EFFORT' };
|
|
39
|
+
|
|
30
40
|
/**
|
|
31
41
|
* The defaults a layer root supplies, name → value. Anything that is not a string under an
|
|
32
42
|
* upper-case name is ignored rather than trusted: a default reaches every project that pins it.
|
|
33
43
|
*
|
|
44
|
+
* With a tier, that tier's models and efforts replace the release's own, so every reader of a
|
|
45
|
+
* default — compose, check, init, upgrade — reads the one the project composes. A tier the release
|
|
46
|
+
* does not have moves nothing here; {@link tierProblem} is what says so.
|
|
47
|
+
*
|
|
34
48
|
* @param {string} layerRoot - A release directory, or the working tree.
|
|
49
|
+
* @param {string} [tier] - The profile's `tier`, when it declares one.
|
|
35
50
|
* @returns {Record<string, string>}
|
|
36
51
|
*/
|
|
37
|
-
export function defaultVocabulary(layerRoot) {
|
|
52
|
+
export function defaultVocabulary(layerRoot, tier) {
|
|
53
|
+
let defaults = {};
|
|
38
54
|
try {
|
|
39
55
|
const parsed = JSON.parse(readFileSync(join(layerRoot, 'core', 'vocabulary.json'), 'utf8'));
|
|
40
|
-
|
|
56
|
+
defaults = Object.fromEntries(Object.entries(parsed).filter(([name, value]) => NAME.test(name) && typeof value === 'string'));
|
|
41
57
|
} catch {
|
|
42
58
|
return {};
|
|
43
59
|
}
|
|
60
|
+
const levels = tiers(layerRoot);
|
|
61
|
+
return tier !== undefined && Object.hasOwn(levels, tier) ? { ...defaults, ...levels[tier] } : defaults;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* The tiers a layer root supplies, level → the models and efforts it moves, from `core/tiers.json`.
|
|
66
|
+
*
|
|
67
|
+
* A tier is a named set of the defaults that decide what each stage runs on, so a project picks how
|
|
68
|
+
* much its pipeline spends in one word rather than five vocabulary values. Only a `_MODEL` or an
|
|
69
|
+
* `_EFFORT` name is taken: a tier that moved a command or a limit would change what a stage does, not
|
|
70
|
+
* what it runs on. A release from before tiers has none.
|
|
71
|
+
*
|
|
72
|
+
* @param {string} layerRoot - A release directory, or the working tree.
|
|
73
|
+
* @returns {Record<string, Record<string, string>>}
|
|
74
|
+
*/
|
|
75
|
+
export function tiers(layerRoot) {
|
|
76
|
+
try {
|
|
77
|
+
const parsed = JSON.parse(readFileSync(join(layerRoot, 'core', 'tiers.json'), 'utf8'));
|
|
78
|
+
return Object.fromEntries(
|
|
79
|
+
Object.entries(parsed)
|
|
80
|
+
.filter(([, moves]) => moves !== null && typeof moves === 'object' && !Array.isArray(moves))
|
|
81
|
+
.map(([level, moves]) => [level, Object.fromEntries(Object.entries(moves).filter(([name, value]) => NAME.test(name) && TIERED.test(name) && typeof value === 'string'))]),
|
|
82
|
+
);
|
|
83
|
+
} catch {
|
|
84
|
+
return {};
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Why a tier cannot compose against a release, or null when it can — or when none is declared.
|
|
90
|
+
*
|
|
91
|
+
* @param {string} layerRoot - A release directory, or the working tree.
|
|
92
|
+
* @param {unknown} tier - The profile's `tier`, as written.
|
|
93
|
+
* @param {string} [release] - The release's name, for the message.
|
|
94
|
+
* @returns {string|null}
|
|
95
|
+
*/
|
|
96
|
+
export function tierProblem(layerRoot, tier, release = 'this release') {
|
|
97
|
+
if (tier === undefined) return null;
|
|
98
|
+
const levels = Object.keys(tiers(layerRoot));
|
|
99
|
+
if (levels.length === 0) return `tier "${tier}": ${release} has no tiers — they came in 0.81.0`;
|
|
100
|
+
if (typeof tier !== 'string' || !levels.includes(tier)) return `tier "${tier}" is not one ${release} has: ${levels.join(', ')}`;
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* What each kind of stage runs on, in one line, from the values a project composes with: the architect, the
|
|
106
|
+
* stages that judge (the reviewers, the design-reviewer, secops, devops), and the stages that carry a spec out.
|
|
107
|
+
* A release from before the architect had a model of its own gave it the judges'.
|
|
108
|
+
*
|
|
109
|
+
* @param {Record<string, string>} values - The project's vocabulary over its release's defaults.
|
|
110
|
+
* @returns {string}
|
|
111
|
+
*/
|
|
112
|
+
export function modelsLine(values) {
|
|
113
|
+
const at = (model, effort) => `${model ?? '?'} at ${effort ?? '?'}`;
|
|
114
|
+
return (
|
|
115
|
+
`architect ${at(values.ARCHITECT_MODEL ?? values.DEEP_MODEL, values.ARCHITECT_EFFORT)} · ` +
|
|
116
|
+
`reviewers ${at(values.DEEP_MODEL, values.DEEP_EFFORT)} · builders ${at(values.WORK_MODEL, values.WORK_EFFORT)}`
|
|
117
|
+
);
|
|
44
118
|
}
|