agentleFS
ravidsrkravidsrk/orca-fleet/skills/ship-it/SKILL.md

ship-it

Skill2 starsChanged 20 days agoMITView on GitHub

Turn intent or a frozen spec into a released, verified outcome on Orca. Entry is either a frozen spec (validate → decompose) or raw intent (grill → freeze → decompose); after freeze both enter one canonical pipeline: decompose → build (tested slices) → acceptance review → runtime-prove → land → release → observe, stopping at the highest release state you're authorized to reach (BUILT / PROMOTION_READY / RELEASED / DEPLOYED_AND_VERIFIED). Use when "build and ship this", "spec to shipped product", "ship this feature", "ship this fix", "land this change", "build me this feature", or an autonomous build-to-release run. Not for closing an existing backlog (clean-sweep), diagnosing why a build or test fails (root-cause), or a foggy goal that needs charting first (map-it).

46 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use modern-go, loop-it and 9 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • jidechaoSkill

    modern-go

    Modernize Go code by applying version-appropriate idioms and APIs (gofix-style transformations). Scans go.mod for the Go version, then transforms Go source files to use modern patterns—from Go 1.0 through 1.26+. Use when the user says "现代化","现代Go语言", "地道的", "idiomatic", "modernize", "modern-go", "update Go code", "gofix", or wants to upgrade Go idioms.

    Also in 3 projects that use this

  • jidechaoSkill

    loop-it

    Automated issue loop with checkpoint/resume: fetch open GitHub issues → dependency-aware topological sort → implement each issue end-to-end → review with /review-it → document with /note-it → ship with /ship-it → repeat. Persists state to .loop-state.json for crash recovery. Triggers on: loop-it, loop issues, auto implement, 批量实现, 循环实现, 实现所有issue, 恢复循环, resume loop.

    Also in 3 projects that use this

  • SentrySkill

    create-pr

    Create pull requests following Sentry conventions. Use when opening PRs, writing PR descriptions, or preparing changes for review. Follows Sentry's code review guidelines.

    Also in 5 projects that use this

  • GitHubSkill

    refactor

    Surgical code refactoring to improve maintainability without changing behavior. Covers extracting functions, renaming variables, breaking down god functions, improving type safety, eliminating code smells, and applying design patterns. Less drastic than repo-rebuilder; use for gradual improvements.

    Also in 4 projects that use this

  • GoogleSkill

    to-issues

    Break a plan, spec, or PRD into independently-grabbable issues on the project issue tracker using tracer-bullet vertical slices.

    Also in 3 projects that use this

  • Hugging FaceSkill

    simplify

    Refactor code after tests pass. The "Refactor" phase of Red-Green-Refactor.

    Also in 3 projects that use this

  • +1 more from jidechao

The file

We split this skill into the rules it gives an agent

