Development Lifecycle Router Maintainer
Use this skill as a routing layer: choose the current lifecycle stage, name the
exit bar, and hand off to the smallest capable maintainer skill or normal coding
workflow.
The reason this skill exists is to prevent two expensive mistakes:
- jumping from a complaint into implementation before the correct stage is known
- calling a stage complete without the product proof or reviewer evidence that
the user's request actually requires
Keep this file thin. Load the reference files below only when the current route
needs them.
Reference Map
references/route-selection.md: stage classifier, narrow-skill routing,
meta-request precedence, and skill-optimization boundaries.
references/verification-review.md: verifier gates, terminal product proof,
spawned reviewer policy, reviewer lenses, agent prompt templates, and evidence
ledger.
references/special-routes.md: recovery, component lab, performance
benchmark, runtime/provider contracts, and hard real-local validation.
references/handoff-git.md: git safety, final handoff shape, acceptance
blockers, and common route templates.
Fast Start
Before editing files, running long checks, spawning reviewers, or committing:
- Inspect
git status --short --branch.
- Classify the current stage.
- State the selected route and downstream owner in one concise update.
- Name the artifact or proof required to leave the current stage.
- For development work, state the full loop before editing:
implementation, writer checks, verifier, final reviewers, reconciliation, and
handoff. Development work enters
spawn-required mode by default; the user
does not need to separately ask for subagents, review, or verification.
- Decide which references are needed for this route and read only those.
For obvious narrow requests, do not expand a lifecycle plan. Say the route,
load the narrow skill, and execute it.
Non-Use Gate
Use the narrow maintainer directly when all of these are true:
- the prompt names a concrete surface, run, PR, release, screenshot, data path,
or local runtime problem
- the next useful artifact is obvious for that surface
- the task does not need cross-stage sequencing, reviewer orchestration, or
destructive recovery judgment before the narrow work can begin
Keep ownership in this router only when it adds value by choosing a stage,
resolving ambiguity, sequencing multiple stages, or protecting a high-risk
handoff.
Core Rule
Route first, then execute.
State the lifecycle stage and acceptance bar before implementation. Any routed
development task enters spawn-required mode by default. This applies when the
task changes user-visible, agent-visible, Desktop, release, runtime, CLI,
workflow, or product behavior, even if the user only says "fix",
"optimize", or "推进". The normal implementation sandwich is:
writer implementation
-> writer basic checks
-> optional lightweight pre-review
-> spawn availability probe if needed
-> spawned verifier black-box acceptance
-> spawned final reviewer gate
-> handoff / commit / push
Pre-review is only for catching obvious diff, startup, safety, scope, or test
readiness problems before verifier time is spent. It is not the final reviewer
gate. Final review follows verifier PASS so reviewers can inspect the diff,
tests, handoff, and verifier evidence together.
Separate verification from review:
- verification asks whether the product path meets the requirement from the
user's side
- review asks whether the diff, architecture, scope, tests, proof, and handoff
are trustworthy
For development routes, do not treat the loop as optional just because the user
said "fix", "优化", "推进", or omitted the word review. User-visible,
agent-visible, Desktop, release, runtime, CLI, workflow, and Rudder
changes need the verifier plus final reviewer loop before complete handoff. If a
route truly does not need that loop, say why it is not applicable rather than
silently skipping it.
spawn-required means:
- after writer checks, probe the available spawn/subagent mechanism before
declaring verifier or reviewers unavailable
- if spawning works, create the verifier and final reviewer agents and wait for
their verdicts before complete handoff
- if spawning is unavailable, record the failed probe as
blocked: spawned verifier/reviewer unavailable
- do not claim complete handoff, commit/push readiness, or review pass from
author-run tests, CI, screenshots, self-review, or serial personas alone
Stage Classifier
Choose one primary stage. If multiple stages are present, choose the earliest
blocking stage.
intake: user intent, target artifact, or mode is unclear
requirements: problem framing, scenarios, acceptance criteria, or "do you
understand?"
advisor: first-principles diagnosis of a build, UI, workflow, trace, or
proposal that feels wrong
ui_design: interface direction, wireframe, visual hierarchy, or
screenshot-based design judgment before code
implementation: approved direction or direct fix/build request
verification: tests, CI, E2E, screenshots, Desktop smoke, actor-run-chain,
release checks, or black-box acceptance proof
review: review, PM judgment, first-principles critique, or
Codex/session/PR/commit verdict
debug: failed run, UI path, data path, CI job, Desktop app, or local process
release: canary/stable release, npm, Desktop assets, tags, or GitHub
Release state
handoff: final summary, validation, commit, push, residual risk, or PR
recovery: dirty worktree, stash, interrupted run, rollback, delete/restore,
or suspected old Codex work
component_lab: UI Lab, component inventory, fixtures, or design-system
coverage
performance_benchmark: benchmark or optimize before the exact bottleneck is
known
runtime_contract: provider/runtime/tool-call/transcript/parser/CLI or
agent-visible contract parity
skill_optimization: optimize, harden, refactor, validate, benchmark,
package, or improve a named skill or workflow skill
For full routing detail, read references/route-selection.md.
Narrow Routes
Prefer the smallest matching owner:
- screenshot-driven UI polish:
rudder-ui-polish-maintainer
- missing, stale, suspicious, or slow page data:
rudder-data-path-diagnostician-maintainer
- run transcript, stdout/stderr, recent run batch, or run-quality issue:
debug-run-transcript-maintainer
- Desktop startup, packaged app, Electron shell, update, profile, local
instance recovery:
rudder-desktop-dev-recovery-maintainer
- release, npm, GitHub Release, Desktop assets, tags, dist-tags, install smoke:
release-maintainer
- review-only session/PR/commit/proposal/UI/release outcome:
agent-work-reviewer-maintainer or
codex-session-product-reviewer-maintainer
- local branch preview:
rudder-worktree-preview-maintainer
- GitHub PR checkout/preview/review:
pr-local-preview-maintainer
- mock/demo/seed data:
mock-data-maintainer
- landing screenshots:
landing-proof-shots-maintainer
- stop/restart/clean local dev runtime:
stop-rudder-dev-maintainer
- new or existing reusable workflow skill creation, optimization, eval,
benchmark, packaging, or description tuning:
skill-creator
If this router itself is the target artifact for optimization, route to
skill-creator or the user-requested skill-engineering workflow. Do not run
this router's normal product lifecycle except for git safety around the patch.
Skill Optimization Boundary
The newest user instruction is the routing source of truth.
If the user says a skill "needs optimization", "should be hardened", "always
does the wrong thing", "I have to ask this every time", or asks to use
skill-creator on a named skill, classify the turn as
skill_optimization.
Treat screenshots, prior requirements, session ids, quoted logs, and prior
assistant recommendations as evidence for the skill failure. They are not the
active product task unless the newest user instruction says to continue that
product task.
For this route:
- name the target skill and path
- extract the failed decision point
- choose the smallest durable owner: target skill body, frontmatter
description, eval case, memory update, or no-op
- add or update a validation case when the behavior should change next time
Verification And Review Defaults
For user-visible, agent-visible, Desktop, release, runtime, CLI, workflow, or
product changes, identify the terminal product surface before calling
verification complete. Use product-acceptance-verifier-maintainer for a
distinct black-box acceptance pass. If the product path is too expensive or
unsafe to exercise, record verifier blocked or substituted with the exact
reason; do not silently skip acceptance.
Spawned verifier and reviewer gates are the default for routed development
artifacts when this router owns the lifecycle. If spawning is available, the
verifier should be a distinct child agent using
agents/product-verifier.md or equivalent product-acceptance-verifier-maintainer
instructions. Final reviewers should be child agents using the templates under
agents/ or equivalent reviewer prompts, with these lenses:
- functional trust
- adversarial
- heuristic/product-systems
Do not replace spawned verifier or reviewer verdicts with self-review, serial
personas, or author-claimed screenshots. If the active runtime cannot spawn
agents after a real availability probe, record blocked: spawned verifier/reviewer unavailable with the probe evidence instead of claiming the loop passed.
For the full verifier/reviewer contract, read
references/verification-review.md.
Execution Outline
- Build a compact routing packet:
- latest user request and corrections
git status --short --branch
- named files, screenshots, sessions, runs, PRs, commits, or plans
- relevant
AGENTS.md route docs and nearby skill contracts
- changed-file ownership if cleanup or recovery is involved
- Declare route and stage exits.
- Execute the current stage using the narrow owner or normal repo workflow.
- Run the required verification and review gates for that route.
- Hand off with evidence, blockers, git state, and commit/push status.
Minimal Handoff Shape
Route: ...
Stage exits: ...
Used: ...
Review: spawned reviewers / blocked / not applicable
Validation: passed / not run / not proven
Evidence: required / scenario / proven / missing or substituted
Git: commit / push
Residual risk: ...
1---2name: development-lifecycle-router-maintainer3description: Use when a Rudder development request has an unclear lifecycle stage or owner: requirements, advisor analysis, UI design, implementation, verification, review, release, recovery, runtime contracts, performance, component lab, handoff, or named-skill optimization.4---56# Development Lifecycle Router Maintainer78Use this skill as a routing layer: choose the current lifecycle stage, name the9exit bar, and hand off to the smallest capable maintainer skill or normal coding10workflow.1112The reason this skill exists is to prevent two expensive mistakes:1314- jumping from a complaint into implementation before the correct stage is known15- calling a stage complete without the product proof or reviewer evidence that16 the user's request actually requires1718Keep this file thin. Load the reference files below only when the current route19needs them.2021## Reference Map2223- `references/route-selection.md`: stage classifier, narrow-skill routing,24 meta-request precedence, and skill-optimization boundaries.25- `references/verification-review.md`: verifier gates, terminal product proof,26 spawned reviewer policy, reviewer lenses, agent prompt templates, and evidence27 ledger.28- `references/special-routes.md`: recovery, component lab, performance29 benchmark, runtime/provider contracts, and hard real-local validation.30- `references/handoff-git.md`: git safety, final handoff shape, acceptance31 blockers, and common route templates.3233## Fast Start3435Before editing files, running long checks, spawning reviewers, or committing:36371. Inspect `git status --short --branch`.382. Classify the current stage.393. State the selected route and downstream owner in one concise update.404. Name the artifact or proof required to leave the current stage.415. For development work, state the full loop before editing:42 implementation, writer checks, verifier, final reviewers, reconciliation, and43 handoff. Development work enters `spawn-required` mode by default; the user44 does not need to separately ask for subagents, review, or verification.456. Decide which references are needed for this route and read only those.4647For obvious narrow requests, do not expand a lifecycle plan. Say the route,48load the narrow skill, and execute it.4950## Non-Use Gate5152Use the narrow maintainer directly when all of these are true:5354- the prompt names a concrete surface, run, PR, release, screenshot, data path,55 or local runtime problem56- the next useful artifact is obvious for that surface57- the task does not need cross-stage sequencing, reviewer orchestration, or58 destructive recovery judgment before the narrow work can begin5960Keep ownership in this router only when it adds value by choosing a stage,61resolving ambiguity, sequencing multiple stages, or protecting a high-risk62handoff.6364## Core Rule6566Route first, then execute.6768State the lifecycle stage and acceptance bar before implementation. Any routed69development task enters `spawn-required` mode by default. This applies when the70task changes user-visible, agent-visible, Desktop, release, runtime, CLI,71workflow, or product behavior, even if the user only says "fix",72"optimize", or "推进". The normal implementation sandwich is:7374```text75writer implementation76-> writer basic checks77-> optional lightweight pre-review78-> spawn availability probe if needed79-> spawned verifier black-box acceptance80-> spawned final reviewer gate81-> handoff / commit / push82```8384Pre-review is only for catching obvious diff, startup, safety, scope, or test85readiness problems before verifier time is spent. It is not the final reviewer86gate. Final review follows verifier `PASS` so reviewers can inspect the diff,87tests, handoff, and verifier evidence together.8889Separate verification from review:9091- verification asks whether the product path meets the requirement from the92 user's side93- review asks whether the diff, architecture, scope, tests, proof, and handoff94 are trustworthy9596For development routes, do not treat the loop as optional just because the user97said "fix", "优化", "推进", or omitted the word review. User-visible,98agent-visible, Desktop, release, runtime, CLI, workflow, and Rudder99changes need the verifier plus final reviewer loop before complete handoff. If a100route truly does not need that loop, say why it is `not applicable` rather than101silently skipping it.102103`spawn-required` means:104105- after writer checks, probe the available spawn/subagent mechanism before106 declaring verifier or reviewers unavailable107- if spawning works, create the verifier and final reviewer agents and wait for108 their verdicts before complete handoff109- if spawning is unavailable, record the failed probe as110 `blocked: spawned verifier/reviewer unavailable`111- do not claim complete handoff, commit/push readiness, or review pass from112 author-run tests, CI, screenshots, self-review, or serial personas alone113114## Stage Classifier115116Choose one primary stage. If multiple stages are present, choose the earliest117blocking stage.118119- `intake`: user intent, target artifact, or mode is unclear120- `requirements`: problem framing, scenarios, acceptance criteria, or "do you121 understand?"122- `advisor`: first-principles diagnosis of a build, UI, workflow, trace, or123 proposal that feels wrong124- `ui_design`: interface direction, wireframe, visual hierarchy, or125 screenshot-based design judgment before code126- `implementation`: approved direction or direct fix/build request127- `verification`: tests, CI, E2E, screenshots, Desktop smoke, actor-run-chain,128 release checks, or black-box acceptance proof129- `review`: review, PM judgment, first-principles critique, or130 Codex/session/PR/commit verdict131- `debug`: failed run, UI path, data path, CI job, Desktop app, or local process132- `release`: canary/stable release, npm, Desktop assets, tags, or GitHub133 Release state134- `handoff`: final summary, validation, commit, push, residual risk, or PR135- `recovery`: dirty worktree, stash, interrupted run, rollback, delete/restore,136 or suspected old Codex work137- `component_lab`: UI Lab, component inventory, fixtures, or design-system138 coverage139- `performance_benchmark`: benchmark or optimize before the exact bottleneck is140 known141- `runtime_contract`: provider/runtime/tool-call/transcript/parser/CLI or142 agent-visible contract parity143- `skill_optimization`: optimize, harden, refactor, validate, benchmark,144 package, or improve a named skill or workflow skill145146For full routing detail, read `references/route-selection.md`.147148## Narrow Routes149150Prefer the smallest matching owner:151152- screenshot-driven UI polish: `rudder-ui-polish-maintainer`153- missing, stale, suspicious, or slow page data:154 `rudder-data-path-diagnostician-maintainer`155- run transcript, stdout/stderr, recent run batch, or run-quality issue:156 `debug-run-transcript-maintainer`157- Desktop startup, packaged app, Electron shell, update, profile, local158 instance recovery: `rudder-desktop-dev-recovery-maintainer`159- release, npm, GitHub Release, Desktop assets, tags, dist-tags, install smoke:160 `release-maintainer`161- review-only session/PR/commit/proposal/UI/release outcome:162 `agent-work-reviewer-maintainer` or163 `codex-session-product-reviewer-maintainer`164- local branch preview: `rudder-worktree-preview-maintainer`165- GitHub PR checkout/preview/review: `pr-local-preview-maintainer`166- mock/demo/seed data: `mock-data-maintainer`167- landing screenshots: `landing-proof-shots-maintainer`168- stop/restart/clean local dev runtime: `stop-rudder-dev-maintainer`169- new or existing reusable workflow skill creation, optimization, eval,170 benchmark, packaging, or description tuning: `skill-creator`171172If this router itself is the target artifact for optimization, route to173`skill-creator` or the user-requested skill-engineering workflow. Do not run174this router's normal product lifecycle except for git safety around the patch.175176## Skill Optimization Boundary177178The newest user instruction is the routing source of truth.179180If the user says a skill "needs optimization", "should be hardened", "always181does the wrong thing", "I have to ask this every time", or asks to use182`skill-creator` on a named skill, classify the turn as183`skill_optimization`.184185Treat screenshots, prior requirements, session ids, quoted logs, and prior186assistant recommendations as evidence for the skill failure. They are not the187active product task unless the newest user instruction says to continue that188product task.189190For this route:191192- name the target skill and path193- extract the failed decision point194- choose the smallest durable owner: target skill body, frontmatter195 description, eval case, memory update, or no-op196- add or update a validation case when the behavior should change next time197198## Verification And Review Defaults199200For user-visible, agent-visible, Desktop, release, runtime, CLI, workflow, or201product changes, identify the terminal product surface before calling202verification complete. Use `product-acceptance-verifier-maintainer` for a203distinct black-box acceptance pass. If the product path is too expensive or204unsafe to exercise, record verifier `blocked` or `substituted` with the exact205reason; do not silently skip acceptance.206207Spawned verifier and reviewer gates are the default for routed development208artifacts when this router owns the lifecycle. If spawning is available, the209verifier should be a distinct child agent using210`agents/product-verifier.md` or equivalent `product-acceptance-verifier-maintainer`211instructions. Final reviewers should be child agents using the templates under212`agents/` or equivalent reviewer prompts, with these lenses:213214- functional trust215- adversarial216- heuristic/product-systems217218Do not replace spawned verifier or reviewer verdicts with self-review, serial219personas, or author-claimed screenshots. If the active runtime cannot spawn220agents after a real availability probe, record `blocked: spawned verifier/reviewer221unavailable` with the probe evidence instead of claiming the loop passed.222223For the full verifier/reviewer contract, read224`references/verification-review.md`.225226## Execution Outline2272281. Build a compact routing packet:229 - latest user request and corrections230 - `git status --short --branch`231 - named files, screenshots, sessions, runs, PRs, commits, or plans232 - relevant `AGENTS.md` route docs and nearby skill contracts233 - changed-file ownership if cleanup or recovery is involved2342. Declare route and stage exits.2353. Execute the current stage using the narrow owner or normal repo workflow.2364. Run the required verification and review gates for that route.2375. Hand off with evidence, blockers, git state, and commit/push status.238239## Minimal Handoff Shape240241```markdown242Route: ...243Stage exits: ...244Used: ...245Review: spawned reviewers / blocked / not applicable246Validation: passed / not run / not proven247Evidence: required / scenario / proven / missing or substituted248Git: commit / push249Residual risk: ...250```