agentleFS
dannys-code-cornerdannys-code-corner/incan/.agents/skills/bump-rfc/SKILL.md

bump-rfc

Skill73 starsChanged 6 days agoApache-2.0View on GitHub

Transition an Incan RFC from one status to the next. Use when the user asks to promote, advance, or finalize an RFC, or says /bump-rfc. Handles Draft → Planned, Planned → In Progress, and In Progress → Implemented transitions.

The file

We split this skill into the rules it gives an agent

9 rules. About 0 are common, 0 are distinctive, and 9 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 9

    Very specific

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

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

    Read the RFC's current Status: field, then follow the matching section below.

    line 19
  2. Very specific:

    Only ## Unresolved questions: rename → ## Design Decisions.

    line 42
  3. Very specific:

    Only ## Design Decisions: leave as-is.

    line 43
  4. Very specific:

    When an implementation PR exists, record its link in RFC PR and retain other implementation PR links.

    line 72
  5. Very specific:

    After the ## Layers affected section, add a ## Progress Checklist section.

    line 74
  6. Very specific:

    Update the header: Status: Planned → Status: In Progress.

    line 124
  7. Very specific:

    If the RFC uses Shipped in:, set Shipped in: vX.Y.

    line 153
  8. Very specific:

    Ensure the implementation PR body includes a closing keyword for the issue, for example Closes #<NNN>.

    line 160
  9. Very specific:

    Add an entry to workspaces/docs-site/docs/release_notes/<vX_Y>.md following the project's release notes style:

    line 171

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “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

Bump RFC — Incan Project

Overview

RFCs move through four statuses. Each transition requires specific file edits, GitHub actions, and prerequisites.

StatusMeaning
DraftDesign and/or review in flight (may have open questions, or none while awaiting review before Planned)
PlannedDesign settled; ready for implementation
In ProgressActive implementation underway
ImplementedImplementation complete and included in a merge-ready PR, or already shipped

Read the RFC's current Status: field, then follow the matching section below.


Draft → Planned

Prerequisites

All answered: nothing open under ## Unresolved questions; settled record under ## Design Decisions (see review-rfc → Planned+ rule). No fake questions.

Before bumping, verify:

  • No open bullets under ## Unresolved questions (if present). No disguised open items under Design Decisions.
  • At least one review round has been completed (use /review-rfc if not done).
  • GitHub issue exists and is linked in the RFC header.
  • User has confirmed the bump (ask if unclear).
  • Discuss any open design decisions with the user.

File changes

Outcome: Planned+ rule — no ## Unresolved questions; tail is ## Design Decisions only.

  1. Both ## Design Decisions and ## Unresolved questions: merge remainder into Design Decisions, drop ## Unresolved questions.
  2. Only ## Unresolved questions: rename → ## Design Decisions.
  3. Only ## Design Decisions: leave as-is.
  4. Strip EOF <!-- Rename this section to "Design Decisions"... --> if present.
  5. Status: Draft → Status: Planned.

GitHub actions

# Remove RFC label, add feature label
gh api repos/dannys-code-corner/incan/issues/<NNN>/labels/RFC -X DELETE
gh api repos/dannys-code-corner/incan/issues/<NNN>/labels -X POST --input - <<'EOF'
{"labels":["feature"]}
EOF

# Post a status comment
gh issue comment <NNN> --repo dannys-code-corner/incan --body \
  "RFC has moved to **Planned** status. Design is settled; implementation can begin."

Planned → In Progress

Prerequisites

  • At least one implementation PR has been opened or a contributor has picked up the work.
  • User has confirmed the bump.

File changes

When an implementation PR exists, record its link in RFC PR and retain other implementation PR links. If work has started without an implementation PR, leave RFC PR as — until one is opened. Never use a proposal or documentation-only PR for this field.

After the ## Layers affected section, add a ## Progress Checklist section. An RFC describes the end state, so a delivery plan with phases belongs on the GitHub issue, not in the RFC.

## Progress Checklist — fine-grained - [ ] items, grouped by area. These will be ticked as PRs land. Example shape:

## Progress Checklist

### Spec / design

- [ ] Lock down edge cases for `<X>` and add to "Design Decisions".

### Parser / AST

- [ ] Lexer: emit new token for `<keyword>`.
- [ ] Parser: parse `<construct>` in declaration/expression position.
- [ ] AST: represent as `<NodeKind>` with correct span.
- [ ] Formatter: round-trip `<construct>` stably.

### Typechecker

- [ ] Validate at declaration sites.
- [ ] Resolve in expression positions.
- [ ] Error: `<diagnostic name>` for invalid usage.

### Lowering / IR

- [ ] Lower `<construct>` to `<IrNode>`.

### Emission

- [ ] Emit correct Rust for `<construct>`.

### Stdlib / Runtime

- [ ] Declare in `stdlib/<module>.incn` (if applicable).
- [ ] Wire Rust backing type in the owning component's facet, `loaves/stdlib/<component>/rust/` (if applicable).

### Tests

- [ ] Existing check cases extended for accepted syntax and valid usage.
- [ ] Existing check cases extended for invalid usage → correct diagnostic code.
- [ ] Existing behavior cases extended for `<construct>` in expression position and observable execution.
- [ ] Smallest relevant case/area selectors pass during development; affected whole families pass at commit points, per `workspaces/contracts/README.md`.

### Docs

- [ ] Update relevant docs-site pages.
- [ ] Add release notes entry.
  1. Update the header: Status: Planned → Status: In Progress.

GitHub actions

Post the implementation plan to the GitHub issue, where delivery is tracked:

gh issue comment <NNN> --repo dannys-code-corner/incan --body \
  "RFC has moved to **In Progress**. Implementation plan below; the RFC carries the progress checklist.

<the implementation plan and checklist>"

In Progress → Implemented

Prerequisites

  • All - [ ] items in the Progress Checklist are - [x].
  • Implementation is complete and covered by a merge-ready PR, or already merged to main.
  • Required local and/or CI verification has passed for the implementation PR.
  • Release version is known.
  • User has confirmed the bump.

File changes

  1. Update the header: Status: In Progress → Status: Implemented.
  2. Fill the release field with the actual Incan release version:
    • If the RFC uses Shipped in:, set Shipped in: vX.Y.
    • If the RFC uses Implemented version:, set Implemented version: X.Y.Z.
  3. Move the RFC document into workspaces/docs-site/docs/RFCs/closed/implemented/ and keep the same filename.
  4. Optionally rename ## Progress Checklist → ## Implementation log to signal it is historical rather than active.

GitHub actions

Ensure the implementation PR body includes a closing keyword for the issue, for example Closes #<NNN>. Do not manually close the issue as part of the RFC bump; the PR merge should close it.

Optionally post a traceability comment while the PR is still open:

gh issue comment <NNN> --repo dannys-code-corner/incan --body \
  "RFC has moved to **Implemented** in the implementation PR. Implementation is complete and targeted for vX.Y; the issue will close when the PR merges."

Release notes

Add an entry to workspaces/docs-site/docs/release_notes/<vX_Y>.md following the project's release notes style:

- **<Area>**: <One-line description of the feature> (RFC NNN, #<issue>)

Quick reference

FromToKey file changeKey GitHub action
DraftPlannedPlanned+ rule (File changes above); update StatusRelabel RFC → feature
PlannedIn ProgressAdd Progress Checklist; update StatusPost plan as issue comment
In ProgressImplementedUpdate Status; fill release field; move file to closed/implemented/; optionally rename checklist to logEnsure PR closes issue; optional traceability comment

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.