Mark 0.2.0:56 live on immense-voyage.local; refresh Current state

This commit is contained in:
Keysat
2026-06-16 14:21:39 -05:00
parent 5b3322413f
commit ee84809e38
+17 -16
View File
@@ -110,15 +110,17 @@ Operator-specific memories at `~/.claude/projects/-Users-macpro-Projects-keysat/
## Current state (2026-06-16)
- **Live**: registry `registry.keysat.xyz` publishes **`0.2.0:55`** — universal
multi-arch, GitHub release `v0.2.0-55`, canonical s9pk at
- **Live**: registry `registry.keysat.xyz` publishes **`0.2.0:56`** — universal
multi-arch, GitHub release `v0.2.0-56`, canonical s9pk at
`files.keysat.xyz/keysat.s9pk`. Migrations 00200022; four SDKs published;
`keysat.xyz` + `docs.keysat.xyz` deployed. Live server `immense-voyage.local`
still runs `:54` until updated from the registry. **This session's work is
committed + pushed to `main` but UNRELEASED — no `:56` cut, not built.** (`:55`
shipped scoped keys, the settle-amount tripwire, and all 4 StartOS submission
blockers — see git log.)
- **Shipped this session (daemon `b088bfc`, pushed origin+gitea; unreleased)** —
`keysat.xyz` + `docs.keysat.xyz` deployed. **Live server `immense-voyage.local`
now runs `:56`** — deployed via `make install` this session and verified: public
`/v1/products` 200, and `/v1/admin/tier` with a read-only scoped key flipped
403→200, confirming the `:55` `require_scope` rollout is now active on the box.
(`:55` shipped scoped keys, the settle-amount tripwire, and all 4 StartOS
submission blockers; `:56` adds the product→merchant-profile write path — see git log.)
- **Shipped + RELEASED this session as `:56` (daemon feature `b088bfc`,
version-bump `6b02992`, doc-fix `d2846ac`; pushed origin+gitea)** —
**product→merchant-profile write path, closing the multi-profile GAP.**
`Product.merchant_profile_id` + all 4 product SELECTs + `row_to_product`; new
`repo::set_product_merchant_profile` (validates profile exists → 404, not FK 500);
@@ -131,10 +133,9 @@ Operator-specific memories at `~/.claude/projects/-Users-macpro-Projects-keysat/
- **Work queue (next, in order)**:
1. 3 remaining multi-profile UIs (rail picker, per-profile SMTP, rail-pref
editor). (`unlimited_merchant_profiles` for Pro/Patron is now an operator
TODO above.)
2. Cut `:56` to ship this session's write path to the registry (bump manifest →
`make universal``publish.sh`) — bundle with the UIs above if landing soon.
editor).
2. Operator data action (now unblocked — `:56` is live): grant
`unlimited_merchant_profiles` to Pro/Patron on the master (see Open TODOs).
3. Deferred (now in Open TODOs): split `audit:read` out of the blanket `:read`
scope into its own tier.
@@ -162,7 +163,7 @@ Operator-specific memories at `~/.claude/projects/-Users-macpro-Projects-keysat/
optional fmt/prettier standalone commit.
- **Tests/build**: `cargo check` clean (1 intentional deprecation warning); full
suite green api **54** (incl. new settle-tripwire + scoped-key role-boundary
tests), subscriptions 7, upgrades 9, worker 3, crosscheck 4, migrations 9. No new
clippy warnings. FK enforcement **confirmed** — sqlx pool sets `foreign_keys(true)`
per connection (`db/mod.rs`). CI/fmt status is in Known debt.
suite green at `:56` — unit 10, api **56** (incl. the product→merchant-profile
write-path tests), subscriptions 7, upgrades 9, worker 3, crosscheck 4,
migrations 9. No new clippy warnings. FK enforcement **confirmed** — sqlx pool
sets `foreign_keys(true)` per connection (`db/mod.rs`). CI/fmt status is in Known debt.