Skip to content

Add MetaCoin scientific services and verifiable work economy - #1

Merged
MetacoinLab merged 97 commits into
mainfrom
service/real-features
Sep 29, 2026
Merged

MetacoinLab merged 97 commits into
mainfrom
service/real-features

Conversation

@MetacoinLab

Copy link
Copy Markdown
Owner

Adds the accumulated MetaCoin implementation: work contracts, scientific services, private evidence, and a connected work-and-payment lifecycle.

Features include:

  • Contracts, milestones, provider offers, awards, verification, and disputes.
  • Payment for valid scientific findings, including verified negative results.
  • Local x402 payment integration, reconciliation, and fee-backed treasury accounting.
  • CPU/CUDA scientific compute, local AI, document ingestion, and evidence-linked reports.
  • Private audit access, portable verification bundles, API, CLI, console, and MCP interfaces.

Local validation reported against publication candidate 825adf8 includes unit, scientific, local-chain, acceptance-journey, browser, and demonstration checks. GitHub CI is pending.

Limits: production settlement and multi-machine operation remain unverified. Offer signing is service-custodied, verifier separation is process-level, and the local chain is in-memory.

Frozen project identity, monetary rules, and historical protocol records are preserved.

MetacoinLab and others added 30 commits September 23, 2026 03:00
…9-18 handoff, applied verbatim on base e329917

Applies metacoin-step01.patch (sha256 5f8b9c78…a0a7b) from metacoin-nine-hour-claude-handoff.zip.
All 245 files in step01-source-manifest.json match after application. No session
changes are included in this commit; they follow separately.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…al modes, audit-only margin decomposition, journal hardening, refusal codes

- verifiers.py: allowlisted bundles; v0 digest 5e5b7cd6… recorded as historical
  (read-only verification of the 2026-09-18 public receipts; no new registration,
  audit or spend under it). Current bundle is local-energy-audit/v1 and is computed,
  never pinned in source.
- explanation.py: exact decomposition of the margin interval width by declared
  uncertainty source (battery bound + per-segment power bound), deterministic
  ranking, dominant source, counterfactual shift and minimum-additional-energy
  threshold check. Private by default; public only when the contract names the
  fields. Not a probability, not joint attainability, not measurement cost.
- execution_state.py: private audit runs outside the write lock, bound to a
  registration snapshot and rechecked atomically before recording; identical
  retries return the recorded state after expiry (no new right), expiry gates
  only new reservations; adapter answers are checked for semantic consistency
  (units vs bound amount; failures grant nothing) and an answer for a row that
  never recorded submission intent is unbound; reconcile reports how it resolved;
  inspect() lists the campaign without widening a hide-outcome policy; journal
  refuses a directory writable by others.
- refusals.py: every constant refusal message maps to a stable code with an
  operator action; foreign exception text is never echoed (test-enforced).
- legacy_adapter.py: declares its capabilities and the units a confirmation
  must carry.
- tests: 14 hardening + 9 explanation tests (54 total in the package), including
  the handoff's v0 public demo output as a historical fixture.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ss, durable provider test double, cross-process concurrency

- execution_state.Journal gains two no-op commit seams (_before_commit/_after_commit)
  so a test-only subclass can terminate the process at an exact point.
- tests/durable_provider.py: TESTING FACILITY (not a payment system) modelling a
  rail with durable idempotency keys whose absence answer is authoritative (key
  voided on lookup, late submit refused); durable=False models a provider with no
  record. Own state file, separate from the application journal.
- tests/interruption_child.py + test_interruption.py: six crash points (before
  reservation commit; after it; after intent commit; after effect before response;
  before confirmation commit; after it) with observable invariants after restart,
  for both provider kinds; six-process identical-request race (one dispatch);
  two jobs racing one slot; one job under two request ids; reconcile racing a
  delayed answer. Barriers are files; the only sleep widens the overlap window and
  is not a correctness mechanism.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ull CLI, verbatim walkthrough, package/CLI tests

