All checks were successful
Build App / compute-version (push) Successful in 2s
Build App / build-macos (push) Successful in 2m47s
Build Container / build-container (push) Successful in 9m0s
Build App / build-linux (push) Successful in 4m41s
Build App / build-windows (push) Successful in 5m33s
Build App / create-tag (push) Successful in 3s
Build App / sync-to-github (push) Successful in 10s
The mission-control (Flight Control) project is being closed upstream. This embeds the project files directly in the repo under container/mission-control/, bakes them into the Docker image at /opt/mission-control, and copies them into place at container startup instead of git cloning from GitHub. Also adds missing osc52-clipboard, audio-shim, and triple-c-sso-refresh to the programmatic Docker build context in image.rs. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
178 lines
5.3 KiB
Markdown
178 lines
5.3 KiB
Markdown
---
|
|
name: leg
|
|
description: Generate detailed implementation guidance for LLM execution. Use when creating atomic implementation steps from a flight.
|
|
---
|
|
|
|
# Leg Implementation Guidance
|
|
|
|
Generate detailed implementation guidance for LLM execution.
|
|
|
|
## Prerequisites
|
|
|
|
- Project must be initialized with `/init-project` (`.flightops/ARTIFACTS.md` must exist)
|
|
- A flight must exist before creating legs
|
|
|
|
## Workflow
|
|
|
|
### Phase 1: Context Loading
|
|
|
|
1. **Identify the target project**
|
|
- Read `projects.md` to find the project's path
|
|
|
|
2. **Verify project is initialized**
|
|
- Check if `{target-project}/.flightops/ARTIFACTS.md` exists
|
|
- **If missing**: STOP and tell the user to run `/init-project` first
|
|
- Do not proceed without the artifact configuration
|
|
|
|
3. **Read the artifact configuration**
|
|
- Read `{target-project}/.flightops/ARTIFACTS.md` for artifact locations and formats
|
|
|
|
4. **Read the parent flight**
|
|
- Understand the objective being achieved
|
|
- Review design decisions and constraints
|
|
- Note the technical approach defined
|
|
|
|
5. **Read the flight log in detail** (critical)
|
|
|
|
The flight log captures ground truth from actual implementation. Read it fully and extract:
|
|
- Actual outcomes from completed legs
|
|
- Deviations from the original plan
|
|
- Anomalies discovered during execution
|
|
- Environment details (versions, configurations)
|
|
- Decisions made during implementation
|
|
- Workarounds for issues encountered
|
|
|
|
6. **Identify this leg's scope**
|
|
- Which leg from the flight's leg list?
|
|
- What comes before and after?
|
|
- Dependencies on other legs?
|
|
- How do prior leg outcomes affect this leg?
|
|
|
|
7. **Identify environment constraints**
|
|
- Execution environment (devcontainer, WSL, cloud)?
|
|
- User context (root, specific user)?
|
|
- Environment variables or shell setup needed?
|
|
- Commands inside vs outside containers?
|
|
|
|
### Phase 2: Implementation Analysis
|
|
|
|
Deep dive into the specific implementation:
|
|
|
|
1. **Identify exact files to modify**
|
|
- Read existing files that will be changed
|
|
- Understand current code structure
|
|
- Note imports, dependencies, patterns
|
|
|
|
2. **Understand existing patterns**
|
|
- How is similar functionality implemented?
|
|
- What conventions does the codebase follow?
|
|
- What testing patterns are used?
|
|
|
|
3. **Determine inputs and outputs**
|
|
- What state exists before this leg?
|
|
- What state must exist after completion?
|
|
- What can the implementing agent assume?
|
|
|
|
4. **Identify edge cases**
|
|
- What could go wrong?
|
|
- What validation is needed?
|
|
- What error handling is required?
|
|
- If this leg modifies database schemas: does it include migration creation AND execution? Both must happen in the same leg — a schema defined but never migrated is a gap.
|
|
|
|
5. **Identify dependent code** (for interface changes)
|
|
- Does this leg modify shared interfaces?
|
|
- What files consume these interfaces?
|
|
- Should updating consumers be part of this leg?
|
|
|
|
6. **Identify platform considerations**
|
|
- Does this leg touch OS-specific features?
|
|
- What platform differences might affect implementation?
|
|
|
|
### Phase 3: Guidance Generation
|
|
|
|
Create the leg artifact using the format defined in `.flightops/ARTIFACTS.md`.
|
|
|
|
## Guidelines
|
|
|
|
### Writing Effective Objectives
|
|
|
|
State exactly what the leg accomplishes:
|
|
|
|
**Weak**: "Set up the database stuff"
|
|
|
|
**Strong**: "Create the User model with email, password_hash, and timestamp fields"
|
|
|
|
### Acceptance Criteria
|
|
|
|
Criteria must be:
|
|
- **Binary**: Either met or not met
|
|
- **Observable**: Can be verified by inspection or test
|
|
- **Complete**: Nothing else needed for "done"
|
|
|
|
**Weak**: "Code is clean" (subjective)
|
|
|
|
**Strong**: "User model exists in `prisma/schema.prisma`"
|
|
|
|
### Verification Steps
|
|
|
|
Tell the agent exactly *how* to confirm each criterion:
|
|
|
|
**Weak**: "Make sure it works"
|
|
|
|
**Strong**:
|
|
```markdown
|
|
## Verification Steps
|
|
- Run `npx prisma migrate status` — should show no pending migrations
|
|
- Run `npm test` — all tests pass
|
|
- Tab through form fields — focus order matches visual order
|
|
```
|
|
|
|
For accessibility work, include specific checks:
|
|
- Keyboard navigation sequences
|
|
- Screen reader commands to test
|
|
- Automated tool commands (Lighthouse, axe-core)
|
|
|
|
### Implementation Guidance
|
|
|
|
Be explicit, not implicit:
|
|
|
|
**Implicit**: "Add validation to the email field"
|
|
|
|
**Explicit**: "Add email validation using the `validator` library's `isEmail` function. Return HTTP 400 with `{ "error": "Invalid email format" }` on validation failure."
|
|
|
|
### Code Examples
|
|
|
|
Provide examples when:
|
|
- The codebase has specific patterns to follow
|
|
- There are multiple valid approaches
|
|
- The implementation isn't obvious from context
|
|
|
|
### Leg Sizing
|
|
|
|
A well-sized leg:
|
|
- Takes minutes to a few hours
|
|
- Is atomic (can be completed independently)
|
|
- Has clear, verifiable acceptance criteria
|
|
- Produces a working increment
|
|
|
|
**Too small**: Single-line change with no meaningful criteria
|
|
**Too large**: Would benefit from intermediate checkpoints
|
|
|
|
### Documenting Workarounds
|
|
|
|
When implementing a workaround, document:
|
|
- **What**: The workaround clearly
|
|
- **Why**: Why the ideal solution wasn't feasible
|
|
- **When to remove**: Condition for replacement
|
|
|
|
### Immutability
|
|
|
|
Once a leg is `in-flight`:
|
|
- Do NOT modify the leg document
|
|
- If requirements change, mark it `aborted` (changes rolled back)
|
|
- Create a new leg with updated requirements
|
|
|
|
## Output
|
|
|
|
Create the leg artifact using the location and format defined in `.flightops/ARTIFACTS.md`.
|