@joshuafolkken/kit 1.1514.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 +5 -5
- package/.claude/skills/epic-commands/SKILL.md +26 -65
- package/.claude/skills/epic-commands/epic-bundle.md +3 -1
- package/.claude/skills/workflow-commands/SKILL.md +5 -5
- package/.claude/skills/workflow-commands/background-commands.md +5 -5
- package/.claude/skills/workflow-commands/backlogrun-child.md +10 -8
- package/.claude/skills/workflow-commands/backlogrun-handoff-report.md +7 -25
- package/.claude/skills/workflow-commands/backlogrun-lanes.md +17 -13
- package/.claude/skills/workflow-commands/backlogrun-park.md +14 -23
- package/.claude/skills/workflow-commands/backlogrun-progress.md +2 -2
- package/.claude/skills/workflow-commands/backlogrun-recovery.md +5 -5
- package/.claude/skills/workflow-commands/backlogrun-steps.md +10 -10
- package/.claude/skills/workflow-commands/backlogrun.md +1 -1
- package/.claude/skills/workflow-commands/chain-rule.md +13 -7
- package/.claude/skills/workflow-commands/delegation.md +6 -5
- package/.claude/skills/workflow-commands/entry-sequence.md +9 -9
- package/.claude/skills/workflow-commands/followup.md +9 -31
- package/.claude/skills/workflow-commands/fullrun-steps.md +36 -45
- package/.claude/skills/workflow-commands/fullrun.md +2 -2
- package/.claude/skills/workflow-commands/halfrun.md +17 -25
- package/.claude/skills/workflow-commands/issue-comments.md +16 -12
- package/.claude/skills/workflow-commands/issue-scout.md +2 -2
- package/.claude/skills/workflow-commands/kickoff.md +24 -23
- package/.claude/skills/workflow-commands/latest-gate.md +7 -12
- package/.claude/skills/workflow-commands/needs-human-review.md +9 -14
- package/.claude/skills/workflow-commands/observation-filing.md +4 -36
- package/.claude/skills/workflow-commands/observation-ledger.md +1 -1
- package/.claude/skills/workflow-commands/pre-gate-cut.md +13 -30
- package/.claude/skills/workflow-commands/prerequisite.md +10 -16
- package/.claude/skills/workflow-commands/progress-watcher.md +1 -1
- package/.claude/skills/workflow-commands/prrun.md +3 -7
- package/.claude/skills/workflow-commands/retrospective.md +1 -1
- package/.claude/skills/workflow-commands/split-assessment.md +13 -1
- package/.claude/skills/workflow-commands/working-tree-hold.md +9 -9
- package/.codex/hooks.json +5 -5
- package/.github/actions/setup-node/action.yml +9 -0
- 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 +120 -10
- package/.github/workflows/publish.yml +8 -1
- package/.github/workflows/sonar-qube.yml +1 -0
- package/.prettierignore +2 -0
- package/.vscode/tasks.json +1 -2
- package/CLAUDE.md +3 -7
- package/README.md +4 -2
- package/SECURITY.md +1 -1
- package/dist/CLAUDE.md +3 -7
- package/dist/commands/document-read-cli.js +882 -0
- package/dist/commands/{document-section-cli.js → document-section-main.js} +79 -37
- 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-TNUMY6NL.js → chunk-PT5R6UJD.js} +4193 -1900
- package/dist/hooks/chunk-TUIFS5E7.js +72 -0
- package/dist/hooks/{chunk-723HKZO5.js → chunk-VWWCFGWK.js} +1 -1
- package/dist/hooks/{chunk-APUO6U4J.js → chunk-WR2KQAYZ.js} +1843 -440
- package/dist/hooks/{chunk-O6GDRNJB.js → chunk-XGBNSWEI.js} +248 -46
- package/dist/hooks/chunk-YCDOIR3I.js +3456 -0
- package/dist/hooks/codex-hook-adapter.js +10 -22
- package/dist/hooks/format-edited.js +5 -6
- package/dist/hooks/inputs.json +443 -317
- package/dist/hooks/pretool-guard.js +7 -25
- package/dist/hooks/session-lang.js +44 -51
- package/dist/hooks/stop-guard.js +7716 -2187
- package/dist/josh.js +6002 -3583
- 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 +3 -1
- package/package.json +10 -48
- package/pnpm-workspace.yaml +4 -2
- package/prompts/coding-standards.md +1 -1
- package/prompts/collaboration-workflow/file-edits.md +1 -7
- package/prompts/collaboration-workflow/issue-citation.md +1 -1
- package/prompts/collaboration-workflow/issue-template.md +33 -16
- package/prompts/collaboration-workflow/lane-instructions.md +1 -2
- package/prompts/collaboration-workflow/measurement.md +37 -0
- package/prompts/collaboration-workflow/operating-rules.md +4 -6
- package/prompts/collaboration-workflow/output-bounds.md +2 -7
- package/prompts/collaboration-workflow/plan-comment.md +3 -42
- package/prompts/collaboration-workflow/principles.md +5 -0
- package/prompts/collaboration-workflow/report-format.md +31 -60
- package/prompts/collaboration-workflow/residency.md +2 -2
- package/prompts/collaboration-workflow/shell-body.md +6 -16
- package/prompts/collaboration-workflow/turn-batching.md +0 -2
- package/prompts/collaboration-workflow/upstream-interrupt.md +14 -4
- package/prompts/collaboration-workflow/wip-cap.md +1 -1
- package/prompts/collaboration-workflow.md +3 -7
- package/prompts/refactoring.md +1 -1
- package/prompts/review-rubric.md +1 -2
- package/prompts/review.md +41 -21
- package/prompts/testing-guide.md +8 -43
- package/scripts/agent/agent-event.ts +15 -15
- package/scripts/agent/agent-exit-record.ts +13 -1
- package/scripts/agent/api-auth.ts +41 -0
- package/scripts/agent/api-outage.ts +1 -1
- 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 +2 -3
- 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 +53 -6
- 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 +30 -7
- 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 +52 -39
- 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 +112 -30
- 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 +0 -8
- package/scripts/delegation/investigation-guard.ts +0 -8
- package/scripts/delegation/investigation-reads.ts +3 -4
- 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 +8 -6
- package/scripts/document/document-scan.ts +1 -1
- package/scripts/document/document-section-cli.ts +0 -8
- package/scripts/document/document-section-main.ts +12 -0
- package/scripts/epic/epic-audit-cli.ts +12 -6
- package/scripts/epic/epic-bundle-apply.ts +137 -0
- package/scripts/epic/epic-bundle-cli.ts +32 -121
- package/scripts/epic/epic-bundle-format.ts +116 -0
- package/scripts/epic/epic-bundle-main.ts +17 -0
- 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 +19 -66
- 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 +39 -95
- package/scripts/gate/check-reuse.ts +33 -54
- 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 +80 -98
- package/scripts/gate/core-wait-record.ts +48 -0
- package/scripts/gate/core-wait.ts +37 -5
- package/scripts/gate/core-weights.ts +86 -0
- package/scripts/gate/free-cores.ts +27 -4
- package/scripts/gate/gate-ledger.ts +32 -4
- package/scripts/gate/gate-plan.ts +41 -34
- package/scripts/gate/gate-report.ts +14 -2
- package/scripts/gate/gate-run-steps.ts +53 -8
- package/scripts/gate/gate-skip.ts +12 -2
- package/scripts/gate/gate-steps.ts +12 -1
- package/scripts/gate/input-fingerprint.ts +42 -0
- package/scripts/gate/machine-capacity.ts +65 -31
- package/scripts/gate/moved-paths.ts +67 -0
- 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 +27 -24
- 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-write.ts +67 -29
- 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/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 +2 -2
- package/scripts/git/main-merge.ts +25 -9
- 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 +0 -8
- 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 +30 -3
- package/scripts/hooks/pre-push-unit.ts +4 -2
- package/scripts/hooks/pretool-guard-cli.ts +1 -8
- package/scripts/hooks/pretool-guard.ts +32 -19
- package/scripts/hooks/reserved-run.ts +67 -9
- package/scripts/hooks/run-hook.sh +13 -4
- package/scripts/hooks/shell-rules-notice.ts +37 -0
- package/scripts/hooks/stop-actions.ts +2 -21
- package/scripts/hooks/stop-guard.ts +13 -9
- package/scripts/init/hook-command-rewrite.ts +19 -5
- package/scripts/init/hook-launch.ts +15 -17
- 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 +1 -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 +0 -9
- package/scripts/issue/issue-cite-main.ts +12 -0
- package/scripts/issue/issue-classification.ts +12 -7
- 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 +2 -10
- 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 +0 -11
- 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/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 +15 -43
- package/scripts/josh/file-map-stamp.ts +49 -16
- package/scripts/josh/hook-decision.ts +32 -20
- package/scripts/josh/josh-command-map.ts +4 -1
- package/scripts/josh/josh-command-types.ts +12 -6
- package/scripts/josh/josh-commands-agent-hooks.ts +83 -0
- package/scripts/josh/josh-commands-ai.ts +157 -158
- 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 +25 -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 +103 -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 +144 -6
- package/scripts/josh/josh-logic.ts +6 -13
- package/scripts/josh/package-directory.ts +2 -4
- 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 +14 -23
- package/scripts/lane/lane-check-stats.ts +62 -21
- package/scripts/lane/lane-child-invocation.ts +8 -0
- 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 +24 -3
- package/scripts/lane/lane-gap-stats.ts +156 -0
- package/scripts/lane/lane-handoff.ts +69 -1
- package/scripts/lane/lane-held-stats.ts +129 -0
- package/scripts/lane/lane-install.ts +4 -11
- 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 +92 -123
- package/scripts/lane/lane-limit-cli.ts +12 -1
- package/scripts/lane/lane-measure-cli.ts +57 -11
- 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-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 +24 -3
- package/scripts/lane/lane-residents.ts +162 -0
- package/scripts/lane/lane-restart.ts +22 -2
- 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 +19 -5
- package/scripts/lane/lane-session-broker.ts +102 -21
- 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 +5 -4
- package/scripts/lane/lane-withdraw.ts +50 -49
- 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 +11 -2
- 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 +62 -30
- package/scripts/lint/lint-related-scope.ts +30 -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 +2 -6
- 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 +2 -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.ts +1 -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 +81 -15
- 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 +8 -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 +80 -2
- 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 +7 -0
- package/scripts/rules/git-argv.ts +72 -14
- package/scripts/rules/git-force.ts +12 -2
- package/scripts/rules/guard-remedy.ts +4 -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 +9 -1
- 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/oracle-consulted.ts +10 -0
- package/scripts/rules/oracle-firing.ts +1 -0
- package/scripts/rules/permission-guards.ts +3 -0
- package/scripts/rules/piped-verification.ts +1 -1
- 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 +9 -28
- package/scripts/rules/rule-value-cache.ts +4 -9
- package/scripts/rules/rule-value-cli.ts +51 -32
- package/scripts/rules/rule-value.ts +1 -1
- package/scripts/rules/shell-segments.ts +35 -0
- package/scripts/rules/stop-rule-rows.ts +64 -0
- package/scripts/rules/stop-rules.ts +3 -4
- 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 -32
- 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 +118 -38
- package/scripts/run/board/run-board-header.ts +82 -20
- 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 +116 -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 +239 -60
- 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 +151 -27
- package/scripts/run/board/run-board-reason.ts +235 -51
- 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 -48
- 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 +104 -20
- package/scripts/run/board/run-board-render.ts +207 -265
- package/scripts/run/board/run-board-roots.ts +54 -0
- package/scripts/run/board/run-board-row-yield.ts +9 -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 +22 -33
- package/scripts/run/board/run-board-status.ts +147 -71
- package/scripts/run/board/run-board-thanks-read.ts +2 -2
- package/scripts/run/board/run-board-tick.ts +122 -107
- 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-handoff.ts +2 -2
- 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 +6 -10
- package/scripts/run/event/run-event-scope.ts +2 -2
- package/scripts/run/event/run-event-stream-emit.ts +82 -22
- package/scripts/run/event/run-event-stream.ts +34 -8
- 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-stop-notify.ts +183 -0
- package/scripts/run/merge/run-merge-auth.ts +31 -0
- package/scripts/run/merge/run-merge-cli.ts +62 -48
- 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 +33 -9
- package/scripts/run/merge/run-merge-steps.ts +120 -85
- package/scripts/run/merge/run-merge.ts +38 -37
- 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 +60 -29
- package/scripts/run/run-next.ts +1 -1
- package/scripts/run/run-parent-cut-hook.ts +2 -2
- 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.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 +63 -140
- package/scripts/run/ship/run-ship-detach.ts +19 -8
- package/scripts/run/ship/run-ship-infra-retry.ts +59 -0
- package/scripts/run/ship/run-ship-next.ts +18 -2
- package/scripts/run/ship/run-ship-overlap.ts +42 -5
- 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 +81 -24
- package/scripts/run/ship/run-ship-preflight.ts +137 -32
- 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 +107 -23
- package/scripts/run/ship/run-ship-review-steps.ts +105 -151
- 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-text.ts +11 -6
- package/scripts/run/ship/run-ship-sync.ts +43 -6
- 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 +25 -1
- 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 +42 -24
- 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 +61 -149
- 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 +97 -10
- 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 +4 -1
- 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-4KKD2UTK.js +0 -66
- package/dist/hooks/chunk-6TS2JD6D.js +0 -237
- package/dist/hooks/chunk-7DSBJVFH.js +0 -50
- package/dist/hooks/chunk-A65Y4YOR.js +0 -79
- package/dist/hooks/chunk-CDY4NFQG.js +0 -15
- package/dist/hooks/chunk-EFXE6C37.js +0 -81
- package/dist/hooks/chunk-GP4IEC4O.js +0 -20
- package/dist/hooks/chunk-JP45SOCJ.js +0 -56
- package/dist/hooks/chunk-LAOV7NLM.js +0 -45
- package/dist/hooks/chunk-M4HGZV7U.js +0 -83
- package/dist/hooks/chunk-PF2NZL2A.js +0 -131
- package/dist/hooks/chunk-PTICX4OL.js +0 -358
- package/dist/hooks/chunk-RT27QRJW.js +0 -6247
- package/dist/hooks/chunk-SYOTDYCI.js +0 -3533
- package/dist/hooks/chunk-UPUZF3AN.js +0 -279
- package/dist/hooks/chunk-WK6SMBIC.js +0 -3180
- package/dist/hooks/duplicate-read-guard.js +0 -30
- package/dist/hooks/investigation-guard.js +0 -29
- 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/josh/josh-usage-automation.ts +0 -121
- package/scripts/josh/josh-usage-backlog.ts +0 -180
- package/scripts/josh/josh-usage-developer.ts +0 -230
- package/scripts/josh/josh-usage-hooks.ts +0 -38
- package/scripts/josh/josh-usage-issue.ts +0 -205
- package/scripts/josh/josh-usage-review.ts +0 -101
- package/scripts/josh/josh-usage-run.ts +0 -252
- package/scripts/josh/josh-usage-session.ts +0 -238
- package/scripts/josh/josh-usage-workflow.ts +0 -212
- 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 -292
- package/scripts/rules/rule-registry.ts +0 -112
- package/scripts/run/run-stranded-cli.ts +0 -27
|
@@ -1,230 +0,0 @@
|
|
|
1
|
-
import { ports } from '#ports'
|
|
2
|
-
import type { CommandUsage } from './josh-command-types'
|
|
3
|
-
|
|
4
|
-
// The usage of the commands `docs/josh-commands.md` documents, keyed by command name. The page's
|
|
5
|
-
// usage blocks are generated from this table and `josh help <command>` prints it, so an example or a
|
|
6
|
-
// flag is written once, here (#3932).
|
|
7
|
-
// The unseeded ports are read from `ports/index.js`, their one definition (#818).
|
|
8
|
-
const UNSEEDED: Readonly<Record<string, string | undefined>> = {}
|
|
9
|
-
const NARROWED = { arguments: 'scripts/thing.ts', note: 'narrow by the given files instead' }
|
|
10
|
-
|
|
11
|
-
/* eslint-disable @typescript-eslint/naming-convention */
|
|
12
|
-
const DEVELOPER_USAGE: Readonly<Record<string, CommandUsage>> = {
|
|
13
|
-
gate: {
|
|
14
|
-
examples: [
|
|
15
|
-
{ arguments: '' },
|
|
16
|
-
{ arguments: '--verbose', note: "every check's output, passing ones included" },
|
|
17
|
-
{ arguments: '--force', note: 're-run even on a tree already recorded green' },
|
|
18
|
-
{ arguments: '--no-unit', note: 'the static checks only (CI only)' },
|
|
19
|
-
],
|
|
20
|
-
},
|
|
21
|
-
lint: { examples: [{ arguments: '' }] },
|
|
22
|
-
'lint:related': { examples: [{ arguments: '' }, NARROWED] },
|
|
23
|
-
lines: {
|
|
24
|
-
examples: [{ arguments: 'scripts/hooks/format-edited-file.ts scripts/josh/josh-logic.ts' }],
|
|
25
|
-
},
|
|
26
|
-
bytes: {
|
|
27
|
-
examples: [
|
|
28
|
-
{ arguments: 'docs/josh-commands.md', note: 'one document' },
|
|
29
|
-
{ arguments: '', note: 'scan: every budgeted document near its ceiling' },
|
|
30
|
-
],
|
|
31
|
-
},
|
|
32
|
-
metrics: {
|
|
33
|
-
examples: [
|
|
34
|
-
{ arguments: '', note: "print the totals and check them against the merge-base's" },
|
|
35
|
-
{ arguments: '--accept --reason "<why>"', note: "record this branch's growth and why" },
|
|
36
|
-
],
|
|
37
|
-
},
|
|
38
|
-
format: { examples: [{ arguments: '' }] },
|
|
39
|
-
'cspell:dot': { examples: [{ arguments: '', note: 'includes dotfiles' }] },
|
|
40
|
-
behavior: { examples: [{ arguments: '' }] },
|
|
41
|
-
'exports:unused': { examples: [{ arguments: '' }] },
|
|
42
|
-
'test:unit': { examples: [{ arguments: '' }] },
|
|
43
|
-
'test:related': {
|
|
44
|
-
examples: [
|
|
45
|
-
{ arguments: '' },
|
|
46
|
-
NARROWED,
|
|
47
|
-
{ arguments: '--silent', note: 'flags are forwarded to vitest' },
|
|
48
|
-
],
|
|
49
|
-
},
|
|
50
|
-
'test:declared': {
|
|
51
|
-
examples: [
|
|
52
|
-
{ arguments: '' },
|
|
53
|
-
{ arguments: '--match', note: 'check Step 0 declarations on stdin' },
|
|
54
|
-
{ arguments: '--help', note: 'print usage, including the --match stdin form' },
|
|
55
|
-
],
|
|
56
|
-
},
|
|
57
|
-
'test:e2e': { examples: [{ arguments: '' }] },
|
|
58
|
-
test: { examples: [{ arguments: '' }] },
|
|
59
|
-
check: { examples: [{ arguments: '' }] },
|
|
60
|
-
port: {
|
|
61
|
-
examples: [
|
|
62
|
-
{
|
|
63
|
-
arguments: 'dev',
|
|
64
|
-
note: `${String(ports.resolve_development_port(UNSEEDED))} with no seed set`,
|
|
65
|
-
},
|
|
66
|
-
{
|
|
67
|
-
arguments: 'preview',
|
|
68
|
-
note: `${String(ports.resolve_preview_port(UNSEEDED))} with no seed set`,
|
|
69
|
-
},
|
|
70
|
-
],
|
|
71
|
-
},
|
|
72
|
-
profile: { examples: [{ arguments: '' }] },
|
|
73
|
-
init: {
|
|
74
|
-
examples: [
|
|
75
|
-
{
|
|
76
|
-
arguments: '',
|
|
77
|
-
note: 'create/merge config files, install and format (--no-install skips both, --dry-run only prints the plan)',
|
|
78
|
-
},
|
|
79
|
-
],
|
|
80
|
-
},
|
|
81
|
-
'registry:migrate': { examples: [{ arguments: '' }] },
|
|
82
|
-
sync: { examples: [{ arguments: '', note: 'overwrite managed files' }] },
|
|
83
|
-
uninstall: {
|
|
84
|
-
examples: [
|
|
85
|
-
{ arguments: '', note: 'show the plan, then ask' },
|
|
86
|
-
{ arguments: '--yes', note: 'remove without asking' },
|
|
87
|
-
],
|
|
88
|
-
},
|
|
89
|
-
adopt: {
|
|
90
|
-
examples: [
|
|
91
|
-
{ arguments: '' },
|
|
92
|
-
{ arguments: '--dry-run', note: 'report the steps without touching anything' },
|
|
93
|
-
],
|
|
94
|
-
flags: [{ names: ['--dry-run'], description: 'report the plan without writing.' }],
|
|
95
|
-
},
|
|
96
|
-
git: {
|
|
97
|
-
examples: [
|
|
98
|
-
{ arguments: '', note: 'interactive' },
|
|
99
|
-
{ arguments: '-y', note: 'unattended (no TTY required)' },
|
|
100
|
-
{ arguments: '-y "title"', note: 'set commit message prefix' },
|
|
101
|
-
{ arguments: '-y "<title> #<N>"', note: 'follow-up commit on the same branch' },
|
|
102
|
-
{
|
|
103
|
-
arguments: '-y --skip-commit --skip-push',
|
|
104
|
-
note: 'open the PR without committing/pushing',
|
|
105
|
-
},
|
|
106
|
-
],
|
|
107
|
-
flags: [
|
|
108
|
-
{
|
|
109
|
-
names: ['-y', '--yes'],
|
|
110
|
-
description: 'run non-interactively; works without a TTY (agent or CI shell).',
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
names: ['--skip-commit', '--skip-push'],
|
|
114
|
-
description: 'recover/open a PR without a new commit or push.',
|
|
115
|
-
},
|
|
116
|
-
],
|
|
117
|
-
},
|
|
118
|
-
pr: { examples: [{ arguments: '', note: 'open the PR for the current <N>-<slug> branch' }] },
|
|
119
|
-
'review:findings': { examples: [{ arguments: '' }] },
|
|
120
|
-
'main:sync': { examples: [{ arguments: '' }] },
|
|
121
|
-
'main:merge': { examples: [{ arguments: '' }] },
|
|
122
|
-
version: {
|
|
123
|
-
examples: [
|
|
124
|
-
{ arguments: '' },
|
|
125
|
-
{
|
|
126
|
-
arguments: '--upgrade',
|
|
127
|
-
note: 'upgrade global + project to latest, then re-run fix-gh-packages',
|
|
128
|
-
},
|
|
129
|
-
],
|
|
130
|
-
flags: [
|
|
131
|
-
{
|
|
132
|
-
names: ['--upgrade'],
|
|
133
|
-
description:
|
|
134
|
-
'upgrade both the global install (`pnpm add -g`) and the project devDependency (`pnpm add -D` + `fix-gh-packages`); already-current or not-installed targets are skipped.',
|
|
135
|
-
},
|
|
136
|
-
],
|
|
137
|
-
},
|
|
138
|
-
ranges: { examples: [{ arguments: '' }] },
|
|
139
|
-
doctor: {
|
|
140
|
-
examples: [
|
|
141
|
-
{ arguments: '', note: 'diagnose only' },
|
|
142
|
-
{ arguments: '--fix', note: 'reclaim the global josh by removing a stale kit shim' },
|
|
143
|
-
{ arguments: '--ports', note: 'also print the per-repository port-seed table' },
|
|
144
|
-
],
|
|
145
|
-
flags: [
|
|
146
|
-
{
|
|
147
|
-
names: ['--fix'],
|
|
148
|
-
description:
|
|
149
|
-
'remove a shadowing binary **only if it is a kit shim** (its body references `@joshuafolkken/kit` or the removed `install-bin` script); any other binary is left and reported for manual review. Also the one-shot recovery for an old project that re-created the global shim.',
|
|
150
|
-
},
|
|
151
|
-
{ names: ['--ports'], description: 'additionally print the port-seed table (see below).' },
|
|
152
|
-
],
|
|
153
|
-
},
|
|
154
|
-
audit: { examples: [{ arguments: '' }] },
|
|
155
|
-
overrides: {
|
|
156
|
-
examples: [
|
|
157
|
-
{ arguments: '', note: 'verify overrides unchanged' },
|
|
158
|
-
{ arguments: '--save', note: 'snapshot current merged overrides' },
|
|
159
|
-
],
|
|
160
|
-
flags: [
|
|
161
|
-
{
|
|
162
|
-
names: ['--save'],
|
|
163
|
-
description:
|
|
164
|
-
'write the current merged overrides to `.overrides-snapshot.json` (gitignored); later runs compare against it and exit non-zero on any add, removal, or change.',
|
|
165
|
-
},
|
|
166
|
-
],
|
|
167
|
-
},
|
|
168
|
-
backlogrun: {
|
|
169
|
-
examples: [
|
|
170
|
-
{ arguments: '', note: 'start in Claude, then show the board' },
|
|
171
|
-
{ arguments: '3437 --only', note: 'the arguments go to backlogrun as typed' },
|
|
172
|
-
{ arguments: '--agent codex', note: 'start in Codex' },
|
|
173
|
-
{ arguments: '--stop', note: 'stop the run in this repository' },
|
|
174
|
-
],
|
|
175
|
-
},
|
|
176
|
-
'lane:limit': {
|
|
177
|
-
examples: [
|
|
178
|
-
{ arguments: '8', note: "raise or lower the live run's limit to 8" },
|
|
179
|
-
{ arguments: '', note: 'print the limit, the lanes in use and the free lanes' },
|
|
180
|
-
{ arguments: '--reset', note: 'clear the override; JOSH_LANE_LIMIT applies again' },
|
|
181
|
-
],
|
|
182
|
-
},
|
|
183
|
-
'lane:withdraw': {
|
|
184
|
-
examples: [{ arguments: '3769 --reason "folded into a broader issue"' }],
|
|
185
|
-
},
|
|
186
|
-
'test:red': { examples: [{ arguments: '', note: 'red, green, no-test or test-only' }] },
|
|
187
|
-
start: {
|
|
188
|
-
examples: [
|
|
189
|
-
{ arguments: '', note: 'asks for the profile and the repository' },
|
|
190
|
-
{
|
|
191
|
-
arguments: '--yes --github --profile basic',
|
|
192
|
-
note: 'unattended, including the GitHub repository',
|
|
193
|
-
},
|
|
194
|
-
],
|
|
195
|
-
flags: [
|
|
196
|
-
{ names: ['--profile basic|full'], description: 'the profile, without asking.' },
|
|
197
|
-
{ names: ['--yes'], description: 'take the defaults — not consent to write to GitHub.' },
|
|
198
|
-
{ names: ['--github'], description: 'create the GitHub repository and push `main`.' },
|
|
199
|
-
{ names: ['--public'], description: 'create the repository public instead of private.' },
|
|
200
|
-
{
|
|
201
|
-
names: ['--init-command "<command>"'],
|
|
202
|
-
description: 'run this setup command in place of `josh init`.',
|
|
203
|
-
},
|
|
204
|
-
{
|
|
205
|
-
names: ['--push-preflight-command "<command>"'],
|
|
206
|
-
description:
|
|
207
|
-
'a check run before the first step when the plan pushes; a failure stops the run before it writes anything.',
|
|
208
|
-
},
|
|
209
|
-
{ names: ['--dry-run'], description: 'print the plan and change nothing.' },
|
|
210
|
-
],
|
|
211
|
-
},
|
|
212
|
-
latest: { examples: [{ arguments: '', note: 'full update (update + audit + pnpm)' }] },
|
|
213
|
-
'latest:corepack': { examples: [{ arguments: '', note: 'update pnpm only' }] },
|
|
214
|
-
'latest:update': { examples: [{ arguments: '', note: 'update dependencies only' }] },
|
|
215
|
-
'lane:restart': {
|
|
216
|
-
examples: [{ arguments: '3769', note: "prints the fresh child's pid" }],
|
|
217
|
-
},
|
|
218
|
-
'rule:value': {
|
|
219
|
-
examples: [
|
|
220
|
-
{ arguments: '' },
|
|
221
|
-
{
|
|
222
|
-
arguments: '--refresh',
|
|
223
|
-
note: 'write the reading to the loop-head cache instead of stdout',
|
|
224
|
-
},
|
|
225
|
-
],
|
|
226
|
-
},
|
|
227
|
-
}
|
|
228
|
-
/* eslint-enable @typescript-eslint/naming-convention */
|
|
229
|
-
|
|
230
|
-
export { DEVELOPER_USAGE }
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import type { CommandUsage } from './josh-command-types'
|
|
2
|
-
|
|
3
|
-
// The usage of the Claude Code and Codex hook commands `docs/josh-commands-automation.md` documents
|
|
4
|
-
// under "Development", keyed by command name. A hook is fed its payload as JSON on stdin, so each
|
|
5
|
-
// example names the event that runs it rather than an argument. The page's usage blocks are generated
|
|
6
|
-
// from this table and `josh help <command>` prints it, so an example is written once, here (#3981).
|
|
7
|
-
const PRE_TOOL_USE = 'run by the PreToolUse hook, the pending tool call as JSON on stdin'
|
|
8
|
-
const IN_PRETOOL_GUARD = 'run inside pretool:guard, not wired on its own'
|
|
9
|
-
|
|
10
|
-
/* eslint-disable @typescript-eslint/naming-convention */
|
|
11
|
-
const HOOK_USAGE: Readonly<Record<string, CommandUsage>> = {
|
|
12
|
-
'format:edited': {
|
|
13
|
-
examples: [
|
|
14
|
-
{ arguments: '', note: 'run by the PostToolUse hook, the tool call as JSON on stdin' },
|
|
15
|
-
],
|
|
16
|
-
},
|
|
17
|
-
'batch:guard': { examples: [{ arguments: '', note: IN_PRETOOL_GUARD }] },
|
|
18
|
-
'investigation:guard': { examples: [{ arguments: '', note: PRE_TOOL_USE }] },
|
|
19
|
-
'duplicate-read:guard': { examples: [{ arguments: '', note: IN_PRETOOL_GUARD }] },
|
|
20
|
-
'rule:guard': { examples: [{ arguments: '', note: PRE_TOOL_USE }] },
|
|
21
|
-
'rule:list': { examples: [{ arguments: '', note: 'print every trigger-delivered rule' }] },
|
|
22
|
-
'pretool:guard': { examples: [{ arguments: '', note: PRE_TOOL_USE }] },
|
|
23
|
-
'codex:hook-adapter': {
|
|
24
|
-
examples: [
|
|
25
|
-
{ arguments: 'pretool', note: 'a Codex PreToolUse payload on stdin' },
|
|
26
|
-
{ arguments: 'posttool', note: 'a Codex PostToolUse payload on stdin' },
|
|
27
|
-
],
|
|
28
|
-
},
|
|
29
|
-
'stop:guard': {
|
|
30
|
-
examples: [{ arguments: '', note: 'run by the Stop hook, the stop payload as JSON on stdin' }],
|
|
31
|
-
},
|
|
32
|
-
'session:lang': {
|
|
33
|
-
examples: [{ arguments: '', note: 'run by the UserPromptSubmit hook; `ja` prints nothing' }],
|
|
34
|
-
},
|
|
35
|
-
}
|
|
36
|
-
/* eslint-enable @typescript-eslint/naming-convention */
|
|
37
|
-
|
|
38
|
-
export { HOOK_USAGE }
|
|
@@ -1,205 +0,0 @@
|
|
|
1
|
-
import type { CommandUsage } from './josh-command-types'
|
|
2
|
-
|
|
3
|
-
// The usage of the issue commands `docs/josh-commands-backlog.md` documents under "Issues", keyed by
|
|
4
|
-
// command name. The page's usage blocks are generated from this table and `josh help <command>`
|
|
5
|
-
// prints it, so an example or a flag is written once, here (#3938). The epic and backlog commands are
|
|
6
|
-
// `josh-usage-backlog.ts`, the review and delegation commands `josh-usage-review.ts`.
|
|
7
|
-
const REPO = '--repo <owner/repo>'
|
|
8
|
-
const BODY_FILE = '--body-file <path>'
|
|
9
|
-
const CONCURRENT = 'several numbers, read concurrently'
|
|
10
|
-
const REPO_FLAG = {
|
|
11
|
-
names: [REPO],
|
|
12
|
-
description: 'read a child in another repository; applies to every number.',
|
|
13
|
-
}
|
|
14
|
-
const JSON_FLAG = { names: ['--json'], description: 'print the verdict and reason as JSON.' }
|
|
15
|
-
|
|
16
|
-
/* eslint-disable @typescript-eslint/naming-convention */
|
|
17
|
-
const ISSUE_USAGE: Readonly<Record<string, CommandUsage>> = {
|
|
18
|
-
'issue:read': {
|
|
19
|
-
examples: [{ arguments: '1715' }, { arguments: '1715 1567 1605', note: CONCURRENT }],
|
|
20
|
-
},
|
|
21
|
-
'issue:ack': { examples: [{ arguments: '3773' }] },
|
|
22
|
-
'issue:state': {
|
|
23
|
-
examples: [
|
|
24
|
-
{ arguments: '42', note: 'single-number shape' },
|
|
25
|
-
{ arguments: '42 43 44', note: 'each block headed by `issue:`' },
|
|
26
|
-
{ arguments: '42 43 --repo joshuafolkken/app-kit', note: 'a child in another repo' },
|
|
27
|
-
],
|
|
28
|
-
flags: [REPO_FLAG],
|
|
29
|
-
},
|
|
30
|
-
'issue:release': {
|
|
31
|
-
examples: [
|
|
32
|
-
{ arguments: '3360' },
|
|
33
|
-
{ arguments: '3716 --wait', note: 'blocked by the release issue instead' },
|
|
34
|
-
],
|
|
35
|
-
flags: [
|
|
36
|
-
{
|
|
37
|
-
names: ['--wait'],
|
|
38
|
-
description:
|
|
39
|
-
'the issue is blocked by the release issue instead, so `backlog:next` offers it again once the release ships (`.claude/skills/workflow-commands/prerequisite.md`).',
|
|
40
|
-
},
|
|
41
|
-
],
|
|
42
|
-
},
|
|
43
|
-
'issue:scout': {
|
|
44
|
-
examples: [
|
|
45
|
-
{ arguments: '"Stop the gate re-running after every edit"' },
|
|
46
|
-
{ arguments: '"<title>" --body "parent: #1246"' },
|
|
47
|
-
{ arguments: '"<title>" --body-file draft.md' },
|
|
48
|
-
],
|
|
49
|
-
flags: [
|
|
50
|
-
{
|
|
51
|
-
names: ['--body "<text>"'],
|
|
52
|
-
description:
|
|
53
|
-
'supply references (`#N`) in a `parent: #N` line or an acceptance-criteria section so the epic half has a number to work from; without one there (a background mention does not count) it prints `Epic: not asked`.',
|
|
54
|
-
},
|
|
55
|
-
{
|
|
56
|
-
names: [BODY_FILE],
|
|
57
|
-
description:
|
|
58
|
-
'pass the whole draft, including its purpose, requirements and acceptance criteria. A file that cannot be read ends the command rather than being treated as "no candidates".',
|
|
59
|
-
},
|
|
60
|
-
],
|
|
61
|
-
},
|
|
62
|
-
'issue:file': {
|
|
63
|
-
examples: [
|
|
64
|
-
{ arguments: '"<title>" --body-file body.md --depth 1' },
|
|
65
|
-
{
|
|
66
|
-
arguments:
|
|
67
|
-
'"<title>" --body-file body.md --depth 0 --route tier-a --repo joshuafolkken/kit',
|
|
68
|
-
},
|
|
69
|
-
{ arguments: '"<title>" --body-file body.md --depth 1 --distinct 2801,2795' },
|
|
70
|
-
],
|
|
71
|
-
flags: [
|
|
72
|
-
{ names: [BODY_FILE], description: 'the body. Required.' },
|
|
73
|
-
{
|
|
74
|
-
names: ['--depth <0|1|2>'],
|
|
75
|
-
description:
|
|
76
|
-
'the depth label. Required. The criteria are `.claude/skills/workflow-commands/observation-filing.md` → "The depth test".',
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
names: ['--route <tier-a|split|interrupt|review-cap>'],
|
|
80
|
-
description:
|
|
81
|
-
'the `route:` label naming the filing route. Omit it for a filing with no route.',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
names: ['--label <name>'],
|
|
85
|
-
description: 'an extra label (for example `epic`). Repeatable.',
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
names: [REPO],
|
|
89
|
-
description: 'the target repository. Defaults to this repository.',
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
names: ['--distinct <N,…>'],
|
|
93
|
-
description: 'duplicate candidates you read and judged distinct.',
|
|
94
|
-
},
|
|
95
|
-
{
|
|
96
|
-
names: ['--over-cap'],
|
|
97
|
-
description: 'the run is blocked by this filing; the cap lets it through.',
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
names: ['--no-auto-ok'],
|
|
101
|
-
description: "needs a person's judgement (Tier B / C); no `auto-ok`.",
|
|
102
|
-
},
|
|
103
|
-
{
|
|
104
|
-
names: ['--release'],
|
|
105
|
-
description:
|
|
106
|
-
"a consumer can use the change only once it is published. The filed issue becomes a blocker of the target's release issue (step 10).",
|
|
107
|
-
},
|
|
108
|
-
],
|
|
109
|
-
},
|
|
110
|
-
'issue:fold-existing': { examples: [{ arguments: 'assessment.json --json' }] },
|
|
111
|
-
'issue:fold': {
|
|
112
|
-
examples: [
|
|
113
|
-
{
|
|
114
|
-
arguments: '"First finding" "Second finding"',
|
|
115
|
-
note: 'fold | separate | no-fold-needed | undetermined',
|
|
116
|
-
},
|
|
117
|
-
{ arguments: '"a" "b" --not-separable', note: 'the pair is really one deliverable → fold' },
|
|
118
|
-
{ arguments: '"a" "b" --json', note: 'the verdict and reason, machine-readable' },
|
|
119
|
-
],
|
|
120
|
-
flags: [
|
|
121
|
-
{
|
|
122
|
-
names: ['--not-separable'],
|
|
123
|
-
description:
|
|
124
|
-
'declare the judgement half: the findings are one deliverable, so they fold whatever their size.',
|
|
125
|
-
},
|
|
126
|
-
JSON_FLAG,
|
|
127
|
-
],
|
|
128
|
-
},
|
|
129
|
-
'issue:cite': {
|
|
130
|
-
examples: [
|
|
131
|
-
{ arguments: '2220' },
|
|
132
|
-
{ arguments: '2220 1758 1252', note: CONCURRENT },
|
|
133
|
-
{ arguments: '45 --repo joshuafolkken/app-kit', note: 'bare numbers in another repository' },
|
|
134
|
-
{ arguments: 'joshuafolkken/app-kit#45 2220', note: 'per-token owner/repo#N notation' },
|
|
135
|
-
],
|
|
136
|
-
flags: [
|
|
137
|
-
{
|
|
138
|
-
names: [REPO],
|
|
139
|
-
description:
|
|
140
|
-
'the repository for every bare number; a token written `owner/repo#N` overrides it for itself.',
|
|
141
|
-
},
|
|
142
|
-
],
|
|
143
|
-
},
|
|
144
|
-
'issue:comment': {
|
|
145
|
-
examples: [
|
|
146
|
-
{
|
|
147
|
-
arguments: '2304 --body-file .claude/tmp/park.md',
|
|
148
|
-
note: 'the body from a file — no shell evaluates it',
|
|
149
|
-
},
|
|
150
|
-
{
|
|
151
|
-
arguments: '2304 --body "a short note"',
|
|
152
|
-
note: 'inline, for a body with no backticks or $',
|
|
153
|
-
},
|
|
154
|
-
],
|
|
155
|
-
flags: [
|
|
156
|
-
{
|
|
157
|
-
names: ['--body <text>'],
|
|
158
|
-
description: 'the comment body, inline. Trimmed, with `\\n` expanded to a newline.',
|
|
159
|
-
},
|
|
160
|
-
{
|
|
161
|
-
names: [BODY_FILE],
|
|
162
|
-
description:
|
|
163
|
-
'read the body from a file, or from stdin with `-`. The safe form the rule steers every caller toward.',
|
|
164
|
-
},
|
|
165
|
-
],
|
|
166
|
-
},
|
|
167
|
-
'pkg:scout': {
|
|
168
|
-
examples: [{ arguments: '"date formatting" --size 5' }],
|
|
169
|
-
flags: [
|
|
170
|
-
{ names: ['--size <n>'], description: 'how many candidates to fetch and rank (default 10).' },
|
|
171
|
-
],
|
|
172
|
-
},
|
|
173
|
-
'issue:lint': { examples: [{ arguments: '.claude/tmp/issue-body.md' }] },
|
|
174
|
-
'defect:rate': {
|
|
175
|
-
examples: [{ arguments: '', note: 'the last 14 days' }, { arguments: '--days 30' }],
|
|
176
|
-
flags: [
|
|
177
|
-
{
|
|
178
|
-
names: ['--days <n>'],
|
|
179
|
-
description:
|
|
180
|
-
'the window in whole days (default 14, at most 3650). Anything else prints the usage and exits 1.',
|
|
181
|
-
},
|
|
182
|
-
],
|
|
183
|
-
},
|
|
184
|
-
'issue:backlinks': { examples: [{ arguments: '2123' }] },
|
|
185
|
-
'report:lint': { examples: [{ arguments: '< summary.md' }] },
|
|
186
|
-
'stash:pop': {
|
|
187
|
-
examples: [
|
|
188
|
-
{ arguments: '"backlogrun: parked #2028"' },
|
|
189
|
-
{
|
|
190
|
-
arguments: '"backlogrun: josh latest before lanes" --dir "$dir"',
|
|
191
|
-
note: "into a lane's work tree",
|
|
192
|
-
},
|
|
193
|
-
],
|
|
194
|
-
flags: [
|
|
195
|
-
{
|
|
196
|
-
names: ['--dir <path>'],
|
|
197
|
-
description:
|
|
198
|
-
'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.',
|
|
199
|
-
},
|
|
200
|
-
],
|
|
201
|
-
},
|
|
202
|
-
}
|
|
203
|
-
/* eslint-enable @typescript-eslint/naming-convention */
|
|
204
|
-
|
|
205
|
-
export { ISSUE_USAGE }
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
import type { CommandUsage } from './josh-command-types'
|
|
2
|
-
|
|
3
|
-
// The usage of the review, delegation and oracle commands `docs/josh-commands-backlog.md` documents
|
|
4
|
-
// under "Review, delegation and oracles", keyed by command name. The page's usage blocks are generated
|
|
5
|
-
// from this table and `josh help <command>` prints it, so an example or a flag is written once, here
|
|
6
|
-
// (#3938).
|
|
7
|
-
const MACHINE_READABLE = 'the verdict and the reason, machine-readable'
|
|
8
|
-
const LEVEL_ONLY = '--level-only'
|
|
9
|
-
const JSON_FLAG = '--json'
|
|
10
|
-
const CHECK = '--check'
|
|
11
|
-
const ROUND_1_CLOSED = '--round-1-closed'
|
|
12
|
-
|
|
13
|
-
/* eslint-disable @typescript-eslint/naming-convention */
|
|
14
|
-
const REVIEW_USAGE: Readonly<Record<string, CommandUsage>> = {
|
|
15
|
-
'review:brief': {
|
|
16
|
-
examples: [
|
|
17
|
-
{ arguments: '', note: 'round 1' },
|
|
18
|
-
{ arguments: '--round 2', note: 'verification pass, scoped to the fix delta' },
|
|
19
|
-
{ arguments: LEVEL_ONLY, note: 'the level alone (pre-commit review)' },
|
|
20
|
-
{ arguments: '--level-only --json', note: 'level and reason, machine-readable' },
|
|
21
|
-
],
|
|
22
|
-
flags: [
|
|
23
|
-
{
|
|
24
|
-
names: ['--round 2'],
|
|
25
|
-
description:
|
|
26
|
-
"target is round 1's fixes and nothing else (widened back to the whole change when the record's change base no longer matches).",
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
names: [LEVEL_ONLY],
|
|
30
|
-
description:
|
|
31
|
-
'print the level alone (level to stdout, reason to stderr); bypasses the scoped-green refusal.',
|
|
32
|
-
},
|
|
33
|
-
{
|
|
34
|
-
names: ['--staged', '--json'],
|
|
35
|
-
description: 'the staged diff; machine-readable level and reason.',
|
|
36
|
-
},
|
|
37
|
-
],
|
|
38
|
-
},
|
|
39
|
-
'review:round2': {
|
|
40
|
-
examples: [
|
|
41
|
-
{ arguments: '', note: '→ required' },
|
|
42
|
-
{ arguments: ROUND_1_CLOSED, note: '→ required | skip' },
|
|
43
|
-
{ arguments: JSON_FLAG, note: MACHINE_READABLE },
|
|
44
|
-
],
|
|
45
|
-
flags: [
|
|
46
|
-
{
|
|
47
|
-
names: [ROUND_1_CLOSED],
|
|
48
|
-
description:
|
|
49
|
-
'the caller states every round-1 High/Medium finding closed and none was filed or deferred; its absence answers `required`.',
|
|
50
|
-
},
|
|
51
|
-
{ names: [JSON_FLAG], description: 'machine-readable verdict and reason.' },
|
|
52
|
-
],
|
|
53
|
-
},
|
|
54
|
-
disposition: { examples: [{ arguments: '<path...>', note: '→ runtime | non-runtime' }] },
|
|
55
|
-
'review:attest': {
|
|
56
|
-
examples: [
|
|
57
|
-
{ arguments: '<nonce>', note: 'run by the review, from the checkout it read' },
|
|
58
|
-
{ arguments: CHECK, note: 'run by the run, before it acts on the review' },
|
|
59
|
-
],
|
|
60
|
-
flags: [
|
|
61
|
-
{ names: ['<nonce>'], description: 'attest the checkout the review read.' },
|
|
62
|
-
{
|
|
63
|
-
names: [CHECK],
|
|
64
|
-
description: 'verify before acting; `josh followup` asks again before merging.',
|
|
65
|
-
},
|
|
66
|
-
],
|
|
67
|
-
},
|
|
68
|
-
delegate: {
|
|
69
|
-
examples: [
|
|
70
|
-
{ arguments: 'gate-fix', note: '→ delegate' },
|
|
71
|
-
{ arguments: 'review', note: '→ keep' },
|
|
72
|
-
{ arguments: '--list', note: 'the enumeration, and what was rejected and why' },
|
|
73
|
-
],
|
|
74
|
-
},
|
|
75
|
-
fanout: {
|
|
76
|
-
examples: [
|
|
77
|
-
{ arguments: 'scripts/a.ts,scripts/a.test.ts scripts/b.ts', note: '→ parallel' },
|
|
78
|
-
{
|
|
79
|
-
arguments: 'scripts/a.ts,shared.ts scripts/b.ts,shared.ts',
|
|
80
|
-
note: '→ serial (units share shared.ts)',
|
|
81
|
-
},
|
|
82
|
-
{ arguments: 'scripts/a.ts', note: '→ serial (fewer than two units)' },
|
|
83
|
-
],
|
|
84
|
-
},
|
|
85
|
-
'split:assess': {
|
|
86
|
-
examples: [
|
|
87
|
-
{ arguments: '', note: '→ single' },
|
|
88
|
-
{ arguments: JSON_FLAG, note: MACHINE_READABLE },
|
|
89
|
-
],
|
|
90
|
-
},
|
|
91
|
-
'oracle:list': { examples: [{ arguments: '' }] },
|
|
92
|
-
'clone:scan': { examples: [{ arguments: '' }] },
|
|
93
|
-
cases: {
|
|
94
|
-
examples: [
|
|
95
|
-
{ arguments: 'scripts/a.ts scripts/b.ts', note: 'the boundaries these paths cross' },
|
|
96
|
-
],
|
|
97
|
-
},
|
|
98
|
-
}
|
|
99
|
-
/* eslint-enable @typescript-eslint/naming-convention */
|
|
100
|
-
|
|
101
|
-
export { REVIEW_USAGE }
|