- packages.py: PUBLIC review package and PRIVATE audit package as zip files with
  a whitelisted member list, sha256 manifest, exclusive 0600 creation, and a
  strict importer (whitelist covers traversal/absolute/extra members; duplicates,
  non-regular entries, size lies, oversize archives, unknown versions and any
  private-vault marker are refused; nothing is extracted on failure; nothing is
  executed). Operator pins rule; package pins are only compared.
- execution_state: Journal.open(path) from the recorded campaign row;
  preview() = the complete authorization check with no reservation/dispatch.
- cli.py: campaign init/show, register, record-audit, request, dispatch
  (--dry-run), status, reconcile, explain, export/import-public,
  export/import-private, capabilities; stable refusal codes on stdout and a
  one-line action on stderr; legacy adapter sessions labeled process-scoped with
  their fixture funding; durable test provider labeled a testing facility.
- pilot/walkthrough.sh: the full non-demo owner -> worker -> auditor -> public
  verifier -> actor -> package flow, run verbatim by test_walkthrough.py.
- tests: 11 package + 4 CLI + 1 walkthrough (72 total).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ransition table, pilot materials, innovation record, per-operation benchmark

- docs/experiments/ACCEPTANCE_MATRIX_STEP_01.md: acceptance matrix (positive,
  negative, indeterminate, malformed, unauthorized, expired, tampered,
  unsupported, superseded) with the four decisions kept separate and the test
  that exercises each row; contract-field enforcement table; payment state
  transition table with the campaign invariant; observed interruption points.
- pilot/: INTAKE_TEMPLATE.md (unfilled), INTAKE_EXAMPLE_SYNTHETIC.md,
  OPERATOR_WALKTHROUGH.md (every command with role, reads, writes, side effects),
  REVIEWER_CHECKLIST.md.
- docs/experiments/INNOVATION_RECORD_STEP_01.md: one row per improvement with
  problem, change, hypothesis, baseline, test, observation, limitation.
- README and WORK_CONTRACT_V0.md addendum for the v1 bundle.
- benchmark.py times analysis, explanation, commitment, private audit, public
  verification, journal authorization, legacy purchase, gated purchase (legacy
  and durable test provider) and reconciliation separately.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… adapter, bounded model-based test, CI job

- integrations/x402/loopback_harness.py: OFFLINE composition of the official
  x402 Python SDK 2.24.0 (wheel sha256 51517125…) resource server, client,
  payment-identifier extension and a facilitator TEST DOUBLE; one route per
  journal-authorized request; a before-verify hook binds amount, pay-to,
  network, asset, contract/request digests, the payment identifier and the
  resource. Finding recorded: the SDK resource server does not compare the
  payload's resource with the route in 2.24.0, so the hook binds it.
- integrations/x402/loopback_adapter.py: capability x402_loopback_test;
  settlement answers must be bound and consistent or the journal keeps the
  outcome unknown; settlement_pending stays unknown until a record exists.
- integrations/x402/test_loopback.py: 9 tests (skip without the SDK): gated
  exchange, transport-level refusals, hook-level refusals, mismatched answer,
  pending retry/reconciliation, insufficient funds, no private values on the wire.
- experiments/work_contracts/tests/test_state_model.py: a separate reference
  model of the payment states driven by seeded sequences (alphabet of 7, depth
  8, 40 sequences by default, 400 run once) plus fixed regression shapes.
- contract.ACTION_TEMPLATES per capability; CLI capability table lists the
  loopback adapter; README rewritten as inventory + capability table + findings.
- CI: walkthrough and the stdlib skip-run in the inspect-adapter job; an
  optional pinned SDK install whose failure never fails the build. Not run
  remotely in this session.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… (header-level compatibility noted)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ME test count 74

Found by the clean-checkout reproduction: the exported tree lacked the
walkthrough script because the pilot directory rule re-included only .md and
.json files. The in-tree tests passed only because the file existed on disk.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… keys, science, artifacts, history, contracts, jobs, worker, bootstrap)

- metacoin_service/: optional-extra application package; the protocol core stays stdlib-only.
- db.py: SQLite WAL, foreign keys, busy timeout, BEGIN IMMEDIATE, versioned migrations, structural check.
- auth.py: server-side principals (owner/worker/reviewer/viewer), peppered-hash bearer credentials shown
  once, server-side sessions with CSRF tokens, revocation/rotation, workspace scoping, permission table.
