@mmerterden/multi-agent-pipeline 12.6.0 → 12.7.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/CHANGELOG.md +83 -0
- package/README.md +18 -18
- package/docs/FIGMA_PIPELINE.md +34 -34
- package/docs/adr/0001-three-model-triage.md +12 -12
- package/docs/adr/0002-instruction-driven-flag.md +5 -5
- package/docs/adr/0003-unified-shared-skills.md +5 -5
- package/docs/adr/0004-zero-dependency-philosophy.md +5 -5
- package/docs/adr/0005-lazy-phase-docs.md +2 -2
- package/docs/adr/0006-skills-core-external-split.md +6 -6
- package/docs/adr/0007-multi-tool-adapter-framework.md +19 -19
- package/docs/adr/0008-installer-modularization-and-secret-leak-defense.md +19 -19
- package/docs/adr/README.md +1 -1
- package/docs/best-practices.md +3 -3
- package/docs/features.md +28 -28
- package/docs/performance.md +16 -16
- package/docs/recovery-guide.md +39 -39
- package/index.js +4 -4
- package/install/_common.mjs +5 -11
- package/install/_copilot-instructions.mjs +2 -2
- package/install/_dev-only-files.mjs +1 -1
- package/install/_platform-filter.mjs +1 -1
- package/install/_telemetry.mjs +1 -1
- package/install/claude.mjs +10 -9
- package/install/copilot.mjs +10 -19
- package/install/index.mjs +7 -15
- package/install/templates/copilot-instructions.md +54 -54
- package/install.js +1 -1
- package/package.json +13 -10
- package/pipeline/commands/multi-agent/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/analysis/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/analysis-resolve/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/autopilot/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/build-optimize/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/create-jira/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/design-check/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/dev/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/dev-autopilot/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/dev-local/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/dev-local-autopilot/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/diff-explain/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/finish/SKILL.md +6 -6
- package/pipeline/commands/multi-agent/forget/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/garbage-collect/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/help/SKILL.md +3 -3
- package/pipeline/commands/multi-agent/issue/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/jira/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/kill/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/language/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/local/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/local-autopilot/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/log/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/manual-test/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/prune-logs/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/purge/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/refactor/SKILL.md +16 -8
- package/pipeline/commands/multi-agent/resume/SKILL.md +2 -2
- package/pipeline/commands/multi-agent/review/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/review-issue/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/review-jira/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/routines/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/save/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/scan/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/search/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/setup/SKILL.md +2 -2
- package/pipeline/commands/multi-agent/stack/SKILL.md +3 -3
- package/pipeline/commands/multi-agent/status/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/sync/SKILL.md +5 -5
- package/pipeline/commands/multi-agent/test/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/uninstall/SKILL.md +1 -1
- package/pipeline/commands/multi-agent/update/SKILL.md +3 -3
- package/pipeline/eval/run-metrics-fixture.json +60 -13
- package/pipeline/lib/account-resolver.sh +1 -1
- package/pipeline/lib/channels-multi-repo.sh +1 -1
- package/pipeline/lib/context-link-extractor.sh +1 -1
- package/pipeline/lib/credential-store.sh +1 -1
- package/pipeline/lib/fetch-confluence.sh +1 -1
- package/pipeline/lib/fetch-crashlytics.sh +1 -1
- package/pipeline/lib/fetch-fortify.sh +1 -1
- package/pipeline/lib/fetch-graylog.sh +1 -1
- package/pipeline/lib/fetch-swagger.sh +1 -1
- package/pipeline/lib/issue-fetcher.sh +1 -1
- package/pipeline/lib/multi-repo-pipeline.sh +1 -1
- package/pipeline/lib/repo-cache.sh +1 -1
- package/pipeline/lib/submodule-detector.sh +1 -1
- package/pipeline/multi-agent-refs/component-dispatch.md +1 -1
- package/pipeline/multi-agent-refs/component-generation.md +121 -0
- package/pipeline/multi-agent-refs/cross-cli-contract.md +1 -1
- package/pipeline/multi-agent-refs/features/model-fallback.md +2 -2
- package/pipeline/multi-agent-refs/phases/phase-4-review.md +1 -1
- package/pipeline/preferences-template.json +5 -11
- package/pipeline/schemas/agent-state.schema.json +39 -9
- package/pipeline/schemas/analysis-output.schema.json +18 -4
- package/pipeline/schemas/analysis-spec.schema.json +120 -32
- package/pipeline/schemas/clarify-output.schema.json +15 -5
- package/pipeline/schemas/design-check-config.schema.json +32 -11
- package/pipeline/schemas/dev-critic-output.schema.json +20 -5
- package/pipeline/schemas/figma-project-config.schema.json +42 -10
- package/pipeline/schemas/learnings-ledger.schema.json +10 -2
- package/pipeline/schemas/migrations/figma-config-1.0.0-to-2.0.0.mjs +1 -4
- package/pipeline/schemas/migrations/prefs-2.0.0-to-2.1.0.mjs +24 -7
- package/pipeline/schemas/plan-todos.schema.json +6 -3
- package/pipeline/schemas/planning-output.schema.json +5 -1
- package/pipeline/schemas/prefs.schema.json +91 -229
- package/pipeline/schemas/test-gap.schema.json +5 -5
- package/pipeline/schemas/token-budget.json +8 -8
- package/pipeline/schemas/triage-corpus.schema.json +1 -1
- package/pipeline/scripts/aggregate-metrics.mjs +18 -6
- package/pipeline/scripts/build-skills-index.mjs +6 -2
- package/pipeline/scripts/build-stack-plugins.mjs +142 -39
- package/pipeline/scripts/check-derived-drift.mjs +196 -0
- package/pipeline/scripts/check-md-links.mjs +6 -2
- package/pipeline/scripts/classify-plan-safety.mjs +20 -7
- package/pipeline/scripts/cost-budget-check.mjs +2 -1
- package/pipeline/scripts/cost-table.json +1 -1
- package/pipeline/scripts/diff-explain.mjs +7 -3
- package/pipeline/scripts/diff-risk-score.mjs +13 -3
- package/pipeline/scripts/eval-golden-tasks-live.mjs +8 -3
- package/pipeline/scripts/eval-golden-tasks.mjs +21 -9
- package/pipeline/scripts/eval-intent.mjs +8 -4
- package/pipeline/scripts/eval-mine-corpus.mjs +14 -4
- package/pipeline/scripts/evidence-gate.mjs +7 -2
- package/pipeline/scripts/fixtures/install-layout.tsv +3 -3
- package/pipeline/scripts/gen-mode-dispatch.mjs +38 -21
- package/pipeline/scripts/gen-skills-index.mjs +18 -3
- package/pipeline/scripts/learning-curve.mjs +13 -3
- package/pipeline/scripts/learnings-ledger.mjs +103 -36
- package/pipeline/scripts/lint-mcp-refs.mjs +13 -2
- package/pipeline/scripts/lint-skills.mjs +20 -9
- package/pipeline/scripts/localize-commands.mjs +6 -1
- package/pipeline/scripts/match-skills.mjs +15 -4
- package/pipeline/scripts/migrate-prefs.mjs +33 -16
- package/pipeline/scripts/phase-tracker.sh +3 -1
- package/pipeline/scripts/repo-map.mjs +110 -64
- package/pipeline/scripts/review-scope.mjs +7 -1
- package/pipeline/scripts/routine-registry.mjs +4 -9
- package/pipeline/scripts/run-aggregator.mjs +11 -5
- package/pipeline/scripts/run-metrics.mjs +13 -8
- package/pipeline/scripts/run-smokes.mjs +57 -3
- package/pipeline/scripts/scorecard.mjs +258 -0
- package/pipeline/scripts/smoke-context-budget.sh +72 -0
- package/pipeline/scripts/smoke-model-fallback.sh +1 -1
- package/pipeline/scripts/smoke-no-mcp-in-dev-phases.sh +86 -7
- package/pipeline/scripts/smoke-own-punctuation.sh +103 -0
- package/pipeline/scripts/smoke-workflow-audit.sh +43 -11
- package/pipeline/scripts/smoke-write-state.sh +49 -5
- package/pipeline/scripts/test-gap-rules/android.json +11 -11
- package/pipeline/scripts/test-gap-rules/ios.json +16 -11
- package/pipeline/scripts/test-gap-rules/node.json +19 -7
- package/pipeline/scripts/test-gap-rules/python.json +10 -4
- package/pipeline/scripts/test-gap-scan.mjs +44 -12
- package/pipeline/scripts/test-integrity-gate.mjs +5 -1
- package/pipeline/scripts/token-budget-report.mjs +44 -21
- package/pipeline/scripts/triage-memory.mjs +126 -34
- package/pipeline/scripts/uninstall.mjs +74 -30
- package/pipeline/scripts/validate-analysis-doc.mjs +15 -5
- package/pipeline/scripts/validate-diff-risk.mjs +32 -18
- package/pipeline/scripts/validate-test-gap.mjs +17 -7
- package/pipeline/scripts/validate-triage.mjs +17 -5
- package/pipeline/scripts/write-state.mjs +32 -9
- package/pipeline/skills/.skills-index.json +91 -91
- package/pipeline/skills/shared/README.md +57 -57
- package/pipeline/skills/shared/core/apple-archive-compliance/SKILL.md +1 -1
- package/pipeline/skills/shared/core/google-play-compliance/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent/SKILL.md +26 -279
- package/pipeline/skills/shared/core/multi-agent-analysis/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-analysis-resolve/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-autopilot/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-build-optimize/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-create-jira/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-design-check/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-dev/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-dev-autopilot/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-dev-local/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-dev-local-autopilot/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-diff-explain/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-finish/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-forget/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-garbage-collect/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-help/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-issue/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-jira/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-kill/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-language/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-local/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-local-autopilot/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-log/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-manual-test/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-prune-logs/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-purge/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-refactor/SKILL.md +16 -8
- package/pipeline/skills/shared/core/multi-agent-resume/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-review/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-review-issue/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-review-jira/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-routines/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-save/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-scan/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-search/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-setup/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-stack/SKILL.md +3 -3
- package/pipeline/skills/shared/core/multi-agent-status/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-sync/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-test/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-uninstall/SKILL.md +1 -1
- package/pipeline/skills/shared/core/multi-agent-update/SKILL.md +1 -1
- package/pipeline/skills/shared/external/accessibility-compliance-accessibility-audit/SKILL.md +1 -1
- package/pipeline/skills/shared/external/agent-introspection-debugging/SKILL.md +4 -4
- package/pipeline/skills/shared/external/agentflow/SKILL.md +1 -1
- package/pipeline/skills/shared/external/android-jetpack-compose-expert/SKILL.md +1 -1
- package/pipeline/skills/shared/external/android_ui_verification/SKILL.md +1 -1
- package/pipeline/skills/shared/external/api-patterns/SKILL.md +1 -1
- package/pipeline/skills/shared/external/api-security-best-practices/SKILL.md +1 -1
- package/pipeline/skills/shared/external/app-store-changelog/SKILL.md +1 -1
- package/pipeline/skills/shared/external/backlog/BACKLOG.md +1 -1
- package/pipeline/skills/shared/external/backlog/SKILL.md +12 -12
- package/pipeline/skills/shared/external/ci-cd-pipelines/SKILL.md +1 -1
- package/pipeline/skills/shared/external/context-compression/SKILL.md +1 -1
- package/pipeline/skills/shared/external/council/SKILL.md +3 -3
- package/pipeline/skills/shared/external/css-modern/SKILL.md +1 -1
- package/pipeline/skills/shared/external/database-patterns/SKILL.md +1 -1
- package/pipeline/skills/shared/external/debugging-strategies/SKILL.md +1 -1
- package/pipeline/skills/shared/external/docker-expert/SKILL.md +1 -1
- package/pipeline/skills/shared/external/fastapi-pro/SKILL.md +1 -1
- package/pipeline/skills/shared/external/firebase/SKILL.md +1 -1
- package/pipeline/skills/shared/external/github-actions-templates/SKILL.md +1 -1
- package/pipeline/skills/shared/external/help-skills/SKILL.md +1 -1
- package/pipeline/skills/shared/external/hig-components-content/SKILL.md +1 -1
- package/pipeline/skills/shared/external/hig-components-layout/SKILL.md +1 -1
- package/pipeline/skills/shared/external/hig-components-status/SKILL.md +1 -1
- package/pipeline/skills/shared/external/hig-components-system/SKILL.md +1 -1
- package/pipeline/skills/shared/external/hig-foundations/SKILL.md +1 -1
- package/pipeline/skills/shared/external/hig-inputs/SKILL.md +1 -1
- package/pipeline/skills/shared/external/hig-patterns/SKILL.md +1 -1
- package/pipeline/skills/shared/external/hig-platforms/SKILL.md +1 -1
- package/pipeline/skills/shared/external/hig-technologies/SKILL.md +1 -1
- package/pipeline/skills/shared/external/html-semantic/SKILL.md +1 -1
- package/pipeline/skills/shared/external/humanizer/SKILL.md +1 -1
- package/pipeline/skills/shared/external/ios-debugger-agent/SKILL.md +1 -1
- package/pipeline/skills/shared/external/ios-developer/SKILL.md +1 -1
- package/pipeline/skills/shared/external/kotlin-coroutines-expert/SKILL.md +1 -1
- package/pipeline/skills/shared/external/macos-menubar-tuist-app/SKILL.md +1 -1
- package/pipeline/skills/shared/external/macos-spm-app-packaging/SKILL.md +1 -1
- package/pipeline/skills/shared/external/monorepo-architect/SKILL.md +1 -1
- package/pipeline/skills/shared/external/nextjs-app-router/SKILL.md +1 -1
- package/pipeline/skills/shared/external/nodejs-backend-patterns/SKILL.md +1 -1
- package/pipeline/skills/shared/external/observability-engineer/SKILL.md +1 -1
- package/pipeline/skills/shared/external/python-patterns/SKILL.md +1 -1
- package/pipeline/skills/shared/external/react-best-practices/SKILL.md +1 -1
- package/pipeline/skills/shared/external/rest-api-design/SKILL.md +1 -1
- package/pipeline/skills/shared/external/search-first/SKILL.md +2 -2
- package/pipeline/skills/shared/external/skill-creator/SKILL.md +12 -12
- package/pipeline/skills/shared/external/skill-creator/audit.md +21 -21
- package/pipeline/skills/shared/external/skill-creator/checklist.md +3 -3
- package/pipeline/skills/shared/external/skill-creator/examples.md +10 -10
- package/pipeline/skills/shared/external/skill-creator/label-check.md +17 -17
- package/pipeline/skills/shared/external/skill-creator/scripts/audit-panel.js +86 -50
- package/pipeline/skills/shared/external/skill-creator/template.md +9 -9
- package/pipeline/skills/shared/external/swift-concurrency-expert/SKILL.md +1 -1
- package/pipeline/skills/shared/external/swiftui-performance-audit/SKILL.md +1 -1
- package/pipeline/skills/shared/external/swiftui-ui-patterns/SKILL.md +1 -1
- package/pipeline/skills/shared/external/swiftui-view-refactor/SKILL.md +1 -1
- package/pipeline/skills/shared/external/tailwind-css/SKILL.md +1 -1
- package/pipeline/skills/shared/external/testing-backend/SKILL.md +1 -1
- package/pipeline/skills/shared/external/typescript-patterns/SKILL.md +1 -1
- package/pipeline/skills/shared/external/vue-composition/SKILL.md +1 -1
- package/pipeline/skills/shared/external/web-accessibility/SKILL.md +1 -1
- package/pipeline/skills/shared/external/web-performance/SKILL.md +1 -1
- package/pipeline/skills/shared/external/web-testing/SKILL.md +1 -1
- package/pipeline/skills/shared/external/xcode-build-benchmark/schemas/build-benchmark.schema.json +9 -49
- package/pipeline/skills/skills-index.md +57 -57
- package/pipeline/scripts/smoke-plugin-validate.sh +0 -64
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
3
|
"$id": "https://github.com/mmerterden/multi-agent-pipeline/pipeline/schemas/design-check-config.schema.json",
|
|
4
4
|
"title": "Design Check Configuration",
|
|
5
|
-
"description": "Optional per-project config for /multi-agent:design-check. Stored at ~/.claude/projects/{slug}/design-check-config.json. Never committed. Everything here is optional: design_mock_detect auto-detects mock support and design_scenario_inventory auto-enumerates state drivers at run time; this file only overrides or augments that detection (extra mock switch keys, extra launch args / targets no source signal reveals, explicit variant->Figma-node mappings, status-bar crop, coverage floor, Confluence toggle). Keeps the engine generic
|
|
5
|
+
"description": "Optional per-project config for /multi-agent:design-check. Stored at ~/.claude/projects/{slug}/design-check-config.json. Never committed. Everything here is optional: design_mock_detect auto-detects mock support and design_scenario_inventory auto-enumerates state drivers at run time; this file only overrides or augments that detection (extra mock switch keys, extra launch args / targets no source signal reveals, explicit variant->Figma-node mappings, status-bar crop, coverage floor, Confluence toggle). Keeps the engine generic - project specifics live here, never in shipped code.",
|
|
6
6
|
"type": "object",
|
|
7
7
|
"additionalProperties": false,
|
|
8
8
|
"required": ["schemaVersion"],
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"inventory": {
|
|
41
41
|
"type": "object",
|
|
42
42
|
"additionalProperties": false,
|
|
43
|
-
"description": "Augments design_scenario_inventory, which decides the audit's target set. Only for states no source signal can reveal
|
|
43
|
+
"description": "Augments design_scenario_inventory, which decides the audit's target set. Only for states no source signal can reveal - everything detectable is detected.",
|
|
44
44
|
"properties": {
|
|
45
45
|
"extraLaunchArgs": {
|
|
46
46
|
"type": "array",
|
|
@@ -55,10 +55,16 @@
|
|
|
55
55
|
"additionalProperties": false,
|
|
56
56
|
"required": ["id"],
|
|
57
57
|
"properties": {
|
|
58
|
-
"id": {
|
|
58
|
+
"id": {
|
|
59
|
+
"type": "string",
|
|
60
|
+
"description": "Stable target id, e.g. 'config:seatmap-3d'."
|
|
61
|
+
},
|
|
59
62
|
"kind": { "type": "string", "description": "Target kind label (default 'config')." },
|
|
60
63
|
"label": { "type": "string" },
|
|
61
|
-
"screen": {
|
|
64
|
+
"screen": {
|
|
65
|
+
"type": "string",
|
|
66
|
+
"description": "Screen this target belongs to (groups the coverage report)."
|
|
67
|
+
},
|
|
62
68
|
"driver": {
|
|
63
69
|
"type": "object",
|
|
64
70
|
"additionalProperties": true,
|
|
@@ -70,7 +76,7 @@
|
|
|
70
76
|
"ignoreTargets": {
|
|
71
77
|
"type": "array",
|
|
72
78
|
"items": { "type": "string" },
|
|
73
|
-
"description": "Target ids to drop from the inventory entirely (dead drivers, states retired in code but still referenced). Unlike a skip, these never enter the coverage gate
|
|
79
|
+
"description": "Target ids to drop from the inventory entirely (dead drivers, states retired in code but still referenced). Unlike a skip, these never enter the coverage gate - use sparingly and prefer a skip with a reason."
|
|
74
80
|
}
|
|
75
81
|
}
|
|
76
82
|
},
|
|
@@ -88,7 +94,7 @@
|
|
|
88
94
|
"confirmAbove": {
|
|
89
95
|
"type": "integer",
|
|
90
96
|
"default": 25,
|
|
91
|
-
"description": "Relaunch count (inventory.relaunchCount for the scoped set, NOT the target count) above which Phase 0 asks for confirmation. Relaunches are the run's real cost: one relaunch serves every in-app target on that screen. Whole-module remains the intended default
|
|
97
|
+
"description": "Relaunch count (inventory.relaunchCount for the scoped set, NOT the target count) above which Phase 0 asks for confirmation. Relaunches are the run's real cost: one relaunch serves every in-app target on that screen. Whole-module remains the intended default - this threshold estimates cost, it does not invite shrinking the audit."
|
|
92
98
|
}
|
|
93
99
|
}
|
|
94
100
|
},
|
|
@@ -97,7 +103,10 @@
|
|
|
97
103
|
"additionalProperties": false,
|
|
98
104
|
"description": "Figma frame + variant mapping overrides.",
|
|
99
105
|
"properties": {
|
|
100
|
-
"url": {
|
|
106
|
+
"url": {
|
|
107
|
+
"type": "string",
|
|
108
|
+
"description": "Default Figma MCP URL for this module's frame/page."
|
|
109
|
+
},
|
|
101
110
|
"frameSize": {
|
|
102
111
|
"type": "object",
|
|
103
112
|
"additionalProperties": false,
|
|
@@ -114,9 +123,15 @@
|
|
|
114
123
|
"additionalProperties": false,
|
|
115
124
|
"required": ["id", "figmaNodeId"],
|
|
116
125
|
"properties": {
|
|
117
|
-
"id": {
|
|
126
|
+
"id": {
|
|
127
|
+
"type": "string",
|
|
128
|
+
"description": "Mock variant id (matches a variantsHint / fixture name)."
|
|
129
|
+
},
|
|
118
130
|
"label": { "type": "string" },
|
|
119
|
-
"figmaNodeId": {
|
|
131
|
+
"figmaNodeId": {
|
|
132
|
+
"type": "string",
|
|
133
|
+
"description": "Figma node id for this variant's frame."
|
|
134
|
+
},
|
|
120
135
|
"activation": {
|
|
121
136
|
"type": "object",
|
|
122
137
|
"additionalProperties": true,
|
|
@@ -130,7 +145,10 @@
|
|
|
130
145
|
"additionalProperties": false,
|
|
131
146
|
"description": "Capture / comparison tuning.",
|
|
132
147
|
"properties": {
|
|
133
|
-
"cropTopLive": {
|
|
148
|
+
"cropTopLive": {
|
|
149
|
+
"type": "number",
|
|
150
|
+
"description": "Pixels to crop from the top of the live capture (status bar)."
|
|
151
|
+
},
|
|
134
152
|
"tolerancePx": { "type": "number", "default": 2 },
|
|
135
153
|
"colorTolerance": { "type": "number", "default": 3 },
|
|
136
154
|
"maxDiffPct": { "type": "number", "default": 1.0 }
|
|
@@ -141,7 +159,10 @@
|
|
|
141
159
|
"additionalProperties": false,
|
|
142
160
|
"description": "Report output + export.",
|
|
143
161
|
"properties": {
|
|
144
|
-
"outputRoot": {
|
|
162
|
+
"outputRoot": {
|
|
163
|
+
"type": "string",
|
|
164
|
+
"description": "Report root dir (default ~/DesignChecks)."
|
|
165
|
+
},
|
|
145
166
|
"formats": {
|
|
146
167
|
"type": "array",
|
|
147
168
|
"items": { "type": "string", "enum": ["html", "pdf", "confluence"] },
|
|
@@ -33,8 +33,14 @@
|
|
|
33
33
|
"required": ["status"],
|
|
34
34
|
"properties": {
|
|
35
35
|
"status": { "type": "string", "enum": ["pass", "fail", "skipped"] },
|
|
36
|
-
"skip_reason": {
|
|
37
|
-
|
|
36
|
+
"skip_reason": {
|
|
37
|
+
"type": "string",
|
|
38
|
+
"description": "Required when status == 'skipped'. E.g. 'xcodebuild not installed on this runner'."
|
|
39
|
+
},
|
|
40
|
+
"error_summary": {
|
|
41
|
+
"type": "string",
|
|
42
|
+
"description": "First failure line + count when status == 'fail'."
|
|
43
|
+
}
|
|
38
44
|
}
|
|
39
45
|
},
|
|
40
46
|
"lint": {
|
|
@@ -84,11 +90,20 @@
|
|
|
84
90
|
"required": ["severity", "file", "issue"],
|
|
85
91
|
"properties": {
|
|
86
92
|
"severity": { "type": "string", "enum": ["blocking", "important", "suggestion"] },
|
|
87
|
-
"file": {
|
|
93
|
+
"file": {
|
|
94
|
+
"type": "string",
|
|
95
|
+
"description": "Repo-relative path. For multi-repo tasks, prefixed with '<repo-name>/'."
|
|
96
|
+
},
|
|
88
97
|
"line": { "type": "integer", "minimum": 1 },
|
|
89
|
-
"rule": {
|
|
98
|
+
"rule": {
|
|
99
|
+
"type": "string",
|
|
100
|
+
"description": "Citation. Format: 'rules/<file>.md#<anchor>' or 'gate/<name>'."
|
|
101
|
+
},
|
|
90
102
|
"issue": { "type": "string", "description": "Short, one-sentence description." },
|
|
91
|
-
"fix": {
|
|
103
|
+
"fix": {
|
|
104
|
+
"type": "string",
|
|
105
|
+
"description": "Concrete suggestion the generator can act on without re-reading the rule."
|
|
106
|
+
}
|
|
92
107
|
}
|
|
93
108
|
}
|
|
94
109
|
},
|
|
@@ -283,10 +283,22 @@
|
|
|
283
283
|
"additionalProperties": false,
|
|
284
284
|
"properties": {
|
|
285
285
|
"mode": { "type": "string", "enum": ["native", "custom"], "default": "native" },
|
|
286
|
-
"router": {
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
286
|
+
"router": {
|
|
287
|
+
"type": "string",
|
|
288
|
+
"description": "Router type that dispatches routes (custom mode)."
|
|
289
|
+
},
|
|
290
|
+
"routeEnum": {
|
|
291
|
+
"type": "string",
|
|
292
|
+
"description": "Exhaustive cross-surface route enum (custom mode)."
|
|
293
|
+
},
|
|
294
|
+
"sceneType": {
|
|
295
|
+
"type": "string",
|
|
296
|
+
"description": "Headless screen container type (custom mode, optional)."
|
|
297
|
+
},
|
|
298
|
+
"navigatorProtocol": {
|
|
299
|
+
"type": "string",
|
|
300
|
+
"description": "DI'd selection/present API (custom mode, optional)."
|
|
301
|
+
}
|
|
290
302
|
}
|
|
291
303
|
},
|
|
292
304
|
"overlaySystem": {
|
|
@@ -294,8 +306,15 @@
|
|
|
294
306
|
"additionalProperties": false,
|
|
295
307
|
"properties": {
|
|
296
308
|
"mode": { "type": "string", "enum": ["native", "custom"], "default": "native" },
|
|
297
|
-
"center": {
|
|
298
|
-
|
|
309
|
+
"center": {
|
|
310
|
+
"type": "string",
|
|
311
|
+
"description": "DI'd overlay center protocol callable from VM/coordinator (custom mode)."
|
|
312
|
+
},
|
|
313
|
+
"surfaces": {
|
|
314
|
+
"type": "array",
|
|
315
|
+
"items": { "type": "string" },
|
|
316
|
+
"description": "Independent render surfaces, e.g. root/currentScene (custom mode, optional)."
|
|
317
|
+
}
|
|
299
318
|
}
|
|
300
319
|
},
|
|
301
320
|
"sheetSystem": {
|
|
@@ -303,11 +322,24 @@
|
|
|
303
322
|
"additionalProperties": false,
|
|
304
323
|
"properties": {
|
|
305
324
|
"mode": { "type": "string", "enum": ["native", "custom"], "default": "native" },
|
|
306
|
-
"brandedModifier": {
|
|
307
|
-
|
|
325
|
+
"brandedModifier": {
|
|
326
|
+
"type": "string",
|
|
327
|
+
"description": "Branded sheet entry modifier, e.g. bottomSheet (custom mode)."
|
|
328
|
+
},
|
|
329
|
+
"headlessModifiers": {
|
|
330
|
+
"type": "array",
|
|
331
|
+
"items": { "type": "string" },
|
|
332
|
+
"description": "Headless sheet modifiers, e.g. modalSheet/dockedSheet/expandableSheet/detentNavigationSheet (custom mode)."
|
|
333
|
+
},
|
|
308
334
|
"detentType": { "type": "string", "description": "Detent enum type (custom mode)." },
|
|
309
|
-
"backdropType": {
|
|
310
|
-
|
|
335
|
+
"backdropType": {
|
|
336
|
+
"type": "string",
|
|
337
|
+
"description": "Backdrop enum type (custom mode)."
|
|
338
|
+
},
|
|
339
|
+
"cornerRadiusToken": {
|
|
340
|
+
"type": "string",
|
|
341
|
+
"description": "Branded top-corner radius token (custom mode)."
|
|
342
|
+
}
|
|
311
343
|
}
|
|
312
344
|
}
|
|
313
345
|
}
|
|
@@ -9,8 +9,16 @@
|
|
|
9
9
|
"required": ["v", "ts", "repo_slug", "kind", "scope", "statement"],
|
|
10
10
|
"properties": {
|
|
11
11
|
"v": { "type": "string", "description": "Row schema version." },
|
|
12
|
-
"ts": {
|
|
13
|
-
|
|
12
|
+
"ts": {
|
|
13
|
+
"type": "string",
|
|
14
|
+
"format": "date-time",
|
|
15
|
+
"description": "When the entry was recorded."
|
|
16
|
+
},
|
|
17
|
+
"repo_slug": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"minLength": 1,
|
|
20
|
+
"description": "Repo the knowledge belongs to."
|
|
21
|
+
},
|
|
14
22
|
"kind": {
|
|
15
23
|
"type": "string",
|
|
16
24
|
"enum": ["fact", "convention", "rejected-preference"],
|
|
@@ -30,10 +30,7 @@ export function migrate(prev) {
|
|
|
30
30
|
if (prev.board.projectId && !next.github.projectV2Id) {
|
|
31
31
|
next.github.projectV2Id = prev.board.projectId;
|
|
32
32
|
}
|
|
33
|
-
if (
|
|
34
|
-
prev.board.customFields &&
|
|
35
|
-
!next.github.projectV2Fields
|
|
36
|
-
) {
|
|
33
|
+
if (prev.board.customFields && !next.github.projectV2Fields) {
|
|
37
34
|
next.github.projectV2Fields = { ...prev.board.customFields };
|
|
38
35
|
}
|
|
39
36
|
}
|
|
@@ -25,9 +25,16 @@ export default function migrate(data) {
|
|
|
25
25
|
|
|
26
26
|
// keychainMapping defaults (10 services)
|
|
27
27
|
const kmDefaults = {
|
|
28
|
-
jira: null,
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
jira: null,
|
|
29
|
+
bitbucket_token: null,
|
|
30
|
+
bitbucket_user: null,
|
|
31
|
+
github: null,
|
|
32
|
+
confluence: null,
|
|
33
|
+
figma: null,
|
|
34
|
+
figma_mcp: null,
|
|
35
|
+
fortify: null,
|
|
36
|
+
firebase: null,
|
|
37
|
+
jenkins: null,
|
|
31
38
|
};
|
|
32
39
|
const km = out.global.keychainMapping || {};
|
|
33
40
|
for (const [k, v] of Object.entries(kmDefaults)) {
|
|
@@ -55,13 +62,23 @@ export default function migrate(data) {
|
|
|
55
62
|
if (!out.global.serviceStatus) out.global.serviceStatus = {};
|
|
56
63
|
if (!out.global.settings) {
|
|
57
64
|
out.global.settings = {
|
|
58
|
-
branchTtlDays: 15,
|
|
59
|
-
|
|
60
|
-
|
|
65
|
+
branchTtlDays: 15,
|
|
66
|
+
pushRetryMax: 5,
|
|
67
|
+
buildRetryMax: 3,
|
|
68
|
+
serviceStatusCacheSeconds: 300,
|
|
69
|
+
repoScanDays: 90,
|
|
70
|
+
identityRoutingEnabled: false,
|
|
71
|
+
multiRepoEnabled: false,
|
|
72
|
+
pushMustSucceed: true,
|
|
61
73
|
};
|
|
62
74
|
}
|
|
63
75
|
if (!out.global.triageCrossCheck) {
|
|
64
|
-
out.global.triageCrossCheck = {
|
|
76
|
+
out.global.triageCrossCheck = {
|
|
77
|
+
enabled: false,
|
|
78
|
+
samplePct: 10,
|
|
79
|
+
model: "sonnet",
|
|
80
|
+
blockOnDisagreement: false,
|
|
81
|
+
};
|
|
65
82
|
}
|
|
66
83
|
if (!out.global.promptLanguage) out.global.promptLanguage = "en";
|
|
67
84
|
|
|
@@ -45,11 +45,14 @@
|
|
|
45
45
|
"description": "Array of todo IDs that must reach `completed` (or `skipped`) before this one can move to `in_progress`. Empty for parallelizable steps.",
|
|
46
46
|
"items": { "type": "string", "pattern": "^t[0-9]+$" }
|
|
47
47
|
},
|
|
48
|
-
"startedAt":
|
|
48
|
+
"startedAt": { "type": "string", "format": "date-time" },
|
|
49
49
|
"completedAt": { "type": "string", "format": "date-time" },
|
|
50
|
-
"notes":
|
|
50
|
+
"notes": {
|
|
51
|
+
"type": "string",
|
|
52
|
+
"description": "Free-text outcome - commit hash, test count, anything Phase 7 should echo."
|
|
53
|
+
},
|
|
51
54
|
"failureReason": { "type": "string" },
|
|
52
|
-
"skipReason":
|
|
55
|
+
"skipReason": { "type": "string" },
|
|
53
56
|
"estimatedMinutes": {
|
|
54
57
|
"type": "integer",
|
|
55
58
|
"minimum": 1,
|
|
@@ -20,7 +20,11 @@
|
|
|
20
20
|
"additionalProperties": false,
|
|
21
21
|
"required": ["id", "title", "type", "files"],
|
|
22
22
|
"properties": {
|
|
23
|
-
"id": {
|
|
23
|
+
"id": {
|
|
24
|
+
"type": "string",
|
|
25
|
+
"pattern": "^T[0-9]+$",
|
|
26
|
+
"description": "Local task id, e.g. T1, T2."
|
|
27
|
+
},
|
|
24
28
|
"title": { "type": "string", "minLength": 4 },
|
|
25
29
|
"type": {
|
|
26
30
|
"type": "string",
|