From 1821af7d591aaf0b52eade25d56b8f179788e3be Mon Sep 17 00:00:00 2001 From: Keysat Date: Tue, 16 Jun 2026 23:10:31 -0500 Subject: [PATCH] Index onboarding-harness in layout; tighten Stage 1 Current state --- AGENTS.md | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index 4105d00..fb3a011 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -47,6 +47,7 @@ licensing-service-startos/ daemon + StartOS wrapper (s9pk package source) licensing-service/web/index.html embedded admin SPA → guides/admin-ui.md licensing-service/tests/ integration suites → guides/testing.md startos/ wrapper TS → guides/startos-packaging.md + onboarding-harness/ docs-onboarding test rig → onboarding-harness/README.md Dockerfile Makefile s9pk.mk build pipeline keysat-xyz-landing/ keysat-docs/ keysat-registry-landing/ public sites → guides/website-copy.md licensing-client-{rust,ts,python,go}/ the four SDK source repos @@ -121,21 +122,14 @@ Operator-specific memories at `~/.claude/projects/-Users-macpro-Projects-keysat/ independently confirmed**; verify the StartOS UI shows `0.2.0:57`). `publish.sh` now runs `make install` as step 5, so future ships auto-deploy (best-effort, non-fatal). -- **Onboarding doc-harness — Stage 1 (Path 1, no payments): `completed-clean` this session.** - New disposable harness at `licensing-service-startos/onboarding-harness/` boots a fresh - fixture, mints a `merchant-onboard` key, serves `keysat-docs/` as the corpus, scaffolds a - pristine Next.js/TS proof-of-work (`sandbox-template/`), then runs the global - `onboarding-tester` agent **docs-only**. Loop converged 5→1→0 stumbles over 3 runs; the - publishable walkthrough is harvested into `keysat-docs/agent.html` (#worked-example). Doc - fixes shipped: `integrate.html` (real v0.3 SDK shape — `verify()` throws + returns - `VerifyOk{payload,…}`, no `valid` bool, `LicensingError`/`.code`), `agent.html` - (merchant-onboard role row, product/policy-create workflows, `buyer_note`→`note`, license - `/search` endpoint, worked example), `wire-format.html` (issuer-pubkey response shape). Also - `openapi.rs` (licenses `product_id` filter, removed phantom `GET /v1/admin/products`, added - `/v1/admin/licenses/search`, price-field notes) — **served-spec fixes; fixture was rebuilt to - test, but these reach the live spec only on the next daemon release.** keysat-docs static - fixes deploy independently. Full record: `onboarding-harness/STAGE1-RESULT.md`. **Stage 2 - (Path 2, regtest buyer-pays) is gated on agent-payment-connect slices 3–5 below.** +- **Onboarding doc-harness — Stage 1 (no payments): `completed-clean` this session, committed + pushed.** + `licensing-service-startos/onboarding-harness/` runs the global `onboarding-tester` agent + docs-only against the SDK-integration journey (loop converged 5→1→0 stumbles over 3 runs). + Doc fixes shipped to `keysat-docs` (integrate/agent/wire-format) + the served `openapi.rs` + spec; the publishable walkthrough is harvested to `agent.html` #worked-example. The + `openapi.rs` fixes reach the live spec only on the **next daemon release**; keysat-docs + deploys independently. Full detail: `onboarding-harness/STAGE1-RESULT.md`. **Stage 2 (regtest + buyer-pays) is gated on agent-payment-connect slices 3–5 below.** - **In progress — agent-payment-connect (phase 2)**. Approved spec: `plans/agent-payment-connect-scope.md`. Lets a scoped key connect a BTCPay provider, but