- crypto.py: age (pyrage) artifact encryption and Ed25519 (cryptography) review signatures with a
  domain-separated message; keys under <home>/keys 0600; capability errors, never plaintext fallback.
- science.py: safe-runtime/v1 (exact floor(B/p_high), negative residual, zero-power cap, maximality witness)
  and plan-comparison/v1 (per-candidate verdicts, deterministic max-utility selection with documented ties).
- artifacts.py: internally named ciphertext files bound to rows (owner, job, contract, digests, recipients,
  intended use, retention deadline); in-memory decryption; payload unlink is not cryptographic erasure.
- history.py: append-only hash-chained events per workspace (scientific/administrative/economic).
- contracts.py: drafts, freeze (salted Merkle input vault + pinned terms), amendments with lineage.
- jobs.py / worker.py / worker_exec.py: atomic claim with lease generations, recovery of expired leases,
  child-process execution with rlimits and timeout, fenced publication, bounded retries, cancellation.
- bootstrap.py: one-time credentials to <home>/credentials/bootstrap.json (0600).
- experiments contract.make gains owner/auditor/retention parameters (defaults unchanged).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…provider mode, x402 sale route, versioned HTTP API

- reviews.py: designated-reviewer evidence decryption + recomputation; Ed25519-signed
  metacoin-review-envelope/v1 over canonical bytes; identical decisions idempotent,
  conflicting ones refused; acceptance recorded in the economic journal; public bundle
  artifact; verification only against reviewer_keys (active/rotated/revoked) with expected
  bindings so replay across jobs is refused.
- actions.py: agent-buys-compute actions through the journal; provider mode persisted in
  the action binding; simulation (process-scoped zero-value faucet), test-http (in-process
  SDK objects + facilitator double), production (incomplete: named missing configuration).
- x402_http.py: the service SELLS an accepted job's public bundle over real HTTP 402 using
  the SDK resource server with a Starlette adapter; binding hook; sale intent persisted
  before settlement; unknown/inconsistent answers keep exposure; facilitator double served
  over HTTP in test-http mode so the SDK's HTTPFacilitatorClientSync runs over a socket.
- api.py: /api/v1 contracts, jobs, reviews, artifacts, actions, budget, history, session,
  capabilities, x402 route; bearer or cookie session (+CSRF); strict canonical body parsing;
  persisted idempotency keys; sensitive headers; OpenAPI at /api/openapi.json.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… execution, x402 re-delivery, packaging extra

- console_ui.py + templates: sign-in, work list with filters/pagination, contract form with
  labeled synthetic sample and policy consequences, job page (verdict, bounds, interval bar,
  assumptions, next operation, artifacts, history), reviewer decision page with bindings and
  recomputation, budget page separating reserved/pending/confirmed/failed/unresolved, history.
- ops.py + __main__.py: init, serve, worker, status, health, migrate, backup (SQLite backup API,
  manifest declares contents, keys excluded by default), restore (fresh destination, structural
  check, reconciliation gate), cleanup (retention), credentials rotate/revoke, reviewer-key
  rotate/revoke, openapi.
- All synchronous service work runs in the threadpool (fixes a deadlock when the SDK's
  facilitator client called back into the same event loop over HTTP).
- x402 sale: idempotent re-delivery carries the recorded PAYMENT-RESPONSE.
- pyproject extra  with pins; metacoin_service/requirements.lock (resolved on aarch64).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…process

