From 659adb4a3b70d355e04d684b4530d671913813bb Mon Sep 17 00:00:00 2001 From: Ben Stull Date: Thu, 11 Jun 2026 00:17:05 -0700 Subject: [PATCH] update ecomm/0024/SESSION-0024.0-TRANSCRIPT-2026-06-10T22-20--INPROGRESS.md --- ...TRANSCRIPT-2026-06-10T22-20--INPROGRESS.md | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/ecomm/0024/SESSION-0024.0-TRANSCRIPT-2026-06-10T22-20--INPROGRESS.md b/ecomm/0024/SESSION-0024.0-TRANSCRIPT-2026-06-10T22-20--INPROGRESS.md index 00f1b10..b4bd43f 100644 --- a/ecomm/0024/SESSION-0024.0-TRANSCRIPT-2026-06-10T22-20--INPROGRESS.md +++ b/ecomm/0024/SESSION-0024.0-TRANSCRIPT-2026-06-10T22-20--INPROGRESS.md @@ -57,6 +57,39 @@ Implement SLICE-3 (storefront) per SD-0001 v0.3.0 §7.2: - Canonical checkout had no venv (prior session worked in a worktree) — created `.venv` + installed backend deps; frontend `node_modules` installed likewise. +## SLICE-4 — PPE deploy (operator-directed continuation) + +Operator: "use flotilla to deploy to ppe"; decisions: **extend flotilla first** +(vs hand-provisioned Cloud SQL), **reuse the rfc-app SMTP relay** (Gmail, +`wiggleverse-ohm/ohm-rfc-app-smtp-password`, cross-project ref — precedented). + +- **A — launch-app `provision-datastore` §6.6a** (engineering#46 → PR #47 merged): + SKILL + idempotent `provision-cloudsql.sh` (private-IP Cloud SQL PG16, backups+ + PITR per D-8, DSN straight into Secret Manager). flotilla-core deploy engine + needs no datastore awareness. +- **B — ecomm deploy contract** (PR #10 merged @ 8a2ec24, **tag v0.4.0**): + VERSION + versioned /healthz (§8.1 verify), backend serves frontend/dist + (nginx-proxies-all topology), SmtpMailer (log-hygienic), send-before-commit + + 502 delivery_failed (closes ecomm#7). 68 backend tests green. +- **flotilla-core 0.13.0** (PR #16 merged): `db-under-install` learns the + managed-datastore shape (pass on `*DATABASE_URL` secret ref; warn when neither). +- **C — provisioning** (suite gestures, operator-confirmed): GCP project + `wiggleverse-ecomm` (billing "Wiggleverse Ecomm", APIs, ADC pin, profile + `wiggleverse-ecomm` --no-activate held); deployment.toml validated/imported/ + merged (PR #11; health_url /healthz, no DATABASE_PATH); Cloud SQL + `ecomm-ppe-pg` provisioned first-run by the new skill (db+user+ + `ecomm-ppe-database-url`); `ecomm-ppe-session-secret` minted (stdin, no bytes + shown); gitea read token COPIED from wiggle-snip's (same underlying token — + Gitea PATs aren't repo-scoped; verified 200 on wiggleverse-ecomm; rotation + note: two secret copies); wildcard Origin-CA cert+key copied to + wiggleverse-ecomm + `secret-file` bound onto /etc/ssl/ecomm-ppe/origin.{crt,key} + (deploy writes them; phase-9 edge gate needs Origin CA, not self-signed); + VM `ecomm-ppe` @ 34.70.89.33 (e2-micro, IAP-only :22, CF-only :80/:443, + default-allow-ssh/rdp deleted); Cloudflare A record ecomm-ppe.wiggleverse.org + → 34.70.89.33 proxied (zone d63aad53…; zone already Full-strict — untouched). + Runtime install (provision-runtime.sh over IAP) in flight. +- **D — deploy + PUC-11 rehearsal**: pending runtime completion. + ## Deferred decisions _Autonomous-mode low-confidence calls the driver made and would have @@ -76,3 +109,7 @@ finalize. Empty if none._ serializes guard+insert (spec asks only that "two concurrent creates cannot both pass the guard"; the advisory lock is the lightest way without a schema UNIQUE, which INV-4 forbids). +- **Finalize-on-goal deferred:** the SLICE-3 /goal completed, but the operator then + directed "use flotilla to deploy to ppe" (SLICE-4) — finalize is deferred until + that work lands (direct operator instruction over the finalize-on-goal default; + Cloud SQL provisioning in flight, operator token gesture pending).