@joshuafolkken/kit 1.1471.0 → 1.1784.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/.claude/agents/investigator.md +1 -1
- package/.claude/settings.json +6 -6
- package/.claude/skills/epic-commands/SKILL.md +26 -77
- package/.claude/skills/epic-commands/epic-bundle.md +12 -6
- package/.claude/skills/epic-commands/execution-waves.md +1 -2
- package/.claude/skills/verify-ui/SKILL.md +1 -2
- package/.claude/skills/workflow-commands/SKILL.md +12 -14
- package/.claude/skills/workflow-commands/background-commands.md +8 -12
- package/.claude/skills/workflow-commands/backlogrun-child.md +13 -18
- package/.claude/skills/workflow-commands/backlogrun-handoff-report.md +7 -25
- package/.claude/skills/workflow-commands/backlogrun-lanes.md +23 -28
- package/.claude/skills/workflow-commands/backlogrun-park.md +16 -31
- package/.claude/skills/workflow-commands/backlogrun-progress.md +12 -21
- package/.claude/skills/workflow-commands/backlogrun-recovery.md +12 -12
- package/.claude/skills/workflow-commands/backlogrun-steps.md +12 -20
- package/.claude/skills/workflow-commands/backlogrun.md +32 -51
- package/.claude/skills/workflow-commands/chain-rule.md +18 -11
- package/.claude/skills/workflow-commands/delegation.md +13 -8
- package/.claude/skills/workflow-commands/entry-sequence.md +10 -12
- package/.claude/skills/workflow-commands/followup.md +10 -35
- package/.claude/skills/workflow-commands/fullrun-steps.md +38 -49
- package/.claude/skills/workflow-commands/fullrun.md +6 -8
- package/.claude/skills/workflow-commands/halfrun.md +20 -32
- package/.claude/skills/workflow-commands/into-target.md +1 -2
- package/.claude/skills/workflow-commands/issue-comments.md +19 -15
- package/.claude/skills/workflow-commands/issue-scout.md +5 -4
- package/.claude/skills/workflow-commands/kickoff.md +24 -23
- package/.claude/skills/workflow-commands/latest-gate.md +9 -18
- package/.claude/skills/workflow-commands/needs-human-review.md +11 -19
- package/.claude/skills/workflow-commands/observation-filing.md +4 -50
- package/.claude/skills/workflow-commands/observation-ledger.md +5 -10
- package/.claude/skills/workflow-commands/pre-gate-cut.md +22 -44
- package/.claude/skills/workflow-commands/prerequisite.md +11 -18
- package/.claude/skills/workflow-commands/progress-watcher.md +3 -8
- package/.claude/skills/workflow-commands/prrun.md +6 -12
- package/.claude/skills/workflow-commands/retrospective.md +5 -5
- package/.claude/skills/workflow-commands/split-assessment.md +14 -4
- package/.claude/skills/workflow-commands/target-repository.md +1 -2
- package/.claude/skills/workflow-commands/working-tree-hold.md +11 -13
- package/.codex/hooks.json +6 -6
- package/.github/actions/setup-node/action.yml +10 -1
- package/.github/actions/setup-pnpm/action.yml +1 -1
- package/.github/dependabot.yml +16 -0
- package/.github/release.yml +0 -2
- package/.github/workflows/ci.yml +121 -11
- package/.github/workflows/publish.yml +10 -3
- package/.github/workflows/sonar-qube.yml +1 -0
- package/.prettierignore +2 -0
- package/.vscode/tasks.json +1 -2
- package/CLAUDE.md +4 -8
- package/README.md +4 -2
- package/SECURITY.md +1 -1
- package/cspell/index.yaml +7 -0
- package/dist/CLAUDE.md +4 -8
- package/dist/commands/document-read-cli.js +882 -0
- package/dist/commands/{document-section-cli.js → document-section-main.js} +137 -62
- package/dist/commands/read-set-cli.js +1867 -0
- package/dist/commands/run-prep-main.js +21653 -0
- package/dist/commands/run-step-cli.js +23880 -0
- package/dist/config-merge/index.js +5 -1
- package/dist/hooks/audit-provision.js +20 -35
- package/dist/hooks/{chunk-DGT54IH5.js → chunk-AZX4FGQ3.js} +63 -17
- package/dist/hooks/chunk-CWMBGKYW.js +6483 -0
- package/dist/hooks/chunk-O2YBIDSI.js +4306 -0
- package/dist/hooks/{chunk-AS74OU3D.js → chunk-PT5R6UJD.js} +4582 -2118
- package/dist/hooks/chunk-TUIFS5E7.js +72 -0
- package/dist/hooks/{chunk-723HKZO5.js → chunk-VWWCFGWK.js} +1 -1
- package/dist/hooks/{chunk-E7OIKX5Z.js → chunk-WR2KQAYZ.js} +1863 -382
- package/dist/hooks/{chunk-KC5AK2GF.js → chunk-XGBNSWEI.js} +248 -46
- package/dist/hooks/chunk-YCDOIR3I.js +3456 -0
- package/dist/hooks/codex-hook-adapter.js +10 -19
- package/dist/hooks/format-edited.js +5 -5
- package/dist/hooks/inputs.json +436 -257
- package/dist/hooks/pretool-guard.js +7 -22
- package/dist/hooks/session-lang.js +380 -42
- package/dist/hooks/stop-guard.js +8711 -782
- package/dist/josh.js +5263 -997
- package/dist/self-sync-guard/index.js +74 -10
- package/dist/version/index.js +115 -406
- package/eslint/base.js +1 -1
- package/lefthook/base.yml +8 -4
- package/package.json +17 -53
- package/pnpm-workspace.yaml +4 -2
- package/prompts/coding-standards.md +1 -1
- package/prompts/collaboration-workflow/file-edits.md +1 -9
- package/prompts/collaboration-workflow/gh-rest.md +1 -2
- package/prompts/collaboration-workflow/issue-citation.md +2 -4
- package/prompts/collaboration-workflow/issue-template.md +42 -17
- package/prompts/collaboration-workflow/lane-instructions.md +34 -0
- package/prompts/collaboration-workflow/measurement.md +37 -0
- package/prompts/collaboration-workflow/operating-rules.md +6 -12
- package/prompts/collaboration-workflow/output-bounds.md +4 -9
- package/prompts/collaboration-workflow/overview.md +1 -1
- package/prompts/collaboration-workflow/plan-comment.md +3 -42
- package/prompts/collaboration-workflow/principles.md +19 -8
- package/prompts/collaboration-workflow/report-format.md +37 -57
- package/prompts/collaboration-workflow/residency.md +12 -8
- package/prompts/collaboration-workflow/rule-delivery.md +3 -11
- package/prompts/collaboration-workflow/shell-body.md +8 -18
- package/prompts/collaboration-workflow/turn-batching.md +4 -6
- package/prompts/collaboration-workflow/upstream-interrupt.md +16 -6
- package/prompts/collaboration-workflow/wip-cap.md +7 -7
- package/prompts/collaboration-workflow.md +4 -7
- package/prompts/refactoring.md +1 -1
- package/prompts/review-rubric.md +1 -2
- package/prompts/review.md +45 -26
- package/prompts/testing-guide.md +10 -45
- package/scripts/agent/agent-argv.ts +20 -4
- package/scripts/agent/agent-event.ts +15 -15
- package/scripts/agent/agent-exit-record.ts +13 -1
- package/scripts/agent/agent-role-profile.ts +101 -45
- package/scripts/agent/agent-safe-text.ts +60 -0
- package/scripts/agent/api-auth.ts +41 -0
- package/scripts/agent/api-outage.ts +1 -1
- package/scripts/agent/claude-agent-argv.ts +14 -0
- package/scripts/agent/codex-agent-argv.ts +2 -0
- package/scripts/agent/lane-instructions.ts +144 -0
- package/scripts/auto-ok/auto-ok-cli.ts +14 -16
- package/scripts/auto-ok/auto-ok-judge-read.ts +12 -3
- package/scripts/auto-ok/auto-ok-judge-write.ts +46 -19
- package/scripts/auto-ok/auto-ok-judge.ts +13 -2
- package/scripts/auto-ok/auto-ok-main.ts +17 -0
- package/scripts/backlog/backlog-arrival.ts +14 -3
- package/scripts/backlog/backlog-budget-cli.ts +7 -33
- package/scripts/backlog/backlog-budget-main.ts +16 -0
- package/scripts/backlog/backlog-budget.ts +6 -7
- package/scripts/backlog/backlog-defect-priority.ts +4 -3
- package/scripts/backlog/backlog-drive-adopt.ts +67 -0
- package/scripts/backlog/backlog-drive-args.ts +4 -5
- package/scripts/backlog/backlog-drive-cli.ts +113 -28
- package/scripts/backlog/backlog-drive-hold.ts +162 -0
- package/scripts/backlog/backlog-drive-idle.ts +151 -0
- package/scripts/backlog/backlog-drive-judge.ts +25 -0
- package/scripts/backlog/backlog-drive-memory.ts +126 -0
- package/scripts/backlog/backlog-drive-named-offer.ts +5 -10
- package/scripts/backlog/backlog-drive-named.ts +54 -7
- package/scripts/backlog/backlog-drive-offer-argv.ts +3 -8
- package/scripts/backlog/backlog-drive-paused.ts +169 -0
- package/scripts/backlog/backlog-drive-restore.ts +39 -8
- package/scripts/backlog/backlog-drive-seats.ts +18 -8
- package/scripts/backlog/backlog-drive-token-handling.ts +38 -0
- package/scripts/backlog/backlog-drive.ts +79 -75
- package/scripts/backlog/backlog-next-main.ts +16 -0
- package/scripts/backlog/backlog-next-shared.ts +73 -0
- package/scripts/backlog/backlog-next.ts +48 -16
- package/scripts/backlog/backlog-occupied.ts +69 -0
- package/scripts/backlog/backlog-offer-cli.ts +6 -21
- package/scripts/backlog/backlog-offer-exclude.ts +15 -0
- package/scripts/backlog/backlog-offer-main.ts +12 -0
- package/scripts/backlog/backlog-offer.ts +36 -3
- package/scripts/backlog/backlog-overlap.ts +22 -4
- package/scripts/backlog/backlog-plan-read.ts +6 -2
- package/scripts/backlog/backlog-plan.ts +18 -4
- package/scripts/backlog/backlog-pool.ts +10 -10
- package/scripts/backlog/backlog-rank.ts +10 -2
- package/scripts/backlog/backlog-ready.ts +137 -18
- package/scripts/backlog/backlog-stalled-detect.ts +109 -36
- package/scripts/backlog/backlog-stalled.ts +52 -16
- package/scripts/backlog/backlog-wait-cause.ts +86 -0
- package/scripts/backlog/backlog-waves.ts +39 -13
- package/scripts/backlog/backlogrun-args.ts +19 -7
- package/scripts/backlog/backlogrun-cli.ts +19 -5
- package/scripts/backlog/backlogrun-launch.ts +6 -0
- package/scripts/backlog/backlogrun-restart.ts +97 -0
- package/scripts/backlog/backlogrun-stop.ts +79 -7
- package/scripts/behavior/behavior-cli.ts +2 -2
- package/scripts/behavior/behavior-rules.ts +47 -24
- package/scripts/build/build-bin.ts +2 -16
- package/scripts/build/build-claude-md.ts +0 -7
- package/scripts/build/build-commands.ts +0 -13
- package/scripts/build/build-hooks.ts +49 -48
- package/scripts/build/hook-bundle-stamp.ts +29 -11
- package/scripts/build/local-bin.ts +1 -1
- package/scripts/cases/cases-cli.ts +25 -13
- package/scripts/cases/cases-interaction-scan.ts +134 -0
- package/scripts/cases/cases-interaction.ts +183 -0
- package/scripts/cases/cases-logic.ts +39 -6
- package/scripts/ci/pr-classification-main.ts +18 -0
- package/scripts/ci/pr-classification.ts +10 -17
- package/scripts/clone/clone-scan.ts +1 -1
- package/scripts/cost-runtime/cost-blocks.ts +22 -37
- package/scripts/cost-runtime/cost-cli.ts +31 -14
- package/scripts/cost-runtime/cost-main.ts +12 -0
- package/scripts/cost-runtime/cost-transcript.ts +1 -0
- package/scripts/delegation/delegation-policy.ts +17 -4
- package/scripts/delegation/duplicate-read-guard.ts +2 -10
- package/scripts/delegation/investigation-guard.ts +15 -73
- package/scripts/delegation/investigation-reads.ts +3 -5
- package/scripts/dependabot/dependabot-cooldown.ts +194 -0
- package/scripts/discovery/repo-discovery.ts +24 -6
- package/scripts/doctor/doctor-consumer.ts +2 -5
- package/scripts/document/document-byte-budget.ts +9 -6
- package/scripts/document/document-scan.ts +1 -1
- package/scripts/document/document-section-cli.ts +17 -13
- package/scripts/document/document-section-main.ts +12 -0
- package/scripts/document/entry-read-budget.ts +2 -2
- package/scripts/document/read-set-cli.ts +4 -1
- package/scripts/epic/epic-audit-cli.ts +12 -6
- package/scripts/epic/epic-audit-orphans.ts +5 -8
- package/scripts/epic/epic-audit.ts +52 -1
- package/scripts/epic/epic-bundle-apply.ts +137 -0
- package/scripts/epic/epic-bundle-cli.ts +32 -121
- package/scripts/epic/epic-bundle-evidence.ts +49 -26
- package/scripts/epic/epic-bundle-format.ts +116 -0
- package/scripts/epic/epic-bundle-main.ts +17 -0
- package/scripts/epic/epic-bundle-referenced.ts +14 -3
- package/scripts/epic/epic-bundle.ts +17 -9
- package/scripts/epic/epic-busy.ts +5 -12
- package/scripts/epic/epic-classify.ts +24 -15
- package/scripts/epic/epic-cli-argv.ts +31 -0
- package/scripts/epic/epic-cli-decide.ts +42 -0
- package/scripts/epic/epic-cli.ts +6 -38
- package/scripts/epic/epic-close.ts +112 -55
- package/scripts/epic/epic-cross-repo.ts +4 -7
- package/scripts/epic/epic-decide.ts +119 -0
- package/scripts/epic/epic-decision.ts +9 -0
- package/scripts/epic/epic-fetch.ts +4 -0
- package/scripts/epic/epic-graph.ts +2 -0
- package/scripts/epic/epic-issue.ts +5 -1
- package/scripts/epic/epic-label-age.ts +1 -1
- package/scripts/epic/epic-lane-offer.ts +39 -4
- package/scripts/epic/epic-next-main.ts +24 -0
- package/scripts/epic/epic-next.ts +6 -24
- package/scripts/epic/epic-outside-blocker.ts +6 -2
- package/scripts/epic/epic-parse.ts +9 -3
- package/scripts/epic/epic-read.ts +1 -0
- package/scripts/epic/epic-reconcile.ts +39 -0
- package/scripts/epic/epic-run.ts +10 -1
- package/scripts/epic/epic-solo.ts +50 -14
- package/scripts/epic/epic.ts +41 -7
- package/scripts/exports/unused-members-cli.ts +2 -2
- package/scripts/followup/followup-checks-event.ts +8 -3
- package/scripts/followup/followup-coderabbit-wait.ts +82 -0
- package/scripts/followup/followup-review-gates.ts +81 -0
- package/scripts/followup/git-followup-stages.ts +13 -3
- package/scripts/followup/git-followup-workflow.ts +31 -60
- package/scripts/followup/git-pr-followup-wrapup.ts +9 -14
- package/scripts/followup/git-pr-followup.ts +36 -8
- package/scripts/fresh-machine/fresh-machine-cli.ts +1 -1
- package/scripts/fresh-machine/fresh-machine-run.ts +8 -8
- package/scripts/fresh-machine/specs/kit-test-backlogrun.json +1 -1
- package/scripts/gate/busy-average.ts +58 -0
- package/scripts/gate/check-cpu.ts +60 -0
- package/scripts/gate/check-inputs.ts +73 -0
- package/scripts/gate/check-reuse.ts +141 -0
- package/scripts/gate/command-memory.ts +192 -0
- package/scripts/gate/core-admission.ts +218 -28
- package/scripts/gate/core-budget-timing.ts +37 -0
- package/scripts/gate/core-budget.ts +150 -119
- package/scripts/gate/core-wait-record.ts +48 -0
- package/scripts/gate/core-wait.ts +162 -0
- package/scripts/gate/core-weights.ts +86 -0
- package/scripts/gate/free-cores.ts +72 -0
- package/scripts/gate/gate-ledger.ts +49 -7
- package/scripts/gate/gate-plan.ts +44 -15
- package/scripts/gate/gate-report.ts +29 -4
- package/scripts/gate/gate-run-steps.ts +195 -0
- package/scripts/gate/gate-skip.ts +12 -2
- package/scripts/gate/gate-steps.ts +12 -1
- package/scripts/gate/held-mark.ts +55 -0
- package/scripts/gate/input-fingerprint.ts +42 -0
- package/scripts/gate/machine-capacity.ts +124 -31
- package/scripts/gate/moved-paths.ts +67 -0
- package/scripts/gate/pre-commit-type-check.ts +14 -1
- package/scripts/gate/project-checks.ts +5 -12
- package/scripts/gate/scoped-green.ts +12 -8
- package/scripts/gate/since-green.ts +62 -0
- package/scripts/gate/toolchain-inputs.ts +115 -0
- package/scripts/gate/verification-gate.ts +65 -129
- package/scripts/gate/verification-inputs.ts +250 -0
- package/scripts/gh/gh-author-association.ts +96 -9
- package/scripts/gh/git-ai-review-scan.ts +4 -2
- package/scripts/gh/git-gh-api-path.ts +15 -0
- package/scripts/gh/git-gh-branch-rules.ts +73 -0
- package/scripts/gh/git-gh-conditional.ts +5 -2
- package/scripts/gh/git-gh-issue-read.ts +5 -1
- package/scripts/gh/git-gh-issue-rest.ts +1 -0
- package/scripts/gh/git-gh-issue-write.ts +77 -17
- package/scripts/gh/git-gh-issue.ts +7 -3
- package/scripts/gh/git-gh-poll-read.ts +89 -0
- package/scripts/gh/git-gh-pr-auto-merge.ts +8 -3
- package/scripts/gh/git-gh-pr-rest.ts +1 -1
- package/scripts/gh/git-gh-pr-snapshot.ts +33 -20
- package/scripts/gh/git-gh-pr.ts +27 -15
- package/scripts/gh/git-pr-checks-eval.ts +39 -7
- package/scripts/gh/git-pr-checks-parse.ts +39 -9
- package/scripts/gh/git-pr-merge-checked.ts +80 -0
- package/scripts/gh/git-pr.ts +13 -1
- package/scripts/git/base-tree.ts +19 -2
- package/scripts/git/changed-file-scope.ts +6 -4
- package/scripts/git/changed-paths.ts +18 -1
- package/scripts/git/git-diff-reads.ts +27 -2
- package/scripts/git/git-grep-hits.ts +85 -0
- package/scripts/git/git-location-environment.ts +1 -1
- package/scripts/git/git-merge-conflicts.ts +83 -0
- package/scripts/git/git-preflight.ts +37 -12
- package/scripts/git/git-push-transport.ts +1 -2
- package/scripts/git/git-schemas.ts +17 -7
- package/scripts/git/git-spawn.ts +1 -2
- package/scripts/git/git-status.ts +4 -4
- package/scripts/git/main-merge-main.ts +12 -0
- package/scripts/git/main-merge-regenerate.ts +78 -0
- package/scripts/git/main-merge.ts +39 -14
- package/scripts/git/main-sync-main.ts +12 -0
- package/scripts/git/main-sync.ts +0 -9
- package/scripts/git/stash/git-stash.ts +27 -4
- package/scripts/git/stash/{stash-pop-args.ts → stash-args.ts} +13 -10
- package/scripts/git/stash/stash-pop-cli.ts +6 -12
- package/scripts/git/stash/stash-pop-main.ts +12 -0
- package/scripts/git/stash/stash-push-cli.ts +76 -0
- package/scripts/git/stash/stash-push-main.ts +12 -0
- package/scripts/hooks/batch-guard.ts +5 -16
- package/scripts/hooks/check-commit-message-main.ts +8 -0
- package/scripts/hooks/check-commit-message.ts +4 -7
- package/scripts/hooks/format-edited-file.ts +8 -24
- package/scripts/hooks/pre-commit-lint.ts +118 -0
- package/scripts/hooks/pre-push-unit.ts +4 -2
- package/scripts/hooks/pretool-guard-cli.ts +1 -8
- package/scripts/hooks/pretool-guard.ts +57 -69
- package/scripts/hooks/reserved-run.ts +67 -8
- package/scripts/hooks/run-hook.sh +18 -11
- package/scripts/hooks/shell-rules-notice.ts +37 -0
- package/scripts/hooks/stop-actions.ts +185 -0
- package/scripts/hooks/stop-guard.ts +72 -27
- package/scripts/init/hook-command-rewrite.ts +19 -5
- package/scripts/init/hook-launch.ts +15 -12
- package/scripts/init/init-actions.ts +0 -6
- package/scripts/init/init-ai-copy.ts +10 -36
- package/scripts/init/init-bootstrap.ts +9 -8
- package/scripts/init/init-dry-run-report.ts +1 -1
- package/scripts/init/init-dry-run.ts +1 -1
- package/scripts/init/init-file-action.ts +7 -9
- package/scripts/init/init-logic-json-merge.ts +2 -2
- package/scripts/init/init-logic-migrate.ts +9 -82
- package/scripts/init/init-logic.ts +3 -2
- package/scripts/init/init-main.ts +12 -0
- package/scripts/init/init.ts +5 -12
- package/scripts/init/kit-development-versions.ts +3 -7
- package/scripts/init/kit-written-paths.ts +2 -2
- package/scripts/init/project-profile.ts +5 -4
- package/scripts/init/tsconfig-preset-migration.ts +2 -1
- package/scripts/init/vscode-tasks.ts +1 -1
- package/scripts/issue/defect-origin-cli.ts +106 -0
- package/scripts/issue/defect-origin-line.ts +60 -0
- package/scripts/issue/defect-origin-main.ts +11 -0
- package/scripts/issue/defect-origin.ts +114 -0
- package/scripts/issue/defect-rate-cli.ts +34 -78
- package/scripts/issue/defect-rate.ts +0 -16
- package/scripts/issue/defect-report-cli.ts +128 -0
- package/scripts/issue/defect-report-format.ts +56 -0
- package/scripts/issue/defect-report-main.ts +11 -0
- package/scripts/issue/defect-report.ts +160 -0
- package/scripts/issue/expected-effect-lint.ts +60 -0
- package/scripts/issue/issue-already-done-cli.ts +62 -0
- package/scripts/issue/issue-body-or-comment.ts +40 -0
- package/scripts/issue/issue-cite-cli.ts +33 -22
- package/scripts/issue/issue-cite-main.ts +12 -0
- package/scripts/issue/issue-classification.ts +13 -8
- package/scripts/issue/issue-comment-cli.ts +10 -24
- package/scripts/issue/issue-comment-main.ts +12 -0
- package/scripts/issue/issue-evidence-exit.ts +100 -0
- package/scripts/issue/issue-file-cli.ts +29 -7
- package/scripts/issue/issue-file.ts +19 -19
- package/scripts/issue/issue-fold-cli.ts +2 -11
- package/scripts/issue/issue-fold-main.ts +12 -0
- package/scripts/issue/issue-labels.ts +81 -90
- package/scripts/issue/issue-lint-cli.ts +7 -13
- package/scripts/issue/issue-lint-main.ts +12 -0
- package/scripts/issue/issue-measured-cli.ts +56 -0
- package/scripts/issue/issue-merged.ts +19 -2
- package/scripts/issue/issue-not-before-label.ts +135 -0
- package/scripts/issue/issue-not-before.ts +111 -0
- package/scripts/issue/issue-number-shape.ts +15 -1
- package/scripts/issue/issue-park.ts +28 -0
- package/scripts/issue/issue-plan-cli.ts +151 -0
- package/scripts/issue/issue-priority.ts +151 -0
- package/scripts/issue/issue-rank.ts +7 -1
- package/scripts/issue/issue-read-cli.ts +3 -10
- package/scripts/issue/issue-read-main.ts +12 -0
- package/scripts/issue/issue-read.ts +29 -5
- package/scripts/issue/issue-release-cli.ts +0 -10
- package/scripts/issue/issue-release-main.ts +13 -0
- package/scripts/issue/issue-release.ts +7 -12
- package/scripts/issue/issue-sample-gate.ts +192 -0
- package/scripts/issue/issue-sample-source.ts +76 -0
- package/scripts/issue/issue-scout-cli.ts +19 -25
- package/scripts/issue/issue-scout-main.ts +14 -0
- package/scripts/issue/issue-state-cli.ts +0 -10
- package/scripts/issue/issue-state-main.ts +12 -0
- package/scripts/issue/issue-watch-diff.ts +56 -15
- package/scripts/issue/issue-watch.ts +2 -1
- package/scripts/issue/issue-wip.ts +2 -7
- package/scripts/issue/markdown-section.ts +19 -5
- package/scripts/issue/measure-rerun-cli.ts +13 -8
- package/scripts/issue/plan-consumers-cli.ts +39 -0
- package/scripts/issue/plan-consumers-main.ts +11 -0
- package/scripts/issue/plan-consumers-section.ts +55 -0
- package/scripts/issue/plan-consumers.ts +127 -0
- package/scripts/josh/agent-session-environment.ts +1 -1
- package/scripts/josh/command-usage.ts +82 -0
- package/scripts/josh/file-map-stamp.ts +49 -16
- package/scripts/josh/hook-decision.ts +32 -20
- package/scripts/josh/josh-command-map.ts +6 -1
- package/scripts/josh/josh-command-types.ts +65 -13
- package/scripts/josh/josh-commands-agent-hooks.ts +83 -0
- package/scripts/josh/josh-commands-ai.ts +169 -157
- package/scripts/josh/josh-commands-backlog.ts +82 -16
- package/scripts/josh/josh-commands-clone.ts +1 -0
- package/scripts/josh/josh-commands-development.ts +111 -71
- package/scripts/josh/josh-commands-document.ts +43 -1
- package/scripts/josh/josh-commands-epic.ts +171 -0
- package/scripts/josh/josh-commands-hooks.ts +31 -2
- package/scripts/josh/josh-commands-issue-write.ts +181 -0
- package/scripts/josh/josh-commands-issue.ts +124 -24
- package/scripts/josh/josh-commands-lane.ts +112 -2
- package/scripts/josh/josh-commands-lint.ts +19 -8
- package/scripts/josh/josh-commands-maintenance.ts +112 -4
- package/scripts/josh/josh-commands-pause.ts +29 -0
- package/scripts/josh/josh-commands-progress.ts +87 -0
- package/scripts/josh/josh-commands-project.ts +138 -9
- package/scripts/josh/josh-commands-review.ts +124 -0
- package/scripts/josh/josh-commands-run.ts +211 -23
- package/scripts/josh/josh-commands-ship.ts +169 -0
- package/scripts/josh/josh-commands-split.ts +9 -0
- package/scripts/josh/josh-commands-versioning.ts +49 -2
- package/scripts/josh/josh-commands-workflow.ts +149 -6
- package/scripts/josh/josh-logic.ts +11 -27
- package/scripts/josh/josh.ts +14 -5
- package/scripts/josh/package-directory.ts +18 -0
- package/scripts/josh/process-identity.ts +13 -4
- package/scripts/josh/session-language-cli.ts +4 -8
- package/scripts/josh/session-language-main.ts +13 -0
- package/scripts/josh/session-language.ts +6 -1
- package/scripts/josh/shared-cache.ts +90 -0
- package/scripts/josh/stamp-file.ts +9 -15
- package/scripts/lane/lane-await.ts +51 -12
- package/scripts/lane/lane-cache.ts +5 -30
- package/scripts/lane/lane-capacity.ts +19 -22
- package/scripts/lane/lane-check-stats.ts +97 -0
- package/scripts/lane/lane-child-invocation.ts +43 -4
- package/scripts/lane/lane-cli.ts +15 -5
- package/scripts/lane/lane-close.ts +86 -18
- package/scripts/lane/lane-core-wait-stats.ts +66 -0
- package/scripts/lane/lane-dispatch.ts +27 -6
- package/scripts/lane/lane-gap-stats.ts +156 -0
- package/scripts/lane/lane-guard-policy.ts +2 -2
- package/scripts/lane/lane-handoff.ts +76 -1
- package/scripts/lane/lane-held-stats.ts +129 -0
- package/scripts/lane/lane-install.ts +16 -15
- package/scripts/lane/lane-launch-cli.ts +0 -9
- package/scripts/lane/lane-launch-main.ts +12 -0
- package/scripts/lane/lane-ledger-schema.ts +266 -0
- package/scripts/lane/lane-ledger.ts +108 -97
- package/scripts/lane/lane-limit-cli.ts +19 -9
- package/scripts/lane/lane-measure-cli.ts +58 -10
- package/scripts/lane/lane-open.ts +9 -1
- package/scripts/lane/lane-parked.ts +3 -3
- package/scripts/lane/lane-pause-cli.ts +130 -0
- package/scripts/lane/lane-pause.ts +158 -0
- package/scripts/lane/lane-preserve.ts +29 -1
- package/scripts/lane/lane-process-table.ts +166 -0
- package/scripts/lane/lane-reap-settle.ts +124 -0
- package/scripts/lane/lane-reap.ts +50 -15
- package/scripts/lane/lane-registry.ts +33 -10
- package/scripts/lane/lane-residents.ts +162 -0
- package/scripts/lane/lane-restart.ts +26 -27
- package/scripts/lane/lane-round-two-stats.ts +49 -0
- package/scripts/lane/lane-sampler.ts +4 -0
- package/scripts/lane/lane-session-action.ts +160 -0
- package/scripts/lane/lane-session-broker.ts +134 -134
- package/scripts/lane/lane-snapshot-trace.ts +84 -0
- package/scripts/lane/lane-spans.ts +51 -0
- package/scripts/lane/lane-spent.ts +6 -3
- package/scripts/lane/lane-stage-stats.ts +7 -2
- package/scripts/lane/lane-state.ts +302 -0
- package/scripts/lane/lane-stats.ts +58 -4
- package/scripts/lane/lane-stop-stats.ts +113 -37
- package/scripts/lane/lane-test-related-stats.ts +127 -0
- package/scripts/lane/lane-transcript-calls.ts +145 -0
- package/scripts/lane/lane-transcript-stats.ts +168 -0
- package/scripts/lane/lane-vacant.ts +13 -3
- package/scripts/lane/lane-withdraw-cli.ts +72 -0
- package/scripts/lane/lane-withdraw.ts +183 -0
- package/scripts/lane/process-directories.ts +70 -0
- package/scripts/lane/process-lane-marks.ts +94 -0
- package/scripts/lib/atomic-write.ts +62 -0
- package/scripts/lib/buffered-process.ts +12 -5
- package/scripts/lib/cli-flags.ts +53 -0
- package/scripts/lib/figure-format.ts +63 -0
- package/scripts/lib/json-value.ts +9 -1
- package/scripts/lib/package-manifest.ts +35 -0
- package/scripts/lib/read-file.ts +3 -1
- package/scripts/lib/stamped-memo.ts +63 -0
- package/scripts/lib/stdout-on-stderr.ts +24 -0
- package/scripts/lib/timeouts.ts +9 -0
- package/scripts/lib/transcript-record.ts +91 -0
- package/scripts/lines/effective-limit.ts +1 -1
- package/scripts/lint/eslint-cache-dependencies.ts +145 -0
- package/scripts/lint/eslint-daemon.ts +265 -0
- package/scripts/lint/format.ts +14 -5
- package/scripts/lint/import-graph.ts +279 -0
- package/scripts/lint/lint-gate-scope.ts +102 -0
- package/scripts/lint/lint-parallel-main.ts +19 -0
- package/scripts/lint/lint-parallel.ts +72 -33
- package/scripts/lint/lint-related-scope.ts +33 -24
- package/scripts/lint/lint-related.ts +38 -6
- package/scripts/notify/confirmation-options.ts +1 -2
- package/scripts/notify/telegram-notify.ts +20 -20
- package/scripts/notify/telegram-test-logic.ts +0 -1
- package/scripts/notify/telegram-test-main.ts +8 -0
- package/scripts/notify/telegram-test.ts +12 -11
- package/scripts/observations/observation-ledger.ts +13 -0
- package/scripts/observations/observations-flush-landing.ts +5 -3
- package/scripts/observations/observations-flush.ts +6 -1
- package/scripts/overrides/overrides-check.ts +2 -5
- package/scripts/overrides/overrides-files.ts +2 -1
- package/scripts/overrides/overrides-logic.ts +3 -6
- package/scripts/package/verify-optional-eslint-install.ts +8 -6
- package/scripts/propagate/propagate-publish.ts +2 -7
- package/scripts/propagate/propagate-targets.ts +4 -12
- package/scripts/refactor/import-graph.ts +9 -7
- package/scripts/release/github-release-runs.ts +17 -6
- package/scripts/release/release-approval-prune.ts +18 -0
- package/scripts/release/release-history.ts +1 -3
- package/scripts/release/release-progress.ts +42 -22
- package/scripts/release/release-publish-run.ts +39 -0
- package/scripts/release/release-publish.ts +6 -6
- package/scripts/release/release-scope-cli.ts +0 -10
- package/scripts/release/release-scope-main.ts +12 -0
- package/scripts/repo/repo-setting.ts +3 -6
- package/scripts/repo/required-checks-logic.ts +6 -15
- package/scripts/report/report-format-reference.ts +4 -0
- package/scripts/report/report-labels.ts +155 -0
- package/scripts/report/report-lint-cli.ts +3 -0
- package/scripts/report/report-lint.ts +85 -110
- package/scripts/report/report-template-cli.ts +59 -0
- package/scripts/report/report-template.ts +112 -0
- package/scripts/review/acceptance-map-check.ts +61 -0
- package/scripts/review/acceptance-map.ts +206 -0
- package/scripts/review/removed-tests-check.ts +86 -0
- package/scripts/review/removed-tests.ts +149 -0
- package/scripts/review/review-brief-cli.ts +82 -16
- package/scripts/review/review-brief-main.ts +12 -0
- package/scripts/review/review-brief.ts +31 -3
- package/scripts/review/review-code-tree.ts +10 -6
- package/scripts/review/review-comment-round.ts +26 -8
- package/scripts/review/review-finding-ledger.ts +30 -15
- package/scripts/review/review-interaction.ts +94 -0
- package/scripts/review/review-readers-scan.ts +163 -0
- package/scripts/review/review-record-cli.ts +69 -30
- package/scripts/review/review-record-main.ts +12 -0
- package/scripts/review/review-round-one-blobs.ts +221 -0
- package/scripts/review/review-round2-cli.ts +49 -12
- package/scripts/review/review-round2.ts +80 -12
- package/scripts/review/review-stamps.ts +19 -1
- package/scripts/review/review-stop-log.ts +96 -0
- package/scripts/review/review-stops-cli.ts +85 -0
- package/scripts/review/review-tree.ts +6 -17
- package/scripts/review/review-untouched-readers.ts +146 -0
- package/scripts/review/test-titles.ts +118 -0
- package/scripts/rules/agent-model.ts +67 -0
- package/scripts/rules/bash-triggers.ts +46 -3
- package/scripts/rules/decision-oracle-batch.ts +9 -1
- package/scripts/rules/decision-oracle.ts +2 -2
- package/scripts/rules/delivered-rules.ts +90 -3
- package/scripts/rules/destructive-command.ts +8 -1
- package/scripts/rules/direct-filing.ts +10 -2
- package/scripts/rules/direct-issue-comment.ts +117 -0
- package/scripts/rules/direct-pr-create.ts +69 -3
- package/scripts/rules/early-heartbeat.ts +2 -1
- package/scripts/rules/file-body.ts +7 -0
- package/scripts/rules/filing-cap.ts +8 -0
- package/scripts/rules/firing-point.ts +6 -5
- package/scripts/rules/git-argv.ts +72 -14
- package/scripts/rules/git-force.ts +12 -2
- package/scripts/rules/guard-remedy.ts +121 -0
- package/scripts/rules/implementation-cut-verdict.ts +1 -1
- package/scripts/rules/implementation-cut.ts +11 -3
- package/scripts/rules/index-guard.ts +8 -1
- package/scripts/rules/issue-comments.ts +76 -7
- package/scripts/rules/josh-git-bare.ts +7 -0
- package/scripts/rules/lane-background.ts +67 -25
- package/scripts/rules/lane-carry-conflict.ts +6 -0
- package/scripts/rules/lane-direct-tool.ts +74 -0
- package/scripts/rules/lane-interactive-ask.ts +9 -2
- package/scripts/rules/lane-park.ts +45 -23
- package/scripts/rules/lane-split-park.ts +10 -2
- package/scripts/rules/lane-switch-main.ts +7 -0
- package/scripts/rules/last-prompt.ts +50 -5
- package/scripts/rules/oracle-consulted.ts +10 -0
- package/scripts/rules/oracle-firing.ts +1 -0
- package/scripts/rules/oracle-list-cli.ts +7 -0
- package/scripts/rules/permission-guards.ts +3 -0
- package/scripts/rules/piped-verification.ts +4 -2
- package/scripts/rules/poll-loop.ts +7 -0
- package/scripts/rules/pr-merge.ts +123 -0
- package/scripts/rules/protected-files.ts +32 -5
- package/scripts/rules/raw-field-body.ts +6 -0
- package/scripts/rules/rule-body-guard.ts +8 -0
- package/scripts/rules/rule-list.ts +12 -28
- package/scripts/rules/rule-rewrite.ts +114 -0
- package/scripts/rules/rule-value-cache.ts +4 -9
- package/scripts/rules/rule-value-cli.ts +51 -32
- package/scripts/rules/rule-value.ts +8 -2
- package/scripts/rules/shell-segments.ts +50 -0
- package/scripts/rules/stop-decision.ts +77 -0
- package/scripts/rules/stop-rule-rows.ts +64 -0
- package/scripts/rules/stop-rules.ts +150 -51
- package/scripts/rules/tail-commands.ts +15 -1
- package/scripts/rules/test-declared-commit.ts +11 -1
- package/scripts/rules/third-party-write.ts +7 -0
- package/scripts/rules/timed-rerun.ts +69 -0
- package/scripts/rules/worktree-guard.ts +13 -3
- package/scripts/run/board/run-board-app-name.ts +23 -0
- package/scripts/run/board/run-board-cli.ts +65 -30
- package/scripts/run/board/run-board-closed.ts +8 -2
- package/scripts/run/board/run-board-earlier.ts +94 -0
- package/scripts/run/board/run-board-ending-reason.ts +67 -0
- package/scripts/run/board/run-board-estimate-schedule.ts +103 -0
- package/scripts/run/board/run-board-estimate.ts +98 -0
- package/scripts/run/board/run-board-fit.ts +153 -36
- package/scripts/run/board/run-board-fold.ts +123 -0
- package/scripts/run/board/run-board-fresh.ts +2 -2
- package/scripts/run/board/run-board-gather-live.ts +29 -0
- package/scripts/run/board/run-board-gather-thread.ts +189 -0
- package/scripts/run/board/run-board-gather-worker.ts +29 -0
- package/scripts/run/board/run-board-gather.ts +187 -0
- package/scripts/run/board/run-board-github.ts +119 -31
- package/scripts/run/board/run-board-header.ts +86 -21
- package/scripts/run/board/run-board-keys.ts +58 -0
- package/scripts/run/board/run-board-kind.ts +20 -6
- package/scripts/run/board/run-board-labels.ts +118 -71
- package/scripts/run/board/run-board-lane-state.ts +109 -0
- package/scripts/run/board/run-board-lane-time.ts +122 -0
- package/scripts/run/board/run-board-layout.ts +240 -61
- package/scripts/run/board/run-board-length.ts +52 -0
- package/scripts/run/board/run-board-machine.ts +8 -4
- package/scripts/run/board/run-board-main.ts +12 -0
- package/scripts/run/board/run-board-notes.ts +52 -31
- package/scripts/run/board/run-board-now.ts +1 -1
- package/scripts/run/board/run-board-operation.ts +15 -33
- package/scripts/run/board/run-board-phase.ts +1 -1
- package/scripts/run/board/run-board-plan-shared.ts +115 -0
- package/scripts/run/board/run-board-plan.ts +55 -3
- package/scripts/run/board/run-board-planning.ts +45 -0
- package/scripts/run/board/run-board-priority.ts +44 -0
- package/scripts/run/board/run-board-process-groups.ts +195 -0
- package/scripts/run/board/run-board-read.ts +153 -13
- package/scripts/run/board/run-board-reason.ts +238 -45
- package/scripts/run/board/run-board-released.ts +35 -0
- package/scripts/run/board/run-board-render-checks.ts +39 -5
- package/scripts/run/board/run-board-render-condition.ts +96 -0
- package/scripts/run/board/run-board-render-drawn.ts +67 -0
- package/scripts/run/board/run-board-render-foot.ts +59 -0
- package/scripts/run/board/run-board-render-icon.ts +35 -0
- package/scripts/run/board/run-board-render-lanes.ts +145 -0
- package/scripts/run/board/run-board-render-lead.ts +80 -0
- package/scripts/run/board/run-board-render-legend.ts +117 -47
- package/scripts/run/board/run-board-render-notes.ts +156 -29
- package/scripts/run/board/run-board-render-processes.ts +196 -0
- package/scripts/run/board/run-board-render-section.ts +119 -0
- package/scripts/run/board/run-board-render-slot.ts +3 -36
- package/scripts/run/board/run-board-render-tail.ts +115 -48
- package/scripts/run/board/run-board-render-time.ts +56 -0
- package/scripts/run/board/run-board-render-title.ts +117 -24
- package/scripts/run/board/run-board-render-waits.ts +125 -0
- package/scripts/run/board/run-board-render.ts +206 -259
- package/scripts/run/board/run-board-roots.ts +54 -0
- package/scripts/run/board/run-board-row-yield.ts +10 -4
- package/scripts/run/board/run-board-setup.ts +1 -12
- package/scripts/run/board/run-board-snapshot.ts +111 -0
- package/scripts/run/board/run-board-spin.ts +2 -2
- package/scripts/run/board/run-board-state.ts +23 -29
- package/scripts/run/board/run-board-status.ts +206 -79
- package/scripts/run/board/run-board-thanks-read.ts +2 -2
- package/scripts/run/board/run-board-tick.ts +123 -104
- package/scripts/run/board/run-board-usage-board.ts +78 -0
- package/scripts/run/board/run-board-usage-lanes.ts +113 -0
- package/scripts/run/board/run-board-usage-listing.ts +93 -0
- package/scripts/run/board/run-board-usage-read.ts +120 -150
- package/scripts/run/board/run-board-usage-rusage.ts +19 -7
- package/scripts/run/board/run-board-usage-text.ts +139 -51
- package/scripts/run/board/run-board-usage-top.ts +102 -0
- package/scripts/run/board/run-board-usage.ts +89 -72
- package/scripts/run/board/run-board-usual.ts +20 -9
- package/scripts/run/carry/run-carry-args.ts +4 -7
- package/scripts/run/carry/run-carry-conversation.ts +1 -1
- package/scripts/run/carry/run-carry.ts +9 -4
- package/scripts/run/cut/run-cut-cli.ts +3 -2
- package/scripts/run/cut/run-cut-handoff.ts +2 -2
- package/scripts/run/cut/run-cut-report.ts +16 -0
- package/scripts/run/detached-launch.ts +23 -4
- package/scripts/run/entry/run-entry-cli.ts +8 -1
- package/scripts/run/event/run-event-cli.ts +1 -5
- package/scripts/run/event/run-event-filed.ts +12 -6
- package/scripts/run/event/run-event-follow.ts +2 -3
- package/scripts/run/event/run-event-render.ts +7 -10
- package/scripts/run/event/run-event-scope.ts +20 -2
- package/scripts/run/event/run-event-stream-emit.ts +78 -11
- package/scripts/run/event/run-event-stream.ts +37 -7
- package/scripts/run/hold/run-hold-adopt.ts +65 -0
- package/scripts/run/hold/run-hold-cli.ts +93 -22
- package/scripts/run/hold/run-hold-main.ts +12 -0
- package/scripts/run/hold/run-hold-member.ts +37 -0
- package/scripts/run/hold/run-hold-session.ts +46 -0
- package/scripts/run/hold/run-hold.ts +7 -1
- package/scripts/run/hold/run-stop-notify.ts +183 -0
- package/scripts/run/launch-priority.ts +32 -0
- package/scripts/run/merge/run-merge-auth.ts +31 -0
- package/scripts/run/merge/run-merge-cli.ts +72 -107
- package/scripts/run/merge/run-merge-close.ts +74 -0
- package/scripts/run/merge/run-merge-collect.ts +6 -13
- package/scripts/run/merge/run-merge-driver.ts +71 -0
- package/scripts/run/merge/run-merge-main.ts +12 -0
- package/scripts/run/merge/run-merge-outcome.ts +23 -0
- package/scripts/run/merge/run-merge-restart.ts +39 -0
- package/scripts/run/merge/run-merge-ship.ts +20 -4
- package/scripts/run/merge/run-merge-signals.ts +123 -0
- package/scripts/run/merge/run-merge-steps.ts +128 -83
- package/scripts/run/merge/run-merge.ts +53 -40
- package/scripts/run/park/run-park-cli.ts +91 -0
- package/scripts/run/park/run-park.ts +88 -0
- package/scripts/run/park/run-stalled.ts +68 -0
- package/scripts/run/pause/run-pause-cli.ts +73 -0
- package/scripts/run/pause/run-pause.ts +251 -0
- package/scripts/run/progress/run-progress-cli.ts +4 -12
- package/scripts/run/progress/run-progress-clock.ts +1 -1
- package/scripts/run/progress/run-progress-config.ts +6 -14
- package/scripts/run/progress/run-progress-main.ts +12 -0
- package/scripts/run/progress/run-progress.ts +1 -4
- package/scripts/run/review/run-review.ts +2 -1
- package/scripts/run/run-ending.ts +1 -0
- package/scripts/run/run-invocation.ts +5 -6
- package/scripts/run/run-liveness-cli.ts +6 -8
- package/scripts/run/run-liveness.ts +61 -30
- package/scripts/run/run-next.ts +1 -1
- package/scripts/run/run-parent-cut-hook.ts +2 -2
- package/scripts/run/run-poll-hook.ts +157 -0
- package/scripts/run/run-preflight.ts +18 -3
- package/scripts/run/run-prep-cli.ts +1 -10
- package/scripts/run/run-prep-locate.ts +7 -50
- package/scripts/run/run-prep-main.ts +12 -0
- package/scripts/run/run-prep.ts +6 -0
- package/scripts/run/run-report-cli.ts +101 -13
- package/scripts/run/run-report-handoff.ts +114 -0
- package/scripts/run/run-step-cli.ts +22 -15
- package/scripts/run/run-step-section.ts +85 -0
- package/scripts/run/run-step.ts +1 -1
- package/scripts/run/run-stranded-detect.ts +13 -0
- package/scripts/run/run-watcher-guard-cli.ts +1 -1
- package/scripts/run/run-watcher-guard.ts +1 -1
- package/scripts/run/ship/run-ship-args.ts +121 -0
- package/scripts/run/ship/run-ship-body-draft.ts +110 -0
- package/scripts/run/ship/run-ship-cli.ts +67 -151
- package/scripts/run/ship/run-ship-detach.ts +27 -7
- package/scripts/run/ship/run-ship-infra-retry.ts +59 -0
- package/scripts/run/ship/run-ship-next.ts +27 -3
- package/scripts/run/ship/run-ship-overlap.ts +232 -0
- package/scripts/run/ship/run-ship-place.ts +96 -0
- package/scripts/run/ship/run-ship-pre-detach-timed.ts +43 -0
- package/scripts/run/ship/run-ship-pre-detach.ts +102 -27
- package/scripts/run/ship/run-ship-preflight.ts +161 -30
- package/scripts/run/ship/run-ship-probe.ts +11 -3
- package/scripts/run/ship/run-ship-relaunch-cap.ts +70 -0
- package/scripts/run/ship/run-ship-removed-rows.ts +61 -0
- package/scripts/run/ship/run-ship-return.ts +123 -15
- package/scripts/run/ship/run-ship-review-steps.ts +105 -149
- package/scripts/run/ship/run-ship-review.ts +73 -6
- package/scripts/run/ship/run-ship-reviewer.ts +207 -0
- package/scripts/run/ship/run-ship-stage.ts +55 -6
- package/scripts/run/ship/run-ship-steps.ts +46 -15
- package/scripts/run/ship/run-ship-stop-cause.ts +135 -0
- package/scripts/run/ship/run-ship-stop-context.ts +206 -0
- package/scripts/run/ship/run-ship-stop-text.ts +11 -6
- package/scripts/run/ship/run-ship-sync.ts +57 -12
- package/scripts/run/ship/run-ship.ts +30 -2
- package/scripts/run/tidy/run-tidy-cli.ts +0 -4
- package/scripts/run/tidy/run-tidy-lanes.ts +3 -0
- package/scripts/run/tidy/run-tidy-main.ts +8 -0
- package/scripts/run/wake/run-wake-cli.ts +119 -100
- package/scripts/run/wake/run-wake-code.ts +83 -0
- package/scripts/run/wake/run-wake-driver.ts +19 -8
- package/scripts/run/wake/run-wake-loop.ts +34 -3
- package/scripts/run/wake/run-wake-main.ts +13 -0
- package/scripts/run/wake/run-wake-ports.ts +90 -0
- package/scripts/run/wake/run-wake-takeover.ts +66 -0
- package/scripts/run/wake/run-wake.ts +2 -1
- package/scripts/safe-chain/pack-hook.ts +2 -2
- package/scripts/safe-chain/preinstall-command.ts +2 -1
- package/scripts/safe-chain/project-config.ts +3 -9
- package/scripts/security/security-audit-main.ts +8 -0
- package/scripts/security/security-audit-provision-logic.ts +0 -11
- package/scripts/security/security-audit-provision-main.ts +12 -0
- package/scripts/security/security-audit-provision.ts +11 -26
- package/scripts/security/security-audit.ts +6 -7
- package/scripts/self-sync-guard/self-sync-guard-logic.ts +6 -13
- package/scripts/split/split-assess-cli.ts +2 -2
- package/scripts/split/split-assess.ts +15 -0
- package/scripts/split/split-measure.ts +65 -0
- package/scripts/sync/claude-settings-merge.ts +8 -15
- package/scripts/sync/directory-copy-guard.ts +4 -9
- package/scripts/sync/file-content.ts +78 -8
- package/scripts/sync/sync-ai-files.ts +3 -5
- package/scripts/sync/sync-configs.ts +11 -23
- package/scripts/sync/sync-hook-safety.ts +4 -10
- package/scripts/sync/sync-main.ts +11 -0
- package/scripts/sync/sync.ts +25 -37
- package/scripts/test/test-declared-changed.ts +2 -2
- package/scripts/test/test-declared.ts +1 -1
- package/scripts/test/test-e2e-guard.ts +55 -6
- package/scripts/test/test-e2e-stamp.ts +38 -0
- package/scripts/test/test-pinned-logic.ts +145 -0
- package/scripts/test/test-pinned-main.ts +78 -0
- package/scripts/test/test-pinned.ts +100 -0
- package/scripts/test/test-read-map.ts +264 -0
- package/scripts/test/test-read-recording.ts +91 -0
- package/scripts/test/test-read-trace.ts +148 -0
- package/scripts/test/test-red-main.ts +12 -0
- package/scripts/test/test-red.ts +12 -30
- package/scripts/test/test-related-main.ts +18 -0
- package/scripts/test/test-related-record.ts +119 -0
- package/scripts/test/test-related-scope.ts +229 -43
- package/scripts/test/test-related.ts +300 -22
- package/scripts/test/test-unit-guard-main.ts +15 -0
- package/scripts/test/test-unit-guard.ts +54 -21
- package/scripts/test/unit-count-file.ts +37 -0
- package/scripts/test/unit-run-marker.ts +162 -0
- package/scripts/test/unit-setup-files.ts +51 -0
- package/scripts/test/unit-worker-share.ts +71 -137
- package/scripts/test/whole-suite-files.ts +63 -0
- package/scripts/time-runtime/time-background.ts +20 -2
- package/scripts/time-runtime/time-bundles.ts +4 -3
- package/scripts/time-runtime/time-density-hook.ts +8 -6
- package/scripts/time-runtime/time-followup-stage.ts +1 -3
- package/scripts/time-runtime/time-format.ts +5 -28
- package/scripts/time-runtime/time-markers.ts +10 -1
- package/scripts/time-runtime/time-shell.ts +126 -14
- package/scripts/time-runtime/time-spans.ts +1 -0
- package/scripts/time-runtime/time-tool-call.ts +7 -0
- package/scripts/time-runtime/time-transcript-line.ts +49 -62
- package/scripts/uninstall/uninstall.ts +1 -1
- package/scripts/version/bump-version-main.ts +12 -0
- package/scripts/version/bump-version.ts +25 -25
- package/scripts/version/effective-upstream.ts +6 -12
- package/scripts/version/latest-corepack.ts +17 -32
- package/scripts/version/latest-if-required-cli.ts +93 -0
- package/scripts/version/latest-lane-guard-main.ts +8 -0
- package/scripts/version/latest-lane-guard.ts +0 -4
- package/scripts/version/latest-scope-cli.ts +0 -9
- package/scripts/version/latest-scope-main.ts +12 -0
- package/scripts/version/latest-update.ts +5 -5
- package/scripts/version/npm-registry.ts +44 -6
- package/scripts/version/publishable-range-check.ts +5 -16
- package/scripts/version/release-age.ts +1 -1
- package/scripts/version/release-hold.ts +1 -1
- package/scripts/version/release-window.ts +38 -0
- package/scripts/version/running-binary.ts +1 -1
- package/scripts/version/safe-chain-version-update.ts +3 -8
- package/scripts/version/version-targets.ts +6 -28
- package/templates/dependabot.yml +29 -0
- package/templates/gitignore +10 -3
- package/templates/pnpm-workspace.basic.yaml +1 -1
- package/templates/sonar-project.properties +3 -2
- package/templates/workflows/ci.yml +12 -4
- package/templates/workflows/github-release.yml +4 -0
- package/tsconfig.sonar.json +1 -1
- package/.ncurc.json +0 -3
- package/dist/hooks/batch-guard.js +0 -29
- package/dist/hooks/chunk-43ZHT22P.js +0 -3495
- package/dist/hooks/chunk-CDY4NFQG.js +0 -15
- package/dist/hooks/chunk-EUMACUK2.js +0 -2038
- package/dist/hooks/chunk-H5HVWYXK.js +0 -359
- package/dist/hooks/chunk-IIGFYXKC.js +0 -7104
- package/dist/hooks/chunk-IX6TTTI6.js +0 -95
- package/dist/hooks/chunk-J47HU5H5.js +0 -237
- package/dist/hooks/chunk-K4EOONYM.js +0 -45
- package/dist/hooks/chunk-K4LMBQC2.js +0 -68
- package/dist/hooks/chunk-SHGPANFB.js +0 -56
- package/dist/hooks/chunk-YHBZAJSV.js +0 -79
- package/dist/hooks/chunk-YYPI7SJZ.js +0 -131
- package/dist/hooks/duplicate-read-guard.js +0 -30
- package/dist/hooks/investigation-guard.js +0 -32
- package/scripts/backlog/backlog-stalled-cli.ts +0 -30
- package/scripts/cost-runtime/cost-format.ts +0 -29
- package/scripts/init/basic-path-migration.ts +0 -24
- package/scripts/issue/issue-backlinks-cli.ts +0 -93
- package/scripts/josh/josh-commands-guard.ts +0 -38
- package/scripts/lint/cross-file-recheck.ts +0 -155
- package/scripts/registry-migration/migrate-logic.ts +0 -237
- package/scripts/registry-migration/migrate.ts +0 -292
- package/scripts/registry-migration/user-npmrc.ts +0 -15
- package/scripts/rules/rule-guard.ts +0 -23
- package/scripts/rules/rule-registry-rows.ts +0 -282
- package/scripts/rules/rule-registry.ts +0 -109
- package/scripts/run/run-stranded-cli.ts +0 -27
|
@@ -1,13 +1,18 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { core_budget } from '#scripts/gate/core-budget'
|
|
2
|
+
import type { CommandEntry } from './josh-command-types'
|
|
2
3
|
import { BACKLOG_COMMANDS } from './josh-commands-backlog'
|
|
3
4
|
import { DOCUMENT_COMMANDS } from './josh-commands-document'
|
|
4
|
-
import {
|
|
5
|
+
import { EPIC_COMMANDS } from './josh-commands-epic'
|
|
5
6
|
import { ISSUE_COMMANDS } from './josh-commands-issue'
|
|
6
7
|
import { LANE_COMMANDS } from './josh-commands-lane'
|
|
8
|
+
import { REVIEW_COMMANDS } from './josh-commands-review'
|
|
7
9
|
import { RUN_COMMANDS } from './josh-commands-run'
|
|
10
|
+
import { SHIP_COMMANDS } from './josh-commands-ship'
|
|
8
11
|
import { SPLIT_COMMANDS } from './josh-commands-split'
|
|
9
12
|
|
|
10
|
-
const
|
|
13
|
+
const DIR = '--dir <path>'
|
|
14
|
+
const PATH_DIR = '--path <dir>'
|
|
15
|
+
const BARE = { arguments: '' }
|
|
11
16
|
|
|
12
17
|
/* eslint-disable @typescript-eslint/naming-convention */
|
|
13
18
|
const AI_COMMANDS: Record<string, CommandEntry> = {
|
|
@@ -18,133 +23,184 @@ const AI_COMMANDS: Record<string, CommandEntry> = {
|
|
|
18
23
|
'Rank package candidates by measured metrics so the Package-First tier decision is read, not judged',
|
|
19
24
|
category: 'AI tools',
|
|
20
25
|
reference: ['<keywords> [--size <n>]', 'automation', ['network']],
|
|
26
|
+
usage: {
|
|
27
|
+
examples: [{ arguments: '"date formatting" --size 5' }],
|
|
28
|
+
flags: [
|
|
29
|
+
{
|
|
30
|
+
names: ['--size <n>'],
|
|
31
|
+
description: 'how many candidates to fetch and rank (default 10).',
|
|
32
|
+
},
|
|
33
|
+
],
|
|
34
|
+
},
|
|
21
35
|
},
|
|
22
|
-
'stash:
|
|
23
|
-
script: 'scripts/git/stash/stash-
|
|
24
|
-
description: '
|
|
36
|
+
'stash:push': {
|
|
37
|
+
script: 'scripts/git/stash/stash-push-main.ts',
|
|
38
|
+
description: 'Stash the working tree, untracked files included, leaving the observation ledger',
|
|
25
39
|
category: 'AI tools',
|
|
26
40
|
reference: ['<message>', 'automation', ['git']],
|
|
41
|
+
usage: {
|
|
42
|
+
examples: [{ arguments: '"backlogrun: josh latest before lanes"' }],
|
|
43
|
+
flags: [
|
|
44
|
+
{
|
|
45
|
+
names: [DIR],
|
|
46
|
+
description: 'stashes that work tree (`git -C <path>`); without it the current checkout.',
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
},
|
|
27
50
|
},
|
|
28
|
-
|
|
29
|
-
script: 'scripts/
|
|
30
|
-
description: '
|
|
31
|
-
category: 'AI tools',
|
|
32
|
-
reference: ['<title> <issue...> [--ordered]', 'automation', ['network']],
|
|
33
|
-
},
|
|
34
|
-
'epic:next': {
|
|
35
|
-
script: 'scripts/epic/epic-next.ts',
|
|
36
|
-
description: "List an epic's runnable children, bundled per repository",
|
|
37
|
-
category: 'AI tools',
|
|
38
|
-
reference: ['<epic>... [--repo <owner/repo>] [--lanes]', 'automation', ['network']],
|
|
39
|
-
},
|
|
40
|
-
'epic:bundle': {
|
|
41
|
-
script: 'scripts/epic/epic-bundle-cli.ts',
|
|
42
|
-
description: 'Say whether a newly filed issue belongs with ones already in the backlog',
|
|
43
|
-
category: 'AI tools',
|
|
44
|
-
reference: ['<issue>', 'automation', ['network']],
|
|
45
|
-
},
|
|
46
|
-
'epic:audit': {
|
|
47
|
-
script: 'scripts/epic/epic-audit-cli.ts',
|
|
48
|
-
description: "Audit an epic's children against each other for contradictions",
|
|
49
|
-
category: 'AI tools',
|
|
50
|
-
reference: ['<epic>', 'automation', ['network']],
|
|
51
|
-
},
|
|
52
|
-
'epic:check': {
|
|
53
|
-
script: 'scripts/epic/epic-check.ts',
|
|
54
|
-
description: 'Check an epic issue against the tracking requirements',
|
|
55
|
-
category: 'AI tools',
|
|
56
|
-
reference: ['<epic>', 'automation', ['network']],
|
|
57
|
-
},
|
|
58
|
-
'auto-ok:next': {
|
|
59
|
-
script: 'scripts/auto-ok/auto-ok-cli.ts',
|
|
60
|
-
description: 'Print the next opted-in issue an unattended run may pick up outside an epic',
|
|
61
|
-
category: 'AI tools',
|
|
62
|
-
reference: ['[--exclude <n>[,<n>...]] [--label <name>]', 'automation', ['network']],
|
|
63
|
-
},
|
|
64
|
-
'auto-ok:judge': {
|
|
65
|
-
script: 'scripts/auto-ok/auto-ok-judge-cli.ts',
|
|
66
|
-
description:
|
|
67
|
-
'List the open issues backlogrun owes an auto-ok judgement, or record one (--apply / --decline)',
|
|
51
|
+
'stash:pop': {
|
|
52
|
+
script: 'scripts/git/stash/stash-pop-main.ts',
|
|
53
|
+
description: 'Pop the stash matching this message, not whichever a shared stack has on top',
|
|
68
54
|
category: 'AI tools',
|
|
69
|
-
reference: [
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
55
|
+
reference: ['<message>', 'automation', ['git']],
|
|
56
|
+
usage: {
|
|
57
|
+
examples: [
|
|
58
|
+
{ arguments: '"backlogrun: parked #2028"' },
|
|
59
|
+
{
|
|
60
|
+
arguments: '"backlogrun: josh latest before lanes" --dir "$dir"',
|
|
61
|
+
note: "into a lane's work tree",
|
|
62
|
+
},
|
|
63
|
+
],
|
|
64
|
+
flags: [
|
|
65
|
+
{
|
|
66
|
+
names: [DIR],
|
|
67
|
+
description:
|
|
68
|
+
'applies the pop in that work tree (`git -C <path>`); without it the pop lands in the current checkout. The stack is shared, so it reads the same either way.',
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
},
|
|
74
72
|
},
|
|
73
|
+
...EPIC_COMMANDS,
|
|
75
74
|
...BACKLOG_COMMANDS,
|
|
76
75
|
cost: {
|
|
77
|
-
script: 'scripts/cost-runtime/cost-
|
|
76
|
+
script: 'scripts/cost-runtime/cost-main.ts',
|
|
78
77
|
description:
|
|
79
78
|
'Say whether the next turn of a run crosses the context-cut threshold (--cut) or a given tokens-per-request figure (--over)',
|
|
80
79
|
category: 'AI tools',
|
|
81
80
|
reference: ['(--cut | --over <tokens-per-request>) [--path <dir>]', 'automation', ['none']],
|
|
81
|
+
usage: {
|
|
82
|
+
examples: [
|
|
83
|
+
{
|
|
84
|
+
arguments: '--cut',
|
|
85
|
+
note: 'compare billed input per request with the shared 135,000 context-cut threshold',
|
|
86
|
+
},
|
|
87
|
+
{ arguments: '--over <tokens>', note: 'compare with an explicit limit' },
|
|
88
|
+
{ arguments: `--cut ${PATH_DIR}`, note: 'Anthropic project or current OpenAI worktree' },
|
|
89
|
+
],
|
|
90
|
+
flags: [
|
|
91
|
+
{
|
|
92
|
+
names: [PATH_DIR],
|
|
93
|
+
description:
|
|
94
|
+
'selects another Anthropic project; OpenAI accepts only linked checkouts of the current project.',
|
|
95
|
+
},
|
|
96
|
+
],
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
'cost:audit': {
|
|
100
|
+
script: 'tools/cost-audit/cost-audit-main.ts',
|
|
101
|
+
description:
|
|
102
|
+
'Report AI cost over a period by session kind, tool category and guard, with cost per merge and regressions against the period before',
|
|
103
|
+
category: 'AI tools',
|
|
104
|
+
reference: ['[--period <days>]', 'maintainer', ['none']],
|
|
105
|
+
// Kit-only: it reads kit's own transcript store, like `josh retrospective`, which carries its
|
|
106
|
+
// summary line.
|
|
107
|
+
is_kit_only: true,
|
|
108
|
+
usage: {
|
|
109
|
+
examples: [
|
|
110
|
+
{ arguments: '', note: 'the last 7 days against the 7 before' },
|
|
111
|
+
{ arguments: '--period 30', note: 'the last 30 days against the 30 before' },
|
|
112
|
+
],
|
|
113
|
+
flags: [
|
|
114
|
+
{
|
|
115
|
+
names: ['--period <days>'],
|
|
116
|
+
description: 'the length of each period, a positive whole number of days (default 7).',
|
|
117
|
+
},
|
|
118
|
+
],
|
|
119
|
+
},
|
|
82
120
|
},
|
|
83
121
|
...DOCUMENT_COMMANDS,
|
|
84
122
|
time: {
|
|
85
|
-
script: '
|
|
123
|
+
script: 'tools/time/time-cli.ts',
|
|
86
124
|
description: "Report where a run's wall clock went: model wait, tool execution, human wait",
|
|
87
125
|
category: 'AI tools',
|
|
88
126
|
reference: ['[options]', 'maintainer', ['none']],
|
|
89
127
|
// Kit-only: it measures kit's own development runs and its report modules live under the
|
|
90
|
-
// undistributed `
|
|
128
|
+
// undistributed `tools/time/`, so it means nothing in a consumer project and is dropped from a
|
|
91
129
|
// consumer's help. The runtime analysis hooks and guards rely on stays
|
|
92
130
|
// distributed under `scripts/time-runtime/`.
|
|
93
131
|
is_kit_only: true,
|
|
132
|
+
usage: {
|
|
133
|
+
examples: [
|
|
134
|
+
{ arguments: '', note: 'the last run tree, wall clock and cost by role' },
|
|
135
|
+
{ arguments: '--run', note: 'the same run-tree scope, named explicitly' },
|
|
136
|
+
{ arguments: '--json', note: 'the same figures, machine-readable' },
|
|
137
|
+
{ arguments: PATH_DIR, note: "read another project's transcripts from this checkout" },
|
|
138
|
+
{
|
|
139
|
+
arguments: '--split-at 2026-10-16T21:33:19Z',
|
|
140
|
+
note: 'the same tree compared by role before and after a merge',
|
|
141
|
+
},
|
|
142
|
+
],
|
|
143
|
+
flags: [
|
|
144
|
+
{
|
|
145
|
+
names: ['--run'],
|
|
146
|
+
description:
|
|
147
|
+
'(default) the whole run tree, wall clock led beside dollars. It is the only scope; any flag not listed here is a usage error (exit 1). History: `docs/maintainers/josh-commands-run-rationale.md` → "`josh cost` and `josh time` lost their report scopes".',
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
names: [PATH_DIR],
|
|
151
|
+
description:
|
|
152
|
+
'aim the read at another project (absolute path); keeps the `cwd` behavior when absent.',
|
|
153
|
+
},
|
|
154
|
+
{ names: ['--json'], description: 'the run tree, machine-readable.' },
|
|
155
|
+
{
|
|
156
|
+
names: ['--split-at <ISO time>'],
|
|
157
|
+
description:
|
|
158
|
+
'add a before → after block by role (time share, cost share, req/session), each session on the side of its first request; an unparseable time is a usage error (exit 1).',
|
|
159
|
+
},
|
|
160
|
+
],
|
|
161
|
+
},
|
|
94
162
|
},
|
|
95
163
|
// The tool-calls-per-round-trip density the batching guard is measured on, aggregated across the
|
|
96
164
|
// recent lane sessions. Kit-only for the same reason `time` is: it reads
|
|
97
165
|
// kit's own lane transcripts and means nothing in a consumer project.
|
|
98
166
|
'time:density': {
|
|
99
|
-
script: '
|
|
167
|
+
script: 'tools/time/time-density-cli.ts',
|
|
100
168
|
description: 'Report tool calls per round trip across the recent lane sessions',
|
|
101
169
|
category: 'AI tools',
|
|
102
170
|
reference: ['[--lanes <n>] [--path <dir>]', 'maintainer', ['none']],
|
|
103
171
|
is_kit_only: true,
|
|
172
|
+
usage: {
|
|
173
|
+
examples: [{ arguments: '' }, { arguments: '--lanes 5', note: 'the five most recent lanes' }],
|
|
174
|
+
flags: [
|
|
175
|
+
{
|
|
176
|
+
names: ['--lanes <n>'],
|
|
177
|
+
description: 'average over a different count of recent qualifying lanes (default 10).',
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
names: [PATH_DIR],
|
|
181
|
+
description:
|
|
182
|
+
"read another project's lane transcripts, as `josh time` does. Run it from the main checkout — a lane reads only its own transcript.",
|
|
183
|
+
},
|
|
184
|
+
],
|
|
185
|
+
},
|
|
104
186
|
},
|
|
105
187
|
retrospective: {
|
|
106
|
-
script: '
|
|
188
|
+
script: 'tools/retrospective/retrospective-cli.ts',
|
|
107
189
|
description:
|
|
108
190
|
"Aggregate a finished run's cost, review findings, observation ledger and events into one digest",
|
|
109
191
|
category: 'AI tools',
|
|
110
192
|
reference: ['', 'maintainer', ['none']],
|
|
193
|
+
core_weight: core_budget.CORE_WEIGHTS.retrospective,
|
|
194
|
+
memory_mb: core_budget.MEMORY_MB.retrospective,
|
|
111
195
|
// Kit-only: it reads kit's own development run — the transcript store, the review ledger and the
|
|
112
196
|
// run event stream — so it means nothing in a consumer project and is dropped from a consumer's
|
|
113
197
|
// help, through the same declaration `josh time` uses for the same reason.
|
|
114
198
|
is_kit_only: true,
|
|
199
|
+
usage: {
|
|
200
|
+
examples: [{ arguments: '', note: 'the digest for the run this checkout carries' }],
|
|
201
|
+
},
|
|
115
202
|
},
|
|
116
|
-
|
|
117
|
-
script: 'scripts/review/review-brief-cli.ts',
|
|
118
|
-
description:
|
|
119
|
-
'Print the whole /code-review invocation: level, what the gate already proved, target (--level-only for the level alone)',
|
|
120
|
-
category: 'AI tools',
|
|
121
|
-
reference: ['[--round <1|2>] | --level-only [--staged] [--json]', 'automation', ['files']],
|
|
122
|
-
},
|
|
123
|
-
'review:attest': {
|
|
124
|
-
script: 'scripts/review/review-attest-cli.ts',
|
|
125
|
-
description: 'Record, or verify, which checkout a /code-review actually read',
|
|
126
|
-
category: 'AI tools',
|
|
127
|
-
reference: ['<nonce> | --check', 'automation', ['files']],
|
|
128
|
-
},
|
|
129
|
-
'review:round2': {
|
|
130
|
-
script: 'scripts/review/review-round2-cli.ts',
|
|
131
|
-
description: 'Say whether the second /code-review round is due, or may be skipped entirely',
|
|
132
|
-
category: 'AI tools',
|
|
133
|
-
reference: ['[--round-1-closed] [--json]', 'automation', ['none']],
|
|
134
|
-
},
|
|
135
|
-
delegate: {
|
|
136
|
-
script: 'scripts/delegation/delegation-cli.ts',
|
|
137
|
-
description: 'Say whether a run step may go to a cheaper execution tier',
|
|
138
|
-
category: 'AI tools',
|
|
139
|
-
reference: ['<step> | --list', 'automation', ['none']],
|
|
140
|
-
},
|
|
141
|
-
fanout: {
|
|
142
|
-
script: 'scripts/delegation/fanout-cli.ts',
|
|
143
|
-
description:
|
|
144
|
-
'Say whether proposed implementation units are file-disjoint, so they may run in parallel',
|
|
145
|
-
category: 'AI tools',
|
|
146
|
-
reference: ['<unit-files> <unit-files> [<unit-files> …]', 'automation', ['none']],
|
|
147
|
-
},
|
|
203
|
+
...REVIEW_COMMANDS,
|
|
148
204
|
...RUN_COMMANDS,
|
|
149
205
|
'repo:party': {
|
|
150
206
|
script: 'scripts/discovery/repo-party-cli.ts',
|
|
@@ -152,82 +208,23 @@ const AI_COMMANDS: Record<string, CommandEntry> = {
|
|
|
152
208
|
'Say whether a repository is first-party or third-party by owner equality (computed, not judged)',
|
|
153
209
|
category: 'AI tools',
|
|
154
210
|
reference: ['[<owner/repo>]', 'automation', ['none']],
|
|
211
|
+
usage: {
|
|
212
|
+
examples: [
|
|
213
|
+
{ arguments: 'joshuafolkken/kit', note: '→ first-party (in the kit session)' },
|
|
214
|
+
{ arguments: 'sveltejs/kit', note: '→ third-party' },
|
|
215
|
+
{ arguments: '', note: "no argument: the session's own repository" },
|
|
216
|
+
],
|
|
217
|
+
},
|
|
155
218
|
},
|
|
156
|
-
|
|
157
|
-
script: 'scripts/run/merge/run-merge-cli.ts',
|
|
158
|
-
description:
|
|
159
|
-
'Collapse a backlogrun merge event into one call: confirm the child, do the post-merge steps, offer the next child',
|
|
160
|
-
category: 'AI tools',
|
|
161
|
-
reference: [ISSUE_WITH_OPTIONS, 'automation', ['git', 'network']],
|
|
162
|
-
},
|
|
163
|
-
'run:review': {
|
|
164
|
-
script: 'scripts/run/review/run-review-cli.ts',
|
|
165
|
-
description:
|
|
166
|
-
'Start the gate in the background and print the /code-review brief in one call so the two overlap (--join to join the gate and check its verdict)',
|
|
167
|
-
category: 'AI tools',
|
|
168
|
-
reference: ['[--join]', 'automation', ['processes', 'files']],
|
|
169
|
-
},
|
|
170
|
-
// The post-merge sequence a run closed on, folded into one call: commit the
|
|
171
|
-
// observation ledger, read the completion citations and decide the release scope. `observations:flush`,
|
|
172
|
-
// `issue:cite` and `release:scope` were three round trips re-billing the run's full context each.
|
|
173
|
-
'run:tail': {
|
|
174
|
-
script: 'scripts/run/run-tail-cli.ts',
|
|
175
|
-
description:
|
|
176
|
-
'Close a run in one call: return to the default branch, commit the observation ledger, read the citations, decide the release scope',
|
|
177
|
-
category: 'AI tools',
|
|
178
|
-
reference: ['[<issue> ...]', 'automation', ['git', 'network']],
|
|
179
|
-
},
|
|
180
|
-
// The commit-to-report region a run ships a change on, folded into one call:
|
|
181
|
-
// the gate, the commit/push/PR (`git -y`), the CI-wait merge (`followup`) and the report bookkeeping
|
|
182
|
-
// (`run:tail`) were four round trips re-billing the run's full context each. It stops at the first
|
|
183
|
-
// failed step and names it, so the run reads only the step to fix.
|
|
184
|
-
ship: {
|
|
185
|
-
script: 'scripts/run/ship/run-ship-cli.ts',
|
|
186
|
-
description:
|
|
187
|
-
'Ship a change in one call: gate, commit/push/PR, the CI-wait merge and the report bookkeeping, stopping at the first failed step',
|
|
188
|
-
category: 'AI tools',
|
|
189
|
-
reference: [
|
|
190
|
-
'"<title> #<N>" [<follow-up-N> ...] [--cite <N>] [--review] [--detach] [--body-file <path>] [--notify-message <text> | --notify-message-file <path>] | --log <N>',
|
|
191
|
-
'automation',
|
|
192
|
-
['git', 'network'],
|
|
193
|
-
],
|
|
194
|
-
},
|
|
195
|
-
'run:event': {
|
|
196
|
-
script: 'scripts/run/event/run-event-cli.ts',
|
|
197
|
-
description:
|
|
198
|
-
'Append to, read or watch the run’s append-only event stream (--append <kind> <text> | --from|--follow <n> | --watch [<n>] | --last)',
|
|
199
|
-
category: 'AI tools',
|
|
200
|
-
reference: [
|
|
201
|
-
'--append <kind> <text> | --from|--follow <n> | --watch [<n>] | --last',
|
|
202
|
-
'automation',
|
|
203
|
-
['files'],
|
|
204
|
-
],
|
|
205
|
-
},
|
|
206
|
-
'run:report': {
|
|
207
|
-
script: 'scripts/run/run-report-cli.ts',
|
|
208
|
-
description:
|
|
209
|
-
'Generate the session-facing report for this invocation from the run’s event stream (merges, parks, cuts) with the release tail — the same text josh notify sends',
|
|
210
|
-
category: 'AI tools',
|
|
211
|
-
reference: ['', 'automation', ['files', 'network']],
|
|
212
|
-
},
|
|
219
|
+
...SHIP_COMMANDS,
|
|
213
220
|
...LANE_COMMANDS,
|
|
214
|
-
...GUARD_COMMANDS,
|
|
215
221
|
'run:watcher:guard': {
|
|
216
222
|
script: 'scripts/run/run-watcher-guard-cli.ts',
|
|
217
223
|
description:
|
|
218
224
|
'Guard: exits non-zero when lane children are in-flight but the watcher has not pinged recently',
|
|
219
225
|
category: 'AI tools',
|
|
220
226
|
reference: ['', 'automation', ['none']],
|
|
221
|
-
|
|
222
|
-
'run:stranded': {
|
|
223
|
-
script: 'scripts/run/run-stranded-cli.ts',
|
|
224
|
-
// `.env` rather than the ambient environment: the strand notification needs the Telegram
|
|
225
|
-
// credentials, the same reason `run:wake` carries these flags.
|
|
226
|
-
tsx_arguments: OPTIONAL_ENV_FILE_FLAGS,
|
|
227
|
-
description:
|
|
228
|
-
'Report whether the run is stranded — owner gone, no successor holding the budget, and no supervisor watching',
|
|
229
|
-
category: 'AI tools',
|
|
230
|
-
reference: ['', 'automation', ['processes', 'notifications']],
|
|
227
|
+
usage: { examples: [BARE] },
|
|
231
228
|
},
|
|
232
229
|
...SPLIT_COMMANDS,
|
|
233
230
|
'oracle:list': {
|
|
@@ -235,15 +232,30 @@ const AI_COMMANDS: Record<string, CommandEntry> = {
|
|
|
235
232
|
description: 'Print the decision oracles — commands that answer a rule question mechanically',
|
|
236
233
|
category: 'AI tools',
|
|
237
234
|
reference: ['', 'automation', ['none']],
|
|
235
|
+
usage: { examples: [{ arguments: '' }] },
|
|
238
236
|
},
|
|
239
237
|
eval: {
|
|
240
|
-
script: '
|
|
238
|
+
script: 'tools/eval/eval-run.ts',
|
|
241
239
|
description: 'Run the agent rule-compliance scenarios (real Claude sessions)',
|
|
242
240
|
category: 'AI tools',
|
|
243
241
|
reference: ['[scenario...]', 'maintainer', ['processes', 'network']],
|
|
244
242
|
// Kit-only: it replays kit's own distributed rules against real Claude sessions, so it means
|
|
245
243
|
// nothing in a consumer project and is dropped from a consumer's help.
|
|
246
244
|
is_kit_only: true,
|
|
245
|
+
usage: {
|
|
246
|
+
examples: [
|
|
247
|
+
{ arguments: '', note: 'every scenario' },
|
|
248
|
+
{ arguments: 'consult-not-execute', note: 'one scenario by name' },
|
|
249
|
+
],
|
|
250
|
+
flags: [
|
|
251
|
+
{ names: ['JOSH_EVAL_MODEL'], description: 'the model to run against (default `sonnet`).' },
|
|
252
|
+
{
|
|
253
|
+
names: ['JOSH_EVAL_CONCURRENCY'],
|
|
254
|
+
description:
|
|
255
|
+
'how many sessions run at once (default `5`); a non-positive-integer value is refused.',
|
|
256
|
+
},
|
|
257
|
+
],
|
|
258
|
+
},
|
|
247
259
|
},
|
|
248
260
|
}
|
|
249
261
|
/* eslint-enable @typescript-eslint/naming-convention */
|
|
@@ -1,4 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import type { CommandEntry } from './josh-command-types'
|
|
2
|
+
|
|
3
|
+
const EXCLUDE = '--exclude <N>'
|
|
4
|
+
const JUST_MERGED = 'skip the issue just merged'
|
|
5
|
+
const EXCLUDE_1630 = '--exclude 1630'
|
|
6
|
+
const BUDGET = '--answer candidates --started "$started" --active "$active"'
|
|
2
7
|
|
|
3
8
|
// The `backlog:*` command registry, split out of `josh-commands-ai.ts` so that file stays under its
|
|
4
9
|
// 300-code-line limit, exactly as `LANE_COMMANDS` and `SPLIT_COMMANDS` were for the same reason.
|
|
@@ -11,27 +16,48 @@ const BACKLOG_COMMANDS: Record<string, CommandEntry> = {
|
|
|
11
16
|
backlogrun: {
|
|
12
17
|
script: 'scripts/backlog/backlogrun-cli.ts',
|
|
13
18
|
description:
|
|
14
|
-
'Start a backlogrun in the background and show its board; with one already running, only show the board, or replace it when it is idle and the invocation differs; --stop stops it',
|
|
19
|
+
'Start a backlogrun in the background and show its board; with one already running, only show the board, or replace it when it is idle and the invocation differs; --stop stops it; --restart replaces its processes and keeps its record',
|
|
15
20
|
category: 'AI tools',
|
|
16
21
|
reference: [
|
|
17
|
-
'[<n>...] [--only] [--max <n>] [--idle <minutes>] [--agent claude|codex] | --stop',
|
|
22
|
+
'[<n>...] [--only] [--max <n>] [--idle <minutes>] [--agent claude|codex] | --stop | --restart',
|
|
18
23
|
'developer',
|
|
19
24
|
['files', 'network', 'processes'],
|
|
20
25
|
],
|
|
26
|
+
usage: {
|
|
27
|
+
examples: [
|
|
28
|
+
{ arguments: '', note: 'start in Claude, then show the board' },
|
|
29
|
+
{ arguments: '3437 --only', note: 'the arguments go to backlogrun as typed' },
|
|
30
|
+
{ arguments: '--agent codex', note: 'start in Codex' },
|
|
31
|
+
{ arguments: '--stop', note: 'stop the run in this repository' },
|
|
32
|
+
{ arguments: '--restart', note: "replace the run's processes, keeping its record" },
|
|
33
|
+
],
|
|
34
|
+
},
|
|
21
35
|
},
|
|
22
36
|
'backlog:next': {
|
|
23
|
-
script: 'scripts/backlog/backlog-next.ts',
|
|
37
|
+
script: 'scripts/backlog/backlog-next-main.ts',
|
|
24
38
|
description:
|
|
25
39
|
'Order the whole opted-in backlog: auto-ok issues and the descendants of auto-ok epics, transitively through nested epics',
|
|
26
40
|
category: 'AI tools',
|
|
27
41
|
reference: ['[--exclude <n>[,<n>...]] [--repo <owner/repo>]', 'automation', ['network']],
|
|
42
|
+
usage: {
|
|
43
|
+
examples: [{ arguments: '' }, { arguments: EXCLUDE_1630, note: JUST_MERGED }],
|
|
44
|
+
flags: [
|
|
45
|
+
{
|
|
46
|
+
names: [EXCLUDE],
|
|
47
|
+
description: 'drop issues from every bucket; comma-separated, repeatable.',
|
|
48
|
+
},
|
|
49
|
+
],
|
|
50
|
+
},
|
|
28
51
|
},
|
|
29
52
|
'backlog:offer': {
|
|
30
|
-
script: 'scripts/backlog/backlog-offer-
|
|
53
|
+
script: 'scripts/backlog/backlog-offer-main.ts',
|
|
31
54
|
description:
|
|
32
55
|
'Collapse a backlogrun loop-head event into one call: read backlog:next, ask backlog:budget, return the verdict and any issues to start',
|
|
33
56
|
category: 'AI tools',
|
|
34
57
|
reference: ['[options]', 'automation', ['files', 'network', 'processes']],
|
|
58
|
+
usage: {
|
|
59
|
+
examples: [{ arguments: '--started "$started" --active "$active" --running 2 --retries 1' }],
|
|
60
|
+
},
|
|
35
61
|
},
|
|
36
62
|
'backlog:drive': {
|
|
37
63
|
script: 'scripts/backlog/backlog-drive-cli.ts',
|
|
@@ -39,6 +65,9 @@ const BACKLOG_COMMANDS: Record<string, CommandEntry> = {
|
|
|
39
65
|
'Drive backlogrun through offer, launch and merge; restore this run’s lanes and report when complete',
|
|
40
66
|
category: 'AI tools',
|
|
41
67
|
reference: ['--owner <pid> [options]', 'automation', ['network']],
|
|
68
|
+
usage: {
|
|
69
|
+
examples: [{ arguments: '--owner "$PPID" [--max <n>] [--idle <minutes>] [--only]' }],
|
|
70
|
+
},
|
|
42
71
|
},
|
|
43
72
|
'backlog:plan': {
|
|
44
73
|
script: 'scripts/backlog/backlog-plan-cli.ts',
|
|
@@ -50,22 +79,59 @@ const BACKLOG_COMMANDS: Record<string, CommandEntry> = {
|
|
|
50
79
|
'automation',
|
|
51
80
|
['network'],
|
|
52
81
|
],
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
82
|
+
usage: {
|
|
83
|
+
examples: [
|
|
84
|
+
{ arguments: '' },
|
|
85
|
+
{ arguments: EXCLUDE_1630, note: 'after #1630 merged' },
|
|
86
|
+
{ arguments: '--waves', note: 'the run order, wave by wave' },
|
|
87
|
+
],
|
|
88
|
+
flags: [
|
|
89
|
+
{ names: [EXCLUDE], description: 'same exclusion as `backlog:next`.' },
|
|
90
|
+
{
|
|
91
|
+
names: ['--waves'],
|
|
92
|
+
description:
|
|
93
|
+
'print the order the run takes, wave by wave, assuming each wave merges before the next. Read-only.',
|
|
94
|
+
},
|
|
95
|
+
],
|
|
96
|
+
},
|
|
63
97
|
},
|
|
64
98
|
'backlog:budget': {
|
|
65
|
-
script: 'scripts/backlog/backlog-budget-
|
|
99
|
+
script: 'scripts/backlog/backlog-budget-main.ts',
|
|
66
100
|
description: 'Say whether a backlogrun may start more work, keep watching, or finish',
|
|
67
101
|
category: 'AI tools',
|
|
68
102
|
reference: ['[options]', 'automation', ['none']],
|
|
103
|
+
usage: {
|
|
104
|
+
examples: [
|
|
105
|
+
{ arguments: BUDGET },
|
|
106
|
+
{ arguments: '--answer exhausted --started "$started" --active "$active" --idle 60' },
|
|
107
|
+
{ arguments: `${BUDGET} --merged 3 --running 2 --max 5` },
|
|
108
|
+
],
|
|
109
|
+
flags: [
|
|
110
|
+
{
|
|
111
|
+
names: ['--answer <candidates|exhausted|blocked|parked|unreadable|untriaged>'],
|
|
112
|
+
description: "`backlog:next`'s answer, mapped.",
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
names: ['--started', '--active'],
|
|
116
|
+
description:
|
|
117
|
+
'when the invocation began / when it last had work (required unless the watch is off).',
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
names: ['--idle <minutes>'],
|
|
121
|
+
description:
|
|
122
|
+
'once nothing can proceed, keep polling this long, counted from `--active` (default 480, 8 hours; `--idle 0` turns the watch off).',
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
names: ['--max <count>'],
|
|
126
|
+
description:
|
|
127
|
+
'issues one invocation may take (default unlimited); `--merged` and `--running` count against it.',
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
names: ['--json'],
|
|
131
|
+
description: 'collapse verdict and reason into `{"budget": "<verdict>", "reason": "…"}`.',
|
|
132
|
+
},
|
|
133
|
+
],
|
|
134
|
+
},
|
|
69
135
|
},
|
|
70
136
|
}
|
|
71
137
|
/* eslint-enable @typescript-eslint/naming-convention */
|
|
@@ -11,6 +11,7 @@ const CLONE_COMMANDS: Record<string, CommandEntry> = {
|
|
|
11
11
|
'Count code duplication across files and first-party repositories, printing each clone as file:line pairs',
|
|
12
12
|
category: 'AI tools',
|
|
13
13
|
reference: ['', 'automation', ['files']],
|
|
14
|
+
usage: { examples: [{ arguments: '' }] },
|
|
14
15
|
},
|
|
15
16
|
}
|
|
16
17
|
/* eslint-enable @typescript-eslint/naming-convention */
|