metacoin_service/tests/test_service.py runs the order's §25 matrix through real entry points:
own-input contract through HTTP with a separate worker process; restarts; two-worker race
with lease fencing; cancellation and terminal timeouts; viewer/spoofing/revocation/cross-
workspace boundaries; signed decisions with substituted key, modified envelope, replay,
revocation, rotation and oversize refusals; acceptance not manufacturable after tampering;
age recipients, wrong key, ciphertext tamper and key loss; safe-runtime and comparison
against independent exact references (seeded) plus API/worker paths; provider-loss exposure
and reconciliation without resubmission; concurrent API budget invariant; backup/restore with
and without keys and the reconciliation gate; retention cleanup; drafts vs frozen contracts
and amendment lineage; sessions/CSRF/capabilities; console pages per role; and a real server
process sold over x402 to a real client process with seven binding mutations refused.
ops.rotate_reviewer_key handles a previously revoked key file.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ate budget check, single-query progress); migration 002; benchmark script

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ntiation; run comparison) and bounded task-selection optimizer (task-selection/v1, exhaustive n<=12, deterministic ties) as a fourth job kind; console and reviewer recomputation support

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…within an automation set, workspace-bound, revocable), interoperable client CLI (private credential file, same public API), comparison of two completed runs (private and permitted-public projections)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…rix, payment mapping, security checks

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ning, bindings before signing, durable submissions, re-presentation reconciliation), offline cryptographic verification in the facilitator double, client-chosen payment identifiers on the sale route, provider-mode-matched contract capability, safe exception middleware, narrow-layout fixes, four buyer tests

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…led), SVG interval chart, limits override, real-browser check scripts (Playwright/Chromium: 32 + 23 checks), README ledger and capability classes, lock with x402[evm]

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…velopes with saturation, virtual deficit, first-violation instants, spill bounds, uncertainty contributions, refinement what-if) with analytical, per-second rational reference and exhaustive tiny-case tests

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…oned normalized commitments, lineage edges, migration 003), temporal_energy job kind, typed workflow engine (immutable digested definitions, runs, node states, conditions, review gates, exports, cancellation, admission estimate, migration 004), API, worker scheduler tick, tests

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… transforms, persisted candidates, restart-safe resume, pause/cancel, result table and safe CSV, SVG grid from persisted results, adaptive bisection with a documented monotonicity table and unresolved-bracket budget stops, conservative interval Pareto, refinement what-if as immutable derived artifacts; migration 005), API, worker tick, tests

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…invocation route

Migration 006 (services, quotes, usage_records, invoke_sales); catalog with bazaar discovery
extension; quotes bound to request digest/revision/principal/expiry; usage statements signed
with the service key; POST /api/v1/x402/services/{sid}/invoke settles over the real socket and
creates the job; independent paying client + TCP test.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…y-limited runner

Migration 007 (policy_grants). Grants bind an immutable policy (permitted services, allowed
operations, ceilings, validity, review gate, visibility) to a scoped credential; every mutation
passes through guard() inside the caller's transaction with conservative counters (jobs at
submission, amounts at reservation, workflows/campaigns charged their estimate up front).
Stop/revoke controls; simulation endpoint. agent_runner: plan/execute/status/follow over the
public API with a private checkpoint, attempt-keyed idempotency and policy-digest binding.
Consumed quotes re-deliver an already-settled payment instead of refusing.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…reservations

Migration 008 (budget_nodes, budget_reservations). Workflow runs and nodes may carry ceilings
under the workspace ceiling; a node's job reserves along the whole chain in one transaction,
commits on success and releases on failure or cancellation. Refusals name the level and say
whether waiting can help. Tree, preview and workspace-ceiling API; run views carry a budget summary.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ing; persisted quotas; SSE event stream

