mandrel 2.59.0 → 2.61.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agents/README.md +21 -19
- package/.agents/agents/acceptance-critic.md +24 -43
- package/.agents/agents/story-worker.md +20 -21
- package/.agents/docs/agentrc-reference.json +5 -84
- package/.agents/docs/configuration.md +48 -132
- package/.agents/docs/workflows.md +2 -2
- package/.agents/instructions.md +5 -8
- package/.agents/rules/ci-remediation.md +41 -8
- package/.agents/rules/gherkin-standards.md +4 -0
- package/.agents/schemas/acceptance-eval-verdict.schema.json +1 -1
- package/.agents/schemas/agentrc.schema.json +16 -496
- package/.agents/schemas/story-deliver-terminal.schema.json +13 -3
- package/.agents/schemas/validation-evidence.schema.json +2 -1
- package/.agents/scripts/README.md +23 -13
- package/.agents/scripts/acceptance-eval.js +35 -169
- package/.agents/scripts/agents-bootstrap-github.js +27 -129
- package/.agents/scripts/apply-quality-bootstrap.js +4 -40
- package/.agents/scripts/audit-baselines.js +6 -27
- package/.agents/scripts/audit-labels-bootstrap.js +5 -29
- package/.agents/scripts/audit-to-stories.js +91 -361
- package/.agents/scripts/boot-sweep.js +19 -72
- package/.agents/scripts/bootstrap.js +74 -395
- package/.agents/scripts/ceremony-derive.js +10 -41
- package/.agents/scripts/check-arch-cycles.js +14 -64
- package/.agents/scripts/check-baselines.js +8 -48
- package/.agents/scripts/check-context-budget.js +105 -311
- package/.agents/scripts/check-cyclomatic.js +12 -44
- package/.agents/scripts/check-dead-exports.js +13 -64
- package/.agents/scripts/check-doc-links.js +38 -186
- package/.agents/scripts/check-gherkin-corpus.js +24 -127
- package/.agents/scripts/check-test-temp-hygiene.js +28 -169
- package/.agents/scripts/coverage-capture.js +34 -98
- package/.agents/scripts/deliver-light.js +25 -171
- package/.agents/scripts/deliver-recover.js +6 -42
- package/.agents/scripts/deliver-run.js +534 -0
- package/.agents/scripts/diagnose-friction.js +24 -116
- package/.agents/scripts/drain-pending-cleanup.js +1 -1
- package/.agents/scripts/evidence-gate.js +23 -85
- package/.agents/scripts/file-ci-gap.js +57 -49
- package/.agents/scripts/generate-config-docs.js +30 -170
- package/.agents/scripts/generate-lens-checklists.js +8 -52
- package/.agents/scripts/generate-skills-index.js +14 -112
- package/.agents/scripts/generate-workflows-doc.js +10 -70
- package/.agents/scripts/git-cleanup.js +2 -34
- package/.agents/scripts/lib/Graph.js +24 -81
- package/.agents/scripts/lib/ITicketingProvider.js +47 -143
- package/.agents/scripts/lib/Logger.js +14 -76
- package/.agents/scripts/lib/audit-baselines/engine.js +11 -31
- package/.agents/scripts/lib/audit-baselines/gate-surface.js +3 -17
- package/.agents/scripts/lib/audit-baselines/headroom.js +4 -20
- package/.agents/scripts/lib/audit-baselines/hotspots.js +3 -15
- package/.agents/scripts/lib/audit-baselines/kinds.js +23 -89
- package/.agents/scripts/lib/audit-baselines/outliers.js +6 -23
- package/.agents/scripts/lib/audit-baselines/read.js +3 -16
- package/.agents/scripts/lib/audit-baselines/staleness.js +7 -26
- package/.agents/scripts/lib/audit-baselines/surface-entry.js +7 -28
- package/.agents/scripts/lib/audit-baselines/trend.js +7 -20
- package/.agents/scripts/lib/audit-baselines/weights.js +9 -37
- package/.agents/scripts/lib/audit-suite/audit-rules-reader.js +3 -18
- package/.agents/scripts/lib/audit-suite/checklist-threading.js +26 -124
- package/.agents/scripts/lib/audit-suite/dispatch-checklist.js +14 -45
- package/.agents/scripts/lib/audit-suite/findings.js +12 -52
- package/.agents/scripts/lib/audit-suite/frontmatter.js +5 -29
- package/.agents/scripts/lib/audit-suite/index.js +1 -15
- package/.agents/scripts/lib/audit-suite/lens-checklist.js +10 -45
- package/.agents/scripts/lib/audit-suite/lens-diff-floor.js +11 -76
- package/.agents/scripts/lib/audit-suite/runner.js +13 -43
- package/.agents/scripts/lib/audit-suite/selector.js +49 -349
- package/.agents/scripts/lib/audit-suite/substitutions.js +12 -40
- package/.agents/scripts/lib/audit-suite/workflow-loader.js +3 -15
- package/.agents/scripts/lib/audit-to-stories/audit-label-taxonomy.js +11 -73
- package/.agents/scripts/lib/audit-to-stories/audit-lenses.js +8 -37
- package/.agents/scripts/lib/audit-to-stories/build-story-body.js +25 -143
- package/.agents/scripts/lib/audit-to-stories/dedupe-against-github.js +14 -80
- package/.agents/scripts/lib/audit-to-stories/epic-grouping-directive.js +4 -18
- package/.agents/scripts/lib/audit-to-stories/finding-adapter.js +7 -40
- package/.agents/scripts/lib/audit-to-stories/group-findings.js +9 -39
- package/.agents/scripts/lib/audit-to-stories/issue-corpus.js +10 -66
- package/.agents/scripts/lib/audit-to-stories/issue-index.js +6 -30
- package/.agents/scripts/lib/audit-to-stories/issues-file.js +6 -36
- package/.agents/scripts/lib/audit-to-stories/ledger-commit.js +17 -69
- package/.agents/scripts/lib/audit-to-stories/ledger-pr.js +17 -85
- package/.agents/scripts/lib/audit-to-stories/ledger-record.js +10 -48
- package/.agents/scripts/lib/audit-to-stories/parse-audit-md.js +38 -146
- package/.agents/scripts/lib/audit-to-stories/seed-from-findings.js +7 -42
- package/.agents/scripts/lib/audit-to-stories/wire-dependencies.js +10 -57
- package/.agents/scripts/lib/baseline-loader.js +12 -51
- package/.agents/scripts/lib/baseline-schema-registry.js +5 -22
- package/.agents/scripts/lib/baselines/component-matcher.js +3 -12
- package/.agents/scripts/lib/baselines/components.js +10 -61
- package/.agents/scripts/lib/baselines/coverage-updater-cli.js +7 -36
- package/.agents/scripts/lib/baselines/crap-preview-incremental.js +7 -19
- package/.agents/scripts/lib/baselines/crap-preview-scan.js +19 -45
- package/.agents/scripts/lib/baselines/crap-updater-cli.js +16 -65
- package/.agents/scripts/lib/baselines/diff-scope-cli.js +5 -33
- package/.agents/scripts/lib/baselines/duplication-scanner.js +11 -60
- package/.agents/scripts/lib/baselines/env-overrides.js +12 -67
- package/.agents/scripts/lib/baselines/envelope.js +13 -129
- package/.agents/scripts/lib/baselines/exit-codes.js +6 -49
- package/.agents/scripts/lib/baselines/git-base.js +23 -142
- package/.agents/scripts/lib/baselines/kernel.js +11 -111
- package/.agents/scripts/lib/baselines/kinds/_crap-new-method-gate.js +9 -47
- package/.agents/scripts/lib/baselines/kinds/_crap-read.js +8 -51
- package/.agents/scripts/lib/baselines/kinds/_shared-metric.js +7 -62
- package/.agents/scripts/lib/baselines/kinds/bundle-size.js +8 -29
- package/.agents/scripts/lib/baselines/kinds/coverage.js +3 -15
- package/.agents/scripts/lib/baselines/kinds/crap.js +94 -415
- package/.agents/scripts/lib/baselines/kinds/duplication.js +4 -30
- package/.agents/scripts/lib/baselines/kinds/kind-factory.js +7 -53
- package/.agents/scripts/lib/baselines/kinds/maintainability.js +15 -80
- package/.agents/scripts/lib/baselines/kinds/mutation.js +12 -72
- package/.agents/scripts/lib/baselines/maintainability-baseline-io.js +4 -11
- package/.agents/scripts/lib/baselines/merge-envelopes.js +30 -146
- package/.agents/scripts/lib/baselines/path-canon.js +19 -128
- package/.agents/scripts/lib/baselines/preview-gates.js +8 -37
- package/.agents/scripts/lib/baselines/reader.js +14 -107
- package/.agents/scripts/lib/baselines/refresh-service.js +35 -252
- package/.agents/scripts/lib/baselines/scope.js +11 -135
- package/.agents/scripts/lib/baselines/writer.js +16 -149
- package/.agents/scripts/lib/bdd-runner-detect.js +18 -113
- package/.agents/scripts/lib/bdd-scenario-budget.js +9 -36
- package/.agents/scripts/lib/bdd-scenario-scanner.js +11 -73
- package/.agents/scripts/lib/bdd-step-index.js +26 -100
- package/.agents/scripts/lib/bootstrap/baseline-merge-driver.js +23 -103
- package/.agents/scripts/lib/bootstrap/branch-protection.js +2 -5
- package/.agents/scripts/lib/bootstrap/commit-push.js +12 -50
- package/.agents/scripts/lib/bootstrap/gh-preflight.js +14 -101
- package/.agents/scripts/lib/bootstrap/hitl-confirm.js +5 -30
- package/.agents/scripts/lib/bootstrap/install-ledger.js +17 -73
- package/.agents/scripts/lib/bootstrap/issue-forms-template.js +17 -121
- package/.agents/scripts/lib/bootstrap/manifest.js +15 -86
- package/.agents/scripts/lib/bootstrap/merge-methods.js +4 -33
- package/.agents/scripts/lib/bootstrap/preflight.js +12 -61
- package/.agents/scripts/lib/bootstrap/project-bootstrap.js +34 -235
- package/.agents/scripts/lib/bootstrap/prompt.js +21 -129
- package/.agents/scripts/lib/bootstrap/quality-bootstrap.js +27 -141
- package/.agents/scripts/lib/bootstrap/summary.js +1 -8
- package/.agents/scripts/lib/bootstrap/workflow-audit.js +11 -84
- package/.agents/scripts/lib/branch-name-guard.js +4 -23
- package/.agents/scripts/lib/changed-files.js +39 -121
- package/.agents/scripts/lib/checks/core-bare-clean.js +4 -24
- package/.agents/scripts/lib/checks/index.js +18 -101
- package/.agents/scripts/lib/checks/loop-health.js +11 -53
- package/.agents/scripts/lib/checks/state.js +16 -91
- package/.agents/scripts/lib/checks/story-init-not-backgrounded.js +10 -61
- package/.agents/scripts/lib/checks/subagent-agent-tool-required.js +14 -83
- package/.agents/scripts/lib/child-exec.js +39 -108
- package/.agents/scripts/lib/cli/standard-args.js +9 -116
- package/.agents/scripts/lib/cli-args.js +31 -146
- package/.agents/scripts/lib/cli-usage.js +5 -27
- package/.agents/scripts/lib/cli-utils.js +2 -12
- package/.agents/scripts/lib/close-validation/commands.js +13 -76
- package/.agents/scripts/lib/close-validation/gates.js +92 -331
- package/.agents/scripts/lib/close-validation/process.js +121 -151
- package/.agents/scripts/lib/close-validation/projections/advisories.js +5 -31
- package/.agents/scripts/lib/close-validation/projections/crap.js +19 -67
- package/.agents/scripts/lib/close-validation/projections/head-sha.js +1 -17
- package/.agents/scripts/lib/close-validation/projections/inputs.js +4 -34
- package/.agents/scripts/lib/close-validation/projections/maintainability.js +11 -58
- package/.agents/scripts/lib/close-validation/runner.js +53 -110
- package/.agents/scripts/lib/command-header.js +6 -28
- package/.agents/scripts/lib/config/acceptance-eval.js +4 -30
- package/.agents/scripts/lib/config/baselines.js +3 -14
- package/.agents/scripts/lib/config/ci.js +8 -38
- package/.agents/scripts/lib/config/commands.js +1 -15
- package/.agents/scripts/lib/config/defaults.js +4 -33
- package/.agents/scripts/lib/config/delivery-routing.js +6 -34
- package/.agents/scripts/lib/config/explain.js +10 -83
- package/.agents/scripts/lib/config/gates/coverage.schema.js +0 -12
- package/.agents/scripts/lib/config/gates/crap-incremental-coverage.schema.js +3 -31
- package/.agents/scripts/lib/config/gates/crap.schema.js +1 -34
- package/.agents/scripts/lib/config/gates/duplication.schema.js +1 -8
- package/.agents/scripts/lib/config/gates/index.js +2 -17
- package/.agents/scripts/lib/config/gates/maintainability.schema.js +1 -20
- package/.agents/scripts/lib/config/gates/mutation.schema.js +1 -7
- package/.agents/scripts/lib/config/gates/shared.js +4 -64
- package/.agents/scripts/lib/config/github.js +4 -22
- package/.agents/scripts/lib/config/limits.js +4 -57
- package/.agents/scripts/lib/config/paths.js +2 -21
- package/.agents/scripts/lib/config/qa.js +4 -38
- package/.agents/scripts/lib/config/quality.js +76 -432
- package/.agents/scripts/lib/config/runners.js +12 -56
- package/.agents/scripts/lib/config/runtime.js +13 -57
- package/.agents/scripts/lib/config/shared.js +2 -16
- package/.agents/scripts/lib/config/sync-agentrc.js +9 -50
- package/.agents/scripts/lib/config/temp-paths.js +40 -280
- package/.agents/scripts/lib/config/validate-orchestration.js +5 -17
- package/.agents/scripts/lib/config/worktree-isolation.js +9 -28
- package/.agents/scripts/lib/config-resolver.js +11 -52
- package/.agents/scripts/lib/config-schema-shared.js +1 -4
- package/.agents/scripts/lib/config-settings-schema-delivery.js +16 -291
- package/.agents/scripts/lib/config-settings-schema-quality.js +7 -219
- package/.agents/scripts/lib/config-settings-schema.js +37 -274
- package/.agents/scripts/lib/coverage-baseline.js +20 -110
- package/.agents/scripts/lib/coverage-capture-fullscope.js +18 -35
- package/.agents/scripts/lib/coverage-capture-incremental.js +15 -45
- package/.agents/scripts/lib/coverage-capture-usage.js +8 -25
- package/.agents/scripts/lib/coverage-capture.js +99 -224
- package/.agents/scripts/lib/coverage-utils.js +14 -79
- package/.agents/scripts/lib/cpu-pool.js +17 -123
- package/.agents/scripts/lib/crap-baseline-join.js +16 -88
- package/.agents/scripts/lib/crap-coordinates.js +6 -25
- package/.agents/scripts/lib/crap-engine.js +40 -153
- package/.agents/scripts/lib/crap-method-identity.js +16 -78
- package/.agents/scripts/lib/crap-utils.js +31 -155
- package/.agents/scripts/lib/cyclomatic-ceiling.js +14 -87
- package/.agents/scripts/lib/cyclomatic-scope.js +10 -50
- package/.agents/scripts/lib/dead-exports-knip.js +18 -56
- package/.agents/scripts/lib/dead-exports-mode.js +5 -24
- package/.agents/scripts/lib/degraded-mode.js +3 -26
- package/.agents/scripts/lib/dependency-parser.js +8 -40
- package/.agents/scripts/lib/dependency-version.js +13 -35
- package/.agents/scripts/lib/detect-package-manager.js +6 -36
- package/.agents/scripts/lib/doc-tiers.js +22 -124
- package/.agents/scripts/lib/duplicate-search.js +8 -72
- package/.agents/scripts/lib/env-loader.js +5 -27
- package/.agents/scripts/lib/error-redactor.js +6 -31
- package/.agents/scripts/lib/errors/index.js +2 -22
- package/.agents/scripts/lib/escomplex-ast-compat.js +22 -163
- package/.agents/scripts/lib/escomplex-kernel.js +21 -123
- package/.agents/scripts/lib/feedback-loop/graduator-core.js +94 -419
- package/.agents/scripts/lib/feedback-loop/prior-feedback-fetcher.js +20 -98
- package/.agents/scripts/lib/feedback-loop/retro-proposals-graduator.js +27 -149
- package/.agents/scripts/lib/findings/audit-ledger.js +23 -97
- package/.agents/scripts/lib/findings/classify-finding.js +14 -69
- package/.agents/scripts/lib/findings/promote-finding.js +14 -112
- package/.agents/scripts/lib/findings/provenance-field.js +11 -52
- package/.agents/scripts/lib/findings/route-finding.js +37 -255
- package/.agents/scripts/lib/findings/semantic-issue-search.js +14 -59
- package/.agents/scripts/lib/findings/severity.js +18 -104
- package/.agents/scripts/lib/format-generated-json.js +12 -44
- package/.agents/scripts/lib/full-suite-lock.js +160 -429
- package/.agents/scripts/lib/full-suite-queue.js +213 -0
- package/.agents/scripts/lib/gates/baseline-store.js +5 -9
- package/.agents/scripts/lib/gates/friction.js +1 -3
- package/.agents/scripts/lib/generated/agentrc-validator.js +2 -2
- package/.agents/scripts/lib/gh-exec.js +123 -191
- package/.agents/scripts/lib/git/cached-fetch.js +9 -52
- package/.agents/scripts/lib/git/sync-from-base.js +15 -107
- package/.agents/scripts/lib/git-branch-cleanup.js +14 -61
- package/.agents/scripts/lib/git-branch-lifecycle.js +16 -87
- package/.agents/scripts/lib/git-utils.js +37 -161
- package/.agents/scripts/lib/github/framework-repo.js +8 -71
- package/.agents/scripts/lib/github-url.js +2 -17
- package/.agents/scripts/lib/import-graph.js +11 -38
- package/.agents/scripts/lib/install-cmd-parser.js +4 -13
- package/.agents/scripts/lib/json-utils.js +3 -18
- package/.agents/scripts/lib/label-constants.js +16 -111
- package/.agents/scripts/lib/label-taxonomy.js +4 -30
- package/.agents/scripts/lib/maintainability-engine.js +12 -80
- package/.agents/scripts/lib/maintainability-unscorable.js +5 -25
- package/.agents/scripts/lib/maintainability-utils.js +16 -92
- package/.agents/scripts/lib/mandrel-catalog.js +12 -70
- package/.agents/scripts/lib/notifications/notifier.js +13 -38
- package/.agents/scripts/lib/npm-scripts.js +4 -23
- package/.agents/scripts/lib/observability/metrics-ledger.js +16 -76
- package/.agents/scripts/lib/observability/runtime-friction.js +44 -286
- package/.agents/scripts/lib/observability/signal-validator.js +5 -37
- package/.agents/scripts/lib/observability/signals-writer.js +11 -121
- package/.agents/scripts/lib/observability/source-classifier.js +22 -203
- package/.agents/scripts/lib/observability/terse-result.js +14 -47
- package/.agents/scripts/lib/onboard/init-tail.js +13 -74
- package/.agents/scripts/lib/onboard/scaffold-docs.js +11 -34
- package/.agents/scripts/lib/orchestration/acceptance-eval-decision.js +25 -139
- package/.agents/scripts/lib/orchestration/auto-merge-cwd.js +11 -66
- package/.agents/scripts/lib/orchestration/behind-recovery.js +10 -55
- package/.agents/scripts/lib/orchestration/ceremony-routing.js +28 -156
- package/.agents/scripts/lib/orchestration/change-set.js +7 -36
- package/.agents/scripts/lib/orchestration/check-baselines/phases/compare.js +9 -46
- package/.agents/scripts/lib/orchestration/check-baselines/phases/evaluate.js +11 -44
- package/.agents/scripts/lib/orchestration/check-baselines/phases/floors.js +5 -24
- package/.agents/scripts/lib/orchestration/check-baselines/phases/friction.js +3 -12
- package/.agents/scripts/lib/orchestration/check-baselines/phases/parse-args.js +5 -38
- package/.agents/scripts/lib/orchestration/check-baselines/phases/pipeline.js +3 -8
- package/.agents/scripts/lib/orchestration/check-baselines/phases/refresh-ack.js +28 -136
- package/.agents/scripts/lib/orchestration/check-baselines/phases/report.js +3 -13
- package/.agents/scripts/lib/orchestration/check-state.js +92 -0
- package/.agents/scripts/lib/orchestration/ci-gap-intake.js +37 -144
- package/.agents/scripts/lib/orchestration/ci-rerun-guard.js +121 -157
- package/.agents/scripts/lib/orchestration/code-review.js +24 -128
- package/.agents/scripts/lib/orchestration/column-sync.js +23 -111
- package/.agents/scripts/lib/orchestration/complexity-gate.js +118 -462
- package/.agents/scripts/lib/orchestration/deliver-recover.js +36 -168
- package/.agents/scripts/lib/orchestration/dependency-analyzer.js +4 -35
- package/.agents/scripts/lib/orchestration/dependency-candidates.js +9 -41
- package/.agents/scripts/lib/orchestration/diff-magnitude.js +25 -115
- package/.agents/scripts/lib/orchestration/doc-reader.js +2 -6
- package/.agents/scripts/lib/orchestration/docs-digest.js +13 -51
- package/.agents/scripts/lib/orchestration/epic-candidates.js +13 -53
- package/.agents/scripts/lib/orchestration/epic-checklist.js +9 -33
- package/.agents/scripts/lib/orchestration/epic-container.js +41 -167
- package/.agents/scripts/lib/orchestration/epic-expansion.js +10 -40
- package/.agents/scripts/lib/orchestration/epic-rollup.js +55 -207
- package/.agents/scripts/lib/orchestration/file-assumption-enum.js +2 -22
- package/.agents/scripts/lib/orchestration/file-assumptions.js +45 -253
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/branches-detect.js +9 -46
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/branches-reap.js +7 -57
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/branches.js +21 -126
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/cli.js +2 -6
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/fast-forward.js +1 -4
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/filters.js +1 -5
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/git-probes-ff.js +9 -34
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/git-probes.js +41 -190
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/merged-tip.js +9 -45
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/parse-args.js +1 -4
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/phase-drivers.js +19 -85
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/prompts.js +3 -17
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/prune.js +1 -5
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/render.js +16 -100
- package/.agents/scripts/lib/orchestration/git-cleanup/phases/stashes.js +1 -4
- package/.agents/scripts/lib/orchestration/lease-guard-shared.js +16 -67
- package/.agents/scripts/lib/orchestration/lifecycle/emit-ledger-event.js +9 -33
- package/.agents/scripts/lib/orchestration/lifecycle/emit-merge-flip-failed.js +8 -29
- package/.agents/scripts/lib/orchestration/lifecycle/emit-merge-unlanded.js +15 -68
- package/.agents/scripts/lib/orchestration/light-backstop.js +11 -49
- package/.agents/scripts/lib/orchestration/light-escalation.js +21 -89
- package/.agents/scripts/lib/orchestration/light-suitability.js +37 -307
- package/.agents/scripts/lib/orchestration/merge-block-class.js +39 -216
- package/.agents/scripts/lib/orchestration/merge-poll.js +104 -377
- package/.agents/scripts/lib/orchestration/pinned-identifier-lint.js +17 -57
- package/.agents/scripts/lib/orchestration/plan-context.js +55 -318
- package/.agents/scripts/lib/orchestration/plan-critic-conditions.js +22 -79
- package/.agents/scripts/lib/orchestration/plan-critics-evaluate.js +5 -31
- package/.agents/scripts/lib/orchestration/plan-metrics.js +29 -108
- package/.agents/scripts/lib/orchestration/plan-navigation.js +8 -27
- package/.agents/scripts/lib/orchestration/plan-persist/acceptance-handle-repair.js +12 -49
- package/.agents/scripts/lib/orchestration/plan-persist/audit-provenance.js +18 -73
- package/.agents/scripts/lib/orchestration/plan-persist/changes-repair.js +16 -78
- package/.agents/scripts/lib/orchestration/plan-persist/cross-plan-links.js +6 -30
- package/.agents/scripts/lib/orchestration/plan-persist/epic-adoption.js +14 -65
- package/.agents/scripts/lib/orchestration/plan-persist/epic-ops.js +21 -76
- package/.agents/scripts/lib/orchestration/plan-persist/external-deps.js +6 -43
- package/.agents/scripts/lib/orchestration/plan-persist/persist-helpers.js +14 -68
- package/.agents/scripts/lib/orchestration/plan-persist/plan-context-source.js +9 -41
- package/.agents/scripts/lib/orchestration/plan-persist/run-plan-persist.js +71 -289
- package/.agents/scripts/lib/orchestration/plan-persist/soft-findings.js +2 -12
- package/.agents/scripts/lib/orchestration/plan-persist/story-ops.js +96 -362
- package/.agents/scripts/lib/orchestration/plan-persist/summary.js +9 -39
- package/.agents/scripts/lib/orchestration/plan-persist/supersede-ops.js +60 -186
- package/.agents/scripts/lib/orchestration/plan-persist/wave-collision-gate.js +9 -49
- package/.agents/scripts/lib/orchestration/plan-persist/wave-serialisation.js +7 -28
- package/.agents/scripts/lib/orchestration/plan-reachability.js +13 -42
- package/.agents/scripts/lib/orchestration/plan-run-labels/reap.js +16 -91
- package/.agents/scripts/lib/orchestration/plan-runner/worktree-sweep.js +16 -54
- package/.agents/scripts/lib/orchestration/plan-text-hygiene.js +10 -52
- package/.agents/scripts/lib/orchestration/planning/authoring-context.js +14 -109
- package/.agents/scripts/lib/orchestration/planning/memory-pool-advisory.js +11 -83
- package/.agents/scripts/lib/orchestration/pr-watch.js +48 -306
- package/.agents/scripts/lib/orchestration/project-meta-cache.js +15 -80
- package/.agents/scripts/lib/orchestration/project-meta-resolver.js +10 -51
- package/.agents/scripts/lib/orchestration/reassert-status-column.js +12 -76
- package/.agents/scripts/lib/orchestration/remote-verifier.js +12 -36
- package/.agents/scripts/lib/orchestration/resolve-stories.js +33 -164
- package/.agents/scripts/lib/orchestration/retro-proposals.js +66 -361
- package/.agents/scripts/lib/orchestration/review-base-ref.js +9 -43
- package/.agents/scripts/lib/orchestration/review-depth.js +12 -91
- package/.agents/scripts/lib/orchestration/review-providers/codex.js +10 -111
- package/.agents/scripts/lib/orchestration/review-providers/degraded-gates.js +13 -71
- package/.agents/scripts/lib/orchestration/review-providers/findings-renderer.js +7 -51
- package/.agents/scripts/lib/orchestration/review-providers/mi-exemptions.js +8 -53
- package/.agents/scripts/lib/orchestration/review-providers/native.js +30 -214
- package/.agents/scripts/lib/orchestration/review-providers/parse-findings.js +7 -52
- package/.agents/scripts/lib/orchestration/review-providers/review-depth.js +4 -33
- package/.agents/scripts/lib/orchestration/review-providers/review-provider-factory.js +11 -71
- package/.agents/scripts/lib/orchestration/review-providers/scoped-lint.js +19 -131
- package/.agents/scripts/lib/orchestration/review-providers/security-review.js +6 -89
- package/.agents/scripts/lib/orchestration/review-providers/types.js +26 -56
- package/.agents/scripts/lib/orchestration/review-providers/ultrareview.js +3 -46
- package/.agents/scripts/lib/orchestration/run-epilogue.js +245 -326
- package/.agents/scripts/lib/orchestration/run-scoped-config.js +55 -159
- package/.agents/scripts/lib/orchestration/single-story-close/close-note.js +7 -34
- package/.agents/scripts/lib/orchestration/single-story-close/failed-terminal.js +16 -89
- package/.agents/scripts/lib/orchestration/single-story-close/gate-log.js +18 -109
- package/.agents/scripts/lib/orchestration/single-story-close/phases/auto-merge.js +83 -239
- package/.agents/scripts/lib/orchestration/single-story-close/phases/base-sync.js +20 -82
- package/.agents/scripts/lib/orchestration/single-story-close/phases/close-validation.js +103 -97
- package/.agents/scripts/lib/orchestration/single-story-close/phases/code-review.js +8 -64
- package/.agents/scripts/lib/orchestration/single-story-close/phases/confirm-merge.js +136 -486
- package/.agents/scripts/lib/orchestration/single-story-close/phases/conventional-subject.js +30 -134
- package/.agents/scripts/lib/orchestration/single-story-close/phases/graphql-preflight.js +96 -0
- package/.agents/scripts/lib/orchestration/single-story-close/phases/lock-wait-pending.js +49 -0
- package/.agents/scripts/lib/orchestration/single-story-close/phases/normalize-pr-title.js +13 -86
- package/.agents/scripts/lib/orchestration/single-story-close/phases/options.js +20 -95
- package/.agents/scripts/lib/orchestration/single-story-close/phases/post-land.js +46 -203
- package/.agents/scripts/lib/orchestration/single-story-close/phases/pre-gate-steps.js +8 -50
- package/.agents/scripts/lib/orchestration/single-story-close/phases/pull-request.js +12 -83
- package/.agents/scripts/lib/orchestration/single-story-close/phases/push.js +6 -39
- package/.agents/scripts/lib/orchestration/single-story-close/phases/review-block.js +1 -6
- package/.agents/scripts/lib/orchestration/single-story-close/phases/review-outcome.js +4 -28
- package/.agents/scripts/lib/orchestration/single-story-close/phases/review-override.js +6 -51
- package/.agents/scripts/lib/orchestration/single-story-close/phases/worktree-reap.js +6 -34
- package/.agents/scripts/lib/orchestration/single-story-close/phases/wrong-tree-guard.js +23 -121
- package/.agents/scripts/lib/orchestration/single-story-close/runner.js +180 -273
- package/.agents/scripts/lib/orchestration/single-story-lease-guard.js +15 -69
- package/.agents/scripts/lib/orchestration/story-body-gate.js +4 -23
- package/.agents/scripts/lib/orchestration/story-close/baseline-upward-writeback.js +50 -179
- package/.agents/scripts/lib/orchestration/story-close/context-budget-writeback.js +11 -41
- package/.agents/scripts/lib/orchestration/story-close/format-autofix.js +23 -311
- package/.agents/scripts/lib/orchestration/story-close/phases/local-lens-review.js +22 -147
- package/.agents/scripts/lib/orchestration/story-close/phases/review-core.js +16 -67
- package/.agents/scripts/lib/orchestration/story-deliver-terminal-schema.js +12 -68
- package/.agents/scripts/lib/orchestration/story-deliver-terminal.js +42 -200
- package/.agents/scripts/lib/orchestration/story-follow-ups.js +167 -252
- package/.agents/scripts/lib/orchestration/story-init-envelope.js +52 -0
- package/.agents/scripts/lib/orchestration/story-init-remote.js +2 -6
- package/.agents/scripts/lib/orchestration/story-reachability.js +3 -23
- package/.agents/scripts/lib/orchestration/task-body-validator.js +12 -135
- package/.agents/scripts/lib/orchestration/ticket-lease.js +28 -131
- package/.agents/scripts/lib/orchestration/ticket-validator-conflicts.js +15 -149
- package/.agents/scripts/lib/orchestration/ticket-validator-sizing.js +5 -33
- package/.agents/scripts/lib/orchestration/ticket-validator.js +63 -344
- package/.agents/scripts/lib/orchestration/ticketing/bulk.js +51 -244
- package/.agents/scripts/lib/orchestration/ticketing/reads.js +39 -261
- package/.agents/scripts/lib/orchestration/ticketing/state.js +14 -68
- package/.agents/scripts/lib/orchestration/ticketing/transition.js +46 -263
- package/.agents/scripts/lib/orchestration/ticketing.js +2 -26
- package/.agents/scripts/lib/orchestration/verify-credit.js +18 -79
- package/.agents/scripts/lib/orchestration/worktree-dirty.js +5 -30
- package/.agents/scripts/lib/path-security.js +3 -6
- package/.agents/scripts/lib/plan-phase-cleanup.js +9 -49
- package/.agents/scripts/lib/preflight-runner.js +13 -69
- package/.agents/scripts/lib/process-group.js +143 -0
- package/.agents/scripts/lib/project-root.js +2 -8
- package/.agents/scripts/lib/provider-factory.js +2 -25
- package/.agents/scripts/lib/qa/console-allowlist.js +10 -59
- package/.agents/scripts/lib/qa/qa-session.js +15 -69
- package/.agents/scripts/lib/qa/redact-evidence.js +18 -129
- package/.agents/scripts/lib/qa/resolve-qa-contract.js +26 -135
- package/.agents/scripts/lib/qa/resolve-selection.js +16 -84
- package/.agents/scripts/lib/reserved-test-ids.js +9 -47
- package/.agents/scripts/lib/runtime-deps/dep-resolution.js +13 -53
- package/.agents/scripts/lib/runtime-deps/ensure-installed.js +10 -44
- package/.agents/scripts/lib/runtime-deps/manifest.js +10 -30
- package/.agents/scripts/lib/runtime-deps/parser-major.js +15 -51
- package/.agents/scripts/lib/runtime-deps/preflight.js +4 -22
- package/.agents/scripts/lib/runtime-deps/scan-imports.js +11 -55
- package/.agents/scripts/lib/signals/detectors/common.js +12 -38
- package/.agents/scripts/lib/signals/index.js +2 -19
- package/.agents/scripts/lib/signals/schema.js +14 -109
- package/.agents/scripts/lib/signals/write.js +2 -11
- package/.agents/scripts/lib/single-story/confirm-merge.js +31 -72
- package/.agents/scripts/lib/single-story/story-merged-notify.js +8 -49
- package/.agents/scripts/lib/single-story-sweep/protection-ctx.js +4 -26
- package/.agents/scripts/lib/single-story-sweep/protection.js +13 -100
- package/.agents/scripts/lib/single-story-sweep/sweep-lock.js +60 -258
- package/.agents/scripts/lib/single-story-sweep.js +14 -97
- package/.agents/scripts/lib/skills/parse-skill.js +13 -59
- package/.agents/scripts/lib/skills/skills-index.js +8 -29
- package/.agents/scripts/lib/skills/walk-skill-files.js +17 -78
- package/.agents/scripts/lib/source-extensions.js +11 -42
- package/.agents/scripts/lib/source-text/strip-js-comments.js +8 -41
- package/.agents/scripts/lib/stdio-flush.js +9 -36
- package/.agents/scripts/lib/story-adjacency.js +8 -40
- package/.agents/scripts/lib/story-body/body-format-lints.js +51 -66
- package/.agents/scripts/lib/story-body/footer-block.js +11 -44
- package/.agents/scripts/lib/story-body/story-body.js +123 -344
- package/.agents/scripts/lib/temp-retention.js +42 -143
- package/.agents/scripts/lib/templates/decomposer-prompts.js +18 -80
- package/.agents/scripts/lib/test-env.js +12 -65
- package/.agents/scripts/lib/test-run-credit.js +10 -65
- package/.agents/scripts/lib/test-runner-contract.js +19 -74
- package/.agents/scripts/lib/test-temp.js +38 -184
- package/.agents/scripts/lib/test-tiers.js +12 -96
- package/.agents/scripts/lib/ticket-body-sections.js +21 -96
- package/.agents/scripts/lib/transpile.js +15 -74
- package/.agents/scripts/lib/util/concurrent-map.js +6 -25
- package/.agents/scripts/lib/util/parse-id-list.js +8 -34
- package/.agents/scripts/lib/util/poll-loop.js +8 -28
- package/.agents/scripts/lib/util/with-timeout.js +2 -11
- package/.agents/scripts/lib/validation-evidence.js +21 -96
- package/.agents/scripts/lib/wave-runner/footprint.js +17 -70
- package/.agents/scripts/lib/wave-runner/live-probe.js +67 -209
- package/.agents/scripts/lib/wave-runner/ready-set.js +72 -301
- package/.agents/scripts/lib/workers/crap-worker.js +11 -64
- package/.agents/scripts/lib/workers/maintainability-report-worker.js +8 -45
- package/.agents/scripts/lib/workers/maintainability-worker.js +5 -21
- package/.agents/scripts/lib/workers/serve-worker-messages.js +2 -18
- package/.agents/scripts/lib/workflow-closure.js +22 -105
- package/.agents/scripts/lib/workspace-provisioner.js +16 -54
- package/.agents/scripts/lib/worktree/git-hooks.js +15 -60
- package/.agents/scripts/lib/worktree/lifecycle/force-drain.js +20 -60
- package/.agents/scripts/lib/worktree/lifecycle/merge-reachability.js +10 -62
- package/.agents/scripts/lib/worktree/lifecycle/pending-cleanup.js +22 -86
- package/.agents/scripts/lib/worktree/lifecycle/reap.js +24 -126
- package/.agents/scripts/lib/worktree/lifecycle-manager.js +2 -20
- package/.agents/scripts/lib/worktree/node-modules-strategy.js +46 -180
- package/.agents/scripts/lib/worktree-manager.js +15 -40
- package/.agents/scripts/lint-issue-body.js +12 -68
- package/.agents/scripts/mandrel-update-preflight.js +10 -70
- package/.agents/scripts/merge-baseline.js +30 -105
- package/.agents/scripts/nav-registry-diff.js +22 -108
- package/.agents/scripts/notify.js +12 -69
- package/.agents/scripts/plan-context.js +97 -92
- package/.agents/scripts/plan-critics.js +12 -66
- package/.agents/scripts/plan-persist.js +71 -137
- package/.agents/scripts/plan-run-epilogue.js +20 -43
- package/.agents/scripts/pr-watch-with-update.js +79 -263
- package/.agents/scripts/providers/github/auth.js +3 -8
- package/.agents/scripts/providers/github/blocked-by-add.js +14 -61
- package/.agents/scripts/providers/github/board-add.js +5 -21
- package/.agents/scripts/providers/github/branch-protection.js +11 -43
- package/.agents/scripts/providers/github/cache.js +2 -14
- package/.agents/scripts/providers/github/comments.js +7 -40
- package/.agents/scripts/providers/github/compose.js +3 -19
- package/.agents/scripts/providers/github/errors.js +22 -125
- package/.agents/scripts/providers/github/issues.js +31 -123
- package/.agents/scripts/providers/github/labels.js +24 -124
- package/.agents/scripts/providers/github/mappers.js +5 -27
- package/.agents/scripts/providers/github/merge-methods.js +3 -22
- package/.agents/scripts/providers/github/project-board.js +2 -17
- package/.agents/scripts/providers/github/projects-v2-graphql.js +3 -6
- package/.agents/scripts/providers/github/request-helpers.js +5 -32
- package/.agents/scripts/providers/github/search-budget.js +9 -39
- package/.agents/scripts/providers/github/search-query.js +5 -26
- package/.agents/scripts/providers/github/sub-issue-add.js +15 -65
- package/.agents/scripts/providers/github/sub-issues.js +7 -36
- package/.agents/scripts/providers/github/tickets.js +32 -134
- package/.agents/scripts/providers/github.js +18 -59
- package/.agents/scripts/prune-plan-run-labels.js +12 -46
- package/.agents/scripts/quality-preview.js +35 -220
- package/.agents/scripts/resolve-doc-tiers.js +3 -26
- package/.agents/scripts/resolve-stories.js +16 -67
- package/.agents/scripts/resync-status-column.js +6 -25
- package/.agents/scripts/run-tests.js +29 -104
- package/.agents/scripts/single-story-close.js +23 -135
- package/.agents/scripts/single-story-confirm-merge.js +32 -139
- package/.agents/scripts/single-story-init.js +47 -259
- package/.agents/scripts/stories-wave-tick.js +179 -415
- package/.agents/scripts/sync-agentrc.js +3 -21
- package/.agents/scripts/sync-claude-agents.js +9 -55
- package/.agents/scripts/sync-claude-commands.js +20 -110
- package/.agents/scripts/test-wrapper.js +6 -43
- package/.agents/scripts/update-coverage-baseline.js +5 -22
- package/.agents/scripts/update-crap-baseline.js +7 -30
- package/.agents/scripts/update-duplication-baseline.js +16 -92
- package/.agents/scripts/update-maintainability-baseline.js +8 -62
- package/.agents/scripts/update-ticket-state.js +1 -7
- package/.agents/scripts/validate-skills.js +6 -26
- package/.agents/skills/core/gates-and-baselines/reference.md +0 -1
- package/.agents/skills/skills.index.json +2 -2
- package/.agents/skills/stack/qa/playwright/SKILL.md +26 -0
- package/.agents/templates/agent-protocol.md +2 -2
- package/.agents/templates/docs/audit-sweep-runbook.md +3 -4
- package/.agents/workflows/audit-accessibility.md +4 -7
- package/.agents/workflows/audit-adrs.md +3 -6
- package/.agents/workflows/audit-architecture.md +3 -11
- package/.agents/workflows/audit-baselines.md +6 -9
- package/.agents/workflows/audit-clean-code.md +8 -12
- package/.agents/workflows/audit-data-model.md +3 -7
- package/.agents/workflows/audit-dependencies.md +4 -7
- package/.agents/workflows/audit-devops.md +4 -8
- package/.agents/workflows/audit-documentation.md +1 -4
- package/.agents/workflows/audit-mobile.md +4 -7
- package/.agents/workflows/audit-navigability.md +3 -6
- package/.agents/workflows/audit-performance.md +2 -4
- package/.agents/workflows/audit-privacy.md +4 -7
- package/.agents/workflows/audit-quality.md +4 -7
- package/.agents/workflows/audit-security.md +4 -7
- package/.agents/workflows/audit-seo.md +4 -7
- package/.agents/workflows/audit-sre.md +4 -7
- package/.agents/workflows/audit-to-stories.md +17 -30
- package/.agents/workflows/audit-ux-ui.md +4 -7
- package/.agents/workflows/helpers/acceptance-self-eval.md +84 -157
- package/.agents/workflows/helpers/audit-lens-core.md +1 -1
- package/.agents/workflows/helpers/code-quality-guardrails.md +12 -15
- package/.agents/workflows/helpers/code-review.md +4 -2
- package/.agents/workflows/helpers/deliver-digest.md +37 -28
- package/.agents/workflows/helpers/deliver-light.md +92 -101
- package/.agents/workflows/helpers/deliver-reference.md +162 -220
- package/.agents/workflows/helpers/deliver-story-reference.md +197 -607
- package/.agents/workflows/helpers/deliver-story.md +17 -18
- package/.agents/workflows/helpers/plan-reference.md +125 -167
- package/.agents/workflows/helpers/qa-core.md +12 -0
- package/.agents/workflows/mandrel-deliver.md +47 -31
- package/.agents/workflows/mandrel-plan.md +22 -21
- package/.agents/workflows/mandrel-update.md +36 -21
- package/.agents/workflows/memory-consolidate.md +1 -1
- package/.agents/workflows/qa-assist.md +27 -71
- package/.agents/workflows/qa-explore.md +19 -59
- package/.agents/workflows/qa-run.md +11 -33
- package/README.md +1 -1
- package/bin/mandrel.js +5 -46
- package/bin/postinstall.js +18 -107
- package/docs/CHANGELOG.md +60 -0
- package/lib/cli/doctor.js +11 -71
- package/lib/cli/init.js +26 -165
- package/lib/cli/migrate.js +5 -64
- package/lib/cli/registry.js +84 -467
- package/lib/cli/sync-agents.js +4 -64
- package/lib/cli/sync-commands.js +11 -64
- package/lib/cli/sync.js +34 -213
- package/lib/cli/uninstall.js +40 -219
- package/lib/cli/update.js +326 -523
- package/lib/cli/version-check.js +8 -72
- package/lib/cli/version-helpers.js +14 -87
- package/lib/migrations/helpers/retire-agentrc-key.js +11 -52
- package/lib/migrations/index.js +17 -92
- package/lib/migrations/steps/2.1.0-retire-mi-drop-knobs.js +2 -15
- package/lib/migrations/steps/2.1.0-retire-verify-concurrency-cap.js +1 -13
- package/lib/migrations/steps/2.11.0-retire-max-seed-words.js +2 -15
- package/lib/migrations/steps/2.2.0-retire-epic-ac-tags.js +9 -38
- package/lib/migrations/steps/2.20.0-retire-codebase-snapshot.js +1 -13
- package/lib/migrations/steps/2.32.0-retire-lint-baseline-command.js +2 -27
- package/lib/migrations/steps/2.57.0-retire-delivery-limit-knobs.js +2 -23
- package/lib/migrations/steps/2.57.0-retire-planning-limit-knobs.js +2 -27
- package/lib/migrations/steps/2.60.0-retire-audit-results-autofile.js +21 -0
- package/lib/migrations/steps/strip-removed-agentrc-keys.js +333 -0
- package/package.json +17 -14
- package/.agents/docs/SDLC.md +0 -590
- package/.agents/docs/quality-gates.md +0 -1179
- package/.agents/rules/known-tooling-behavior.md +0 -150
- package/.agents/rules/orchestration-error-handling.md +0 -61
- package/.agents/rules/test-seams.md +0 -59
- package/.agents/schemas/baselines/lighthouse.schema.json +0 -59
- package/.agents/schemas/baselines/lint.schema.json +0 -47
- package/.agents/schemas/model-attribution.schema.json +0 -53
- package/.agents/scripts/check-action-pinning.js +0 -260
- package/.agents/scripts/check-audit-attribution.js +0 -302
- package/.agents/scripts/check-baseline-drift.js +0 -211
- package/.agents/scripts/check-baseline-scope.js +0 -362
- package/.agents/scripts/check-generated-validator.js +0 -202
- package/.agents/scripts/check-knip-entries.js +0 -159
- package/.agents/scripts/check-lifecycle-lint.js +0 -294
- package/.agents/scripts/check-pinned-override-notes.js +0 -102
- package/.agents/scripts/check-schema-references.js +0 -366
- package/.agents/scripts/check-test-portability.js +0 -512
- package/.agents/scripts/check-workflow-citations.js +0 -332
- package/.agents/scripts/check-workflow-cli-lint.js +0 -299
- package/.agents/scripts/check-workflow-timeouts.js +0 -291
- package/.agents/scripts/install-matrix-assert.js +0 -326
- package/.agents/scripts/lib/audit-advisories.js +0 -195
- package/.agents/scripts/lib/audit-attribution.js +0 -134
- package/.agents/scripts/lib/baselines/drift-detector.js +0 -351
- package/.agents/scripts/lib/baselines/kinds/lighthouse.js +0 -87
- package/.agents/scripts/lib/baselines/kinds/lint.js +0 -184
- package/.agents/scripts/lib/baselines/orphan-pruner.js +0 -233
- package/.agents/scripts/lib/baselines/scope-assert.js +0 -223
- package/.agents/scripts/lib/baselines/scope-inventory.js +0 -314
- package/.agents/scripts/lib/c8-cli-path.js +0 -21
- package/.agents/scripts/lib/config/gates/lighthouse.schema.js +0 -51
- package/.agents/scripts/lib/config/gates/lint.schema.js +0 -18
- package/.agents/scripts/lib/dynamic-workflow/architecture-report-contract.js +0 -70
- package/.agents/scripts/lib/dynamic-workflow/audit-orchestrator.js +0 -284
- package/.agents/scripts/lib/dynamic-workflow/clean-code-report-contract.js +0 -80
- package/.agents/scripts/lib/dynamic-workflow/degraded-coverage.js +0 -81
- package/.agents/scripts/lib/dynamic-workflow/documentation-report-contract.js +0 -87
- package/.agents/scripts/lib/dynamic-workflow/performance-report-contract.js +0 -74
- package/.agents/scripts/lib/dynamic-workflow/quality-report-contract.js +0 -90
- package/.agents/scripts/lib/dynamic-workflow/report-contract-core.js +0 -43
- package/.agents/scripts/lib/dynamic-workflow/security-report-contract.js +0 -83
- package/.agents/scripts/lib/fs-walk.js +0 -52
- package/.agents/scripts/lib/knip-config-resolver.js +0 -181
- package/.agents/scripts/lib/knip-entry-sync.js +0 -452
- package/.agents/scripts/lib/orchestration/model-attribution.js +0 -418
- package/.agents/scripts/lib/orchestration/story-plan-state.js +0 -33
- package/.agents/scripts/lib/orchestration/structured-comment-parser.js +0 -67
- package/.agents/scripts/lib/pinned-override-notes.js +0 -88
- package/.agents/scripts/lib/pinned-override-resolve.js +0 -212
- package/.agents/scripts/lib/test-isolate/cli-options.js +0 -93
- package/.agents/scripts/lib/test-isolate/env-snapshot-loader.js +0 -52
- package/.agents/scripts/lib/test-isolate/list-files.js +0 -90
- package/.agents/scripts/lib/test-isolate/parse-tap.js +0 -75
- package/.agents/scripts/lib/test-isolate/progress-log.js +0 -45
- package/.agents/scripts/lib/test-isolate/render-report.js +0 -97
- package/.agents/scripts/lib/test-isolate/run-isolate.js +0 -87
- package/.agents/scripts/lib/test-isolate/runner.js +0 -483
- package/.agents/scripts/lib/test-profile/parse-tap.js +0 -136
- package/.agents/scripts/lib/test-profile/render-report.js +0 -45
- package/.agents/scripts/lint-label-vocabulary.js +0 -214
- package/.agents/scripts/post-structured-comment.js +0 -127
- package/.agents/scripts/provision-git-hooks.js +0 -85
- package/.agents/scripts/prune-baseline-orphans.js +0 -181
- package/.agents/scripts/run-coverage.js +0 -197
- package/.agents/scripts/run-lint.js +0 -133
- package/.agents/scripts/run-test-profile.js +0 -129
- package/.agents/scripts/run-verify.js +0 -118
- package/.agents/scripts/test-isolate.js +0 -55
- package/.agents/scripts/update-dead-exports-baseline.js +0 -321
package/.agents/README.md
CHANGED
|
@@ -4,7 +4,7 @@ An opinionated workflow framework for AI coding assistants built on
|
|
|
4
4
|
Story-centric GitHub orchestration. Planning, execution, and state all live natively in GitHub Issues, Labels, and Projects V2.
|
|
5
5
|
|
|
6
6
|
This is the consumer README inside the distributed `.agents/` bundle. It explains what each part of the bundle is for and captures the cross-directory authoring conventions. The process narrative for
|
|
7
|
-
`/mandrel-plan` and `/mandrel-deliver` stays in [`docs/SDLC.md`](docs/SDLC.md).
|
|
7
|
+
`/mandrel-plan` and `/mandrel-deliver` stays in [`docs/SDLC.md`](https://github.com/dsj1984/mandrel/blob/main/docs/SDLC.md).
|
|
8
8
|
|
|
9
9
|
The framework payload (`.agents/`) is consumed by host repos. It ships inside the [`mandrel`](https://www.npmjs.com/package/mandrel)
|
|
10
10
|
npm package and is materialized into a consumer's `./.agents/` directory by `mandrel sync`. It carries a system prompt, a baseline rule pack, a two-tier skill library, a slash-command workflow set, and the orchestration engine that runs Story-centric plans on GitHub (`/mandrel-plan` → Stories, `/mandrel-deliver` → `story-*` → `main`).
|
|
@@ -118,8 +118,9 @@ clone produces zero file mutations.
|
|
|
118
118
|
Once installed, the ongoing upgrade path is **`mandrel update`** — it bumps
|
|
119
119
|
`mandrel` to the newest published version, re-runs `mandrel sync`,
|
|
120
120
|
applies version-keyed migrations, and verifies the install with
|
|
121
|
-
`mandrel doctor`. The
|
|
122
|
-
|
|
121
|
+
`mandrel doctor`. The command performs **no `git` mutation** — it reads the
|
|
122
|
+
index read-only and its closing line **reports** whether the dependency bump
|
|
123
|
+
is staged, printing the exact `git add` to run when it is not:
|
|
123
124
|
|
|
124
125
|
```bash
|
|
125
126
|
npx mandrel update # update → sync → migrate → doctor
|
|
@@ -274,7 +275,7 @@ After bootstrap, every Mandrel command is generated into a flat
|
|
|
274
275
|
`.claude/commands/` tree by `npm run sync:commands` (kept current at install
|
|
275
276
|
time and on every `mandrel sync`/`update`) and loads as a bare `/<command>`
|
|
276
277
|
slash command — e.g. `/mandrel-plan`, `/mandrel-deliver`, `/audit-security`. The commands load
|
|
277
|
-
in every Claude Code environment. The [SDLC guide](docs/SDLC.md) walks end-to-end planning and
|
|
278
|
+
in every Claude Code environment. The [SDLC guide](https://github.com/dsj1984/mandrel/blob/main/docs/SDLC.md) walks end-to-end planning and
|
|
278
279
|
delivery; Stories pair [`/mandrel-plan`](workflows/mandrel-plan.md) (idea → drafted Story Issue)
|
|
279
280
|
with [`/mandrel-deliver`](workflows/mandrel-deliver.md) (Story Issue → merged
|
|
280
281
|
PR).
|
|
@@ -331,7 +332,7 @@ integration branch; a ticket carrying an `Epic: #N` footer is refused by
|
|
|
331
332
|
child checklist, never delivered itself, expanded to its open Stories by
|
|
332
333
|
`/mandrel-deliver <epicId>` — and its linkage is parent→child only, which is
|
|
333
334
|
what keeps that footer refused. The execution-model contract is owned by
|
|
334
|
-
[`instructions.md` § 5.B](instructions.md) and [`docs/SDLC.md`](docs/SDLC.md).
|
|
335
|
+
[`instructions.md` § 5.B](instructions.md) and [`docs/SDLC.md`](https://github.com/dsj1984/mandrel/blob/main/docs/SDLC.md).
|
|
335
336
|
|
|
336
337
|
---
|
|
337
338
|
|
|
@@ -340,7 +341,7 @@ what keeps that footer refused. The execution-model contract is owned by
|
|
|
340
341
|
| Path | Purpose |
|
|
341
342
|
| ---- | ------- |
|
|
342
343
|
| [`instructions.md`](instructions.md) | Primary system prompt loaded by the host AI tool. |
|
|
343
|
-
| [`docs/SDLC.md`](docs/SDLC.md) | Operator process for `/mandrel-plan` and `/mandrel-deliver`. |
|
|
344
|
+
| [`docs/SDLC.md`](https://github.com/dsj1984/mandrel/blob/main/docs/SDLC.md) | Operator process for `/mandrel-plan` and `/mandrel-deliver`. |
|
|
344
345
|
| [`starter-agentrc.json`](starter-agentrc.json) | Bootstrap delta-seed copied to the consumer repo root as `.agentrc.json`. |
|
|
345
346
|
| [`agentrc-reference.json`](docs/agentrc-reference.json) | Exhaustive editor reference enumerating every schema key with its framework default. |
|
|
346
347
|
| [`agents/`](agents/) | Optional role-scoped spawn boot contexts (`delivery.routing.roleScopedAgents`). |
|
|
@@ -361,10 +362,10 @@ what keeps that footer refused. The execution-model contract is owned by
|
|
|
361
362
|
|
|
362
363
|
| You want… | Open |
|
|
363
364
|
| --------- | ---- |
|
|
364
|
-
| The Epic planning and delivery process | [`docs/SDLC.md`](docs/SDLC.md) |
|
|
365
|
+
| The Epic planning and delivery process | [`docs/SDLC.md`](https://github.com/dsj1984/mandrel/blob/main/docs/SDLC.md) |
|
|
365
366
|
| The system prompt loaded by your AI tool | [`instructions.md`](instructions.md) |
|
|
366
367
|
| Every `.agentrc.json` key, default, and override | [`docs/configuration.md`](docs/configuration.md) (under `.agents/`) |
|
|
367
|
-
| Quality-gate runbooks (CRAP, MI, lint, friction) plus the baseline envelope, component model, and writer/reader contract | [
|
|
368
|
+
| Quality-gate runbooks (CRAP, MI, lint, friction) plus the baseline envelope, component model, and writer/reader contract | [`docs/quality-gates.md`](https://github.com/dsj1984/mandrel/blob/main/docs/quality-gates.md) |
|
|
368
369
|
| Slash-command workflow definitions | [`workflows/`](workflows/) |
|
|
369
370
|
| Role-scoped spawn boot contexts | [`agents/`](agents/) |
|
|
370
371
|
| Domain-agnostic baseline rules | [`rules/`](rules/) |
|
|
@@ -593,8 +594,8 @@ Module boundary rules:
|
|
|
593
594
|
## Baselines
|
|
594
595
|
|
|
595
596
|
The framework's quality gates compare against per-kind baseline files under
|
|
596
|
-
`baselines/<kind>.json` (
|
|
597
|
-
|
|
597
|
+
`baselines/<kind>.json` (coverage, crap, maintainability, mutation,
|
|
598
|
+
bundle-size, duplication), all sharing one envelope and funnelled through a
|
|
598
599
|
shared reader / writer
|
|
599
600
|
([`reader.js`](scripts/lib/baselines/reader.js) /
|
|
600
601
|
[`writer.js`](scripts/lib/baselines/writer.js)). The full reference — envelope
|
|
@@ -602,7 +603,7 @@ shape, per-kind axes, component model, path canonicalisation, writer/reader
|
|
|
602
603
|
contract, kernel-version friction, and the consumer **floor override** path
|
|
603
604
|
(add a `floors` block, and optional `components`, under your gate in
|
|
604
605
|
`.agentrc.json`) — is owned by
|
|
605
|
-
[`quality-gates.md` § Baseline reference](docs/quality-gates.md#baseline-reference).
|
|
606
|
+
[`quality-gates.md` § Baseline reference](https://github.com/dsj1984/mandrel/blob/main/docs/quality-gates.md#baseline-reference).
|
|
606
607
|
The unified runtime gate
|
|
607
608
|
[`check-baselines.js`](scripts/check-baselines.js) currently runs floor +
|
|
608
609
|
tolerance + schema + kernel-mismatch checks only; full regression absorption
|
|
@@ -643,7 +644,8 @@ Schema conventions:
|
|
|
643
644
|
## Code review providers (pluggable chain)
|
|
644
645
|
|
|
645
646
|
`runCodeReview()` (invoked from `helpers/deliver-story` and `/mandrel-deliver`'s
|
|
646
|
-
|
|
647
|
+
review pass, at the depth `review-depth.js` derives) loads its review backend
|
|
648
|
+
through a pluggable registry
|
|
647
649
|
configured via `delivery.codeReview.providers` — an array of entries iterated
|
|
648
650
|
in declaration order. The chain-entry field semantics (`name`, `scopes`,
|
|
649
651
|
`optional`, `manualPrompt`, `when`), the fix budget, and the cross-runtime
|
|
@@ -652,13 +654,13 @@ contract are documented once in
|
|
|
652
654
|
|
|
653
655
|
## Feedback loop — verification-results auto-graduation
|
|
654
656
|
|
|
655
|
-
When a Story (or plan-run) finalize path runs,
|
|
656
|
-
|
|
657
|
-
the unified `verification-results` structured comment, routed by source
|
|
657
|
+
When a Story (or plan-run) finalize path runs, the retro's actionable routed
|
|
658
|
+
proposals can be auto-graduated into follow-up issues, routed by source
|
|
658
659
|
classification into the framework or consumer repo. The toggle
|
|
659
|
-
(`delivery.feedbackLoop.
|
|
660
|
-
example, and the idempotency-marker behaviour are documented once
|
|
661
|
-
|
|
660
|
+
(`delivery.feedbackLoop.retroProposals`, default `false` since Story #5341),
|
|
661
|
+
the opt-in example, and the idempotency-marker behaviour are documented once
|
|
662
|
+
in
|
|
663
|
+
[`docs/configuration.md` § delivery.feedbackLoop](docs/configuration.md#deliveryfeedbackloop--retro-auto-graduation).
|
|
662
664
|
|
|
663
665
|
## Worktree dependency strategies
|
|
664
666
|
|
|
@@ -680,7 +682,7 @@ They solve different problems and must not be confused:
|
|
|
680
682
|
**within a single machine/clone**. They are keyed on local process PIDs
|
|
681
683
|
and live under `.git/` (or a local lockfile path), so they do **not**
|
|
682
684
|
coordinate across clones. See
|
|
683
|
-
[`docs/SDLC.md` § Cross-clone coordination](docs/SDLC.md#cross-clone-coordination)
|
|
685
|
+
[`docs/SDLC.md` § Cross-clone coordination](https://github.com/dsj1984/mandrel/blob/main/docs/SDLC.md#cross-clone-coordination)
|
|
684
686
|
for why.
|
|
685
687
|
- **The assignee-as-lease claim** coordinates **across clones** by riding
|
|
686
688
|
the ticket's GitHub `assignees` surface — a substrate every clone can
|
|
@@ -3,10 +3,10 @@ name: acceptance-critic
|
|
|
3
3
|
description: >-
|
|
4
4
|
Role-scoped boot context for a maker-blind acceptance critic. Booted on its
|
|
5
5
|
own system prompt (no CLAUDE.md / instructions.md closure). Scores a delivered
|
|
6
|
-
diff against the Story's acceptance
|
|
7
|
-
|
|
8
|
-
helpers/deliver-story Step 1a
|
|
9
|
-
|
|
6
|
+
diff against the Story's acceptance criteria and emits the verdict schema —
|
|
7
|
+
without seeing the maker's self-assessment. Dispatched by
|
|
8
|
+
helpers/deliver-story Step 1a under ceremonyProfile strict, the one profile
|
|
9
|
+
whose verdict owner is a fresh critic.
|
|
10
10
|
---
|
|
11
11
|
|
|
12
12
|
<!--
|
|
@@ -48,8 +48,8 @@ the step-by-step. This shared core binds every role:
|
|
|
48
48
|
# acceptance-critic — maker-blind acceptance evaluation
|
|
49
49
|
|
|
50
50
|
You are an **independent acceptance critic**. You score a delivered change
|
|
51
|
-
against
|
|
52
|
-
verdict. You are deliberately isolated from the author's reasoning.
|
|
51
|
+
against **every** item in the Story's `acceptance[]` array and emit one
|
|
52
|
+
structured verdict. You are deliberately isolated from the author's reasoning.
|
|
53
53
|
|
|
54
54
|
## Maker-blind — the load-bearing invariant (MUST)
|
|
55
55
|
|
|
@@ -69,23 +69,24 @@ turned in about it. Your only trusted inputs are:
|
|
|
69
69
|
in your verdict rather than substituting your own enumeration.
|
|
70
70
|
- the Story's inline `acceptance[]` and `verify[]` arrays, read from the
|
|
71
71
|
**Story body itself** (`gh issue view <storyId> --json body`) — its `##
|
|
72
|
-
Acceptance` / `## Verify` sections are the SSOT.
|
|
73
|
-
|
|
72
|
+
Acceptance` / `## Verify` sections are the SSOT. No structured comment
|
|
73
|
+
carries them.
|
|
74
74
|
- the **actual output** of the `verify[]` commands you run yourself.
|
|
75
75
|
|
|
76
76
|
Treat the implementation reasoning as untrusted. Score each criterion afresh
|
|
77
77
|
from the evidence.
|
|
78
78
|
|
|
79
|
-
## Scope —
|
|
79
|
+
## Scope — every criterion, exactly once
|
|
80
80
|
|
|
81
|
-
You
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
81
|
+
You score the Story's **whole** `acceptance[]` array and emit one verdict
|
|
82
|
+
record per item, in acceptance-array order. You do **not** re-slice, split or
|
|
83
|
+
sample the criteria: the gate reads the Story's own criteria count and refuses
|
|
84
|
+
a verdict whose `criteria[]` length differs, before scoring and without
|
|
85
|
+
consuming a round.
|
|
85
86
|
|
|
86
87
|
## Per-criterion evaluation
|
|
87
88
|
|
|
88
|
-
For each acceptance item
|
|
89
|
+
For each acceptance item:
|
|
89
90
|
|
|
90
91
|
1. **Inspect the change set** — read the files your caller named and look for
|
|
91
92
|
the change that would satisfy the criterion.
|
|
@@ -93,34 +94,14 @@ For each acceptance item in your cluster:
|
|
|
93
94
|
**required evidence**. A criterion cannot be scored `met` without the
|
|
94
95
|
supporting `verify[]` evidence where a `verify[]` command is relevant to it.
|
|
95
96
|
`verify[]` is evidence, not optional advisory pre-flight.
|
|
96
|
-
3. **Share `lint` / `typecheck` evidence with close** (Story #4250). When a
|
|
97
|
-
`verify[]` command is **byte-identical** to a close-validation gate, run it
|
|
98
|
-
through `evidence-gate.js` in the **same Story worktree** close validates so
|
|
99
|
-
a passing run records an evidence entry in the keyspace close consults:
|
|
100
|
-
|
|
101
|
-
```bash
|
|
102
|
-
node <main-repo>/.agents/scripts/evidence-gate.js \
|
|
103
|
-
--standalone --scope-id <storyId> --gate lint \
|
|
104
|
-
--worktree <worktree> -- npm run lint
|
|
105
|
-
|
|
106
|
-
node <main-repo>/.agents/scripts/evidence-gate.js \
|
|
107
|
-
--standalone --scope-id <storyId> --gate typecheck \
|
|
108
|
-
--worktree <worktree> -- <resolved typecheck command>
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
**Never** run the coverage / CRAP suite through `evidence-gate.js` to stamp
|
|
112
|
-
it fresh — a false-fresh coverage record without `coverage-final.json`
|
|
113
|
-
silently weakens the floor.
|
|
114
97
|
|
|
115
98
|
## Verdict schema (MUST)
|
|
116
99
|
|
|
117
|
-
Write
|
|
118
|
-
`temp/acceptance-verdict-<storyId>-r<round
|
|
119
|
-
sibling critics cannot overwrite each other, conforming to
|
|
100
|
+
Write **one** verdict file under `temp/` (e.g.
|
|
101
|
+
`temp/acceptance-verdict-<storyId>-r<round>.json`) conforming to
|
|
120
102
|
[`acceptance-eval-verdict.schema.json`](../schemas/acceptance-eval-verdict.schema.json):
|
|
121
|
-
one `criteria[]` record per acceptance item
|
|
122
|
-
|
|
123
|
-
`acceptance[]` array, not within your cluster — the caller merges on it.
|
|
103
|
+
one `criteria[]` record per acceptance item, in acceptance-array order, with
|
|
104
|
+
`index` being the criterion's position in that array.
|
|
124
105
|
|
|
125
106
|
```json
|
|
126
107
|
{
|
|
@@ -149,14 +130,14 @@ order. Each `index` is the criterion's position in the Story's **full**
|
|
|
149
130
|
- `unmet` — not addressed, or the evidence contradicts the claim.
|
|
150
131
|
|
|
151
132
|
**Return the verdict file's absolute path to your caller — never invoke
|
|
152
|
-
`acceptance-eval.js` yourself.** The caller
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
the gate
|
|
133
|
+
`acceptance-eval.js` yourself.** The caller calls the gate **once** per round;
|
|
134
|
+
the round counter is Story-scoped, so a second call spends a round for nothing.
|
|
135
|
+
The **proceed / redraft / block** decision is the gate's, not yours. You score;
|
|
136
|
+
the gate decides.
|
|
156
137
|
|
|
157
138
|
## Boundaries
|
|
158
139
|
|
|
159
140
|
- Do not fix the code, redraft the diff, or commit. You evaluate and report.
|
|
160
|
-
- Do not invent criteria beyond
|
|
141
|
+
- Do not invent criteria beyond the Story's `acceptance[]` array.
|
|
161
142
|
- Emit only paths, criteria text, and observed results — never secrets or raw
|
|
162
143
|
credential values (security-baseline § Data Leakage & Logging).
|
|
@@ -89,33 +89,32 @@ names. A null digest path means no docs mandate.
|
|
|
89
89
|
(**typecheck, lint, test, format, maintainability, coverage, crap**) and is
|
|
90
90
|
the authoritative gate — do not pre-run it. The **one** exception is the
|
|
91
91
|
full suite: after the self-eval loop's last fix commit, run it once in
|
|
92
|
-
`<workCwd>`
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
ceiling, dispatch it in the
|
|
98
|
-
re-invokes you. Never spawn a task to poll or
|
|
99
|
-
waiter with a wrong condition outlives the agent.
|
|
100
|
-
evidence a gate did work —
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
other way.
|
|
106
|
-
|
|
107
|
-
Gate output that lies: [`known-tooling-behavior.md`](../rules/known-tooling-behavior.md).
|
|
92
|
+
`<workCwd>` exactly as
|
|
93
|
+
[`deliver-digest.md`](../workflows/helpers/deliver-digest.md) § 5 states it —
|
|
94
|
+
that section is the rule's only home, so read the invocation there rather
|
|
95
|
+
than from a copy here.
|
|
96
|
+
|
|
97
|
+
If the suite outruns the host's sync Bash ceiling, dispatch it in the
|
|
98
|
+
**background**: its completion re-invokes you. Never spawn a task to poll or
|
|
99
|
+
`sleep`-loop against it; a waiter with a wrong condition outlives the agent.
|
|
100
|
+
An exit code is never evidence a gate did work — its **output** is. Redraft
|
|
101
|
+
rounds run the scoped projects for the roots you changed plus `verify[]`, not
|
|
102
|
+
the whole suite, and never stamp coverage / CRAP fresh any other way.
|
|
103
|
+
|
|
104
|
+
Gate output that lies (mandrel's own repo): `docs/contributing/known-tooling-behavior.md`.
|
|
108
105
|
Waiter traps: [`parallel-tooling.md`](../workflows/helpers/parallel-tooling.md) Rule 2.
|
|
109
106
|
|
|
110
107
|
## Acceptance self-eval before close (MUST)
|
|
111
108
|
|
|
112
109
|
**Before** flipping to `closing`, run the bounded self-eval loop
|
|
113
110
|
([`acceptance-self-eval.md`](../workflows/helpers/acceptance-self-eval.md)).
|
|
114
|
-
Derive the change set
|
|
115
|
-
`node <main-repo>/.agents/scripts/ceremony-derive.js --story <storyId> --cwd <workCwd
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
111
|
+
Derive the change set and the verdict owner with
|
|
112
|
+
`node <main-repo>/.agents/scripts/ceremony-derive.js --story <storyId> --cwd <workCwd>`.
|
|
113
|
+
Under the default profile the owner is **you**: author **one** verdict file
|
|
114
|
+
covering every `acceptance[]` item, scoring the derived `files` set — never
|
|
115
|
+
one you re-derive — with `verify[]` output as evidence, and score it in one
|
|
116
|
+
gate call. Under `strict` the owner is a fresh critic; hand it that same
|
|
117
|
+
`files` list. **proceed** → flip to `closing`, run the suite, push, hand off;
|
|
119
118
|
**redraft** → fix the criteria, commit, re-eval; **block** → take the
|
|
120
119
|
blocked path below. Never hand off an unscored branch.
|
|
121
120
|
|
|
@@ -27,7 +27,6 @@
|
|
|
27
27
|
"projectNumber": null,
|
|
28
28
|
"projectOwner": null,
|
|
29
29
|
"operatorHandle": "@[USERNAME]",
|
|
30
|
-
"defaultTimeoutMs": 60000,
|
|
31
30
|
"followUpRepos": {
|
|
32
31
|
"framework": "dsj1984/mandrel",
|
|
33
32
|
"platform": null
|
|
@@ -70,9 +69,6 @@
|
|
|
70
69
|
}
|
|
71
70
|
},
|
|
72
71
|
"planning": {
|
|
73
|
-
"memoryPool": {
|
|
74
|
-
"indexByteCeiling": 24576
|
|
75
|
-
},
|
|
76
72
|
"navigation": {
|
|
77
73
|
"routeGlobs": [],
|
|
78
74
|
"navRegistry": []
|
|
@@ -80,16 +76,13 @@
|
|
|
80
76
|
},
|
|
81
77
|
"delivery": {
|
|
82
78
|
"execution": {
|
|
83
|
-
"
|
|
84
|
-
"fullSuiteLock": true,
|
|
85
|
-
"requireCreditedCapture": false
|
|
79
|
+
"fullSuiteLock": true
|
|
86
80
|
},
|
|
87
81
|
"docsFreshness": {
|
|
88
82
|
"paths": ["README.md"]
|
|
89
83
|
},
|
|
90
84
|
"tempRetention": {
|
|
91
85
|
"enabled": true,
|
|
92
|
-
"staleDays": 7,
|
|
93
86
|
"classes": {
|
|
94
87
|
"orchestrationLogs": true,
|
|
95
88
|
"validationEvidence": true,
|
|
@@ -116,24 +109,7 @@
|
|
|
116
109
|
]
|
|
117
110
|
},
|
|
118
111
|
"quality": {
|
|
119
|
-
"gateScoping": {
|
|
120
|
-
"scope": "diff",
|
|
121
|
-
"diffRef": "main"
|
|
122
|
-
},
|
|
123
112
|
"gates": {
|
|
124
|
-
"lint": {
|
|
125
|
-
"enabled": true,
|
|
126
|
-
"baselinePath": "baselines/lint.json",
|
|
127
|
-
"tolerance": {
|
|
128
|
-
"kind": "absolute",
|
|
129
|
-
"value": 0
|
|
130
|
-
},
|
|
131
|
-
"floors": {
|
|
132
|
-
"*": {
|
|
133
|
-
"errorCount": 0
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
},
|
|
137
113
|
"coverage": {
|
|
138
114
|
"enabled": true,
|
|
139
115
|
"baselinePath": "baselines/coverage.json",
|
|
@@ -148,8 +124,7 @@
|
|
|
148
124
|
"functions": 90
|
|
149
125
|
}
|
|
150
126
|
},
|
|
151
|
-
"coveragePath": "coverage/coverage-final.json"
|
|
152
|
-
"timeoutMs": 600000
|
|
127
|
+
"coveragePath": "coverage/coverage-final.json"
|
|
153
128
|
},
|
|
154
129
|
"crap": {
|
|
155
130
|
"enabled": true,
|
|
@@ -168,11 +143,6 @@
|
|
|
168
143
|
"targetDirs": ["src"],
|
|
169
144
|
"newMethodCeiling": 30,
|
|
170
145
|
"requireCoverage": true,
|
|
171
|
-
"friction": {
|
|
172
|
-
"markerKey": "crap-baseline-regression"
|
|
173
|
-
},
|
|
174
|
-
"refreshTag": "baseline-refresh:",
|
|
175
|
-
"refreshTimeoutMs": 60000,
|
|
176
146
|
"ignoreGlobs": [],
|
|
177
147
|
"incrementalCoverage": {
|
|
178
148
|
"skipWhenUnchanged": true,
|
|
@@ -192,7 +162,6 @@
|
|
|
192
162
|
}
|
|
193
163
|
},
|
|
194
164
|
"targetDirs": [],
|
|
195
|
-
"refreshTimeoutMs": 60000,
|
|
196
165
|
"ignoreGlobs": []
|
|
197
166
|
},
|
|
198
167
|
"mutation": {
|
|
@@ -206,26 +175,7 @@
|
|
|
206
175
|
"*": {
|
|
207
176
|
"score": 60
|
|
208
177
|
}
|
|
209
|
-
}
|
|
210
|
-
"strykerConfigPath": null
|
|
211
|
-
},
|
|
212
|
-
"lighthouse": {
|
|
213
|
-
"enabled": false,
|
|
214
|
-
"baselinePath": "baselines/lighthouse.json",
|
|
215
|
-
"tolerance": {
|
|
216
|
-
"kind": "absolute",
|
|
217
|
-
"value": 0
|
|
218
|
-
},
|
|
219
|
-
"floors": {
|
|
220
|
-
"*": {
|
|
221
|
-
"performance": 0,
|
|
222
|
-
"accessibility": 0,
|
|
223
|
-
"bestPractices": 0,
|
|
224
|
-
"seo": 0
|
|
225
|
-
}
|
|
226
|
-
},
|
|
227
|
-
"baseUrl": null,
|
|
228
|
-
"routes": []
|
|
178
|
+
}
|
|
229
179
|
},
|
|
230
180
|
"bundle-size": {
|
|
231
181
|
"enabled": false,
|
|
@@ -252,31 +202,11 @@
|
|
|
252
202
|
}
|
|
253
203
|
},
|
|
254
204
|
"targetDirs": ["src"],
|
|
255
|
-
"refreshTimeoutMs": 60000,
|
|
256
205
|
"ignoreGlobs": []
|
|
257
206
|
}
|
|
258
207
|
},
|
|
259
|
-
"formatAutofix": {
|
|
260
|
-
"timeoutMs": 60000
|
|
261
|
-
},
|
|
262
|
-
"codingGuardrails": {
|
|
263
|
-
"cyclomaticFlag": 8,
|
|
264
|
-
"requireSiblingTest": false
|
|
265
|
-
},
|
|
266
208
|
"autoRefresh": {
|
|
267
|
-
"enabled": true
|
|
268
|
-
"crapJumpCap": 5,
|
|
269
|
-
"scope": "diff"
|
|
270
|
-
},
|
|
271
|
-
"baselineEpsilon": {
|
|
272
|
-
"maintainability": 0.5,
|
|
273
|
-
"crap": 0.5,
|
|
274
|
-
"coverage": 0.1,
|
|
275
|
-
"mutation": 0.5,
|
|
276
|
-
"lint": 0,
|
|
277
|
-
"lighthouse": 1,
|
|
278
|
-
"bundle-size": 1024,
|
|
279
|
-
"duplication": 0.5
|
|
209
|
+
"enabled": true
|
|
280
210
|
},
|
|
281
211
|
"requireBaselines": false,
|
|
282
212
|
"navigability": {
|
|
@@ -285,7 +215,6 @@
|
|
|
285
215
|
}
|
|
286
216
|
},
|
|
287
217
|
"mergeWatch": {
|
|
288
|
-
"intervalSeconds": 30,
|
|
289
218
|
"maxBudgetSeconds": 3600
|
|
290
219
|
},
|
|
291
220
|
"codeReview": {
|
|
@@ -307,7 +236,6 @@
|
|
|
307
236
|
}
|
|
308
237
|
}
|
|
309
238
|
],
|
|
310
|
-
"maxFixAttempts": 3,
|
|
311
239
|
"autoFixSeverity": "medium"
|
|
312
240
|
},
|
|
313
241
|
"refactorStage": {
|
|
@@ -317,16 +245,9 @@
|
|
|
317
245
|
"maxRounds": 2
|
|
318
246
|
},
|
|
319
247
|
"feedbackLoop": {
|
|
320
|
-
"
|
|
321
|
-
"retroProposals": true
|
|
248
|
+
"retroProposals": false
|
|
322
249
|
},
|
|
323
250
|
"ci": {
|
|
324
|
-
"watch": {
|
|
325
|
-
"pollIntervalMs": 10000,
|
|
326
|
-
"maxPolls": 180,
|
|
327
|
-
"maxResumes": 3,
|
|
328
|
-
"attachWindowMs": 1200000
|
|
329
|
-
},
|
|
330
251
|
"autoMerge": "trust-ci",
|
|
331
252
|
"blockOnAdvisoryFailure": true,
|
|
332
253
|
"advisoryAllowlist": [],
|