@mmerterden/multi-agent-pipeline 8.6.2 → 10.2.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 +660 -2483
- package/README.md +100 -101
- package/docs/features.md +1 -1
- package/index.js +8 -10
- package/install/_adapters.mjs +5 -1
- package/install/_common.mjs +63 -0
- package/install/claude.mjs +14 -14
- package/install/copilot.mjs +14 -8
- package/install/index.mjs +85 -19
- package/install/templates/claude-hooks.json +18 -0
- package/install/templates/copilot-instructions.md +3 -3
- package/package.json +21 -6
- package/pipeline/adapters/_base.mjs +366 -14
- package/pipeline/adapters/antigravity.mjs +140 -0
- package/pipeline/adapters/codex.mjs +159 -0
- package/pipeline/adapters/copilot-chat-orchestration.mjs +148 -0
- package/pipeline/adapters/copilot-chat.mjs +34 -68
- package/pipeline/adapters/cursor-orchestration.mjs +152 -0
- package/pipeline/adapters/cursor.mjs +49 -90
- package/pipeline/agents/android-architect.md +3 -3
- package/pipeline/agents/backend-architect.md +2 -2
- package/pipeline/agents/code-reviewer.md +8 -8
- package/pipeline/agents/dev-critic.md +17 -17
- package/pipeline/agents/explorer.md +3 -3
- package/pipeline/agents/ios-architect.md +2 -2
- package/pipeline/agents/security-auditor.md +10 -10
- package/pipeline/agents/task-clarifier.md +18 -18
- package/pipeline/claude-md-template.md +3 -3
- package/pipeline/commands/archive-guard.md +3 -3
- package/pipeline/commands/figma-to-swiftui.md +10 -10
- package/pipeline/commands/multi-agent/_account-picker.md +12 -8
- package/pipeline/commands/multi-agent/_dev-context.md +15 -15
- package/pipeline/commands/multi-agent/_input-parser.md +4 -4
- package/pipeline/commands/multi-agent/_repo-picker.md +9 -9
- package/pipeline/commands/multi-agent/analysis-resolve.md +129 -0
- package/pipeline/commands/multi-agent/analysis.md +667 -0
- package/pipeline/commands/multi-agent/autopilot.md +22 -22
- package/pipeline/commands/multi-agent/build-optimize.md +77 -0
- package/pipeline/commands/multi-agent/channels.md +96 -96
- package/pipeline/commands/multi-agent/delete.md +19 -17
- package/pipeline/commands/multi-agent/dev-autopilot.md +20 -20
- package/pipeline/commands/multi-agent/dev-local-autopilot.md +22 -22
- package/pipeline/commands/multi-agent/dev-local.md +23 -20
- package/pipeline/commands/multi-agent/dev.md +43 -43
- package/pipeline/commands/multi-agent/diff-explain.md +4 -4
- package/pipeline/commands/multi-agent/garbage-collect.md +58 -0
- package/pipeline/commands/multi-agent/help.md +65 -56
- package/pipeline/commands/multi-agent/issue.md +3 -3
- package/pipeline/commands/multi-agent/jira.md +12 -12
- package/pipeline/commands/multi-agent/kill.md +6 -6
- package/pipeline/commands/multi-agent/language.md +12 -12
- package/pipeline/commands/multi-agent/local-autopilot.md +34 -34
- package/pipeline/commands/multi-agent/local.md +24 -25
- package/pipeline/commands/multi-agent/log.md +6 -6
- package/pipeline/commands/multi-agent/manual-test.md +3 -3
- package/pipeline/commands/multi-agent/prune-logs.md +60 -0
- package/pipeline/commands/multi-agent/purge.md +10 -7
- package/pipeline/commands/multi-agent/refactor.md +9 -9
- package/pipeline/commands/multi-agent/refs/analysis-template.md +1062 -0
- package/pipeline/commands/multi-agent/refs/android-guide.md +15 -13
- package/pipeline/commands/multi-agent/refs/audit-guide.md +20 -20
- package/pipeline/commands/multi-agent/refs/backend-guide.md +9 -9
- package/pipeline/commands/multi-agent/refs/channels/confluence.md +17 -17
- package/pipeline/commands/multi-agent/refs/channels/issue-comment.md +30 -30
- package/pipeline/commands/multi-agent/refs/channels/jira.md +16 -15
- package/pipeline/commands/multi-agent/refs/channels/pr-review-actions.md +19 -17
- package/pipeline/commands/multi-agent/refs/channels/pr.md +22 -22
- package/pipeline/commands/multi-agent/refs/channels/wiki.md +19 -19
- package/pipeline/commands/multi-agent/refs/component-dispatch.md +11 -11
- package/pipeline/commands/multi-agent/refs/conventions-defaults.md +179 -0
- package/pipeline/commands/multi-agent/refs/cross-cli-contract.md +41 -35
- package/pipeline/commands/multi-agent/refs/features/dev-critic.md +5 -5
- package/pipeline/commands/multi-agent/refs/features/external-context-injection.md +6 -6
- package/pipeline/commands/multi-agent/refs/features/model-fallback.md +91 -0
- package/pipeline/commands/multi-agent/refs/features/plan-todos.md +1 -1
- package/pipeline/commands/multi-agent/refs/features/prior-fix-detection.md +4 -4
- package/pipeline/commands/multi-agent/refs/features/repo-map.md +6 -6
- package/pipeline/commands/multi-agent/refs/features/shadow-git.md +2 -2
- package/pipeline/commands/multi-agent/refs/frontend-guide.md +16 -16
- package/pipeline/commands/multi-agent/refs/issue-jira-triad.md +18 -18
- package/pipeline/commands/multi-agent/refs/keychain.md +18 -8
- package/pipeline/commands/multi-agent/refs/knowledge.md +9 -9
- package/pipeline/commands/multi-agent/refs/multi-repo-integration-build.md +19 -19
- package/pipeline/commands/multi-agent/refs/phases/log-format.md +29 -9
- package/pipeline/commands/multi-agent/refs/phases/modes.md +33 -33
- package/pipeline/commands/multi-agent/refs/phases/operations.md +24 -14
- package/pipeline/commands/multi-agent/refs/phases/phase-0-init.md +107 -57
- package/pipeline/commands/multi-agent/refs/phases/phase-1-analysis.md +65 -29
- package/pipeline/commands/multi-agent/refs/phases/phase-2-planning.md +114 -62
- package/pipeline/commands/multi-agent/refs/phases/phase-3-dev.md +99 -36
- package/pipeline/commands/multi-agent/refs/phases/phase-4-review.md +181 -62
- package/pipeline/commands/multi-agent/refs/phases/phase-5-test.md +33 -18
- package/pipeline/commands/multi-agent/refs/phases/phase-6-commit.md +45 -43
- package/pipeline/commands/multi-agent/refs/phases/phase-7-report.md +54 -28
- package/pipeline/commands/multi-agent/refs/phases.md +17 -17
- package/pipeline/commands/multi-agent/refs/picker-contract.md +65 -0
- package/pipeline/commands/multi-agent/refs/progress-contract.md +37 -21
- package/pipeline/commands/multi-agent/refs/rules.md +83 -25
- package/pipeline/commands/multi-agent/refs/swiftui-guide.md +32 -30
- package/pipeline/commands/multi-agent/refs/tracker-contract.md +54 -30
- package/pipeline/commands/multi-agent/refs/wiki-capture.md +36 -33
- package/pipeline/commands/multi-agent/resume.md +12 -9
- package/pipeline/commands/multi-agent/review.md +24 -24
- package/pipeline/commands/multi-agent/scan.md +10 -10
- package/pipeline/commands/multi-agent/search.md +8 -8
- package/pipeline/commands/multi-agent/setup.md +111 -84
- package/pipeline/commands/multi-agent/stack.md +5 -5
- package/pipeline/commands/multi-agent/status.md +5 -5
- package/pipeline/commands/multi-agent/sync.md +123 -111
- package/pipeline/commands/multi-agent/test.md +6 -6
- package/pipeline/commands/multi-agent/update.md +1 -1
- package/pipeline/commands/multi-agent.md +64 -58
- package/pipeline/commands/sim-test.md +14 -14
- package/pipeline/eval/golden-tasks/01-ios-bugfix-darkmode/expected/phase-1-analysis.json +1 -1
- package/pipeline/eval/golden-tasks/01-ios-bugfix-darkmode/expected/phase-4-review.json +2 -2
- package/pipeline/eval/golden-tasks/01-ios-bugfix-darkmode/expected/phase-4-triage.json +2 -2
- package/pipeline/eval/golden-tasks/01-ios-bugfix-darkmode/metadata.json +1 -1
- package/pipeline/eval/golden-tasks/02-android-feature-compose/expected/phase-1-analysis.json +2 -2
- package/pipeline/eval/golden-tasks/02-android-feature-compose/expected/phase-4-review.json +3 -3
- package/pipeline/eval/golden-tasks/02-android-feature-compose/expected/phase-4-triage.json +4 -4
- package/pipeline/eval/golden-tasks/02-android-feature-compose/metadata.json +1 -1
- package/pipeline/eval/golden-tasks/02-android-feature-compose/task.json +1 -1
- package/pipeline/eval/golden-tasks/03-backend-python-ratelimit/expected/phase-1-analysis.json +29 -0
- package/pipeline/eval/golden-tasks/03-backend-python-ratelimit/expected/phase-2-plan.json +42 -0
- package/pipeline/eval/golden-tasks/03-backend-python-ratelimit/expected/phase-4-review.json +20 -0
- package/pipeline/eval/golden-tasks/03-backend-python-ratelimit/expected/phase-4-triage.json +15 -0
- package/pipeline/eval/golden-tasks/03-backend-python-ratelimit/metadata.json +14 -0
- package/pipeline/eval/golden-tasks/03-backend-python-ratelimit/task.json +12 -0
- package/pipeline/eval/golden-tasks/04-frontend-next-hydration/expected/phase-1-analysis.json +29 -0
- package/pipeline/eval/golden-tasks/04-frontend-next-hydration/expected/phase-2-plan.json +40 -0
- package/pipeline/eval/golden-tasks/04-frontend-next-hydration/expected/phase-4-review.json +20 -0
- package/pipeline/eval/golden-tasks/04-frontend-next-hydration/expected/phase-4-triage.json +15 -0
- package/pipeline/eval/golden-tasks/04-frontend-next-hydration/metadata.json +14 -0
- package/pipeline/eval/golden-tasks/04-frontend-next-hydration/task.json +12 -0
- package/pipeline/eval/golden-tasks/05-ios-security-keychain/expected/phase-1-analysis.json +29 -0
- package/pipeline/eval/golden-tasks/05-ios-security-keychain/expected/phase-2-plan.json +42 -0
- package/pipeline/eval/golden-tasks/05-ios-security-keychain/expected/phase-4-review.json +28 -0
- package/pipeline/eval/golden-tasks/05-ios-security-keychain/expected/phase-4-triage.json +27 -0
- package/pipeline/eval/golden-tasks/05-ios-security-keychain/metadata.json +14 -0
- package/pipeline/eval/golden-tasks/05-ios-security-keychain/task.json +12 -0
- package/pipeline/eval/golden-tasks/06-android-refactor-usecase/expected/phase-1-analysis.json +29 -0
- package/pipeline/eval/golden-tasks/06-android-refactor-usecase/expected/phase-2-plan.json +41 -0
- package/pipeline/eval/golden-tasks/06-android-refactor-usecase/expected/phase-4-review.json +12 -0
- package/pipeline/eval/golden-tasks/06-android-refactor-usecase/expected/phase-4-triage.json +6 -0
- package/pipeline/eval/golden-tasks/06-android-refactor-usecase/metadata.json +14 -0
- package/pipeline/eval/golden-tasks/06-android-refactor-usecase/task.json +12 -0
- package/pipeline/eval/golden-tasks/07-backend-node-idempotency/expected/phase-1-analysis.json +29 -0
- package/pipeline/eval/golden-tasks/07-backend-node-idempotency/expected/phase-2-plan.json +42 -0
- package/pipeline/eval/golden-tasks/07-backend-node-idempotency/expected/phase-4-review.json +28 -0
- package/pipeline/eval/golden-tasks/07-backend-node-idempotency/expected/phase-4-triage.json +27 -0
- package/pipeline/eval/golden-tasks/07-backend-node-idempotency/metadata.json +14 -0
- package/pipeline/eval/golden-tasks/07-backend-node-idempotency/task.json +12 -0
- package/pipeline/eval/golden-tasks/08-ios-auth-consensus-unverified/expected/phase-1-analysis.json +25 -0
- package/pipeline/eval/golden-tasks/08-ios-auth-consensus-unverified/expected/phase-2-plan.json +31 -0
- package/pipeline/eval/golden-tasks/08-ios-auth-consensus-unverified/expected/phase-4-review.json +12 -0
- package/pipeline/eval/golden-tasks/08-ios-auth-consensus-unverified/expected/phase-4-triage.json +18 -0
- package/pipeline/eval/golden-tasks/08-ios-auth-consensus-unverified/metadata.json +14 -0
- package/pipeline/eval/golden-tasks/08-ios-auth-consensus-unverified/task.json +12 -0
- package/pipeline/eval/golden-tasks/README.md +14 -14
- package/pipeline/eval/intent-cases.json +40 -0
- package/pipeline/eval/run-metrics-fixture.json +46 -0
- package/pipeline/eval/triage/01-empty-findings/notes.md +1 -1
- package/pipeline/eval/triage/02-real-blocker/notes.md +2 -2
- package/pipeline/eval/triage/03-out-of-scope-defer/notes.md +1 -1
- package/pipeline/eval/triage/04-false-positive-reject/notes.md +1 -1
- package/pipeline/eval/triage/05-mixed-classification/notes.md +2 -2
- package/pipeline/eval/triage/06-severity-mismatch/notes.md +2 -2
- package/pipeline/eval/triage/07-duplicate-reviewers/notes.md +1 -1
- package/pipeline/eval/triage/08-style-misclassified/notes.md +1 -1
- package/pipeline/eval/triage/09-cascading-finding/notes.md +2 -2
- package/pipeline/eval/triage/10-deferred-crossref/notes.md +2 -2
- package/pipeline/eval/triage/11-vercel-token-leak-blocker/expected.json +3 -3
- package/pipeline/eval/triage/11-vercel-token-leak-blocker/input.json +2 -2
- package/pipeline/eval/triage/11-vercel-token-leak-blocker/notes.md +5 -5
- package/pipeline/eval/triage/README.md +4 -4
- package/pipeline/lib/account-resolver.sh +3 -3
- package/pipeline/lib/ask-choice.sh +98 -0
- package/pipeline/lib/channels-multi-repo.sh +3 -3
- package/pipeline/lib/classify-intent.sh +110 -0
- package/pipeline/lib/context-link-extractor.sh +3 -3
- package/pipeline/lib/credential-store-resolver.sh +3 -3
- package/pipeline/lib/credential-store.sh +9 -5
- package/pipeline/lib/extract-conventions.sh +1034 -0
- package/pipeline/lib/fetch-confluence.sh +5 -5
- package/pipeline/lib/fetch-crashlytics.sh +7 -7
- package/pipeline/lib/fetch-fortify.sh +6 -22
- package/pipeline/lib/fetch-swagger.sh +6 -6
- package/pipeline/lib/figma-screenshot.sh +536 -0
- package/pipeline/lib/issue-fetcher.sh +46 -20
- package/pipeline/lib/md2confluence-v3.py +1076 -0
- package/pipeline/lib/multi-repo-pipeline.sh +13 -22
- package/pipeline/lib/plan-todos.sh +7 -7
- package/pipeline/lib/post-pr-review.sh +53 -21
- package/pipeline/lib/repo-cache.sh +5 -5
- package/pipeline/lib/review-watch.sh +17 -13
- package/pipeline/lib/shadow-git.sh +7 -7
- package/pipeline/lib/submodule-detector.sh +3 -3
- package/pipeline/lib/vercel-deploy.sh +28 -15
- package/pipeline/preferences-template.json +28 -4
- package/pipeline/rules/app-store-guidelines.md +2 -2
- package/pipeline/rules/code-style.md +6 -6
- package/pipeline/rules/figma-pipeline.md +100 -2
- package/pipeline/rules/kotlin-android.md +8 -8
- package/pipeline/rules/security.md +4 -4
- package/pipeline/rules/tdd.md +1 -1
- package/pipeline/rules/testing.md +5 -5
- package/pipeline/schemas/agent-state.schema.json +63 -20
- package/pipeline/schemas/analysis-output.schema.json +7 -2
- package/pipeline/schemas/analysis-spec.schema.json +484 -0
- package/pipeline/schemas/clarify-output.schema.json +5 -5
- package/pipeline/schemas/conventions-output.schema.json +70 -0
- package/pipeline/schemas/dev-critic-output.schema.json +2 -2
- package/pipeline/schemas/diff-risk.schema.json +3 -3
- package/pipeline/schemas/figma-project-config.schema.json +42 -3
- package/pipeline/schemas/learnings-ledger.schema.json +39 -0
- package/pipeline/schemas/migrations/README.md +2 -2
- package/pipeline/schemas/migrations/figma-config-1.0.0-to-2.0.0.mjs +5 -5
- package/pipeline/schemas/migrations/prefs-2.0.0-to-2.1.0.mjs +3 -3
- package/pipeline/schemas/migrations/prefs-2.1.0-to-2.2.0.mjs +4 -4
- package/pipeline/schemas/migrations/prefs-2.2.0-to-2.3.0.mjs +5 -5
- package/pipeline/schemas/migrations/state-2.0.0-to-2.1.0.mjs +3 -3
- package/pipeline/schemas/plan-todos.schema.json +4 -4
- package/pipeline/schemas/planning-output.schema.json +3 -3
- package/pipeline/schemas/prefs.schema.json +95 -11
- package/pipeline/schemas/reviewer-output.schema.json +7 -3
- package/pipeline/schemas/test-gap.schema.json +1 -1
- package/pipeline/schemas/token-budget.json +8 -8
- package/pipeline/schemas/triage-corpus.schema.json +1 -1
- package/pipeline/schemas/triage-output.schema.json +44 -6
- package/pipeline/scripts/README.md +64 -64
- package/pipeline/scripts/aggregate-metrics.mjs +55 -16
- package/pipeline/scripts/audit-log-rotate.sh +3 -3
- package/pipeline/scripts/audit-log.sh +20 -7
- package/pipeline/scripts/benchmark-phase-0.sh +6 -6
- package/pipeline/scripts/build-skills-index.mjs +15 -15
- package/pipeline/scripts/check-md-links.mjs +59 -0
- package/pipeline/scripts/classify-plan-safety.mjs +24 -18
- package/pipeline/scripts/cost-budget-check.mjs +160 -0
- package/pipeline/scripts/cost-table.json +17 -13
- package/pipeline/scripts/diff-explain.mjs +12 -12
- package/pipeline/scripts/diff-risk-score.mjs +18 -17
- package/pipeline/scripts/eval-golden-tasks-live.mjs +13 -10
- package/pipeline/scripts/eval-golden-tasks.mjs +3 -14
- package/pipeline/scripts/eval-intent.mjs +103 -0
- package/pipeline/scripts/eval-triage.mjs +3 -3
- package/pipeline/scripts/evidence-gate.mjs +155 -0
- package/pipeline/scripts/fixtures/install-layout.tsv +9 -9
- package/pipeline/scripts/gc-tmp.sh +102 -0
- package/pipeline/scripts/gen-mode-dispatch.mjs +27 -21
- package/pipeline/scripts/gen-skills-index.mjs +6 -6
- package/pipeline/scripts/github-ssh-setup.sh +1 -1
- package/pipeline/scripts/keychain-save.sh +1 -1
- package/pipeline/scripts/keychain.py +6 -6
- package/pipeline/scripts/learnings-ledger.mjs +284 -0
- package/pipeline/scripts/lint-skills.mjs +80 -0
- package/pipeline/scripts/log-metric.sh +18 -9
- package/pipeline/scripts/match-skills.mjs +13 -8
- package/pipeline/scripts/memory-load.sh +3 -3
- package/pipeline/scripts/memory-save.sh +5 -5
- package/pipeline/scripts/migrate-prefs.mjs +17 -17
- package/pipeline/scripts/migrate-state.mjs +12 -12
- package/pipeline/scripts/output-quality-check.sh +7 -7
- package/pipeline/scripts/phase-banner.sh +5 -5
- package/pipeline/scripts/phase-tracker.sh +97 -53
- package/pipeline/scripts/pre-commit-check.sh +45 -5
- package/pipeline/scripts/pre-push-check.sh +7 -7
- package/pipeline/scripts/prune-logs.sh +118 -0
- package/pipeline/scripts/render-agent-log-cost.sh +55 -18
- package/pipeline/scripts/render-cost-summary.sh +9 -9
- package/pipeline/scripts/render-work-summary.sh +4 -4
- package/pipeline/scripts/repo-map.mjs +9 -9
- package/pipeline/scripts/run-aggregator.mjs +7 -6
- package/pipeline/scripts/run-metrics.mjs +129 -0
- package/pipeline/scripts/run-smokes.mjs +76 -0
- package/pipeline/scripts/scan-skills.sh +11 -11
- package/pipeline/scripts/search-logs.sh +8 -8
- package/pipeline/scripts/sign-skills.sh +2 -2
- package/pipeline/scripts/smoke-adapters.sh +79 -10
- package/pipeline/scripts/smoke-add-detail.sh +5 -5
- package/pipeline/scripts/smoke-agent-log-cost.sh +85 -6
- package/pipeline/scripts/smoke-agent-model-routing.sh +3 -3
- package/pipeline/scripts/smoke-ask-choice.sh +42 -0
- package/pipeline/scripts/smoke-bitbucket-contract.sh +19 -3
- package/pipeline/scripts/smoke-changelog-version.sh +47 -0
- package/pipeline/scripts/smoke-channels-flow.sh +1 -1
- package/pipeline/scripts/smoke-ci-workflows.sh +5 -5
- package/pipeline/scripts/smoke-clarify.sh +3 -3
- package/pipeline/scripts/smoke-commands-skills-parity.sh +4 -4
- package/pipeline/scripts/smoke-community-gates.sh +75 -0
- package/pipeline/scripts/smoke-compliance-skills.sh +5 -5
- package/pipeline/scripts/smoke-cost-budget.sh +70 -0
- package/pipeline/scripts/smoke-cost-summary.sh +4 -4
- package/pipeline/scripts/smoke-cross-cli-behavior.sh +50 -9
- package/pipeline/scripts/smoke-cross-phase-cohesion.sh +5 -5
- package/pipeline/scripts/smoke-delete-flow.sh +5 -5
- package/pipeline/scripts/smoke-dev-critic.sh +2 -2
- package/pipeline/scripts/smoke-diff-explain.sh +22 -3
- package/pipeline/scripts/smoke-diff-risk.sh +1 -1
- package/pipeline/scripts/smoke-dynamic-skill-loading.sh +1 -1
- package/pipeline/scripts/smoke-eval-live.sh +4 -4
- package/pipeline/scripts/smoke-evidence-gate.sh +93 -0
- package/pipeline/scripts/smoke-existing-discovery-gate.sh +1 -1
- package/pipeline/scripts/smoke-extract-conventions.sh +163 -0
- package/pipeline/scripts/smoke-figma-android-parity.sh +1 -1
- package/pipeline/scripts/smoke-figma-credential-store.sh +3 -3
- package/pipeline/scripts/smoke-figma-cross-cli-inventory.sh +12 -12
- package/pipeline/scripts/smoke-figma-dispatch.sh +5 -5
- package/pipeline/scripts/smoke-figma-sync.sh +1 -1
- package/pipeline/scripts/smoke-gate-hooks.sh +56 -0
- package/pipeline/scripts/smoke-gc-tmp.sh +84 -0
- package/pipeline/scripts/smoke-identity-isolation.sh +7 -7
- package/pipeline/scripts/smoke-install-layout.sh +10 -10
- package/pipeline/scripts/smoke-intent-guard.sh +86 -0
- package/pipeline/scripts/smoke-issue-comment-template.sh +3 -3
- package/pipeline/scripts/smoke-issue-jira-triad.sh +1 -1
- package/pipeline/scripts/smoke-keychain.sh +6 -6
- package/pipeline/scripts/smoke-language-axis.sh +2 -2
- package/pipeline/scripts/smoke-learnings-ledger.sh +86 -0
- package/pipeline/scripts/smoke-lib-scripts.sh +2 -2
- package/pipeline/scripts/smoke-mcp-gate.sh +68 -0
- package/pipeline/scripts/smoke-md-links.sh +8 -0
- package/pipeline/scripts/smoke-md2confluence.sh +126 -0
- package/pipeline/scripts/smoke-metrics-cache-ratio.sh +72 -0
- package/pipeline/scripts/smoke-migrate-state.sh +10 -10
- package/pipeline/scripts/smoke-mode-dispatch-drift.sh +7 -4
- package/pipeline/scripts/smoke-model-fallback.sh +88 -0
- package/pipeline/scripts/smoke-multi-repo-integration.sh +3 -3
- package/pipeline/scripts/smoke-multi-repo-worktree.sh +1 -1
- package/pipeline/scripts/smoke-no-mcp-in-dev-phases.sh +115 -0
- package/pipeline/scripts/smoke-no-token-prompt.sh +31 -15
- package/pipeline/scripts/smoke-pat-audit.sh +26 -5
- package/pipeline/scripts/smoke-per-repo-memory.sh +1 -1
- package/pipeline/scripts/smoke-phase-0-multi-repo.sh +1 -1
- package/pipeline/scripts/smoke-phase-6-multi.sh +2 -2
- package/pipeline/scripts/smoke-phase-banner.sh +1 -1
- package/pipeline/scripts/smoke-phase-tracker.sh +1 -1
- package/pipeline/scripts/smoke-phase0-bridge-contract.sh +4 -4
- package/pipeline/scripts/smoke-phase4-triage.sh +94 -7
- package/pipeline/scripts/smoke-plan-approval-gate.sh +3 -3
- package/pipeline/scripts/smoke-plan-safety.sh +1 -1
- package/pipeline/scripts/smoke-plan-todos.sh +2 -2
- package/pipeline/scripts/smoke-pr-review-actions.sh +2 -2
- package/pipeline/scripts/smoke-pre-commit.sh +34 -2
- package/pipeline/scripts/smoke-pref-migration.sh +1 -1
- package/pipeline/scripts/smoke-prefs-language.sh +5 -5
- package/pipeline/scripts/smoke-progress-contract.sh +3 -3
- package/pipeline/scripts/smoke-prune-logs.sh +87 -0
- package/pipeline/scripts/smoke-push-retry.sh +1 -1
- package/pipeline/scripts/smoke-readme-counts.sh +1 -1
- package/pipeline/scripts/smoke-repo-map.sh +9 -9
- package/pipeline/scripts/smoke-review-watch.sh +12 -0
- package/pipeline/scripts/smoke-run-aggregator.sh +7 -7
- package/pipeline/scripts/smoke-run-metrics.sh +50 -0
- package/pipeline/scripts/smoke-schema-validation.sh +18 -11
- package/pipeline/scripts/smoke-search.sh +5 -5
- package/pipeline/scripts/smoke-shared-runtime.sh +108 -0
- package/pipeline/scripts/smoke-skill-authoring.sh +13 -13
- package/pipeline/scripts/smoke-skill-language.sh +4 -4
- package/pipeline/scripts/smoke-skill-manifest.sh +2 -2
- package/pipeline/scripts/smoke-skill-scan.sh +2 -2
- package/pipeline/scripts/smoke-stack-swap.sh +2 -2
- package/pipeline/scripts/smoke-subagent-validators.sh +8 -5
- package/pipeline/scripts/smoke-sync-adapters.sh +1 -1
- package/pipeline/scripts/smoke-sync-delegation.sh +7 -7
- package/pipeline/scripts/smoke-sync-parity.sh +1 -1
- package/pipeline/scripts/smoke-tasklist-ordering.sh +7 -7
- package/pipeline/scripts/smoke-telemetry.sh +1 -1
- package/pipeline/scripts/smoke-test-gap.sh +5 -5
- package/pipeline/scripts/smoke-token-budget.sh +1 -1
- package/pipeline/scripts/smoke-tracker-contract.sh +6 -6
- package/pipeline/scripts/smoke-tracker-tokens-invocation.sh +9 -1
- package/pipeline/scripts/smoke-triage-memory.sh +2 -2
- package/pipeline/scripts/smoke-url-enrichment.sh +2 -2
- package/pipeline/scripts/smoke-validator-contradiction.sh +1 -1
- package/pipeline/scripts/smoke-validator-gates.sh +164 -0
- package/pipeline/scripts/smoke-vercel-deploy-redact.sh +11 -11
- package/pipeline/scripts/smoke-wiki-integration.sh +2 -2
- package/pipeline/scripts/smoke-work-summary.sh +3 -3
- package/pipeline/scripts/smoke-worktree-path-convention.sh +4 -4
- package/pipeline/scripts/smoke-write-state.sh +2 -2
- package/pipeline/scripts/stack-swap.sh +3 -3
- package/pipeline/scripts/sync-adapters.mjs +37 -10
- package/pipeline/scripts/sync-parity-check.sh +6 -6
- package/pipeline/scripts/test-gap-scan.mjs +11 -13
- package/pipeline/scripts/token-budget-report.mjs +4 -4
- package/pipeline/scripts/triage-memory.mjs +6 -6
- package/pipeline/scripts/uninstall.mjs +42 -4
- package/pipeline/scripts/update-issue-progress.sh +2 -2
- package/pipeline/scripts/validate-analysis.mjs +19 -21
- package/pipeline/scripts/validate-diff-risk.mjs +4 -4
- package/pipeline/scripts/validate-planning.mjs +3 -3
- package/pipeline/scripts/validate-reviewer.mjs +4 -4
- package/pipeline/scripts/validate-schemas.mjs +4 -4
- package/pipeline/scripts/validate-state.mjs +108 -0
- package/pipeline/scripts/validate-test-gap.mjs +4 -4
- package/pipeline/scripts/validate-triage.mjs +68 -9
- package/pipeline/scripts/verify-skills.sh +7 -7
- package/pipeline/scripts/write-state.mjs +62 -13
- package/pipeline/skills/.skill-manifest.json +245 -149
- package/pipeline/skills/.skills-index.json +236 -47
- package/pipeline/skills/figma-android/README.md +5 -5
- package/pipeline/skills/figma-android/figma-component-code-connect/SKILL.md +3 -3
- package/pipeline/skills/figma-android/figma-component-implement/SKILL.md +8 -8
- package/pipeline/skills/figma-android/figma-component-test/SKILL.md +4 -4
- package/pipeline/skills/figma-android/figma-component-wiki/SKILL.md +5 -5
- package/pipeline/skills/figma-android/figma-to-component/SKILL.md +14 -14
- package/pipeline/skills/figma-common/README.md +37 -30
- package/pipeline/skills/figma-common/figma-bottom-sheets/SKILL.md +137 -0
- package/pipeline/skills/figma-common/figma-cli-iterate/SKILL.md +20 -15
- package/pipeline/skills/figma-common/figma-cli-iterate-mend/SKILL.md +35 -30
- package/pipeline/skills/figma-common/figma-cli-lean-iterate/SKILL.md +35 -30
- package/pipeline/skills/figma-common/figma-cli-skip/SKILL.md +20 -20
- package/pipeline/skills/figma-common/figma-commit/COMMON_REBASE.md +32 -32
- package/pipeline/skills/figma-common/figma-commit/REVIEW.md +9 -9
- package/pipeline/skills/figma-common/figma-commit/SKILL.md +25 -20
- package/pipeline/skills/figma-common/figma-component-confluence-sync/SKILL.md +11 -6
- package/pipeline/skills/figma-common/figma-component-start/SKILL.md +30 -25
- package/pipeline/skills/figma-common/figma-component-status-update/SKILL.md +9 -4
- package/pipeline/skills/figma-common/figma-evolve-component/SKILL.md +61 -0
- package/pipeline/skills/figma-common/figma-fix/SKILL.md +27 -22
- package/pipeline/skills/figma-common/figma-form-integration/SKILL.md +38 -38
- package/pipeline/skills/figma-common/figma-issue/SKILL.md +39 -34
- package/pipeline/skills/figma-common/figma-iterate/SKILL.md +20 -15
- package/pipeline/skills/figma-common/figma-iteration-commit/SKILL.md +44 -39
- package/pipeline/skills/figma-common/figma-mend/SKILL.md +6 -6
- package/pipeline/skills/figma-common/figma-navigation/SKILL.md +142 -0
- package/pipeline/skills/figma-common/figma-overlays/SKILL.md +128 -0
- package/pipeline/skills/figma-common/figma-price-integration/SKILL.md +30 -30
- package/pipeline/skills/figma-common/figma-remote-mcp-auth/SKILL.md +1 -1
- package/pipeline/skills/figma-common/figma-review/SKILL.md +31 -26
- package/pipeline/skills/figma-common/figma-setup/SKILL.md +11 -11
- package/pipeline/skills/figma-common/figma-setup/scripts/fetch-mcp-token.py +5 -5
- package/pipeline/skills/figma-common/figma-skip/SKILL.md +6 -6
- package/pipeline/skills/figma-common/figma-ui-patterns/SKILL.md +13 -12
- package/pipeline/skills/figma-common/figma-ui-patterns/patterns/animated-gradient-border.md +112 -0
- package/pipeline/skills/figma-common/figma-utility/SKILL.md +4 -4
- package/pipeline/skills/figma-common/figma-utility/scripts/figma-utility.py +1 -1
- package/pipeline/skills/figma-common/figma-validate/SKILL.md +48 -48
- package/pipeline/skills/figma-common/performance-iteration-commit-all/SKILL.md +42 -37
- package/pipeline/skills/figma-common/performance-review-next/SKILL.md +23 -18
- package/pipeline/skills/figma-common/performance-start/SKILL.md +52 -47
- package/pipeline/skills/figma-common/performance-swiftui/SKILL.md +68 -68
- package/pipeline/skills/figma-common/performance-tour/SKILL.md +42 -37
- package/pipeline/skills/figma-ios/REVIEW_CHECKLIST.md +16 -16
- package/pipeline/skills/figma-ios/figma-component-code-connect/SKILL.md +15 -15
- package/pipeline/skills/figma-ios/figma-component-implement/SKILL.md +9 -9
- package/pipeline/skills/figma-ios/figma-component-test/SKILL.md +15 -15
- package/pipeline/skills/figma-ios/figma-component-wiki/SKILL.md +18 -18
- package/pipeline/skills/figma-ios/figma-to-component/SKILL.md +53 -38
- package/pipeline/skills/figma-ios/figma-to-component/halt-return-protocol.md +2 -2
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-0-init.md +12 -12
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-1-gathering.md +5 -5
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-1.5-existing-discovery.md +19 -19
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-2-orchestrator.md +25 -25
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-2a-testing-identifiers.md +7 -7
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-2b-localization.md +6 -6
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-2c-accessibility.md +38 -38
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-2d-analytics.md +3 -3
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-3-orchestrator.md +29 -29
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-3a-location.md +6 -6
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-3b-tokens.md +3 -3
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-3c-nested.md +12 -12
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-3d-patterns.md +88 -57
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-3e-assets.md +5 -5
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-3f-utilities.md +6 -6
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-3g-property-coverage.md +10 -10
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-3h-variant-config.md +16 -16
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-4-orchestrator.md +23 -23
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-4a-configuration.md +26 -26
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-4b-view.md +53 -43
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-4c-documentation.md +17 -17
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-4d-preview.md +19 -19
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-4e-modifiers.md +15 -15
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-5-orchestrator.md +39 -39
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-5a-viewinspector.md +7 -7
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-5b-snapshot.md +29 -29
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-5c-unit.md +9 -9
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-6-code-connect.md +31 -31
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-7-wiki.md +5 -5
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-7a-confluence-generate.md +18 -18
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-7a-wiki-generate.md +16 -16
- package/pipeline/skills/figma-ios/figma-to-component/phases/phase-8-cleanup.md +2 -2
- package/pipeline/skills/figma-ios/figma-to-component/reference/accessibility.md +56 -2
- package/pipeline/skills/figma-ios/figma-to-component/reference/code-connect.md +49 -49
- package/pipeline/skills/figma-ios/figma-to-component/reference/figma-to-swiftui-effects.md +8 -8
- package/pipeline/skills/figma-ios/figma-to-component/reference/halt-return-protocol.md +2 -2
- package/pipeline/skills/figma-ios/figma-to-component/reference/macros.md +9 -9
- package/pipeline/skills/figma-ios/figma-to-component/reference/missing-tokens.md +4 -4
- package/pipeline/skills/figma-ios/figma-to-component/reference/orchestrator-discipline.md +10 -10
- package/pipeline/skills/figma-ios/figma-to-component/reference/remote-mcp-script.md +5 -5
- package/pipeline/skills/figma-ios/figma-to-component/reference/rest-api-script.md +11 -11
- package/pipeline/skills/figma-ios/figma-to-component/reference/scripts-inventory.md +14 -14
- package/pipeline/skills/figma-ios/figma-to-component/reference/snapshot-testing.md +2 -2
- package/pipeline/skills/figma-ios/figma-to-component/reference/subcomponent-graph.md +4 -4
- package/pipeline/skills/figma-ios/figma-to-component/reference/testing-identifiers-naming.md +6 -6
- package/pipeline/skills/figma-ios/figma-to-component/reference/tools.md +9 -9
- package/pipeline/skills/figma-ios/figma-to-component/reference/viewinspector.md +1 -1
- package/pipeline/skills/figma-ios/figma-to-component/reference/wiki-to-confluence-mapping.md +1 -1
- package/pipeline/skills/figma-ios/figma-to-component/scripts/apply-author-login-map.py +5 -5
- package/pipeline/skills/figma-ios/figma-to-component/scripts/backfill-status.py +18 -18
- package/pipeline/skills/figma-ios/figma-to-component/scripts/build-author-registry.py +4 -4
- package/pipeline/skills/figma-ios/figma-to-component/scripts/bulk-sync-issues.py +4 -4
- package/pipeline/skills/figma-ios/figma-to-component/scripts/code-connect-data-gather.py +1 -1
- package/pipeline/skills/figma-ios/figma-to-component/scripts/code-connect-publish.sh +3 -3
- package/pipeline/skills/figma-ios/figma-to-component/scripts/confluence-component-status-upload.py +18 -18
- package/pipeline/skills/figma-ios/figma-to-component/scripts/confluence-component-status.py +4 -4
- package/pipeline/skills/figma-ios/figma-to-component/scripts/confluence-data-gather.py +5 -5
- package/pipeline/skills/figma-ios/figma-to-component/scripts/confluence-page-ids.example.json +9 -0
- package/pipeline/skills/figma-ios/figma-to-component/scripts/confluence-publish.py +3 -3
- package/pipeline/skills/figma-ios/figma-to-component/scripts/figma-subcomponent-graph.py +1 -1
- package/pipeline/skills/figma-ios/figma-to-component/scripts/figma-update.py +5 -5
- package/pipeline/skills/figma-ios/figma-to-component/scripts/lib/issue_sync_propagate.py +1 -1
- package/pipeline/skills/figma-ios/figma-to-component/scripts/lib/registry_writer.py +4 -4
- package/pipeline/skills/figma-ios/figma-to-component/scripts/lib/test_figma_update.py +1 -1
- package/pipeline/skills/figma-ios/figma-to-component/scripts/lib/test_registry_writer.py +3 -3
- package/pipeline/skills/figma-ios/figma-to-component/scripts/lib/test_skill_figma_issue.py +1 -1
- package/pipeline/skills/figma-ios/figma-to-component/scripts/lib/test_update_issue_gh.py +1 -1
- package/pipeline/skills/figma-ios/figma-to-component/scripts/phase1-gather.py +12 -12
- package/pipeline/skills/figma-ios/figma-to-component/scripts/phase2-finalize.py +3 -3
- package/pipeline/skills/figma-ios/figma-to-component/scripts/phase3-scripts.py +26 -26
- package/pipeline/skills/figma-ios/figma-to-component/scripts/phase4-finalize.py +4 -4
- package/pipeline/skills/figma-ios/figma-to-component/scripts/phase5-finalize.py +4 -4
- package/pipeline/skills/figma-ios/figma-to-component/scripts/phase6-finalize.py +5 -5
- package/pipeline/skills/figma-ios/figma-to-component/scripts/phase7-finalize.py +4 -4
- package/pipeline/skills/figma-ios/figma-to-component/scripts/register-icons-codeconnect.py +4 -4
- package/pipeline/skills/figma-ios/figma-to-component/scripts/remote-mcp-fetch.py +5 -5
- package/pipeline/skills/figma-ios/figma-to-component/scripts/resolve-author-logins.py +2 -2
- package/pipeline/skills/figma-ios/figma-to-component/scripts/run-uicomponents-tests.sh +1 -1
- package/pipeline/skills/figma-ios/figma-to-component/scripts/sidebar-generator.py +5 -5
- package/pipeline/skills/figma-ios/figma-to-component/scripts/update-issue-from-registry.py +41 -41
- package/pipeline/skills/figma-ios/figma-to-component/scripts/validate-phase4.sh +8 -8
- package/pipeline/skills/figma-ios/figma-to-component/scripts/validate-phase6.sh +7 -7
- package/pipeline/skills/shared/README.md +62 -41
- package/pipeline/skills/shared/core/apple-archive-compliance/SKILL.md +39 -39
- package/pipeline/skills/shared/core/google-play-compliance/SKILL.md +44 -44
- package/pipeline/skills/shared/core/multi-agent/SKILL.md +182 -176
- package/pipeline/skills/shared/core/multi-agent-analysis/SKILL.md +55 -0
- package/pipeline/skills/shared/core/multi-agent-analysis-resolve/SKILL.md +48 -0
- package/pipeline/skills/shared/core/multi-agent-autopilot/SKILL.md +16 -16
- package/pipeline/skills/shared/core/multi-agent-build-optimize/SKILL.md +48 -0
- package/pipeline/skills/shared/core/multi-agent-channels/SKILL.md +40 -40
- package/pipeline/skills/shared/core/multi-agent-delete/SKILL.md +33 -30
- package/pipeline/skills/shared/core/multi-agent-dev/SKILL.md +26 -26
- package/pipeline/skills/shared/core/multi-agent-dev-autopilot/SKILL.md +22 -22
- package/pipeline/skills/shared/core/multi-agent-dev-local/SKILL.md +6 -6
- package/pipeline/skills/shared/core/multi-agent-dev-local-autopilot/SKILL.md +12 -12
- package/pipeline/skills/shared/core/multi-agent-diff-explain/SKILL.md +20 -20
- package/pipeline/skills/shared/core/multi-agent-garbage-collect/SKILL.md +61 -0
- package/pipeline/skills/shared/core/multi-agent-help/SKILL.md +22 -22
- package/pipeline/skills/shared/core/multi-agent-issue/SKILL.md +15 -15
- package/pipeline/skills/shared/core/multi-agent-jira/SKILL.md +12 -12
- package/pipeline/skills/shared/core/multi-agent-kill/SKILL.md +14 -14
- package/pipeline/skills/shared/core/multi-agent-language/SKILL.md +12 -12
- package/pipeline/skills/shared/core/multi-agent-local/SKILL.md +10 -10
- package/pipeline/skills/shared/core/multi-agent-local-autopilot/SKILL.md +18 -18
- package/pipeline/skills/shared/core/multi-agent-log/SKILL.md +9 -9
- package/pipeline/skills/shared/core/multi-agent-manual-test/SKILL.md +20 -20
- package/pipeline/skills/shared/core/multi-agent-prune-logs/SKILL.md +63 -0
- package/pipeline/skills/shared/core/multi-agent-purge/SKILL.md +16 -13
- package/pipeline/skills/shared/core/multi-agent-refactor/SKILL.md +110 -110
- package/pipeline/skills/shared/core/multi-agent-resume/SKILL.md +13 -13
- package/pipeline/skills/shared/core/multi-agent-review/SKILL.md +22 -22
- package/pipeline/skills/shared/core/multi-agent-scan/SKILL.md +18 -18
- package/pipeline/skills/shared/core/multi-agent-search/SKILL.md +13 -13
- package/pipeline/skills/shared/core/multi-agent-setup/SKILL.md +33 -30
- package/pipeline/skills/shared/core/multi-agent-stack/SKILL.md +14 -14
- package/pipeline/skills/shared/core/multi-agent-status/SKILL.md +9 -9
- package/pipeline/skills/shared/core/multi-agent-sync/SKILL.md +79 -79
- package/pipeline/skills/shared/core/multi-agent-test/SKILL.md +5 -5
- package/pipeline/skills/shared/core/multi-agent-update/SKILL.md +10 -10
- package/pipeline/skills/shared/external/NOTICE-swift-ios-skills.md +41 -0
- package/pipeline/skills/shared/external/NOTICE-xcode-build-skills.md +53 -0
- package/pipeline/skills/shared/external/agentflow/SKILL.md +9 -9
- package/pipeline/skills/shared/external/alarmkit/SKILL.md +113 -52
- package/pipeline/skills/shared/external/alarmkit/evals/evals.json +41 -0
- package/pipeline/skills/shared/external/alarmkit/references/alarmkit-patterns.md +23 -16
- package/pipeline/skills/shared/external/app-clips/SKILL.md +85 -354
- package/pipeline/skills/shared/external/app-clips/evals/evals.json +50 -0
- package/pipeline/skills/shared/external/app-clips/references/data-handoff-notifications-location.md +135 -0
- package/pipeline/skills/shared/external/app-clips/references/routing-and-experiences.md +125 -0
- package/pipeline/skills/shared/external/app-clips/references/size-capabilities-and-promotion.md +113 -0
- package/pipeline/skills/shared/external/app-intents/SKILL.md +152 -59
- package/pipeline/skills/shared/external/app-intents/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/app-intents/references/appintents-advanced.md +161 -118
- package/pipeline/skills/shared/external/app-store-optimization/SKILL.md +289 -392
- package/pipeline/skills/shared/external/app-store-optimization/evals/evals.json +46 -0
- package/pipeline/skills/shared/external/app-store-optimization/references/keyword-research-methodology.md +174 -0
- package/pipeline/skills/shared/external/app-store-optimization/references/product-page-variants.md +191 -0
- package/pipeline/skills/shared/external/app-store-review/SKILL.md +57 -107
- package/pipeline/skills/shared/external/app-store-review/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/app-store-review/references/privacy-manifest.md +35 -12
- package/pipeline/skills/shared/external/app-store-review/references/review-checklists.md +28 -26
- package/pipeline/skills/shared/external/apple-on-device-ai/SKILL.md +53 -62
- package/pipeline/skills/shared/external/apple-on-device-ai/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/apple-on-device-ai/references/coreml-conversion.md +7 -1
- package/pipeline/skills/shared/external/apple-on-device-ai/references/coreml-optimization.md +4 -1
- package/pipeline/skills/shared/external/apple-on-device-ai/references/foundation-models.md +32 -12
- package/pipeline/skills/shared/external/apple-on-device-ai/references/mlx-swift.md +34 -30
- package/pipeline/skills/shared/external/authentication/SKILL.md +134 -138
- package/pipeline/skills/shared/external/authentication/evals/evals.json +48 -0
- package/pipeline/skills/shared/external/authentication/references/keychain-biometric.md +56 -29
- package/pipeline/skills/shared/external/authentication/references/passkeys.md +183 -0
- package/pipeline/skills/shared/external/avkit/SKILL.md +497 -0
- package/pipeline/skills/shared/external/avkit/evals/evals.json +55 -0
- package/pipeline/skills/shared/external/avkit/references/avkit-patterns.md +668 -0
- package/pipeline/skills/shared/external/background-processing/SKILL.md +29 -29
- package/pipeline/skills/shared/external/background-processing/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/background-processing/references/background-task-patterns.md +44 -19
- package/pipeline/skills/shared/external/callkit-voip/SKILL.md +136 -99
- package/pipeline/skills/shared/external/callkit-voip/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/callkit-voip/references/callkit-patterns.md +27 -8
- package/pipeline/skills/shared/external/ci-cd-pipelines/SKILL.md +7 -6
- package/pipeline/skills/shared/external/clean-code/SKILL.md +2 -2
- package/pipeline/skills/shared/external/cloudkit-sync/SKILL.md +63 -56
- package/pipeline/skills/shared/external/cloudkit-sync/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/cloudkit-sync/references/cloudkit-patterns.md +7 -4
- package/pipeline/skills/shared/external/contacts-framework/SKILL.md +31 -11
- package/pipeline/skills/shared/external/contacts-framework/evals/evals.json +41 -0
- package/pipeline/skills/shared/external/contacts-framework/references/contacts-patterns.md +51 -51
- package/pipeline/skills/shared/external/core-bluetooth/SKILL.md +70 -65
- package/pipeline/skills/shared/external/core-bluetooth/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/core-bluetooth/references/ble-patterns.md +25 -1
- package/pipeline/skills/shared/external/core-data/SKILL.md +496 -0
- package/pipeline/skills/shared/external/core-data/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/core-motion/SKILL.md +47 -14
- package/pipeline/skills/shared/external/core-motion/evals/evals.json +49 -0
- package/pipeline/skills/shared/external/core-motion/references/motion-patterns.md +47 -16
- package/pipeline/skills/shared/external/core-nfc/SKILL.md +43 -54
- package/pipeline/skills/shared/external/core-nfc/evals/evals.json +49 -0
- package/pipeline/skills/shared/external/core-nfc/references/nfc-patterns.md +32 -2
- package/pipeline/skills/shared/external/coreml/SKILL.md +89 -48
- package/pipeline/skills/shared/external/coreml/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/coreml/references/coreml-swift-integration.md +82 -37
- package/pipeline/skills/shared/external/cryptokit/SKILL.md +493 -0
- package/pipeline/skills/shared/external/cryptokit/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/cryptokit/references/cryptokit-patterns.md +602 -0
- package/pipeline/skills/shared/external/css-modern/SKILL.md +3 -2
- package/pipeline/skills/shared/external/database-patterns/SKILL.md +6 -5
- package/pipeline/skills/shared/external/debugging-instruments/SKILL.md +77 -47
- package/pipeline/skills/shared/external/debugging-instruments/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/debugging-instruments/references/instruments-guide.md +42 -34
- package/pipeline/skills/shared/external/debugging-instruments/references/lldb-patterns.md +2 -2
- package/pipeline/skills/shared/external/device-integrity/SKILL.md +136 -176
- package/pipeline/skills/shared/external/device-integrity/evals/evals.json +45 -0
- package/pipeline/skills/shared/external/device-integrity/references/device-integrity-patterns.md +240 -0
- package/pipeline/skills/shared/external/energykit/SKILL.md +73 -34
- package/pipeline/skills/shared/external/energykit/evals/evals.json +45 -0
- package/pipeline/skills/shared/external/energykit/references/energykit-patterns.md +80 -38
- package/pipeline/skills/shared/external/eventkit-calendar/SKILL.md +67 -53
- package/pipeline/skills/shared/external/eventkit-calendar/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/eventkit-calendar/references/eventkit-patterns.md +53 -3
- package/pipeline/skills/shared/external/healthkit/SKILL.md +57 -124
- package/pipeline/skills/shared/external/healthkit/evals/evals.json +46 -0
- package/pipeline/skills/shared/external/healthkit/references/healthkit-patterns.md +82 -1
- package/pipeline/skills/shared/external/homekit-matter/SKILL.md +43 -41
- package/pipeline/skills/shared/external/homekit-matter/evals/evals.json +45 -0
- package/pipeline/skills/shared/external/homekit-matter/references/matter-commissioning.md +13 -8
- package/pipeline/skills/shared/external/html-semantic/SKILL.md +5 -4
- package/pipeline/skills/shared/external/humanizer/SKILL.md +4 -4
- package/pipeline/skills/shared/external/ios-accessibility/SKILL.md +174 -18
- package/pipeline/skills/shared/external/ios-accessibility/evals/evals.json +49 -0
- package/pipeline/skills/shared/external/ios-accessibility/references/a11y-patterns.md +262 -4
- package/pipeline/skills/shared/external/ios-accessibility/references/media-accessibility.md +117 -0
- package/pipeline/skills/shared/external/ios-accessibility/references/nutrition-labels.md +141 -0
- package/pipeline/skills/shared/external/ios-localization/SKILL.md +67 -14
- package/pipeline/skills/shared/external/ios-localization/evals/evals.json +49 -0
- package/pipeline/skills/shared/external/ios-localization/references/formatstyle-locale.md +20 -3
- package/pipeline/skills/shared/external/ios-localization/references/string-catalogs.md +131 -22
- package/pipeline/skills/shared/external/ios-networking/SKILL.md +69 -22
- package/pipeline/skills/shared/external/ios-networking/evals/evals.json +50 -0
- package/pipeline/skills/shared/external/ios-networking/references/background-websocket.md +28 -16
- package/pipeline/skills/shared/external/ios-networking/references/file-storage-patterns.md +354 -0
- package/pipeline/skills/shared/external/ios-networking/references/network-framework.md +69 -44
- package/pipeline/skills/shared/external/ios-networking/references/urlsession-patterns.md +35 -69
- package/pipeline/skills/shared/external/ios-security/references/file-storage-patterns.md +8 -8
- package/pipeline/skills/shared/external/ios-simulator/SKILL.md +485 -0
- package/pipeline/skills/shared/external/ios-simulator/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/ios-simulator/references/simctl-commands.md +316 -0
- package/pipeline/skills/shared/external/live-activities/SKILL.md +120 -131
- package/pipeline/skills/shared/external/live-activities/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/live-activities/references/{live-activity-patterns.md → activitykit-patterns.md} +148 -63
- package/pipeline/skills/shared/external/mapkit-location/SKILL.md +40 -21
- package/pipeline/skills/shared/external/mapkit-location/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/mapkit-location/references/{corelocation-patterns.md → mapkit-corelocation-patterns.md} +88 -41
- package/pipeline/skills/shared/external/mapkit-location/references/mapkit-patterns.md +27 -24
- package/pipeline/skills/shared/external/metrickit-diagnostics/SKILL.md +129 -172
- package/pipeline/skills/shared/external/metrickit-diagnostics/evals/evals.json +46 -0
- package/pipeline/skills/shared/external/metrickit-diagnostics/references/metrickit-patterns.md +180 -0
- package/pipeline/skills/shared/external/musickit-audio/SKILL.md +45 -18
- package/pipeline/skills/shared/external/musickit-audio/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/musickit-audio/references/musickit-patterns.md +26 -6
- package/pipeline/skills/shared/external/natural-language/SKILL.md +48 -18
- package/pipeline/skills/shared/external/natural-language/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/natural-language/references/translation-patterns.md +20 -7
- package/pipeline/skills/shared/external/nextjs-app-router/SKILL.md +4 -3
- package/pipeline/skills/shared/external/passkit-wallet/SKILL.md +156 -66
- package/pipeline/skills/shared/external/passkit-wallet/evals/evals.json +51 -0
- package/pipeline/skills/shared/external/passkit-wallet/references/wallet-passes.md +69 -19
- package/pipeline/skills/shared/external/pdfkit/SKILL.md +499 -0
- package/pipeline/skills/shared/external/pdfkit/evals/evals.json +42 -0
- package/pipeline/skills/shared/external/pdfkit/references/pdfkit-patterns.md +844 -0
- package/pipeline/skills/shared/external/pencilkit-drawing/SKILL.md +122 -28
- package/pipeline/skills/shared/external/pencilkit-drawing/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/pencilkit-drawing/references/pencilkit-patterns.md +49 -18
- package/pipeline/skills/shared/external/permissionkit/SKILL.md +100 -51
- package/pipeline/skills/shared/external/permissionkit/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/permissionkit/references/permissionkit-patterns.md +48 -8
- package/pipeline/skills/shared/external/photos-camera-media/SKILL.md +13 -15
- package/pipeline/skills/shared/external/photos-camera-media/references/camera-capture.md +4 -4
- package/pipeline/skills/shared/external/photos-camera-media/references/image-loading-caching.md +2 -2
- package/pipeline/skills/shared/external/photos-camera-media/references/{photospicker-patterns.md → photokit-patterns.md} +3 -3
- package/pipeline/skills/shared/external/push-notifications/SKILL.md +45 -48
- package/pipeline/skills/shared/external/push-notifications/evals/evals.json +46 -0
- package/pipeline/skills/shared/external/push-notifications/references/notification-patterns.md +22 -33
- package/pipeline/skills/shared/external/push-notifications/references/rich-notifications.md +56 -37
- package/pipeline/skills/shared/external/python-patterns/SKILL.md +4 -3
- package/pipeline/skills/shared/external/react-best-practices/SKILL.md +1 -0
- package/pipeline/skills/shared/external/realitykit-ar/SKILL.md +74 -53
- package/pipeline/skills/shared/external/realitykit-ar/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/realitykit-ar/references/realitykit-patterns.md +10 -10
- package/pipeline/skills/shared/external/rest-api-design/SKILL.md +21 -20
- package/pipeline/skills/shared/external/shareplay-activities/SKILL.md +81 -64
- package/pipeline/skills/shared/external/shareplay-activities/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/shareplay-activities/references/shareplay-patterns.md +48 -9
- package/pipeline/skills/shared/external/speech-recognition/SKILL.md +118 -104
- package/pipeline/skills/shared/external/speech-recognition/evals/evals.json +49 -0
- package/pipeline/skills/shared/external/speech-recognition/references/speechanalyzer-patterns.md +171 -0
- package/pipeline/skills/shared/external/spm-build-analysis/SKILL.md +93 -0
- package/pipeline/skills/shared/external/spm-build-analysis/references/build-optimization-sources.md +155 -0
- package/pipeline/skills/shared/external/spm-build-analysis/references/recommendation-format.md +85 -0
- package/pipeline/skills/shared/external/spm-build-analysis/references/spm-analysis-checks.md +105 -0
- package/pipeline/skills/shared/external/spm-build-analysis/scripts/check_spm_pins.py +118 -0
- package/pipeline/skills/shared/external/storekit/SKILL.md +110 -44
- package/pipeline/skills/shared/external/storekit/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/storekit/references/app-review-guidelines.md +94 -43
- package/pipeline/skills/shared/external/storekit/references/storekit-advanced.md +82 -33
- package/pipeline/skills/shared/external/swift-api-design-guidelines/SKILL.md +449 -0
- package/pipeline/skills/shared/external/swift-api-design-guidelines/evals/evals.json +50 -0
- package/pipeline/skills/shared/external/swift-api-design-guidelines/references/argument-labels-and-parameters.md +164 -0
- package/pipeline/skills/shared/external/swift-api-design-guidelines/references/conventions-and-special-rules.md +219 -0
- package/pipeline/skills/shared/external/swift-api-design-guidelines/references/naming-and-clarity.md +184 -0
- package/pipeline/skills/shared/external/swift-api-design-guidelines/references/side-effects-and-mutating-pairs.md +158 -0
- package/pipeline/skills/shared/external/swift-architecture/SKILL.md +499 -0
- package/pipeline/skills/shared/external/swift-architecture/evals/evals.json +45 -0
- package/pipeline/skills/shared/external/swift-charts/SKILL.md +52 -40
- package/pipeline/skills/shared/external/swift-charts/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/swift-charts/references/charts-patterns.md +92 -11
- package/pipeline/skills/shared/external/swift-codable/SKILL.md +43 -16
- package/pipeline/skills/shared/external/swift-codable/evals/evals.json +43 -0
- package/pipeline/skills/shared/external/swift-concurrency/SKILL.md +50 -30
- package/pipeline/skills/shared/external/swift-concurrency/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/swift-concurrency/references/approachable-concurrency.md +11 -4
- package/pipeline/skills/shared/external/swift-concurrency/references/async-algorithms.md +113 -0
- package/pipeline/skills/shared/external/swift-concurrency/references/bridging-interop.md +150 -0
- package/pipeline/skills/shared/external/swift-concurrency/references/{swift-6-2-concurrency.md → concurrency-patterns.md} +22 -11
- package/pipeline/skills/shared/external/swift-concurrency/references/diagnostics.md +52 -0
- package/pipeline/skills/shared/external/swift-concurrency/references/swiftui-concurrency.md +2 -2
- package/pipeline/skills/shared/external/swift-concurrency/references/synchronization-primitives.md +21 -15
- package/pipeline/skills/shared/external/swift-concurrency-expert/SKILL.md +3 -3
- package/pipeline/skills/shared/external/swift-concurrency-pro/SKILL.md +2 -2
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/actors.md +3 -3
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/async-streams.md +1 -1
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/bridging.md +3 -3
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/bug-patterns.md +3 -3
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/cancellation.md +8 -8
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/diagnostics.md +1 -1
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/hotspots.md +2 -2
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/interop.md +4 -4
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/new-features.md +1 -1
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/structured.md +2 -2
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/testing.md +2 -2
- package/pipeline/skills/shared/external/swift-concurrency-pro/references/unstructured.md +3 -3
- package/pipeline/skills/shared/external/swift-formatstyle/SKILL.md +339 -0
- package/pipeline/skills/shared/external/swift-language/SKILL.md +33 -34
- package/pipeline/skills/shared/external/swift-language/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/swift-language/references/swift-attributes-interop.md +97 -0
- package/pipeline/skills/shared/external/swift-language/references/swift-patterns-extended.md +19 -6
- package/pipeline/skills/shared/external/swift-security/SKILL.md +195 -0
- package/pipeline/skills/shared/external/swift-security/evals/evals.json +48 -0
- package/pipeline/skills/shared/external/swift-security/references/biometric-authentication.md +595 -0
- package/pipeline/skills/shared/external/swift-security/references/certificate-trust.md +611 -0
- package/pipeline/skills/shared/external/swift-security/references/common-anti-patterns.md +708 -0
- package/pipeline/skills/shared/external/swift-security/references/compliance-owasp-mapping.md +573 -0
- package/pipeline/skills/shared/external/swift-security/references/credential-storage-patterns.md +752 -0
- package/pipeline/skills/shared/external/swift-security/references/cryptokit-public-key.md +538 -0
- package/pipeline/skills/shared/external/swift-security/references/cryptokit-symmetric.md +530 -0
- package/pipeline/skills/shared/external/swift-security/references/keychain-access-control.md +543 -0
- package/pipeline/skills/shared/external/swift-security/references/keychain-fundamentals.md +620 -0
- package/pipeline/skills/shared/external/swift-security/references/keychain-item-classes.md +515 -0
- package/pipeline/skills/shared/external/swift-security/references/keychain-sharing.md +496 -0
- package/pipeline/skills/shared/external/swift-security/references/migration-legacy-stores.md +747 -0
- package/pipeline/skills/shared/external/swift-security/references/secure-enclave.md +566 -0
- package/pipeline/skills/shared/external/swift-security/references/testing-security-code.md +813 -0
- package/pipeline/skills/shared/external/swift-testing/SKILL.md +97 -297
- package/pipeline/skills/shared/external/swift-testing/evals/evals.json +44 -0
- package/pipeline/skills/shared/external/swift-testing/references/testing-advanced.md +123 -0
- package/pipeline/skills/shared/external/swift-testing/references/testing-patterns.md +162 -34
- package/pipeline/skills/shared/external/swift-testing-pro/SKILL.md +2 -2
- package/pipeline/skills/shared/external/swift-testing-pro/references/async-tests.md +3 -3
- package/pipeline/skills/shared/external/swift-testing-pro/references/core-rules.md +2 -2
- package/pipeline/skills/shared/external/swift-testing-pro/references/migrating-from-xctest.md +5 -5
- package/pipeline/skills/shared/external/swift-testing-pro/references/new-features.md +3 -3
- package/pipeline/skills/shared/external/swift-testing-pro/references/writing-better-tests.md +5 -5
- package/pipeline/skills/shared/external/swiftdata/SKILL.md +44 -23
- package/pipeline/skills/shared/external/swiftdata/evals/evals.json +47 -0
- package/pipeline/skills/shared/external/swiftdata/references/core-data-coexistence.md +3 -3
- package/pipeline/skills/shared/external/swiftdata/references/indexing.md +75 -0
- package/pipeline/skills/shared/external/swiftdata/references/predicate-pitfalls.md +54 -0
- package/pipeline/skills/shared/external/swiftdata/references/swiftdata-advanced.md +14 -10
- package/pipeline/skills/shared/external/swiftdata/references/swiftdata-queries.md +5 -5
- package/pipeline/skills/shared/external/swiftdata-pro/SKILL.md +2 -2
- package/pipeline/skills/shared/external/swiftdata-pro/references/class-inheritance.md +2 -2
- package/pipeline/skills/shared/external/swiftdata-pro/references/cloudkit.md +1 -1
- package/pipeline/skills/shared/external/swiftdata-pro/references/core-rules.md +6 -6
- package/pipeline/skills/shared/external/swiftlint/SKILL.md +337 -0
- package/pipeline/skills/shared/external/swiftlint/references/adoption-and-configuration.md +297 -0
- package/pipeline/skills/shared/external/swiftlint/references/custom-rules-and-analyze.md +170 -0
- package/pipeline/skills/shared/external/swiftlint/references/plugins-run-scripts-and-integrations.md +307 -0
- package/pipeline/skills/shared/external/swiftlint/references/rule-reference.md +35 -0
- package/pipeline/skills/shared/external/swiftlint/references/rules-suppressions-and-baselines.md +306 -0
- package/pipeline/skills/shared/external/swiftui-animation/SKILL.md +56 -65
- package/pipeline/skills/shared/external/swiftui-animation/references/animation-advanced.md +48 -44
- package/pipeline/skills/shared/external/swiftui-animation/references/core-animation-bridge.md +6 -6
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/charts-accessibility.md +13 -13
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/charts.md +3 -3
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/image-optimization.md +1 -1
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/latest-apis.md +4 -4
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/layout-best-practices.md +2 -2
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/list-patterns.md +1 -1
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/macos-scenes.md +16 -16
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/macos-views.md +11 -11
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/macos-window-styling.md +7 -7
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/state-management.md +5 -5
- package/pipeline/skills/shared/external/swiftui-expert-skill/references/view-structure.md +6 -6
- package/pipeline/skills/shared/external/swiftui-gestures/SKILL.md +38 -16
- package/pipeline/skills/shared/external/swiftui-gestures/references/gesture-patterns.md +13 -3
- package/pipeline/skills/shared/external/swiftui-layout-components/SKILL.md +32 -28
- package/pipeline/skills/shared/external/swiftui-layout-components/references/form.md +1 -1
- package/pipeline/skills/shared/external/swiftui-layout-components/references/grids.md +202 -41
- package/pipeline/skills/shared/external/swiftui-layout-components/references/list.md +16 -25
- package/pipeline/skills/shared/external/swiftui-layout-components/references/scrollview.md +71 -26
- package/pipeline/skills/shared/external/swiftui-liquid-glass/SKILL.md +284 -65
- package/pipeline/skills/shared/external/swiftui-liquid-glass/references/liquid-glass.md +387 -0
- package/pipeline/skills/shared/external/swiftui-navigation/SKILL.md +10 -10
- package/pipeline/skills/shared/external/swiftui-navigation/references/deeplinks.md +15 -3
- package/pipeline/skills/shared/external/swiftui-navigation/references/navigationstack.md +2 -2
- package/pipeline/skills/shared/external/swiftui-navigation/references/tabview.md +1 -1
- package/pipeline/skills/shared/external/swiftui-patterns/SKILL.md +51 -25
- package/pipeline/skills/shared/external/swiftui-patterns/references/architecture-patterns.md +78 -6
- package/pipeline/skills/shared/external/swiftui-patterns/references/deprecated-migration.md +161 -16
- package/pipeline/skills/shared/external/swiftui-patterns/references/design-polish.md +85 -27
- package/pipeline/skills/shared/external/swiftui-patterns/references/platform-and-sharing.md +37 -33
- package/pipeline/skills/shared/external/swiftui-performance/SKILL.md +39 -51
- package/pipeline/skills/shared/external/swiftui-performance/references/demystify-swiftui-performance-wwdc23.md +204 -30
- package/pipeline/skills/shared/external/swiftui-performance/references/optimizing-swiftui-performance-instruments.md +226 -21
- package/pipeline/skills/shared/external/swiftui-performance/references/understanding-hangs-in-your-app.md +220 -20
- package/pipeline/skills/shared/external/swiftui-performance/references/understanding-improving-swiftui-performance.md +159 -34
- package/pipeline/skills/shared/external/swiftui-performance/references/wwdc-session-sources.md +27 -0
- package/pipeline/skills/shared/external/swiftui-pro/SKILL.md +2 -2
- package/pipeline/skills/shared/external/swiftui-pro/references/accessibility.md +4 -4
- package/pipeline/skills/shared/external/swiftui-pro/references/api.md +1 -1
- package/pipeline/skills/shared/external/swiftui-pro/references/data.md +2 -2
- package/pipeline/skills/shared/external/swiftui-pro/references/design.md +4 -4
- package/pipeline/skills/shared/external/swiftui-pro/references/hygiene.md +2 -2
- package/pipeline/skills/shared/external/swiftui-pro/references/navigation.md +1 -1
- package/pipeline/skills/shared/external/swiftui-pro/references/performance.md +1 -1
- package/pipeline/skills/shared/external/swiftui-pro/references/swift.md +2 -2
- package/pipeline/skills/shared/external/swiftui-pro/references/views.md +2 -2
- package/pipeline/skills/shared/external/swiftui-ui-patterns/SKILL.md +1 -1
- package/pipeline/skills/shared/external/swiftui-uikit-interop/SKILL.md +12 -12
- package/pipeline/skills/shared/external/swiftui-uikit-interop/references/hosting-migration.md +3 -3
- package/pipeline/skills/shared/external/swiftui-uikit-interop/references/representable-recipes.md +1 -1
- package/pipeline/skills/shared/external/swiftui-webkit/SKILL.md +11 -11
- package/pipeline/skills/shared/external/swiftui-webkit/references/migration-and-fallbacks.md +124 -10
- package/pipeline/skills/shared/external/tailwind-css/SKILL.md +3 -2
- package/pipeline/skills/shared/external/testing-backend/SKILL.md +2 -1
- package/pipeline/skills/shared/external/tipkit/SKILL.md +3 -3
- package/pipeline/skills/shared/external/tipkit/references/tipkit-patterns.md +9 -9
- package/pipeline/skills/shared/external/typescript-patterns/SKILL.md +17 -16
- package/pipeline/skills/shared/external/vision-framework/SKILL.md +11 -11
- package/pipeline/skills/shared/external/vision-framework/references/vision-requests.md +1 -1
- package/pipeline/skills/shared/external/vision-framework/references/visionkit-scanner.md +5 -5
- package/pipeline/skills/shared/external/vue-composition/SKILL.md +7 -6
- package/pipeline/skills/shared/external/weatherkit/SKILL.md +3 -3
- package/pipeline/skills/shared/external/weatherkit/references/weatherkit-patterns.md +9 -9
- package/pipeline/skills/shared/external/web-accessibility/SKILL.md +1 -0
- package/pipeline/skills/shared/external/web-performance/SKILL.md +8 -7
- package/pipeline/skills/shared/external/web-testing/SKILL.md +7 -6
- package/pipeline/skills/shared/external/widgetkit/SKILL.md +23 -17
- package/pipeline/skills/shared/external/widgetkit/references/widgetkit-advanced.md +99 -0
- package/pipeline/skills/shared/external/xcode-build-benchmark/SKILL.md +89 -0
- package/pipeline/skills/shared/external/xcode-build-benchmark/references/benchmark-artifacts.md +94 -0
- package/pipeline/skills/shared/external/xcode-build-benchmark/references/benchmarking-workflow.md +67 -0
- package/pipeline/skills/shared/external/xcode-build-benchmark/schemas/build-benchmark.schema.json +230 -0
- package/pipeline/skills/shared/external/xcode-build-benchmark/scripts/benchmark_builds.py +308 -0
- package/pipeline/skills/shared/external/xcode-build-fixer/SKILL.md +219 -0
- package/pipeline/skills/shared/external/xcode-build-fixer/references/build-settings-best-practices.md +216 -0
- package/pipeline/skills/shared/external/xcode-build-fixer/references/fix-patterns.md +290 -0
- package/pipeline/skills/shared/external/xcode-build-fixer/references/recommendation-format.md +85 -0
- package/pipeline/skills/shared/external/xcode-build-fixer/scripts/benchmark_builds.py +308 -0
- package/pipeline/skills/shared/external/xcode-build-orchestrator/SKILL.md +157 -0
- package/pipeline/skills/shared/external/xcode-build-orchestrator/references/benchmark-artifacts.md +94 -0
- package/pipeline/skills/shared/external/xcode-build-orchestrator/references/build-settings-best-practices.md +216 -0
- package/pipeline/skills/shared/external/xcode-build-orchestrator/references/orchestration-report-template.md +143 -0
- package/pipeline/skills/shared/external/xcode-build-orchestrator/references/recommendation-format.md +85 -0
- package/pipeline/skills/shared/external/xcode-build-orchestrator/scripts/benchmark_builds.py +308 -0
- package/pipeline/skills/shared/external/xcode-build-orchestrator/scripts/diagnose_compilation.py +273 -0
- package/pipeline/skills/shared/external/xcode-build-orchestrator/scripts/generate_optimization_report.py +533 -0
- package/pipeline/skills/shared/external/xcode-compilation-analyzer/SKILL.md +90 -0
- package/pipeline/skills/shared/external/xcode-compilation-analyzer/references/build-optimization-sources.md +155 -0
- package/pipeline/skills/shared/external/xcode-compilation-analyzer/references/code-compilation-checks.md +106 -0
- package/pipeline/skills/shared/external/xcode-compilation-analyzer/references/recommendation-format.md +85 -0
- package/pipeline/skills/shared/external/xcode-compilation-analyzer/scripts/diagnose_compilation.py +273 -0
- package/pipeline/skills/shared/external/xcode-project-analyzer/SKILL.md +77 -0
- package/pipeline/skills/shared/external/xcode-project-analyzer/references/build-optimization-sources.md +155 -0
- package/pipeline/skills/shared/external/xcode-project-analyzer/references/build-settings-best-practices.md +216 -0
- package/pipeline/skills/shared/external/xcode-project-analyzer/references/project-audit-checks.md +101 -0
- package/pipeline/skills/shared/external/xcode-project-analyzer/references/recommendation-format.md +85 -0
- package/pipeline/skills/skills-index.md +213 -192
- package/docs/GENERICITY-REVIEW.md +0 -277
- package/docs/STABILITY-FIX-PLAN.md +0 -168
- package/pipeline/scripts/README-figma-smokes.md +0 -34
- package/pipeline/scripts/figma-placeholder-map.json +0 -191
- package/pipeline/scripts/import-figma-skills.sh +0 -253
- package/pipeline/scripts/smoke-figma-config-schema.sh +0 -144
- package/pipeline/scripts/smoke-figma-skill-import.sh +0 -174
- package/pipeline/scripts/smoke-install-leak-gate.sh +0 -125
- package/pipeline/scripts/smoke-personal-data.sh +0 -84
- package/pipeline/scripts/sync-figma-source.sh +0 -228
- package/pipeline/skills/figma-ios/figma-to-component/scripts/confluence-page-ids.json +0 -94
- package/pipeline/skills/shared/external/app-store-review/references/code-signing.md +0 -259
- package/pipeline/skills/shared/external/app-store-review/references/rejection-patterns.md +0 -152
- package/pipeline/skills/shared/external/pencilkit-drawing/references/paperkit-integration.md +0 -376
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
name: performance-iteration-commit-all
|
|
3
|
+
description: Reads `_tour_tracker.json`, validates all reviewed components in a single build+test cycle, pushes all local commits in a single push per submodule, then handles issue.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /performance-iteration-commit-all - Batch Validate & Push All Tour Components
|
|
2
7
|
|
|
3
8
|
> Reads `_tour_tracker.json`, validates all reviewed components in a single build+test
|
|
4
9
|
> cycle, pushes all local commits in a single push per submodule, then handles issue
|
|
@@ -16,7 +21,7 @@
|
|
|
16
21
|
|
|
17
22
|
## Parameters
|
|
18
23
|
|
|
19
|
-
No arguments
|
|
24
|
+
No arguments - reads `_tour_tracker.json`.
|
|
20
25
|
|
|
21
26
|
```
|
|
22
27
|
/performance-iteration-commit-all
|
|
@@ -37,12 +42,12 @@ TRACKER_FILE = ${REPO_ROOT}/_tour_tracker.json
|
|
|
37
42
|
|
|
38
43
|
---
|
|
39
44
|
|
|
40
|
-
## STEP 0
|
|
45
|
+
## STEP 0 - Read Tracker & Verify State
|
|
41
46
|
|
|
42
47
|
Read `_tour_tracker.json`.
|
|
43
48
|
|
|
44
49
|
Verify:
|
|
45
|
-
- `current_step` is `"STEP_3"`
|
|
50
|
+
- `current_step` is `"STEP_3"` - if not, HALT: "Review not complete. Run /performance-review-next first."
|
|
46
51
|
- `reviewed_components` has at least 1 entry
|
|
47
52
|
- All reviewed components have local commits (check with `git log`)
|
|
48
53
|
|
|
@@ -57,15 +62,15 @@ Print:
|
|
|
57
62
|
|
|
58
63
|
```
|
|
59
64
|
╔══════════════════════════════════════════════════════════════╗
|
|
60
|
-
║ BATCH COMMIT
|
|
65
|
+
║ BATCH COMMIT - PRE-FLIGHT ║
|
|
61
66
|
╠══════════════════════════════════════════════════════════════╣
|
|
62
67
|
║ ║
|
|
63
68
|
║ Components to commit: ║
|
|
64
|
-
║ 1. ComponentA (#1000)
|
|
65
|
-
║ 2. ComponentC (#1002)
|
|
69
|
+
║ 1. ComponentA (#1000) - reviewed ✅ ║
|
|
70
|
+
║ 2. ComponentC (#1002) - reviewed ✅ ║
|
|
66
71
|
║ ║
|
|
67
72
|
║ Dropped (will NOT be committed): ║
|
|
68
|
-
║ ❌ ComponentB (#1001)
|
|
73
|
+
║ ❌ ComponentB (#1001) - halted, dropped ║
|
|
69
74
|
║ ║
|
|
70
75
|
╚══════════════════════════════════════════════════════════════╝
|
|
71
76
|
|
|
@@ -76,7 +81,7 @@ Wait for user confirmation.
|
|
|
76
81
|
|
|
77
82
|
---
|
|
78
83
|
|
|
79
|
-
## STEP 1
|
|
84
|
+
## STEP 1 - Validate (SINGLE PASS)
|
|
80
85
|
|
|
81
86
|
### 1a. Build
|
|
82
87
|
|
|
@@ -165,7 +170,7 @@ Validation Summary:
|
|
|
165
170
|
|
|
166
171
|
---
|
|
167
172
|
|
|
168
|
-
## STEP 2
|
|
173
|
+
## STEP 2 - Push (SINGLE PUSH per submodule)
|
|
169
174
|
|
|
170
175
|
### 2a. Push with Rebase-Retry Loop
|
|
171
176
|
|
|
@@ -179,12 +184,12 @@ MAX_RETRIES=3
|
|
|
179
184
|
for i in $(seq 1 $MAX_RETRIES); do
|
|
180
185
|
git push origin ${PUSH_BRANCH} && break
|
|
181
186
|
|
|
182
|
-
echo "Push rejected
|
|
187
|
+
echo "Push rejected - remote updated. Rebasing (attempt $i)..."
|
|
183
188
|
git fetch origin ${PUSH_BRANCH}
|
|
184
189
|
git rebase origin/${PUSH_BRANCH}
|
|
185
190
|
|
|
186
191
|
if [ $? -ne 0 ]; then
|
|
187
|
-
# Rebase conflict
|
|
192
|
+
# Rebase conflict - attempt auto-resolution for generated files
|
|
188
193
|
# See "Generated File Conflict Resolution" below
|
|
189
194
|
# If auto-resolution fails → HALT
|
|
190
195
|
fi
|
|
@@ -202,12 +207,12 @@ done
|
|
|
202
207
|
```
|
|
203
208
|
|
|
204
209
|
**Push order matters:** common → uicomponents → wiki (dependencies flow this direction).
|
|
205
|
-
In **lean mode**, wiki submodule has no commits
|
|
210
|
+
In **lean mode**, wiki submodule has no commits - skip the wiki push entirely.
|
|
206
211
|
|
|
207
212
|
#### Generated File Conflict Resolution (common submodule)
|
|
208
213
|
|
|
209
214
|
During rebase, conflicts in generated files are **expected** when others have pushed to
|
|
210
|
-
`iteration/develop` concurrently. **NEVER resolve these by picking a side
|
|
215
|
+
`iteration/develop` concurrently. **NEVER resolve these by picking a side - always
|
|
211
216
|
accept remote then regenerate.**
|
|
212
217
|
|
|
213
218
|
**Conflict resolution table:**
|
|
@@ -265,7 +270,7 @@ Update tracker: record SHAs for each component.
|
|
|
265
270
|
```bash
|
|
266
271
|
cd ${COMMON} && git fetch origin iteration/develop
|
|
267
272
|
cd ${UICOMPONENTS} && git fetch origin iteration/develop
|
|
268
|
-
# Wiki fetch
|
|
273
|
+
# Wiki fetch - skip in lean mode
|
|
269
274
|
if [ "$LEAN_MODE" != "true" ]; then
|
|
270
275
|
cd ${WIKI} && git fetch origin master
|
|
271
276
|
fi
|
|
@@ -308,7 +313,7 @@ conflict resolution (e.g., `LocalizationStringKeys.swift` missing component keys
|
|
|
308
313
|
|
|
309
314
|
---
|
|
310
315
|
|
|
311
|
-
## STEP 3
|
|
316
|
+
## STEP 3 - Issue Housekeeping (Per Component)
|
|
312
317
|
|
|
313
318
|
> **(strict) NONE of these substeps may be skipped.** Each substep prints a
|
|
314
319
|
> status line (`✅` or `❌`). The Completion Gate at the end (3g) verifies ALL
|
|
@@ -348,9 +353,9 @@ Print: ` #<N> 3a Comment: ✅` or `❌`
|
|
|
348
353
|
|
|
349
354
|
Determine completed phases from committed files:
|
|
350
355
|
- Has Swift view file → phase:implementation done
|
|
351
|
-
- Has test files → phase:testing done (**skip check in lean mode
|
|
356
|
+
- Has test files → phase:testing done (**skip check in lean mode - always false**)
|
|
352
357
|
- Has .figma.swift → phase:code-connect done
|
|
353
|
-
- Has wiki markdown → phase:documentation done (**skip check in lean mode
|
|
358
|
+
- Has wiki markdown → phase:documentation done (**skip check in lean mode - always false**)
|
|
354
359
|
|
|
355
360
|
**Add phase labels to issue (adjust for lean mode):**
|
|
356
361
|
|
|
@@ -385,7 +390,7 @@ ISSUE_NODE_ID=$(gh api graphql -f query='{ repository(owner: "{github.org}", nam
|
|
|
385
390
|
|
|
386
391
|
ITEM_ID=$(gh api graphql -f query='mutation { addProjectV2ItemById(input: { projectId: "{github.projectV2Id}", contentId: "'"$ISSUE_NODE_ID"'" }) { item { id } } }' --jq '.data.addProjectV2ItemById.item.id')
|
|
387
392
|
|
|
388
|
-
# Set Phase = Documentation (last completed)
|
|
393
|
+
# Set Phase = Documentation (last completed) - or Code Connect in lean mode
|
|
389
394
|
LAST_PHASE_ID="7307fb8f" # Documentation
|
|
390
395
|
if [ "$LEAN_MODE" = "true" ]; then
|
|
391
396
|
LAST_PHASE_ID="5384b1e1" # Code Connect
|
|
@@ -466,7 +471,7 @@ python3 ${REPO_ROOT}/.instructions/figma/figma-to-swiftui/scripts/update-status-
|
|
|
466
471
|
|
|
467
472
|
If the script is not available, skip with a warning:
|
|
468
473
|
```
|
|
469
|
-
⚠️ Status dashboard regeneration skipped
|
|
474
|
+
⚠️ Status dashboard regeneration skipped - script not found.
|
|
470
475
|
Run /figma-to-swift-ui-status-update manually to update counts.
|
|
471
476
|
```
|
|
472
477
|
|
|
@@ -599,7 +604,7 @@ Print the housekeeping checklist for ALL components:
|
|
|
599
604
|
║ HOUSEKEEPING COMPLETION GATE ║
|
|
600
605
|
╠══════════════════════════════════════════════════════════════╣
|
|
601
606
|
║ ║
|
|
602
|
-
║ #308
|
|
607
|
+
║ #308 FeatureXInviteList ║
|
|
603
608
|
║ 3a Comment: ✅ ║
|
|
604
609
|
║ 3b Phase: ✅ → Documentation ║
|
|
605
610
|
║ 3c Wiki Link: ✅ ║
|
|
@@ -607,7 +612,7 @@ Print the housekeeping checklist for ALL components:
|
|
|
607
612
|
║ 3e Dashboard: ✅ regenerated ║
|
|
608
613
|
║ 3f Jira: ✅ {jira.projectKey}-132507 ║
|
|
609
614
|
║ ║
|
|
610
|
-
║ #309
|
|
615
|
+
║ #309 FeatureXVoucherGroup ║
|
|
611
616
|
║ 3a Comment: ✅ ║
|
|
612
617
|
║ 3b Phase: ✅ → Documentation ║
|
|
613
618
|
║ 3c Wiki Link: ✅ ║
|
|
@@ -627,14 +632,14 @@ Print the housekeeping checklist for ALL components:
|
|
|
627
632
|
```
|
|
628
633
|
|
|
629
634
|
**Critical substeps** (MUST pass or have valid skip reason):
|
|
630
|
-
- **3a**
|
|
631
|
-
- **3b**
|
|
632
|
-
- **3c**
|
|
633
|
-
- **3f**
|
|
635
|
+
- **3a** - Comment on issue
|
|
636
|
+
- **3b** - Phase + labels updated
|
|
637
|
+
- **3c** - Wiki linked (if wiki committed)
|
|
638
|
+
- **3f** - Jira assigned (if Jira key exists)
|
|
634
639
|
|
|
635
640
|
**Non-critical substeps** (warn but continue):
|
|
636
|
-
- **3d**
|
|
637
|
-
- **3e**
|
|
641
|
+
- **3d** - Auto-unblock (best effort)
|
|
642
|
+
- **3e** - Status dashboard (best effort)
|
|
638
643
|
|
|
639
644
|
If ANY critical substep shows `❌`:
|
|
640
645
|
1. Print which substeps failed and for which components
|
|
@@ -645,11 +650,11 @@ If gate passes → proceed to STEP 4.
|
|
|
645
650
|
|
|
646
651
|
---
|
|
647
652
|
|
|
648
|
-
## STEP 4
|
|
653
|
+
## STEP 4 - Final Report
|
|
649
654
|
|
|
650
655
|
```
|
|
651
656
|
╔══════════════════════════════════════════════════════════════╗
|
|
652
|
-
║ TOUR COMPLETE
|
|
657
|
+
║ TOUR COMPLETE - FINAL REPORT ║
|
|
653
658
|
╠══════════════════════════════════════════════════════════════╣
|
|
654
659
|
║ ║
|
|
655
660
|
║ ┌───┬────────┬──────────────┬──────────┬────────────────┐ ║
|
|
@@ -657,7 +662,7 @@ If gate passes → proceed to STEP 4.
|
|
|
657
662
|
║ ├───┼────────┼──────────────┼──────────┼────────────────┤ ║
|
|
658
663
|
║ │ 1 │ #1000 │ ComponentA │ ✅ Pushed │ abc1234 │ ║
|
|
659
664
|
║ │ 2 │ #1002 │ ComponentC │ ✅ Pushed │ def5678 │ ║
|
|
660
|
-
║ │ 3 │ #1001 │ ComponentB │ ❌ Dropped│
|
|
665
|
+
║ │ 3 │ #1001 │ ComponentB │ ❌ Dropped│ - │ ║
|
|
661
666
|
║ └───┴────────┴──────────────┴──────────┴────────────────┘ ║
|
|
662
667
|
║ ║
|
|
663
668
|
║ Validation: ║
|
|
@@ -698,14 +703,14 @@ rm -f ${TRACKER_FILE}
|
|
|
698
703
|
| Tracker not found | HALT: "No tour in progress" |
|
|
699
704
|
| current_step not STEP_3 | HALT: "Review not complete" |
|
|
700
705
|
| No reviewed components | HALT: "Nothing to commit" |
|
|
701
|
-
| Build fails | HALT
|
|
702
|
-
| Tests fail | HALT
|
|
703
|
-
| Push rejected (after 3 retries) | HALT
|
|
706
|
+
| Build fails | HALT - fix, then re-run |
|
|
707
|
+
| Tests fail | HALT - fix failing component, then re-run |
|
|
708
|
+
| Push rejected (after 3 retries) | HALT - manual conflict resolution needed |
|
|
704
709
|
| Rebase conflict (generated file) | Auto-resolve: accept remote + regenerate (see 2a table) |
|
|
705
|
-
| Rebase conflict (non-generated) | HALT
|
|
710
|
+
| Rebase conflict (non-generated) | HALT - print conflict file, ask user to resolve |
|
|
706
711
|
| Post-push build fails | Regenerate generated files in common, commit + push fix |
|
|
707
|
-
| Status dashboard script missing | Warn + skip
|
|
712
|
+
| Status dashboard script missing | Warn + skip - not blocking |
|
|
708
713
|
| Issue housekeeping fails (critical: 3a/3b/3c/3f) | Retry once → if still fails, HALT |
|
|
709
714
|
| Issue housekeeping fails (non-critical: 3d/3e) | Warn but continue |
|
|
710
|
-
| Jira unreachable | ⚠️ warn
|
|
715
|
+
| Jira unreachable | ⚠️ warn - mark 3f as skipped with reason, pass gate |
|
|
711
716
|
| Completion gate fails | HALT: print failed substeps, retry once, then abort |
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
name: performance-review-next
|
|
3
|
+
description: Reads `_tour_tracker.json`, presents a dashboard of produced components, and guides the user through reviewing each one. Fix commits are separate. Halted components can be retried or dropped.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /performance-review-next - Interactive Component Review Session
|
|
2
7
|
|
|
3
8
|
> Reads `_tour_tracker.json`, presents a dashboard of produced components,
|
|
4
9
|
> and guides the user through reviewing each one. Fix commits are separate.
|
|
@@ -8,7 +13,7 @@
|
|
|
8
13
|
|
|
9
14
|
| Parameter | Required | Default | Description |
|
|
10
15
|
|-----------|----------|---------|-------------|
|
|
11
|
-
| `--status` | No |
|
|
16
|
+
| `--status` | No | - | Show dashboard only, don't start review loop |
|
|
12
17
|
|
|
13
18
|
```
|
|
14
19
|
/performance-review-next
|
|
@@ -27,7 +32,7 @@ UICOMPONENTS = ${REPO_ROOT}/{repos.components.path}
|
|
|
27
32
|
|
|
28
33
|
---
|
|
29
34
|
|
|
30
|
-
## STEP 0
|
|
35
|
+
## STEP 0 - Read Tracker & Show Dashboard
|
|
31
36
|
|
|
32
37
|
Read `_tour_tracker.json`. If not found → HALT: "No tour in progress."
|
|
33
38
|
|
|
@@ -45,8 +50,8 @@ lean_mode = tracker.get("lean_mode", False)
|
|
|
45
50
|
║ ║
|
|
46
51
|
║ # │ Issue │ Component │ Status ║
|
|
47
52
|
║ ──┼────────┼──────────────┼──────────────────────────────── ║
|
|
48
|
-
║ 1 │ #1000 │ ComponentA │ ✅ Produced
|
|
49
|
-
║ 2 │ #1002 │ ComponentC │ ✅ Produced
|
|
53
|
+
║ 1 │ #1000 │ ComponentA │ ✅ Produced - ready for review ║
|
|
54
|
+
║ 2 │ #1002 │ ComponentC │ ✅ Produced - ready for review ║
|
|
50
55
|
║ 3 │ #1001 │ ComponentB │ ❌ Halted (Phase 4) ║
|
|
51
56
|
║ ║
|
|
52
57
|
║ Reviewed: 0/2 produced ║
|
|
@@ -57,7 +62,7 @@ lean_mode = tracker.get("lean_mode", False)
|
|
|
57
62
|
If `lean_mode` is `true`, add a warning banner after the dashboard:
|
|
58
63
|
|
|
59
64
|
```
|
|
60
|
-
⚠️ LEAN MODE
|
|
65
|
+
⚠️ LEAN MODE - Tests & wiki were NOT generated.
|
|
61
66
|
Review covers: implementation (Phase 4) + Code Connect (Phase 6) only.
|
|
62
67
|
```
|
|
63
68
|
|
|
@@ -65,7 +70,7 @@ If `--status` → print dashboard and exit.
|
|
|
65
70
|
|
|
66
71
|
---
|
|
67
72
|
|
|
68
|
-
## STEP 1
|
|
73
|
+
## STEP 1 - Build All (One Time)
|
|
69
74
|
|
|
70
75
|
Before any review, run a single build to verify the current state:
|
|
71
76
|
|
|
@@ -89,19 +94,19 @@ Print:
|
|
|
89
94
|
|
|
90
95
|
Do NOT proceed until build passes.
|
|
91
96
|
|
|
92
|
-
**If build passes:** Print "Build ✅
|
|
97
|
+
**If build passes:** Print "Build ✅ - all components compile" and proceed to STEP 2.
|
|
93
98
|
|
|
94
99
|
---
|
|
95
100
|
|
|
96
|
-
## STEP 2
|
|
101
|
+
## STEP 2 - Review Loop
|
|
97
102
|
|
|
98
103
|
Ask user which component to review:
|
|
99
104
|
|
|
100
105
|
```
|
|
101
106
|
Which component would you like to review?
|
|
102
|
-
[1] ComponentA (#1000)
|
|
103
|
-
[2] ComponentC (#1002)
|
|
104
|
-
[3] ComponentB (#1001)
|
|
107
|
+
[1] ComponentA (#1000) - ready for review
|
|
108
|
+
[2] ComponentC (#1002) - ready for review
|
|
109
|
+
[3] ComponentB (#1001) - halted (retry/drop)
|
|
105
110
|
[done] All reviews complete → proceed to commit
|
|
106
111
|
```
|
|
107
112
|
|
|
@@ -131,13 +136,13 @@ When user selects a produced component:
|
|
|
131
136
|
|
|
132
137
|
3. **Present review options:**
|
|
133
138
|
```
|
|
134
|
-
ComponentA (#1000)
|
|
139
|
+
ComponentA (#1000) - Review
|
|
135
140
|
Files: 8 files (view, config, tests, snapshots, wiki, code-connect) # lean: fewer files
|
|
136
141
|
Tests: ✅ 12 passed # lean: ⏭ skipped (lean mode)
|
|
137
142
|
|
|
138
143
|
Actions:
|
|
139
144
|
[approve] Mark as reviewed ✅
|
|
140
|
-
[fix] I see an issue
|
|
145
|
+
[fix] I see an issue - let me fix it
|
|
141
146
|
[back] Back to dashboard
|
|
142
147
|
```
|
|
143
148
|
|
|
@@ -166,8 +171,8 @@ When user selects a produced component:
|
|
|
166
171
|
When user selects a halted component:
|
|
167
172
|
|
|
168
173
|
```
|
|
169
|
-
ComponentB (#1001)
|
|
170
|
-
Reason: Build failure
|
|
174
|
+
ComponentB (#1001) - Halted at Phase 4
|
|
175
|
+
Reason: Build failure - missing dependency protocol
|
|
171
176
|
|
|
172
177
|
Actions:
|
|
173
178
|
[retry] Re-produce this component from scratch
|
|
@@ -198,8 +203,8 @@ When user selects "done" or all produced components are reviewed:
|
|
|
198
203
|
║ Dropped: 1 component (ComponentB) ║
|
|
199
204
|
║ ║
|
|
200
205
|
║ Ready to commit: ║
|
|
201
|
-
║ ✅ #1000
|
|
202
|
-
║ ✅ #1002
|
|
206
|
+
║ ✅ #1000 - ComponentA ║
|
|
207
|
+
║ ✅ #1002 - ComponentC ║
|
|
203
208
|
║ ║
|
|
204
209
|
║ Next: /performance-iteration-commit-all ║
|
|
205
210
|
╚══════════════════════════════════════════════════════════════╝
|
|
@@ -1,6 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
name: performance-start
|
|
3
|
+
description: Identical to `/figma-to-swift-ui-start` for Steps 0-5. After printing the summary (Step 6), automatically invokes `/performance-swiftui <figma-url>` to begin the implementation pipeline.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# /performance-start - Start + Auto-Launch Performance Pipeline
|
|
2
7
|
|
|
3
|
-
> Identical to `/figma-to-swift-ui-start` for Steps 0
|
|
8
|
+
> Identical to `/figma-to-swift-ui-start` for Steps 0-5. After printing the summary (Step 6),
|
|
4
9
|
> automatically invokes `/performance-swiftui <figma-url>` to begin the implementation pipeline
|
|
5
10
|
> without waiting for user input.
|
|
6
11
|
|
|
@@ -8,10 +13,10 @@
|
|
|
8
13
|
|
|
9
14
|
| Parameter | Required | Default | Description |
|
|
10
15
|
|-----------|----------|---------|-------------|
|
|
11
|
-
| `<issue-number>` | Yes |
|
|
12
|
-
| `jira id <KEY>` | No |
|
|
13
|
-
| `--tour` | No |
|
|
14
|
-
| `--lean` | No |
|
|
16
|
+
| `<issue-number>` | Yes | - | GitHub issue number from uicomponents repo |
|
|
17
|
+
| `jira id <KEY>` | No | - | Jira issue key (e.g., `{jira.projectKey}-129850`). If provided, updates GitHub issue body and populates Jira task. |
|
|
18
|
+
| `--tour` | No | - | Tour mode: skips fetch/pull (STEP 1) and branch creation (STEP 2). Used by `/performance-tour` when producing multiple components on `iteration/develop`. |
|
|
19
|
+
| `--lean` | No | - | Lean mode: forwarded to `/performance-swiftui` to skip Phase 5 (testing) and Phase 7 (wiki). Can be combined with `--tour`. |
|
|
15
20
|
|
|
16
21
|
```
|
|
17
22
|
/performance-start #107
|
|
@@ -28,15 +33,15 @@ When `--tour` is passed, the following steps are **SKIPPED**:
|
|
|
28
33
|
|
|
29
34
|
| Step | Normal Mode | Tour Mode |
|
|
30
35
|
|------|------------|:---------:|
|
|
31
|
-
| STEP 0
|
|
32
|
-
| STEP 0.5
|
|
33
|
-
| STEP 1
|
|
34
|
-
| STEP 2
|
|
35
|
-
| STEP 3
|
|
36
|
-
| STEP 3.5
|
|
37
|
-
| STEP 4
|
|
38
|
-
| STEP 5
|
|
39
|
-
| STEP 6
|
|
36
|
+
| STEP 0 - Parse Issue | ✅ | ✅ |
|
|
37
|
+
| STEP 0.5 - Confirm Pipeline Mode | ✅ | **SKIP** |
|
|
38
|
+
| STEP 1 - Fetch Latest | ✅ | **SKIP** |
|
|
39
|
+
| STEP 2 - Create Feature Branches | ✅ | **SKIP** |
|
|
40
|
+
| STEP 3 - Registry Lookup | ✅ | ✅ |
|
|
41
|
+
| STEP 3.5 - Save Specs Artifact | ✅ | ✅ |
|
|
42
|
+
| STEP 4 - Assign to Me | ✅ | ✅ |
|
|
43
|
+
| STEP 5 - Update Issue Status | ✅ | ✅ |
|
|
44
|
+
| STEP 6 - Summary + Auto-Launch | ✅ | ✅ |
|
|
40
45
|
|
|
41
46
|
**Rationale:** In tour mode, `/performance-tour` has already fetched latest and
|
|
42
47
|
all submodules are on `iteration/develop`. Creating feature branches would conflict
|
|
@@ -64,24 +69,24 @@ WIKI = ${REPO_ROOT}/{repos.wiki.path}
|
|
|
64
69
|
|
|
65
70
|
---
|
|
66
71
|
|
|
67
|
-
## STEP 0
|
|
72
|
+
## STEP 0 - Parse Issue
|
|
68
73
|
|
|
69
74
|
```bash
|
|
70
75
|
gh issue view <N> --repo ${GH_REPO} --json number,title,body,labels,assignees
|
|
71
76
|
```
|
|
72
77
|
|
|
73
78
|
Extract from the issue body:
|
|
74
|
-
- **Component Name**
|
|
75
|
-
- **Figma URL**
|
|
76
|
-
- **Node ID**
|
|
77
|
-
- **Registry Name**
|
|
78
|
-
- **Figma Page**
|
|
79
|
-
- **Jira Key**
|
|
80
|
-
- **Acceptance Criteria**
|
|
79
|
+
- **Component Name** - from `### Component Name (PascalCase)` section
|
|
80
|
+
- **Figma URL** - from `### Figma URL` section
|
|
81
|
+
- **Node ID** - from `### Node ID` section
|
|
82
|
+
- **Registry Name** - from `### Registry Name` section
|
|
83
|
+
- **Figma Page** - from `### Figma Page` section
|
|
84
|
+
- **Jira Key** - from `### Jira Issue` section (if not `_No response_`)
|
|
85
|
+
- **Acceptance Criteria** - from `### Acceptance Criteria` section (if not `_No response_`)
|
|
81
86
|
|
|
82
87
|
If Jira key is `_No response_` or empty **and** user provided a `jira id` parameter:
|
|
83
88
|
1. Use the user-provided key as `JIRA_ISSUE`.
|
|
84
|
-
2. Update the GitHub issue body
|
|
89
|
+
2. Update the GitHub issue body - replace `_No response_` under `### Jira Issue` with a Jira link:
|
|
85
90
|
```bash
|
|
86
91
|
# Read current body, replace the Jira section, update via gh
|
|
87
92
|
CURRENT_BODY=$(gh issue view <N> --repo ${GH_REPO} --json body --jq '.body')
|
|
@@ -114,17 +119,17 @@ Print:
|
|
|
114
119
|
|
|
115
120
|
---
|
|
116
121
|
|
|
117
|
-
## STEP 0.5
|
|
122
|
+
## STEP 0.5 - Confirm Pipeline Mode
|
|
118
123
|
|
|
119
124
|
> **If `--tour` is set → SKIP this step.** Tour mode delegates mode selection to `/performance-tour`.
|
|
120
125
|
|
|
121
|
-
After parsing the issue, **always ask the user** to confirm which pipeline mode to use
|
|
126
|
+
After parsing the issue, **always ask the user** to confirm which pipeline mode to use - regardless of whether `--lean` was passed as a parameter. This prevents accidental full-pipeline runs when lean was intended, or vice versa.
|
|
122
127
|
|
|
123
128
|
**Use the ask-questions tool** with these options:
|
|
124
129
|
|
|
125
130
|
| Header | Question | Options |
|
|
126
131
|
|--------|----------|---------|
|
|
127
|
-
| Pipeline Mode | `<COMPONENT_PASCAL>` implementation
|
|
132
|
+
| Pipeline Mode | `<COMPONENT_PASCAL>` implementation - which pipeline mode? | **Lean** (skip testing & wiki - Phases 5, 7) · **Full** (all 8 phases) |
|
|
128
133
|
|
|
129
134
|
- If `--lean` was passed in the original command, pre-select **Lean** as the recommended option.
|
|
130
135
|
- If no flag was passed, pre-select **Full** as the recommended option.
|
|
@@ -137,7 +142,7 @@ This confirmation overrides whatever was passed on the command line.
|
|
|
137
142
|
|
|
138
143
|
---
|
|
139
144
|
|
|
140
|
-
## STEP 1
|
|
145
|
+
## STEP 1 - Fetch Latest
|
|
141
146
|
|
|
142
147
|
> **If `--tour` is set → SKIP this entire step.** Tour mode assumes
|
|
143
148
|
> `/performance-tour` STEP 0e has already fetched and checked out the correct branches.
|
|
@@ -163,12 +168,12 @@ git pull origin iteration/develop
|
|
|
163
168
|
|
|
164
169
|
---
|
|
165
170
|
|
|
166
|
-
## STEP 2
|
|
171
|
+
## STEP 2 - Create Feature Branches
|
|
167
172
|
|
|
168
173
|
> **If `--tour` is set → SKIP this entire step.** Tour mode stays on
|
|
169
174
|
> `iteration/develop` with local commits. No feature branches are created.
|
|
170
175
|
|
|
171
|
-
Create feature branches on **submodules only**. Do NOT create branches on the main repo
|
|
176
|
+
Create feature branches on **submodules only**. Do NOT create branches on the main repo - it stays on `develop`. The main repo never receives commits from this workflow; submodule refs are updated separately.
|
|
172
177
|
|
|
173
178
|
```bash
|
|
174
179
|
# Common (tokens, localization, accessibility, testing identifiers)
|
|
@@ -180,11 +185,11 @@ cd ${UICOMPONENTS}
|
|
|
180
185
|
git checkout -b ${BRANCH_NAME}
|
|
181
186
|
```
|
|
182
187
|
|
|
183
|
-
Wiki submodule stays on `master`
|
|
188
|
+
Wiki submodule stays on `master` - wiki changes are committed directly.
|
|
184
189
|
|
|
185
190
|
---
|
|
186
191
|
|
|
187
|
-
## STEP 3
|
|
192
|
+
## STEP 3 - Registry Lookup
|
|
188
193
|
|
|
189
194
|
```bash
|
|
190
195
|
cd ${COMMON}
|
|
@@ -192,8 +197,8 @@ cd ${COMMON}
|
|
|
192
197
|
```
|
|
193
198
|
|
|
194
199
|
Collect:
|
|
195
|
-
- `suggestedComponentLocation`
|
|
196
|
-
- `suggestedArtifactPath`
|
|
200
|
+
- `suggestedComponentLocation` - where the Swift files will go
|
|
201
|
+
- `suggestedArtifactPath` - where implementation artifacts go
|
|
197
202
|
|
|
198
203
|
Print:
|
|
199
204
|
|
|
@@ -204,7 +209,7 @@ Artifact Path: <suggestedArtifactPath>
|
|
|
204
209
|
|
|
205
210
|
---
|
|
206
211
|
|
|
207
|
-
## STEP 3.5
|
|
212
|
+
## STEP 3.5 - Save Specs Artifact
|
|
208
213
|
|
|
209
214
|
If the issue has acceptance criteria (not `_No response_`), save them as an artifact that the implementation pipeline can consume.
|
|
210
215
|
|
|
@@ -223,21 +228,21 @@ Write `${suggestedArtifactPath}/pass0/specs.md`:
|
|
|
223
228
|
|
|
224
229
|
## Acceptance Criteria
|
|
225
230
|
|
|
226
|
-
{ACCEPTANCE_CRITERIA from issue body
|
|
231
|
+
{ACCEPTANCE_CRITERIA from issue body - verbatim}
|
|
227
232
|
|
|
228
233
|
## Implementation Guidance
|
|
229
234
|
|
|
230
235
|
{Convert the acceptance criteria into actionable implementation instructions for the AI agent:
|
|
231
236
|
- Rephrase checkbox items as concrete requirements
|
|
232
237
|
- Add technical context where the criteria imply Swift/SwiftUI patterns
|
|
233
|
-
- Preserve the user's intent exactly
|
|
238
|
+
- Preserve the user's intent exactly - don't add or remove requirements}
|
|
234
239
|
```
|
|
235
240
|
|
|
236
241
|
If no acceptance criteria → skip this step. No file created.
|
|
237
242
|
|
|
238
243
|
---
|
|
239
244
|
|
|
240
|
-
## STEP 4
|
|
245
|
+
## STEP 4 - Assign to Me
|
|
241
246
|
|
|
242
247
|
Assign the GitHub issue and linked Jira task (if any) to the current user. Same logic as `/figma-issue assign`:
|
|
243
248
|
|
|
@@ -245,7 +250,7 @@ Assign the GitHub issue and linked Jira task (if any) to the current user. Same
|
|
|
245
250
|
gh issue edit <N> --repo ${GH_REPO} --add-assignee @me
|
|
246
251
|
```
|
|
247
252
|
|
|
248
|
-
If Jira key exists (from issue body or user-provided `jira id` parameter
|
|
253
|
+
If Jira key exists (from issue body or user-provided `jira id` parameter - not `_No response_` and not `DEFAULT_JIRA`):
|
|
249
254
|
|
|
250
255
|
Use **Python urllib** for all Jira API calls (curl is blocked by terminal auto-approval policy):
|
|
251
256
|
|
|
@@ -288,7 +293,7 @@ try:
|
|
|
288
293
|
resp2 = urllib.request.urlopen(req2, timeout=15)
|
|
289
294
|
print(f"Assigned {JIRA_KEY} to {username} (HTTP {resp2.status})")
|
|
290
295
|
except urllib.error.HTTPError as e:
|
|
291
|
-
print(f"Assign failed
|
|
296
|
+
print(f"Assign failed - HTTP {e.code}: {e.read().decode()[:200]}")
|
|
292
297
|
|
|
293
298
|
# 3. Update Jira summary, description, and labels
|
|
294
299
|
description = (
|
|
@@ -328,7 +333,7 @@ try:
|
|
|
328
333
|
resp3 = urllib.request.urlopen(req3, timeout=15)
|
|
329
334
|
print(f"Updated {JIRA_KEY} content (HTTP {resp3.status})")
|
|
330
335
|
except urllib.error.HTTPError as e:
|
|
331
|
-
print(f"Update failed
|
|
336
|
+
print(f"Update failed - HTTP {e.code}: {e.read().decode()[:200]}")
|
|
332
337
|
```
|
|
333
338
|
|
|
334
339
|
Run: `python3 /tmp/jira_start_<JIRA_KEY>.py`
|
|
@@ -341,7 +346,7 @@ If Jira token not found or VPN unreachable, skip with warning:
|
|
|
341
346
|
|
|
342
347
|
---
|
|
343
348
|
|
|
344
|
-
## STEP 5
|
|
349
|
+
## STEP 5 - Update Issue Status (required)
|
|
345
350
|
|
|
346
351
|
**This step is mandatory. Do not skip it and do not defer it.** The issue
|
|
347
352
|
is on the board with Status=Todo after creation. Moving it to Status=In
|
|
@@ -355,7 +360,7 @@ Set the issue phase to "Implementation" and status to "In Develop" on the Projec
|
|
|
355
360
|
# Get issue node ID
|
|
356
361
|
ISSUE_NODE_ID=$(gh api graphql -f query='{ repository(owner: "{github.org}", name: "{project.slug}-components") { issue(number: <N>) { id } } }' --jq '.data.repository.issue.id')
|
|
357
362
|
|
|
358
|
-
# Add to project (if not already). This mutation is idempotent
|
|
363
|
+
# Add to project (if not already). This mutation is idempotent - if the
|
|
359
364
|
# item already exists it returns the existing item id.
|
|
360
365
|
ITEM_ID=$(gh api graphql -f query='mutation { addProjectV2ItemById(input: { projectId: "{github.projectV2Id}", contentId: "'"$ISSUE_NODE_ID"'" }) { item { id } } }' --jq '.data.addProjectV2ItemById.item.id')
|
|
361
366
|
|
|
@@ -377,12 +382,12 @@ gh api graphql -f query='{ node(id: "'"$ITEM_ID"'") { ... on ProjectV2Item { fie
|
|
|
377
382
|
```
|
|
378
383
|
|
|
379
384
|
Expected output: `In Develop`. If you see anything else (or empty),
|
|
380
|
-
re-fetch the current option IDs and retry
|
|
385
|
+
re-fetch the current option IDs and retry - do NOT proceed to implementation
|
|
381
386
|
without the Status set correctly.
|
|
382
387
|
|
|
383
388
|
---
|
|
384
389
|
|
|
385
|
-
## STEP 6
|
|
390
|
+
## STEP 6 - Summary + Auto-Launch Pipeline
|
|
386
391
|
|
|
387
392
|
Print:
|
|
388
393
|
|
|
@@ -411,7 +416,7 @@ Ready to implement:
|
|
|
411
416
|
|
|
412
417
|
Forward `--lean` based on the user's confirmed selection in **STEP 0.5** (not the raw command-line flag). This starts Phase 0 of the performance-optimized implementation pipeline.
|
|
413
418
|
|
|
414
|
-
> If any STEP (0
|
|
419
|
+
> If any STEP (0-5) failed or was aborted, do NOT auto-launch. Print the error and stop.
|
|
415
420
|
|
|
416
421
|
---
|
|
417
422
|
|
|
@@ -420,6 +425,6 @@ Forward `--lean` based on the user's confirmed selection in **STEP 0.5** (not th
|
|
|
420
425
|
- **Issue not found**: Print error and stop.
|
|
421
426
|
- **Issue body missing required fields**: Print which fields are missing, stop.
|
|
422
427
|
- **FigmaRegistryUtility not built**: Run `swift build --product FigmaRegistryUtility` in common.
|
|
423
|
-
- **Branch already exists**: Print warning
|
|
428
|
+
- **Branch already exists**: Print warning - checkout existing branch instead of creating.
|
|
424
429
|
- **Main repo not on develop**: Fetch and checkout automatically.
|
|
425
430
|
- **Submodule not on iteration/develop**: Fetch and checkout automatically.
|