5 rules. 0 are common, 2 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 42 edited versions we read keep these.

  • 2

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Read ARCHITECTURE.md once.

    line 37
  2. Very specific:

    If units or criteria are parked with human-approved reasons while the rest landed, append -WITH-PARKED to the highest clean state reached …

    line 54
  3. Distinctive:

    Every frozen acceptance criterion maps to a passing test in a TRACEABILITY table, verified on the BASE head (the integrated whole, not …

    line 102
  4. Distinctive:

    Every slice: merged PR, ancestry-verified, reviewed-SHA fresh, negative control passing (revert-audited on a ≥10% sample by a fresh worker).

    line 109
  5. Very specific:

    Every unit row: boolean flags true or an allowed park (CODE_CLOSED + VERIFY_AT_SCALE plan when acceptance is OPS-only — never a silent full …

    line 114

“Common” is measured: kept by at least 6 in 10 of the 42 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

ship-it — intent or spec → a released, verified outcome

You are the COORDINATOR. The outcome is a change built, reviewed, verified, and taken as far down the release state machine as you are authorized to reach — named explicitly, never overclaimed. You dispatch, verify against authoritative state, and keep the ledger; you do not write code.

Read ARCHITECTURE.md once. Composes decide-and-freeze, decompose-dag, build-change, acceptance-review, runtime-prove, linear-enumeration; rides dispatch-lifecycle, merge-serialization, reviewed-sha-freshness, evidence-manifest, gate-classification, sandbox-policy, ledger-contract, attention-budget. Worker TASK pack: exactly one of matt | addy | gstack (tdd=matt, build/verify=addy|matt, review/ship=gstack; the grill is coordinator-side, matt) — never co-mount two routers.

DEFERRED READS, loaded ON ENTERING their phase and never at activation: liveness-resume.md when a worker stalls or a run resumes · plan-review.md on the map-it handoff route · risk-review.md when a slice's surface triggers a lens · release.md at RELEASE · observe.md at DEPLOYED_AND_VERIFIED · human-handoff.md at a handoff · completion-audit.md + compound-learn.md at run close · mission-chaining.md as a chain link.

Terminal states (name the one you reach)

BUILT (all units merged to BASE, ancestry-verified) → PROMOTION_READY (promotion PR open with a traceability table) → RELEASED (human merged to default) → DEPLOYED_AND_VERIFIED (deployed revision == released SHA, canary green over its window). Stop at the highest state authorization and deploy availability allow; the manifest names it and what blocks the next.

If units or criteria are parked with human-approved reasons while the rest landed, append -WITH-PARKED to the highest clean state reached (e.g. BUILT-WITH-PARKED). Allowed parks: needs-human, CODE_CLOSED + VERIFY_AT_SCALE plan, or human-authorized scope exclusion. Never claim a clean terminal while parked work is in scope. SOLO RUN (no second GitHub identity): a mutation unit cannot close — record RED with the unit short of REVIEWED, or re-dispatch on the executed-control lane only if it qualified dark-eligible at dispatch; never self-approve (acceptance-review.md).

Preflight

orca status --json running · orchestration on · Orca CLI + orchestration skill available · git. Repo state: real code → foundation fills gaps, tests green at baseline (else you can't tell regressions) · empty/near-empty git repo → foundation scaffolds · no git repo → git init + minimal README/.gitignore commit on default, then a remote (an existing one, or gh repo create private after a human confirm — it is account-visible) so write preflight can run; a local-only host takes the offline lane below and stops at BASE.

Then runtime/scripts/preflight.py --mission ship-it --base <BASE> --fork-point <ledger-header sha> green (BASE ≠ default — dispatch-lifecycle.md; requires gh + a visible remote, or --offline --default <branch> for the no-gh lane from unit one). If gh later dies mid-run, use merge-serialization no-gh local merge (PR_OPEN=n/a); either way the run stops at BASE with the promotion PR owed. Ledger: header + phase marker + unit boolean flags (ledger-contract.md).

Pipeline (one canonical path after freeze)

ENTRY ─┬─ frozen spec  → VALIDATE (decide-and-freeze: validate branch) → DECOMPOSE
       ├─ intent/draft → GRILL + FREEZE (decide-and-freeze: grill branch, human gate #1) → DECOMPOSE
       └─ map-it handoff (frozen spec + frozen prepared DAG) → VALIDATE the freeze, re-run
          decompose-dag's VERIFY section on the prepared DAG, ADOPT its task ids — skip DECOMPOSE
          (re-decomposing would duplicate or orphan the prepared tasks)
   → DECOMPOSE (decompose-dag: tracer-bullet slices → Orca DAG; read orca-dag-semantics.md here — it
     is the DAG phase's doc, not standing load) — first two routes only
   → BUILD waves (build-change per slice; foundation serializes, slices parallelize under
     attention-budget WIP)
   → ACCEPTANCE-REVIEW (build-blind, per slice) [+ RISK-REVIEW lens if the slice triggers one]
   → RUNTIME-PROVE per slice (doubt-driven artifact review + drive the real entry point)
   → LAND (merge-serialization) → INTEGRATED PROVE at the BASE head (runtime-prove Part B over the
     whole; the TRACEABILITY table is verified here — per-slice green alone never reaches BUILT) → BUILT
   → RELEASE state machine (release.md): PROMOTION_READY → [human gate #2] → RELEASED
   → DEPLOYED_AND_VERIFIED phase (release.md): observe.md BASELINE captured first, THEN deploy,
     then observe.md's canary loop — the state is claimed only after the window is green
   → REFLECT (`compound-learn` + readiness/backlog/OPS queue — ledger-contract.md)

Each phase runs its playbook; each worker emits an evidence manifest; the coordinator verifies each against authoritative state (evidence-manifest.md) before advancing. Unit flags advance only in the ledger file (BUILD_DONE…WT_CLEAN).

Convergence proof (this mission's definition of done)

  • Every frozen acceptance criterion maps to a passing test in a TRACEABILITY table, verified on the BASE head (the integrated whole, not per-slice-only). The denominator is not worker-chosen and it is TWO-LEVEL (evidence-manifest.md): each slice manifest binds to ITS OWN task-spec criteria at contract.digest (so a narrow slice is completable), and the coordinator verifies the UNION of slice contracts equals the frozen spec's criterion set — at decompose verification and again here. A criterion no slice claimed is unassigned work; a criterion with no passing test is UNMET work. Neither is a waiver.
  • Every slice: merged PR, ancestry-verified, reviewed-SHA fresh, negative control passing (revert-audited on a ≥10% sample by a fresh worker).
  • The manifest names the terminal release state with its evidence (merge SHA / deploy revision / canary window verdict). Reaching BASE with an open promotion PR is PROMOTION_READY, never RELEASED.
  • Noticed-but-not-touched adjacent work is a backlog file (scope discipline made visible).
  • Every unit row: boolean flags true or an allowed park (CODE_CLOSED + VERIFY_AT_SCALE plan when acceptance is OPS-only — never a silent full close).

Gates (only these)

  • Human gate #1: FREEZE (intent entry only). Human gate #2: PROMOTION to default (one-way, gate-classification.md). Deploy and rollback are one-way too: executed only under a recorded human grant (release.md; observe.md never auto-rolls back). Lane B product forks: draft both, then human. Everything else is mechanical/taste per the classifier (append the DECISIONS log under docs/). Merge ≠ deploy; the fleet never self-merges the promotion or self-authorizes a deploy.

Supervision + resume

Stalls → liveness-resume.md WATCH (reflection-before-retry). Waves respect attention-budget.md. Compaction → CONTEXT HANDOFF then RESUME (ledger-contract.md). Death → RESUME (ledger-scoped, git-verified).

Anti-patterns

Fanning the grill to a worker (HITL leak). Building a moving spec (freeze first). Per-slice green mistaken for done (runtime-prove the integrated whole). Claiming RELEASED at an open PR. Two playbook routers in one worker TASK. Loading a DEFERRED READ at activation — it is phase-scoped for a reason.

Related

map-it (charts a foggy goal into the spec this consumes), clean-sweep (close an existing set), review-it (verdict without building), mission-chaining (gated tail of a harden-it/prove-it chain).

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.