Files
session-history/0060/SESSION-0060.0-TRANSCRIPT-2026-06-01T06-30--INPROGRESS.md
T

2.1 KiB

Session 0060.0 — Transcript

Date: 2026-06-01 Start: 2026-06-01T06-30 (PST implied) Status: PLACEHOLDER — claimed at session start; finalized at session end.

This file reserves session ID 0060. The driver replaces this body with the full transcript before publishing, and renames the file to its final SESSION-0060.0-TRANSCRIPT-2026-06-01T06-30--.md form.


Launch prompt

# launch-app Slice 2 — deployment.toml schema + define-deployment (SPEC §5, §6.6)

Slice 1 is done and verified: flotilla-core v0.1.0 is extracted at
~/projects/wiggleverse/flotilla-core (315 tests green), ohm-rfc-app-flotilla is a
thin shim over it (v1.8.0, branch slice1-extract-flotilla-core pushed, PR open,
NOT yet merged), and OHM re-deploys through the core unchanged (live DB + pin
0.31.3 + 8 secret refs + live /api/health 200 all proven).

## Task
1. FIRST correct the SPEC per SLICE-1-SPEC-FEEDBACK.md (its own commit, guide §3.2).
   Load-bearing decisions: §5.2 separate local STATE store; §3.2/§5.1 toml-vs-registry
   canonicity; add a Gitea host + optional [app].gitea_read_secret_ref + single-repo
   note; §5.3 needs a read-only `gcloud config configurations describe` capability,
   and validate only applies to define-deployment-authored records.
2. Firm up the §5.1 schema and build the fail-closed `validate` verb (§5.3).
3. Build `define-deployment`: the topology+names interview deriving from the One
   Name (§3.3), emitting + validating the record per the §8 UX contract. NEVER ask
   for secret bytes (§8.3).

## Tests
- Each §5.3 rule rejects a crafted-bad record with the right message.
- A good record validates and round-trips through flotilla-core's loader.
- Dogfood: define-deployment produces a valid deployment.toml for wiggle-snip.

## Scope guard
Pre-prod, single environment. NO slots/ramp/promote/rollback/compat-gate.

## Process
Spec-driven, cite section numbers in commits; branch + PR (Gitea, no gh CLI).
Hard secrets rule (SPEC §8.3): stdin-piped gestures only. Test run of our own
tooling — do NOT publish a transcript unless I say so.