# Session 0018.0 — Transcript

> App: dev-claude-plugin
> Start: 2026-06-05T18-04 (PST)
> End: 2026-06-05T18-10 (PST)
> Type: coding
> Status: **FINALIZED**

## Launch prompt

Resumed via `/goal next` → stored `Next /goal:` field: **align the plugin skills
to the `flotilla-only-provisioning` rule** (engineering §8.5 / digest named rule).
Scope `scaffold-gcp-project`, `wgl-gitea-admin`'s repo-create path, and
`wgl-session-coding-init`'s `DEPLOY-FLOTILLA.md` card so initial stand-up hands the
operator the `launch-app`/`flotilla` command(s) rather than describing by-hand
provisioning. Edit plugin source only + version bump (per CLAUDE.md).

## Plan

Canonical rule: engineering handbook **§8.5 "Provisioning is a flotilla gesture"**
+ digest `flotilla-only-provisioning`. Key nuance found while reading §8.5: the
suite's **phase skills `scaffold-gcp-project` / `scaffold-gitea-repos` /
`provision-vm` ARE the legitimate front door** — the rule is "the agent doesn't
provision on the operator's behalf; it hands the operator the `launch-app`/
`flotilla` command(s) and waits (operator-run gesture, holds in both postures)."
So the alignment **frames these skills within the suite + asserts §8.5**, it does
not gut working skills. Ad hoc ops on existing resources stay unaffected.

1. **`scaffold-gcp-project/SKILL.md`** — banner placing it as the cloud-foundation
   *phase* of `launch-app`; assert §8.5 operator-run-gesture rule; cross-ref sibling
   phases. Keep the gcloud detail.
2. **`wgl-gitea-admin/SKILL.md`** — scope the repo-**create** path to flotilla;
   keep rename/visibility/transfer/collaborator/webhook (ad hoc on existing repos).
3. **`wgl-session-coding-init/DEPLOY-FLOTILLA.md`** — reframe "Standing up a new
   app" around the `launch-app` suite; add §8.5 to Source of truth.
4. **Version bump** `plugin.json` 0.15.0 → 0.16.0; README skills-table sweep.

## Pre-state

- Branch `main`, clean, on `origin/main` at `f406d8a` (0.15.0, finalize-on-goal).
- Source version 0.15.0; the "align plugin skills to flotilla-only-provisioning"
  follow-up open since the canonical rule landed in **engineering** (session 0003,
  PR #11, merge `c551b8b`) with the plugin skills intentionally deferred.

## Session arc

1. **Session gate / resume.** Opened with `/goal next`. Read the project memory's
   `Next /goal:` field → the flotilla-only-provisioning alignment. Classified as a
   **coding** session; ran `wgl-session-coding-init next goal`.
2. **Claim.** Peeked (dry-run: nothing in flight) → claimed **session 0018**
   (`2ba432b`). Baseline clean on `origin/main`. CLAUDE.md already imports the
   digest.
3. **Read the canonical rule.** Read engineering handbook **§8.5** + the digest
   rule, and the three target source files. **Discovered the key nuance:** §8.5
   lists `scaffold-gcp-project` / `scaffold-gitea-repos` / `provision-vm` as the
   suite's legitimate **phase skills** — the front door, not by-hand provisioning.
   This reshaped the approach from "gut the by-hand sequences" to "frame within the
   suite + assert §8.5."
4. **Edits** (branch `feat/align-flotilla-only-provisioning`):
   - `scaffold-gcp-project/SKILL.md`: §8.5 banner (cloud-foundation phase of
     launch-app, operator-run gesture both postures, ad hoc carve-out); Scope
     guardrail cross-refs sibling phases.
   - `wgl-gitea-admin/SKILL.md`: scoped the repo-CREATE path to
     `scaffold-gitea-repos`/flotilla (guard blockquote + Discipline bullet); kept
     rename/visibility/transfer/collaborator/webhook on existing repos as ad hoc
     ops explicitly unaffected.
   - `wgl-session-coding-init/DEPLOY-FLOTILLA.md`: rewrote "Standing up a new app"
     around the `launch-app` suite as the one front door + operator-run-gesture
     rule; added §8.5 to Source of truth.
   - `README.md`: tightened the `wgl-gitea-admin` + `scaffold-gcp-project` rows.
   - `plugin.json`: 0.15.0 → 0.16.0.
5. **Verify.** `plugin.json` validates; §8.5 framing present in all three skills;
   no stale `0.15.0` refs outside docs.
6. **Land (yolo, end to end).** Commit `c3e207a` → push → **PR #10** (Gitea API) →
   `--no-ff` merge (`6fee333`) → sync local main → deleted feature branch.

## Cut state

- `main` at `6fee333`, clean, pushed. Source version **0.16.0**.
- All three provisioning-adjacent skills conform to §8.5; README + version updated.
- Installed/live cache **lags** at 0.15.0 — operator re-install needed for 0.16.0.

## Deferred decisions

- **Framed the suite phase skills within `launch-app` rather than gutting them.**
  §8.5 explicitly lists `scaffold-gcp-project` / `scaffold-gitea-repos` /
  `provision-vm` as the suite's legitimate phase skills (the front door), so the
  alignment *positions them within the suite + asserts the operator-run-gesture
  rule* instead of removing the gcloud / API detail. Alternative considered:
  strip the by-hand `gcloud` / Gitea-create sequences entirely. Rejected — they're
  what the suite phases actually run; the rule is about *who drives* (operator,
  not agent), not about deleting the runbook.
- **Kept `wgl-gitea-admin`'s frontmatter `description` "create" trigger.** The
  skill still legitimately handles ad hoc one-off repo creation, so the trigger
  stays valid; the body now guards new-app stand-up toward flotilla. Alternative:
  drop "create" from the description. Rejected — would lose the ad hoc trigger.
- **Minor bump 0.16.0, not patch.** Observable behavior change across multiple
  skills (how the agent provisions) → minor, consistent with prior convention
  (0.14.0 for a behavior change). Low stakes.
- **Version-bumped + PR-merged end to end under yolo.** No separate approval gate;
  branch → PR #10 → `--no-ff` merge → branch cleanup, per the autonomous default.

## Next-session prompt

```
/goal Re-install plugin 0.16.0 (/plugin marketplace update + install + /reload-plugins) and verify the flotilla-only-provisioning alignment is live in the INSTALLED skills (scaffold-gcp-project, wgl-gitea-admin, DEPLOY-FLOTILLA.md); then pick up the next open seam — spec-RFC renderer deployment + planner-project registration, or the Workflow-recording→BDD bug-filing idea — per the dev-claude-plugin memory open follow-ups.
```
