Commit graph

89 commits

Author SHA1 Message Date
8d41404b3d 003-gpt-identity: live verification notes
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 06:27:51 +02:00
dcb97f180f merge: T301 m2-gpt identity login (003) 2026-07-02 06:25:40 +02:00
a77b0dbaef T301: m2-gpt identity login (central credentials consumer) 2026-07-02 06:20:43 +02:00
5dd73eb4cd feat(003-gpt-identity): spec — m2-gpt as credential authority for market-web
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 06:16:24 +02:00
0e6d45ecc1 002-market-web: VERIFICATION — live at market.machinemachine.ai, all SC green
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 06:01:07 +02:00
56ce11fdbb web: wallet DTO assertion keeps 'from' (fixture vs DTO shape)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 05:55:34 +02:00
543d07b6a1 web: economy reads real ledger field names (from_id/to_id); fixtures match live shape
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 05:54:53 +02:00
63b39ed39b web: test expects basic auth header
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 05:53:01 +02:00
6531bcc0f1 web: Forgejo basic auth (token-scheme headers 401 on this instance)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 05:52:20 +02:00
0aeacfd14f wedge(002/T103): web Dockerfile + M2MW_STATIC_DIR (site-packages path fix); merge T101/T102
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 05:49:09 +02:00
61dee644d7 merge: T102 web frontend SPA 2026-07-02 05:47:26 +02:00
02f1237a90 merge: T101 web backend proxy 2026-07-02 05:47:26 +02:00
b27c5d1981 T102: web frontend SPA (search, listing, wallet, economy, governance) 2026-07-02 05:46:06 +02:00
e77165ed72 T101: web backend proxy (auth, catalog, wallet, governance) + tests 2026-07-02 05:39:58 +02:00
e896a60bc0 feat(002-market-web): spec, plan, tasks, /api contract — the web surface connecting catalog, wallet, governance, install handoff
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 05:34:07 +02:00
8f6fc9d1af wedge: verification gaps updated, run report addendum
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 05:19:56 +02:00
e244050ff9 wedge: T040/T042-T044 done — M2 Store live on canary (real UI purchase), Scout v0 proposing on canary
- Store: deployed chris-m2o (+gunnar staged); UI install executed a real
  debit->grant->apply, with a truthful auto-refunded failure first
- Scout: Hermes plugin discovered+enabled (39 found/33 enabled), hooks
  manifest fixed, thresholds calibrated on LIVE scores (0.60/0.30 —
  defaults 0.78/0.55 gated out the correct match), proposal recorded to
  outbox, opt-out + rate-cap verified live
- Fleet issues surfaced: chris m2-gpt key 401 (blocks real LLM turns),
  root-owned ~/.claude on chris (fixed via chown)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 05:19:39 +02:00
2e2d335ad6 merge: T042+T043 Solution Scout v0 Hermes plugin 2026-07-02 05:06:41 +02:00
6371ddcc75 T042+T043: Solution Scout v0 Hermes plugin (fail-closed, propose-only) 2026-07-02 05:01:29 +02:00
ab01f39842 wedge(T047): scenario sweep + VERIFICATION.md — A-E verified (B/C live), F/G open
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 04:53:51 +02:00
971b389014 wedge: T045/T046/T041/T037-T039 converged — telemetry, runbook, scout spike (DECISION: Hermes plugin), M2 Store built on cargstore:m2-store
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 04:52:49 +02:00
a5bb337a9f merge: T041 scout host spike — DECISION: Hermes plugin 2026-07-02 04:49:59 +02:00
88e9a39503 merge: T045 install telemetry write-back 2026-07-02 04:49:59 +02:00
67a65e7f16 T041: scout host spike — decision hermes plugin 2026-07-02 04:35:37 +02:00
1d0ecb8bd9 T045: install telemetry write-back (fire-and-forget) 2026-07-02 04:29:30 +02:00
9ec83bf7f2 wedge(analyze): remediate C1/I1/I2/U1/U2 — rebuild-by-partition-switch, contracts synced to as-built, runbook
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 04:26:22 +02:00
c52f968f38 wedge: GATE PASSED — T028/T032-T036 done; SC-001 closed commercially
m2bd bought sdjs-operator's lst_mm-pdf-report (40 cr) on m2bd-m2o via
m2-market install: debit->grant->apply exact (60/136/4), license tied to
paying tx, skill invocable, idempotent re-run, refund path proven live,
install telemetry in market:evidence, daily audit snapshots committed to
m2/market-registry (cron 03:10). Run report: ~/.herdr/runs/2026-07-02-*.md

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 04:17:09 +02:00
b5c4cd486f wedge: local adapter resolves dest symlinks before home containment check
Found by the T036 gate install on m2bd-m2o: $HOME is a bind of
/agent_home/home/developer; Path.home().resolve() followed the mount while the
expanded dest did not, false-positiving the safety guard. The failed install
correctly auto-refunded (the FR-005 compensation path proved itself live).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 04:15:33 +02:00
2b84874515 wedge(T034): snapshot commits to registry audit/ via Forgejo contents API
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 04:12:46 +02:00
5d651705ff wedge: adapt catalog clients to REAL memory-api (store/search, agent_id partitions)
- CatalogClient: POST /memory/search, results via metadata.listing; tenant
  visibility filter enforced in the one shared reader client (memory-api
  tenant_id is scalar; deviation recorded in the module docstring)