Migration 009 (workers, quotas). Workers register with capabilities and heartbeat; the operator
can drain/resume them; claims follow a deterministic fair order (fewest running jobs per submitter,
then oldest) restricted to capabilities. GET /queue explains every queued job's waiting reason.
Per-principal quotas persist and refuse at admission naming the quota. GET /events (cursor poll)
and GET /events/stream (SSE with ids, Last-Event-ID resume, type filter, bounded lifetime).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Migration 010 (contracts.inputs_digest, jobs.reused_from, result_cache, shares). Reuse is opt-in,
keyed by canonical inputs digest + installed verifier digest, refuses deleted evidence, meters at
zero and records lineage. Sharing grants a principal an allowlisted projection of a committed
result, signed by the service key and verifiable; canary tests prove nothing else leaks.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…igns, agents, usage and queue; client CLI for every new family

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…rch with CSV result export, worker schema-compatibility check, prior-database migration test, workflow benchmarks, eight-journey runner

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
MetacoinLab and others added 29 commits September 28, 2026 01:15
…ith per-service reasons before any model choice (typed-input schema, promoted models, live worker devices, grant permissions and ceilings, request families), quoted evidence bound to immutable versions and pages, bounded local-model proposal among eligible kinds with a repair loop, unresolved fields as a clarification state with a bound continuation token, abstention when nothing supported applies, plans created through the existing planner; migration 028; API/MCP/CLI/console; evaluation registry intent items with dispatch/abstention/clarification outcome categories and split metrics; evaluation set v2 with recorded dev/validation/held-out split and the previous misses kept as regressions; generation preloaded outside write transactions

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…resource-plan/v1) with a written executable model contract, HiGHS MILP under a time limit with truthful status mapping, exact independent integer simulator, bounded exhaustive oracle, witness verification through the verification service (replay + oracle + alternatives), epsilon-constraint cost sweep with dominance witnesses, finite sensitivity with a non-monetary value-of-information proxy, schedule/trajectory SVG, alternative freeze into workflow drafts; campaigns extended with resource-plan axes, typed branch changes with recorded sources and version-checked heads, deep comparison with per-candidate plan changes, and a budgeted acquisition strategy over finite authorized candidate sets; API/CLI/MCP/console surfaces; tests and adaptive-versus-grid benchmark record

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…tebook foundation with schema, author and declared dependencies; immutable revisions with optimistic concurrency and freezes; stale marking through declared dependencies and reference drift without rewriting reviewed revisions; dependency graph joining author-declared dependencies with recorded lineage (new edges for model revisions, knowledge answers, verification policies); bounded change-impact analysis with unknown-dependency honesty and cycle detection; selective regeneration of workflow runs with exact reuse under the cache contract and per-node reuse on runs; deterministic evidence-linked reports (claims checked against structured values, labelled number-checked model interpretation, computed limitations) as Markdown/HTML/manifest bundles; signed disclosure projections with exact previews, indirect-disclosure warnings and scope-honest verification; API, CLI, MCP and console surfaces; tests

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…essed manifests with stripped private inputs and synthetic examples, operation and model identities, delivery policy and disclosure defaults; export/import as data with structural refusals; deterministic compatibility negotiation (supported, declared-equivalent, optional, blocked) that reserves nothing; composite quotes bound to package, definition and input digests with expiry, budget refusal and mismatch detection; gated package runs through the workflow engine and, for single-operation packages, through the existing x402 upto route with settlement withheld until the required verification passes, unused authorizations on failure under the disclosed policy, and retries under the same authorization; signed zip result bundles with an offline verifier (archive safety, digests, signature trust, witness replay, honest scope); test-only fault hook; API, CLI, MCP and console; tests including the private local chain

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…separate API/worker/CLI/MCP/browser/local-chain processes with per-journey status, revision, dependency identities and timings), browser console inspection script with screenshots at desktop and narrow widths, ops status/metrics for document stages, batching occupancy, model residency, optimizer limits, verification backlog, reports, package gates and waiting reasons, scenario comparison console page, MCP analysis mode, workspace failure/concurrency campaign (parser termination and retry, stale lease publication, expired grant, budget refusal, partial export, concurrent drafts, concurrent mapping confirmations, export racing revocation, retry racing completion, failed regeneration) and the cross-workspace/untrusted-content privacy regression; packages never carry the source workflow label; projections never carry the analysis name

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ll level (layout-only movement distinguished from content change; method changes named), with mappings, dataset versions, downstream objects and analyses affected by content changes; API, CLI, console page and form, test

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…'s continuous-batching manager (admission and removal during a session under the same cohort and memory rules, per-member segments/usage/accounting, cancellation, explicit static fallback), cross-document measurement reconciliation under explicit justified rules with preserved per-source interpretations and exact directed unit conversion, measurement-request local artifacts derived from recorded evidence, package upgrade preview with affected runs and migration requirements, and a decision review queue that ignores harmless text edits; migration 031; API/CLI; tests on the real model and real documents

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… page inspection and scope-only metadata; model routing by evaluated task capability among installed revisions with explicit fallback; incremental reindexing that reuses vectors only under identical text, chunker and embedding revision while keeping old citations valid; checkpointed adaptive campaign recovery across restarts and interruptions; journey harness stderr fix (unread pipe froze the API)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ate caveat; journey 21 accepts insufficient_evidence; packaging and clean-export scripts, feature ledger, migrations record, OpenAPI and MCP schemas, journey and regression records

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…l states; journey harness compares against the migration table, retries one search under load, waits for a live worker in the browser check; delivery scripts, ledger, migrations record, schemas, issue record, journey and screenshot records

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…h their knowledge version (no ready-before-version window), console package/report context helpers no longer pass duplicate keywords (compatibility, instantiate and projection forms work from the browser), console form coverage in tests, journey 1 per-check evidence, issue record entries 31-32

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…r same-second job creation (issue 33); final journey subset, science, local-chain records and logs at 5e19c8d

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ema that is an exact prefix) and reports pending migrations; newer or gapped schemas still refused (issue 34, found by the live-upgrade rehearsal)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…report PDFs; found by the clean-export journey, issue 35)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ce, chain, journeys 1-24, browser, patch check, live upgrade and restart), implementation report, delivery index; records only, source tree unchanged

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…tance policy evaluated on one server path, honest-negative payment rule, milestone DAG via the shared Kahn validator, schema-classified amendments and explicit supersession), legacy deterministic-task replay kind with exact-hash audit, energy_audit full private audit in verification, migration 032

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ate request board with two-stage access, eligibility with structured reasons, binding offers, deterministic comparison and ranking, atomic award with budget reservation and lost-response replay, milestone instantiation gated on acceptance, attempts and acknowledgement; migration 033 rebuilds the principals role check with foreign keys off

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ptance) with custody labels and resource evidence, acceptance decisions append-only with entitlements (one per milestone), verifier assignment with honest independence and distinct-verifier gating, disputes (open/respond/evidence/recheck/decide/appeal/close) with resolver authority and supersession, reassignment and bounded delegation, portable work bundles and the offline verifier verify_work; migration 034

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… revalidated bindings, local-chain settlement (exact fixed / upto capped) through the pinned Permit2 upto proxy, lost-response exposure and reconciliation by receipt hash or Permit2 nonce, authorization expiry with renewal as a new identity, double-entry journal with idempotent business events and replay/invariants, fee split with floor rounding credited once to the treasury, verifier compensation independent of verdict, treasury-funded awards from settled fees only, refunds under a preauthorized local recovery arrangement, credits labelled as liabilities, award close with partial budget release; migration 035

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…th persisted access events, encrypted offline audit packages (age) with a signed manifest, dispute holds honoured by retention cleanup, evidence deletion keeping commitments, projections with declared omissions and leakage checks, non-anchored candidate records; mission portfolio import (read-only), bottleneck-to-terms drafts, contributions with dedup warnings, honest resource probe, simulated physical-observation boundary; migration 036; worker fails deleted-input attempts cleanly

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…s deduplicated by business event, work counts and waiting reasons in status/metrics, fault-injection checkpoints, work-economy CLI commands, bounded MCP tools (read vs consequential), console pages (overview, terms, request comparison and award, contract detail with four dimensions and next authorized action, disputes, budgets/journal/treasury, missions), HTTP-only client example; tests for the surfaces

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ine verification, chain identity check at reconciliation, per-attempt submission journal events (defect found by the fault campaign), fault campaign tests with an independent accounting model, concurrent workload benchmark, browser console journey, 40-journey harness, test_hooks limit override

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ciliation console and mission learning records (§76), journey harness fixes, defects log, eligibility rail-address check

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ges, versioned pricing experiments (migration 040); award view lists all entitlements; journal replay scope from the acceptance posting; §66 demonstration script

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ding; migration 040 mission_scenarios

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…examples/work_client.py (was misplaced under templates/); package marker

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…an exported tree without .git (journey 40 finding)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…-only commit; source candidate 3e34126)

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…er and mission verdict (exported trees need no gitignored files); tests and journeys read through the resolvers; service README documents the core work economy and its actual limitations

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@MetacoinLab
MetacoinLab merged commit 854619a into main Sep 29, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant