@1aboveio/skills 0.17.0 → 0.19.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.
Files changed (51) hide show
  1. package/README.md +4 -4
  2. package/package.json +1 -1
  3. package/runtime/skills/distribution/generated/recipes.json +52 -32
  4. package/runtime/skills/engineering/engineering-runtime/scripts/workflow-coherence.mjs +1 -1
  5. package/runtime/skills/engineering/engineering-runtime/scripts/workflow-policy.mjs +23 -1
  6. package/skills/cicd-pipeline/mergify/references/watch-contract.md +2 -2
  7. package/skills/cicd-pipeline/mergify/scripts/watch-pr-delivery-core.mjs +48 -4
  8. package/skills/data-science/airflow/SKILL.md +198 -0
  9. package/skills/data-science/pyspark/assets/templates/etl.py +1 -0
  10. package/skills/data-science/pyspark/references/etl-contract.md +3 -0
  11. package/skills/engineering/engineering-runtime/coherence/workflow.json +65 -15
  12. package/skills/engineering/engineering-runtime/scripts/workflow-coherence.mjs +1 -1
  13. package/skills/engineering/engineering-runtime/scripts/workflow-policy.mjs +23 -1
  14. package/skills/engineering/resolve-issues/SKILL.md +1 -1
  15. package/skills/engineering/resolve-issues/generated/workflow-repair-policy.json +55 -11
  16. package/skills/engineering/resolve-issues/scripts/run-state.mjs +4 -4
  17. package/skills/engineering/resolve-release/SKILL.md +2 -1
  18. package/skills/engineering/resolve-release/agents/openai.yaml +9 -0
  19. package/skills/engineering/resolve-release/references/related-skills.md +1 -0
  20. package/skills/engineering/rush-issues/LICENSE +3 -0
  21. package/skills/engineering/rush-issues/SKILL.md +179 -0
  22. package/skills/engineering/rush-issues/agents/openai.yaml +9 -0
  23. package/skills/engineering/rush-issues/evals/evals.json +65 -0
  24. package/skills/engineering/rush-issues/references/canary.md +45 -0
  25. package/skills/engineering/rush-issues/references/cicd.md +37 -0
  26. package/skills/engineering/rush-issues/references/combine.md +51 -0
  27. package/skills/engineering/rush-issues/references/expire.md +55 -0
  28. package/skills/engineering/rush-issues/references/exploration.md +53 -0
  29. package/skills/engineering/rush-issues/references/implementation.md +66 -0
  30. package/skills/engineering/rush-issues/references/preflight.md +31 -0
  31. package/skills/engineering/rush-issues/references/profiling.md +78 -0
  32. package/skills/engineering/rush-issues/references/review.md +48 -0
  33. package/skills/engineering/rush-issues/references/shared-modules.md +66 -0
  34. package/skills/engineering/rush-issues/references/task-plan.md +110 -0
  35. package/skills/engineering/rush-issues/scripts/discover-models.mjs +9 -0
  36. package/skills/engineering/rush-issues/scripts/model-catalog.mjs +9 -0
  37. package/skills/engineering/rush-issues/scripts/preflight-models.mjs +466 -0
  38. package/skills/engineering/rush-release/LICENSE +3 -0
  39. package/skills/engineering/rush-release/SKILL.md +99 -0
  40. package/skills/engineering/rush-release/agents/openai.yaml +8 -0
  41. package/skills/engineering/rush-release/evals/evals.json +44 -0
  42. package/skills/engineering/rush-release/references/candidate.md +30 -0
  43. package/skills/engineering/rush-release/references/cut.md +66 -0
  44. package/skills/engineering/rush-release/references/preflight.md +47 -0
  45. package/skills/engineering/rush-release/references/publish.md +100 -0
  46. package/skills/engineering/rush-release/scripts/apply.mjs +185 -0
  47. package/skills/engineering/rush-release/scripts/green-head.mjs +231 -0
  48. package/skills/engineering/rush-release/scripts/plan.mjs +264 -0
  49. package/skills/fullstack/zod-v4/SKILL.md +1 -1
  50. package/skills/data-science/airflow-dag-develop/SKILL.md +0 -111
  51. /package/skills/data-science/{airflow-dag-develop → airflow}/LICENSE +0 -0
@@ -0,0 +1,9 @@
1
+ interface:
2
+ display_name: "Resolve Release"
3
+ short_description: "Slash/explicit-only release lane: merge-ready PRs to verified production"
4
+
5
+ policy:
6
+ # Codex counterpart to SKILL.md disable-model-invocation: true
7
+ # (Claude Code / Pi). Keeps $resolve-release / explicit invoke; blocks
8
+ # description-based auto-selection.
9
+ allow_implicit_invocation: false
@@ -3,6 +3,7 @@
3
3
  [SKILL.md](../SKILL.md) routes the phases; this file is the seam with every other skill — who
4
4
  produces this lane's input, who owns the gates it runs, and where a failure goes.
5
5
 