- indexer MemoryClient: upsert = exists-check + store; drop/delete are WARN
  no-ops (API has no delete) — reindex is an idempotent fill for now
- refund-overdraw decided: compensating refunds may push a seller negative
  (debt, manual reconciliation); data-model amended, property machine updated
- probe doc stored in market:probe partition during API discovery (harmless)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 04:09:33 +02:00
25b36e9ffb wedge: US2 wave converged — T027 publish cmd, T029/T030 seeds (schema-valid, scrubbed); T031 blocked on operator
t031 worker found ZERO real competitor-scan evidence and correctly built
nothing (constitution III). Recommended substitute: Parlobyg email-triage
(real production run 2026-03-15..04-04) — tenant-derived, requires operator
owner-initiation + double scrub (constitution IV). Recorded as open question.
Tenant-named hosts scrubbed from agent-scaffold evidence. 29 tests green.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 03:51:27 +02:00
51694acc64 chore: drop remaining tracked pyc
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 03:50:35 +02:00
3886ee8480 merge: seed-agent-scaffold (US2) 2026-07-02 03:50:25 +02:00
5e2dd7aac3 merge: seed-mmpdf (US2) 2026-07-02 03:50:25 +02:00
178f373fe1 merge: publish-cmd (US2, pycache conflicts dropped) 2026-07-02 03:50:25 +02:00
91ca883ccb chore: untrack __pycache__/pyc/uv.lock, extend gitignore
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 03:50:25 +02:00
362fd2e5b3 T030: seed solution agent-scaffold 2026-07-02 03:47:09 +02:00
430061c0ff T029: seed solution mm-pdf-report 2026-07-02 03:42:12 +02:00
82393ccdc5 T027: publish command (validate -> branch -> release -> PR)
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-02 03:38:59 +02:00
83cda680d2 wedge: T026 integration tests (real ledger via uvicorn, real bundle, temp HOME)
Written inline after two headless workers died on API errors. Tests caught a
real cross-slice bug: ledger grants stored the full install ref as listing_id,
breaking GET /license/{op}/{listing} — fixed by parsing the listing prefix per
the ref convention in contracts/ledger-api.md. Also pinned the indexer test's
schema path (venv-installed package resolved outside the repo) — its earlier
pass was vacuous without jsonschema installed. 27 tests green.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 03:34:21 +02:00
6fa1bc8e29 ci: verify push-triggered deploy 2026-07-02 03:26:19 +02:00
f9108902d9 wedge: T014 done — m2-ledger deployed on Coolify with push-triggered CI/CD
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 03:24:24 +02:00
aeba02f287 wedge: T013 property tests + T014 Dockerfile merged; fix zero-amount install rows
T013 worker found record_install violating CHECK(amount>0) when platform_pct
rounds cut or seller_amount to zero (unhandled IntegrityError -> HTTP 500).
Fixed: skip zero rows, grant references the paying tx; regression test added.
9 ledger tests green.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 03:17:07 +02:00
bc650ea4ee merge: T014 ledger Dockerfile + deploy notes 2026-07-02 03:15:54 +02:00
99f040c417 merge: T013 ledger property tests 2026-07-02 03:15:54 +02:00
f283069ab1 T014: ledger Dockerfile + deploy notes 2026-07-02 03:14:18 +02:00
b8d4fa9728 T013: ledger property tests 2026-07-02 03:05:25 +02:00
68f3544513 wedge: US1 wave 2 converged (T012/T015/T021/T023-T025) + fix m2core-sync class name
Verified on master: 14 tests green (schemas+cli+indexer); ledger API exercised
end-to-end via TestClient (grant admin-only, install 200/409/402, refund
restores balance, auth 401); adapter factory resolves local + raises
RailsNotLanded on the stub.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 03:02:28 +02:00
9bb441e4a7 merge: cli-commands (US1 wave 2) 2026-07-02 03:01:51 +02:00
0c51ce6251 merge: local-adapter (US1 wave 2) 2026-07-02 03:01:51 +02:00