6
+ - `rush-release` — the explicit GitHub Flow cut from green `main` (changelog + tag + Cloud Build/npm watch). It does not assemble, promote, or shift traffic; this lane still owns those.
6
7
  - `resolve-issues` — the **upstream** producer; its handoff is this skill's input. For an epic that is one integration-verified deliverable per [component](../../resolve-issues/references/integration-gate.md), each a combined PR whose tip step 1 re-verifies (principle 2) rather than re-merges.
7
8
  - `review-pr` — twice: **step 1** on the combined integration diff, **step 2** in promotion mode (fast-forward + release-readiness checklist).
8
9
  - `smoke` — the **exposure gate**: step 4a against the 0%-traffic candidate under read-only **`prod-preview`**, step 4b against the live service under **`prod-active`** (principle 4). The named [Validation Profile](../../smoke/references/manifest.md#validation-profiles-the-profiles-registry) owns the mutation policy, so both production profiles are mechanically read-only. Also the engine behind the SHA-keyed verdict recorder the candidate pin reads (principle 11).
@@ -0,0 +1,3 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 1AboveIO
@@ -0,0 +1,179 @@
1
+ ---
2
+ name: rush-issues
3
+ description: "Slash/explicit-only (/rush-issues). Drive an issue, epic, or complete feature spec to one PR on one branch: model/target preflight, task map, shared exploration, up to 4 isolated implementers, combination, one independent code-review, then CI/queue/merge. Do not auto-select. Use for fast whole-spec delivery, including high-risk implementation work; risk changes model and validation depth, never the workflow. Retries and 30-minute task expiry trigger diagnosis and continuation. NOT for release work (rush-release or resolve-release)."
4
+ disable-model-invocation: true
5
+ dependencies:
6
+ - code-review
7
+ - smoke
8
+ - harness-runtime
9
+ ---
10
+
11
+ # Rush issues
12
+
13
+ Deliver the **entire spec in one PR on one branch**. Act as a thin scheduler:
14
+ coordinate depth-1 subagents and local programs; do not implement product code
15
+ in the orchestrator.
16
+
17
+ **Operating bounds:** 30 minutes per task attempt · 2 retries before diagnosis ·
18
+ in-flight cap 4 · exactly one combined PR.
19
+
20
+ ```text
21
+ preflight (models + target only) -> task plan (show user)
22
+ -> exploration (shared findings)
23
+ -> continuously schedule runnable units, at most 4 in flight:
24
+ isolated implement -> validate -> self-review -> fix/re-validate as needed
25
+ -> combine every unit on one PR branch -> validate
26
+ -> data warehouse only: staged read-only canary on exact HEAD
27
+ -> open one PR
28
+ -> one independent code-review -> fix/re-validate/re-review as needed
29
+ -> watch CI -> fix/re-validate -> enqueue/merge
30
+ ```
31
+
32
+ This file is the workflow and index. Read the linked procedure immediately
33
+ before its stage; do not invent an unlinked substitute.
34
+
35
+ | Stage / concern | Procedure |
36
+ |---|---|
37
+ | Model and target preflight | [references/preflight.md](references/preflight.md) |
38
+ | Task map and run setup | [references/task-plan.md](references/task-plan.md) |
39
+ | Shared exploration | [references/exploration.md](references/exploration.md) |
40
+ | Isolated implementation loop | [references/implementation.md](references/implementation.md) |
41
+ | Combine to one PR | [references/combine.md](references/combine.md) |
42
+ | Staged read-only warehouse canary | [references/canary.md](references/canary.md) |
43
+ | Independent factual review | [references/review.md](references/review.md) |
44
+ | CI, queue, and merge | [references/cicd.md](references/cicd.md) |
45
+ | Expiry, diagnosis, and continuation | [references/expire.md](references/expire.md) |
46
+ | Live task plan | [references/task-plan.md](references/task-plan.md) |
47
+ | Performance profiling | [references/profiling.md](references/profiling.md) |
48
+ | Model catalog and leaf skills | [references/shared-modules.md](references/shared-modules.md) |
49
+
50
+ ## Run invariants
51
+
52
+ - The PR branch contains every unit in the task map. Do not open a partial PR
53
+ and describe a reduced subset as the spec.
54
+ - Never route a unit or run to another implementation workflow because it is
55
+ high-risk, large, or difficult. Keep the entire spec in Rush and apply the
56
+ repository's hazard guidance through model choice, implementation, tests,
57
+ review, and CI.
58
+ - Prefer an isolated run branch + Git workspace. Every implementation unit owns
59
+ a separate branch + Git workspace until it is combined or handed back.
60
+ - Schedule runnable units continuously and in parallel, with at most 4 active
61
+ implementation workers. Preserve declared blocking dependencies.
62
+ - A retry counter reaching 2 or a task attempt reaching 30 minutes causes
63
+ expiry -> diagnosis -> revised plan -> continuation. Expiry alone is not a
64
+ terminal unit outcome and does not remove scope.
65
+ - A human/external blocker may stop the run. Mark the unit `blocked`, preserve
66
+ its workspace, and hand back without claiming a whole-spec PR.
67
+ - Never open per-unit PRs. Open exactly one PR, after all units are combined and
68
+ the combined HEAD validates.
69
+ - When the run changes executable data-warehouse behavior or its data contract,
70
+ do not enter review until a staged read-only canary succeeds on the exact
71
+ combined HEAD. Any later code or configuration commit invalidates that
72
+ canary and requires validation plus a fresh canary on the new HEAD.
73
+ - Review facts independently. Producer summaries, claims, logs, and evidence
74
+ may locate work but cannot establish correctness for the reviewer.
75
+ - Do not manufacture review evidence collateral. Keep only the stage result,
76
+ commands actually run, findings, task-plan transitions, and profiling events.
77
+ - Persist each task-plan transition and profiling event under one monotonically
78
+ increasing plan revision, then render the user board from that persisted
79
+ revision. Displayed counters must never outrun or lag stored state.
80
+
81
+ ## Stage contracts
82
+
83
+ Every subagent brief includes:
84
+
85
+ - original spec/unit source and acceptance criteria
86
+ - absolute run workspace and unit workspace (when applicable)
87
+ - absolute shared exploration findings path
88
+ - model id + effort and required read-back
89
+ - absolute skill path only when the stage explicitly invokes a leaf skill
90
+ - required outcome and validation obligations, without prescribing an
91
+ implementation workflow, development methodology, or producer evidence format
92
+ - proof-of-execution result path or structured return contract
93
+ - 30-minute task-attempt deadline
94
+
95
+ No readable result means the stage did not complete. A dead spawn is diagnosed
96
+ and resumed in the same preserved workspace; it is never replaced by a success
97
+ claim.
98
+
99
+ ## Workflow
100
+
101
+ ### 1. Preflight
102
+
103
+ Select models and confirm the non-production target branch. Those are the only
104
+ preflight decisions. Use the shared preflight module and model-catalog fast
105
+ path: explorer is a balanced-coder that prefers `gpt-5.6-terra@high`; reviewer
106
+ is a distinct deep-reasoner that prefers `gpt-5.5@high` when available. Risk
107
+ may recommend a stronger operating point, but never changes the workflow.
108
+
109
+ ### 2. Build and show the task plan
110
+
111
+ Create the isolated run branch/workspace, decompose the entire spec into
112
+ implementable units, record blocking dependencies and shared surfaces, create
113
+ the run state/profiling paths, and show the complete plan before any heavy
114
+ spawn. Hazardous units stay in the plan with their required safety checks.
115
+
116
+ ### 3. Exploration
117
+
118
+ Spawn one explorer. It reads every requirement, the codebase, named external
119
+ documents, ADRs, and other context, then writes shared findings available to
120
+ all implementers. It writes no product code.
121
+
122
+ ### 4. Implement every unit
123
+
124
+ Give each unit its own branch/workspace and one implementer with the original
125
+ unit context plus shared findings. State the required outcome and validation
126
+ obligations, then let the active harness choose how to implement them. The
127
+ implementer changes code, validates the result, self-reviews the net diff,
128
+ fixes findings, and re-validates. Refill free worker slots immediately while
129
+ respecting blocking dependencies.
130
+
131
+ ### 5. Combine and open one PR
132
+
133
+ After every unit succeeds, combine all unit branches onto the isolated run
134
+ branch, resolve integration conflicts, and validate the combined HEAD. For a
135
+ data-warehouse run, execute the staged read-only canary on that exact HEAD
136
+ after validation and before review. Open one PR against the confirmed target
137
+ branch. If any unit or required canary remains blocked, do not open or describe
138
+ a partial PR as completion of the spec.
139
+
140
+ ### 6. Independent review
141
+
142
+ Spawn one reviewer on the combined HEAD using the `code-review` skill. It reads
143
+ the original spec and repository standards, computes its own diff fixed point,
144
+ inspects the implementation, and runs checks needed to verify findings. It does
145
+ not accept producer evidence as proof. Fix blocking findings on the combined
146
+ branch, validate, rerun the warehouse canary when required, then run a fresh
147
+ review until successful; after 2 failed fix/review cycles, diagnose and continue
148
+ with a revised approach.
149
+
150
+ ### 7. CICD
151
+
152
+ Watch CI on the exact combined HEAD. Diagnose a failure and fix it on the same
153
+ PR branch. A code/config change creates a new HEAD and invalidates the prior
154
+ review and any warehouse canary: run relevant local validation, rerun the
155
+ staged read-only canary when required, return to a fresh independent review of
156
+ that HEAD, then push/watch again. A provider rerun with no HEAD change does not
157
+ invalidate review or canary. Inspect live queue configuration before
158
+ enqueueing; use the owning queue skill when installed. Enqueue/merge only when
159
+ the exact HEAD is reviewed, green, and carries its required canary. After 2
160
+ failed cycles or a 30-minute watch attempt, diagnose and continue rather than
161
+ silently abandoning the run.
162
+
163
+ ## Task plan and profiling
164
+
165
+ The task map is the live source of truth. Display it after run setup, every
166
+ stage transition, worker/retry/diagnosis event, PR HEAD change, and about
167
+ every 5 minutes during long work. Apply a transition, append its profiling
168
+ event with the same `planRevision`, persist both, then render that exact plan
169
+ revision. Profiling distinguishes wall time, effective LLM/program activity,
170
+ and external wait.
171
+
172
+ ## Done
173
+
174
+ Success means one PR containing the entire mapped spec is independently
175
+ reviewed, green on its exact HEAD, canary-verified when it changes warehouse
176
+ behavior, and merged when authorized (or handed back merge-ready in supervised
177
+ mode). Final handoff includes the plan, PR URL/SHA, validation, canary when
178
+ required, and review results, retries/diagnoses, wall/effective/wait timings,
179
+ profiling path, and exploration path.
@@ -0,0 +1,9 @@
1
+ interface:
2
+ display_name: "Rush Issues"
3
+ short_description: "Slash/explicit-only fast delivery: complete spec to one PR"
4
+
5
+ policy:
6
+ # Codex counterpart to SKILL.md disable-model-invocation: true
7
+ # (Claude Code / Pi). Keeps $rush-issues / explicit invoke; blocks
8
+ # description-based auto-selection.
9
+ allow_implicit_invocation: false
@@ -0,0 +1,65 @@
1
+ {
2
+ "skill_name": "rush-issues",
3
+ "evals": [
4
+ {
5
+ "id": 1,
6
+ "prompt": "Dry-run only: do not modify Git, spawn workers, open a PR, or contact a provider. Plan a rush run for epic #2400 against main with six routine units: #2401 API parser, #2402 CLI adapter (depends on #2401), #2403 docs, #2404 unit tests, #2405 smoke journey, #2406 migration notes. Show the first user-visible task plan and the concrete explorer/implement/combine/review/CICD briefs and state transitions you would use. All six units are required by the original spec. Available models include openai/gpt-5.6-terra@high and openai/gpt-5.5@high.",
7
+ "expected_output": "A dry-run artifact that displays the complete task map before heavy work, uses shared exploration, schedules at most four isolated unit workspaces while respecting #2402's dependency, combines all six units into one PR, performs independent factual review, and records 30-minute/retry/profiling behavior.",
8
+ "files": [],
9
+ "expectations": [
10
+ "Displays a task plan containing all six units before exploration or implementation.",
11
+ "Records #2402 as blocked on #2401 and schedules runnable work continuously with at most four active workers.",
12
+ "Assigns every implementation unit its own branch and isolated Git workspace.",
13
+ "Uses one shared exploration pack and selects gpt-5.6-terra@high for exploration and a distinct gpt-5.5@high reviewer when available.",
14
+ "Combines only after all six mapped units succeed and opens exactly one whole-spec PR.",
15
+ "Runs one independent code-review stage that establishes facts independently of producer claims.",
16
+ "States the two-retry and 30-minute diagnosis/resume behavior and profiles wall, effective, and wait time."
17
+ ]
18
+ },
19
+ {
20
+ "id": 2,
21
+ "prompt": "Dry-run only: do not modify Git, spawn workers, open a PR, or contact a provider. Simulate a rush run with required units A, B, and C. B and C succeed. A fails validation twice and its current task reaches 30 minutes. Later, after all units are implemented, the producer's PR body claims every test is green, but an independently run test reveals a real defect. Show exact task-plan transitions, whether/when combination is allowed, the review/fix loop, and CICD handling if the first two CI fix attempts also fail.",
22
+ "expected_output": "A dry-run artifact where A expires into diagnosis and resumes in its preserved workspace, B/C do not become a partial PR, combination waits for A, review establishes facts independently rather than trusting producer evidence, every changed HEAD is validated and freshly reviewed, and two failed CI cycles trigger diagnosis and continuation.",
23
+ "files": [],
24
+ "expectations": [
25
+ "Transitions A's expired attempt to diagnosing after two failures or 30 minutes while preserving A's workspace and branch.",
26
+ "Records a changed hypothesis or plan before resetting the local retry counter and resuming A.",
27
+ "Does not combine B and C into a partial PR; combination waits until A, B, and C all succeed.",
28
+ "Treats producer test claims as untrusted and uses the independent reviewer’s own test result as the fact.",
29
+ "Fixes the review defect on the combined branch, validates the fix, and performs a fresh review of the new HEAD.",
30
+ "After two failed CI fix cycles, diagnoses and continues on the same PR branch rather than abandoning or reducing scope.",
31
+ "Invalidates the prior review after any code-changing CI fix and obtains a fresh independent review of the new HEAD before enqueue or merge.",
32
+ "Uses one planRevision for each persisted task-plan transition, profiling event, and displayed board so counters and HEAD cannot disagree.",
33
+ "Shows task-plan checkpoints and profiling for retries, diagnosis, wall/effective activity, and external wait."
34
+ ]
35
+ },
36
+ {
37
+ "id": 3,
38
+ "prompt": "Dry-run only: do not modify Git, spawn workers, open a PR, or contact a provider. Plan a rush run for a high-risk money migration epic against main. Show preflight, task planning, implementation, combination, review, and CICD. The work must remain one whole-spec PR even though repository hazard guidance classifies every unit high-risk.",
39
+ "expected_output": "A dry-run artifact whose preflight asks only for model choice and target branch through the shared preflight module, retains every high-risk unit in Rush, applies deeper model/testing/review obligations, uses sandbox-compatible Git workspaces, and produces one combined PR without redirecting to another workflow.",
40
+ "files": [],
41
+ "expectations": [
42
+ "Uses the shared preflight module for only model choice and target-branch confirmation.",
43
+ "Does not redirect to resolve-issues or remove high-risk units from the Rush task map.",
44
+ "Uses risk only to strengthen model selection, implementation, validation, and review depth.",
45
+ "Keeps the entire high-risk epic within the one-branch, one-PR Rush workflow.",
46
+ "For sandboxed Git-mutating Pi workers, uses a self-contained clone workspace rather than a linked worktree whose Git metadata is outside the sandbox."
47
+ ]
48
+ },
49
+ {
50
+ "id": 4,
51
+ "prompt": "Dry-run only: do not modify Git, submit a cluster job, spawn workers, open a PR, or contact a provider. Plan a rush run for an epic that changes a PySpark warehouse transformation, partition schema, and backfill watermark. The repository exposes its production entry point with --validate-only and a staging cluster using read-only credentials. Show the ordering from combined validation through review and what happens if a review or CI fix changes HEAD.",
52
+ "expected_output": "A dry-run artifact that classifies the run as warehouse-canary required, validates the combined branch, runs the real entry point in staged read-only validate-only mode on that exact HEAD before review, proves zero publication side effects, and invalidates/repeats the canary after every code or configuration HEAD change.",
53
+ "files": [],
54
+ "expectations": [
55
+ "Records warehouseCanaryRequired and a concrete classification reason in the task plan.",
56
+ "Runs the staged read-only canary after combined tests/validation and before independent review.",
57
+ "Binds the canary command or artifact and durable result to the exact combined 40-character HEAD.",
58
+ "Uses the real production entry point, staging/canary execution surface, bounded source scope, read-only credentials, and --validate-only.",
59
+ "Requires explicit publication skip, zero output records/bytes, and no table commit, checkpoint, watermark, offset, scheduler, or other state mutation.",
60
+ "Blocks instead of waiving the stage if read-only execution cannot be proven.",
61
+ "Invalidates the prior canary result after any code/configuration commit and reruns validation plus canary before review, enqueue, or merge."
62
+ ]
63
+ }
64
+ ]
65
+ }
@@ -0,0 +1,45 @@
1
+ # Staged read-only data-warehouse canary
2
+
3
+ Run this stage after combined validation and before independent review when the
4
+ run changes executable warehouse behavior or its data contract. Examples
5
+ include Spark/SQL/ETL transformations, schemas, keys, partitions, watermarks,
6
+ checkpoints, backfills, or publication/writer behavior. A task that merely
7
+ reads application data or edits warehouse documentation does not activate this
8
+ stage. Record the classification and reason in the task plan.
9
+
10
+ ## Exact-HEAD contract
11
+
12
+ 1. Resolve and record the combined branch's exact 40-character `headSha` after
13
+ tests and validation pass.
14
+ 2. Use the repository's real entry point and staging/canary execution surface
15
+ with read-only credentials. Bind any built artifact or submitted job to that
16
+ exact SHA.
17
+ 3. Use a bounded representative source snapshot/scope and the repository's
18
+ validate-only or dry-run guard. The guard must sit before every writer; a
19
+ mode that skips the transformation under test is not a canary.
20
+ 4. Prove the run created no table/object output, transaction or table-format
21
+ commit, checkpoint, watermark, consumed offset, scheduler-state change, or
22
+ other publication side effect. For Spark, require zero output records and
23
+ bytes plus an explicit publication skip.
24
+ 5. Record the command, non-secret target, source snapshot/scope, exact SHA,
25
+ start/end time, validation readings, logs, and zero-write observation in a
26
+ durable result.
27
+
28
+ Do not run a write-enabled canary, infer safety from a command name, or replace
29
+ the staged execution with local tests. If no repository-supported mode can
30
+ prove read-only execution, mark the canary blocked and hand back the missing
31
+ guard, credentials, environment, or authorization. Do not waive it as
32
+ not-applicable after the run has been classified as warehouse-canary required.
33
+
34
+ ## Failure and invalidation
35
+
36
+ A failed canary returns the combined branch to the fix loop. Diagnose the
37
+ observed failure, change the code or execution plan, rerun relevant local tests
38
+ and validation, then run a fresh canary. Two failed validate/canary cycles or a
39
+ 30-minute attempt follows [expire.md](expire.md).
40
+
41
+ Any code or configuration commit invalidates the prior canary result, even when
42
+ the change looks unrelated. A provider rerun or evidence read with no HEAD
43
+ change may keep the result. When `warehouseCanaryRequired` is true, review, CI
44
+ delivery, enqueue, and merge require a successful canary result for the current
45
+ exact HEAD.
@@ -0,0 +1,37 @@
1
+ # CI, queue, and merge
2
+
3
+ Operate only on the single combined PR branch after independent review
4
+ succeeds.
5
+
6
+ ## Procedure
7
+
8
+ 1. Push the reviewed HEAD and watch required CI checks for that exact SHA.
9
+ 2. On failure, read the actual job logs and reproduce the failing command where
10
+ practical. Diagnose before editing.
11
+ 3. Fix on the same PR branch and run relevant local lint/build/test/smoke.
12
+ 4. If the fix changes HEAD, clear `reviewedHead`, mark review and the prior
13
+ canary result stale, rerun [canary.md](canary.md) when required, and return
14
+ to [review.md](review.md) for a fresh independent review of the new HEAD.
15
+ Only after that succeeds may the new reviewed HEAD be pushed/watched. A
16
+ provider rerun with no commit keeps the existing review and canary valid.
17
+ 5. Before enqueueing, assert `reviewedHead == headSha`; when
18
+ `warehouseCanaryRequired` is true, require a successful canary result naming
19
+ that exact SHA. Require CI green for the SHA and inspect live queue
20
+ configuration/protections. If Mergify is involved, load the `mergify` skill
21
+ and use its queue status/watcher procedure rather than a generic PR-check
22
+ poll.
23
+ 6. In `autonomous` mode, enqueue and watch through merge when authorized. In
24
+ `supervised` mode, hand back the exact green reviewed HEAD as merge-ready and
25
+ do not approve/merge on the human's behalf.
26
+
27
+ ## Expiry behavior
28
+
29
+ Two failed fix/review/watch cycles or a 30-minute bounded watch expires the
30
+ attempt. Follow [expire.md](expire.md): preserve the branch and logs, diagnose
31
+ the failure or pending provider state, update the plan, and continue with a
32
+ fresh bounded attempt. A pending queue after 30 minutes is wait diagnosis, not
33
+ a reason to change code.
34
+
35
+ If diagnosis proves an external or human blocker, mark CICD `blocked` and hand
36
+ back the PR URL, exact HEAD, checks/queue state, and required next action. Never
37
+ report merge success until the provider reports the exact PR merged.
@@ -0,0 +1,51 @@
1
+ # Combine to one PR
2
+
3
+ Combine only after every mapped unit has succeeded. The run branch and PR must
4
+ carry the entire mapped spec.
5
+
6
+ ## Inputs
7
+
8
+ - live task plan with every unit `succeeded`
9
+ - every unit branch and exact succeeded SHA
10
+ - isolated run branch/workspace from task-plan initialization
11
+ - original spec and shared exploration findings
12
+ - confirmed `targetBranch`
13
+
14
+ ## Procedure
15
+
16
+ 1. Fetch `origin/<targetBranch>` and confirm the run branch has the intended
17
+ fixed point. Do not destroy unpublished run-branch work.
18
+ 2. Merge or cherry-pick every unit branch in dependency order. Prefer a history
19
+ that preserves each unit id and SHA.
20
+ 3. Resolve conflicts in the run worktree. For non-trivial conflicts, spawn a
21
+ focused integration fix task with the same 30-minute attempt deadline.
22
+ 4. Run relevant lint, build, tests, and smoke on the combined HEAD. A check may
23
+ be `not-applicable` only with a concrete reason recorded on the plan.
24
+ 5. If `warehouseCanaryRequired` is true, follow [canary.md](canary.md) after
25
+ validation and run a staged read-only canary on this exact combined HEAD.
26
+ Do not proceed unless it succeeds and its result names that exact HEAD.
27
+ 6. Open exactly one PR against `targetBranch`. Include the original spec,
28
+ included unit ids and SHAs, validation results, and shared findings path.
29
+ Include the canary result for a data-warehouse run.
30
+ 7. Record the PR URL and combined HEAD on the task plan, then enter independent
31
+ review.
32
+
33
+ ## Whole-spec boundary
34
+
35
+ - Never open per-unit PRs.
36
+ - Never omit an expired or blocked unit and redefine the remainder as the
37
+ completed spec.
38
+ - If a unit is diagnosing, continue it before combination.
39
+ - If a unit is blocked on a human or external prerequisite, preserve all
40
+ workspaces and hand back the blocked plan. Do not open a partial PR claiming
41
+ the spec is implemented.
42
+ - If integration exposes missing work, add or reopen units on the same plan,
43
+ complete them in isolated workspaces, then retry combination.
44
+
45
+ ## Completion
46
+
47
+ Exactly one PR exists for the run; its HEAD includes every mapped unit; combined
48
+ validation is green; any required warehouse canary is green on that exact HEAD;
49
+ and the task plan records the PR, HEAD, unit SHAs, and commands run. The PR is
50
+ not review-ready on producer claims alone: the next stage establishes facts
51
+ independently.
@@ -0,0 +1,55 @@
1
+ # Expiry, diagnosis, and continuation
2
+
3
+ Expiry prevents blind repetition. It is a checkpoint, not permission to drop a
4
+ unit from the spec.
5
+
6
+ ## Limits
7
+
8
+ | Scope | Expiry condition |
9
+ |---|---|
10
+ | Implement / validate / self-review | 2 failed fix cycles without success |
11
+ | Staged read-only warehouse canary | 2 failed validate -> canary cycles without success |
12
+ | Independent review | 2 failed fix -> validate -> review cycles without success |
13
+ | CICD | 2 failed diagnose -> fix -> validate -> push/watch cycles without success |
14
+ | Any subagent task or bounded stage attempt | 30 minutes wall time |
15
+
16
+ Do not start retry 3 unchanged. A spawn death with no result does not prove a
17
+ work failure, but it still requires a short diagnosis before resuming in the
18
+ same workspace.
19
+
20
+ Reason codes: `retry-implement`, `retry-canary`, `retry-review`, `retry-cicd`,
21
+ `timeout-task`, `spawn-death`, `combine-conflict`, `external-blocker`,
22
+ `human-decision`.
23
+
24
+ ## Diagnose
25
+
26
+ When an attempt expires:
27
+
28
+ 1. Stop the live task and preserve its branch/workspace and logs.
29
+ 2. Mark the attempt `expired` and the unit/fleet row `diagnosing`; free its
30
+ worker slot while diagnosis runs.
31
+ 3. Inspect current code, actual command output, failing tests/checks, task
32
+ boundaries, dependencies, and the prior two hypotheses. Do not accept the
33
+ failed worker's explanation without reproducing the relevant fact.
34
+ 4. Record a diagnosis: observed failure, root-cause hypothesis, what changes in
35
+ the plan/brief/validation, and the next bounded attempt.
36
+ 5. Continue from the preserved workspace. Reset the local retry counter only
37
+ after the plan materially changes; retain cumulative retry/diagnosis counts.
38
+
39
+ Useful diagnosis outcomes:
40
+
41
+ - **Approach change:** revise the brief or implementation strategy and resume.
42
+ - **Further decomposition:** replace one oversized unit with smaller units that
43
+ still cover the same spec, then schedule them normally.
44
+ - **Dependency correction:** add/fix a blocking edge and resume when runnable.
45
+ - **Flake/infrastructure:** prove the classification, adjust the execution
46
+ method, and resume without changing product behavior to appease a flake.
47
+ - **Human/external blocker:** mark `blocked`, preserve work, and hand back the
48
+ exact decision or prerequisite needed. Do not continue to combine a subset.
49
+
50
+ ## Fleet stages
51
+
52
+ Exploration, combination, review, and CICD use the same expiry loop. A
53
+ 30-minute CI/queue watch may expire because the provider is still pending;
54
+ record the wait diagnosis and start a fresh bounded watch. Only a factually
55
+ blocked state ends the run, and it ends without a whole-spec completion claim.
@@ -0,0 +1,53 @@
1
+ # Exploration
2
+
3
+ Run once after the task plan is shown and before implementation. The
4
+ goal is one shared context pack, so parallel implementers do not independently
5
+ rediscover requirements and repository structure.
6
+
7
+ ## Spawn
8
+
9
+ | Field | Value |
10
+ |---|---|
11
+ | Model | Explorer slot: balanced-coder; prefer `gpt-5.6-terra@high` when discovered, otherwise use the catalog recommendation |
12
+ | Workspace | Isolated run worktree, read-only except for the findings directory |
13
+ | Task deadline | 30 minutes |
14
+ | Product code | Must remain unchanged |
15
+
16
+ ## Brief
17
+
18
+ 1. Read every unit's original source, acceptance criteria, and linked documents.
19
+ 2. Read relevant repository guidance, ADRs, domain context, modules, tests, and
20
+ prior art.
21
+ 3. Retrieve external documents named by the spec from their authoritative
22
+ source.
23
+ 4. Identify blocking dependencies and shared surfaces that affect scheduling or
24
+ combination.
25
+ 5. Write the findings pack to the shared path. Do not implement product code.
26
+
27
+ ## Shared location
28
+
29
+ ```text
30
+ .resolve-issues/rush/<run-id>/exploration/
31
+ FINDINGS.md
32
+ findings.json
33
+ ```
34
+
35
+ `FINDINGS.md` is required and includes:
36
+
37
+ - whole-spec definition of done
38
+ - per-unit requirements and likely code/test locations
39
+ - relevant repository rules, ADRs, and external-source links
40
+ - blocking dependencies and shared surfaces
41
+ - risks, assumptions, and unresolved questions
42
+
43
+ `findings.json` is optional and may index `{units, paths, dependencies, risks,
44
+ openQuestions}`. Record the absolute findings path in the plan and pass it to
45
+ every implementer.
46
+
47
+ ## Completion
48
+
49
+ Confirm the findings file exists and is non-empty, the model read-back matches
50
+ the explorer slot, and the explorer made no product-source diff. A timeout or
51
+ missing result expires the attempt; follow [expire.md](expire.md), diagnose,
52
+ and resume exploration. Do not waive shared exploration merely to preserve
53
+ speed.
@@ -0,0 +1,66 @@
1
+ # Isolated implementation loop
2
+
3
+ Schedule runnable units continuously after exploration succeeds. At most 4
4
+ units may own active implementation workers at once.
5
+
6
+ ## Workspace contract
7
+
8
+ Each unit gets a dedicated branch and isolated Git workspace based on the
9
+ correct dependency/base state. That workspace belongs to the unit through
10
+ implement, validate, self-review, fixes, expiry, and diagnosis. Never wipe it
11
+ on spawn death or timeout.
12
+
13
+ On Pi, the default subagent sandbox can write only beneath its workspace root.
14
+ A linked worktree's `.git` file points to administrative metadata under the
15
+ parent repository, outside that root, so Git mutation will fail. For the first
16
+ Git-mutating spawn, pass `git_clone_workspace:true` with a dedicated
17
+ `sandbox_dir`; record the resulting self-contained clone as the unit workspace.
18
+ Retries use that clone directly without cloning it again. Use `sandbox:false`
19
+ only when the caller explicitly accepts unrestricted writes. Never launch a
20
+ Git-mutating sandboxed worker in a linked worktree.
21
+
22
+ ## Implementer brief
23
+
24
+ Include:
25
+
26
+ - original unit source and acceptance criteria
27
+ - whole-spec context and neighboring unit boundaries
28
+ - absolute exploration findings path
29
+ - absolute unit workspace and branch
30
+ - declared dependencies and shared surfaces
31
+ - selected implementer model/effort
32
+ - required outcome and validation obligations
33
+ - instruction not to open a per-unit PR
34
+ - result path/return schema and 30-minute deadline
35
+
36
+ Do not require an implementation leaf skill, development methodology, or
37
+ producer-specific evidence contract. The active harness chooses its own
38
+ implementation method. Rush constrains the unit boundary, workspace, outcome,
39
+ validation, and return contract only.
40
+
41
+ ## Per-unit loop
42
+
43
+ 1. **Implement:** change only the unit scope using the harness's chosen method.
44
+ Commit coherent progress on the unit branch.
45
+ 2. **Validate:** prove the acceptance criteria and affected behavior with the
46
+ relevant repository checks. Record concrete not-applicable reasons where a
47
+ named validation category does not apply.
48
+ 3. **Self-review:** inspect the net diff adversarially against the unit ACs,
49
+ repository rules, failure states, and affected shared surfaces.
50
+ 4. **Act:** fix every blocking self-review finding, then repeat validation and
51
+ self-review on the new HEAD.
52
+ 5. **Finish:** return the exact branch/SHA, changed paths, validation commands,
53
+ self-review result, and any integration notes. Do not open a per-unit PR.
54
+
55
+ After 2 failed fix cycles or a 30-minute task attempt, follow
56
+ [expire.md](expire.md): preserve the workspace, diagnose, revise the plan, and
57
+ continue. The next worker resumes the same workspace and reads the diagnosis.
58
+
59
+ ## Scheduling
60
+
61
+ - Start independent runnable units together up to the in-flight cap of 4.
62
+ - Refill a free slot as soon as another unit becomes runnable.
63
+ - Blocking dependencies constrain start order; shared-surface interference is
64
+ recorded for combination but does not by itself serialize workers.
65
+ - One diagnosis does not stall unrelated runnable units.
66
+ - The combine stage waits for every mapped unit to succeed.
@@ -0,0 +1,31 @@
1
+ # Preflight
2
+
3
+ Preflight has exactly two outputs: selected model operating points and the
4
+ confirmed target branch. It does not classify workflow eligibility, decompose
5
+ the spec, create workspaces, probe delivery, or decide autonomy. Those belong
6
+ to later Rush stages.
7
+
8
+ ## 1. Select models
9
+
10
+ Run the fast path and shared preflight planner in
11
+ [shared-modules.md](shared-modules.md). Ask only for the implementer model; fill
12
+ and state the explorer and reviewer. Prefer:
13
+
14
+ - explorer: balanced-coder, `gpt-5.6-terra@high` when discovered
15
+ - reviewer: distinct deep-reasoner, `gpt-5.5@high` when discovered
16
+
17
+ Record exact model ids and efforts. Sync/bank the shared catalog only after the
18
+ human answers. Repository risk may change the recommended model tier; it never
19
+ changes the workflow.
20
+
21
+ ## 2. Confirm delivery target
22
+
23
+ Fetch remote heads and confirm `targetBranch` from those fetched facts. Do not
24
+ infer a stale local default.
25
+
26
+ The shared planner also returns fields used by other workflows. Rush records
27
+ only its model selections and `targetBranch` from this stage; an autonomy fill
28
+ is not merge authorization for a Rush run.
29
+
30
+ Preflight succeeds when the model slots and target branch are recorded. Proceed
31
+ to [task-plan.md](task-plan.md) for all run setup and decomposition.