Skip to content

0.9.0 (prepared, not published): ./devnet onboarding, and no test-network address in the package - #5

Merged
MaciejBaj merged 3 commits into
mainfrom
devnet-onboarding
Nov 6, 2026
Merged

MaciejBaj merged 3 commits into
mainfrom
devnet-onboarding

Conversation

@MaciejBaj

Copy link
Copy Markdown
Contributor

What this changes

  • ./devnet takes one seller to a working edge on a test network, one call per step. The steps are profile, find,
    check, edge (pool + signed agreement + record), fund, quote, hire, deliver, grade, settle, and reading back the meter
    lines and the agreement.

    • It reuses ./onboard (transport, hashes) and ./pools (deposit calls).
    • Every money call refuses a chain other than the profile's own, and any chain with value.
  • The profile ships no test-network value. It reads the chain id, RPC, hook, factory and token at runtime: from
    options, from env (MOONBEAM_DEVNET_*), or from the API's own registry (GET /pools/networks, GET /rpc/:chainId).
    Each field records which source gave it.

  • Grades are binary. The grader's complete or reject stands. Any other grade completes when spec_met > 0.4 and
    cheat_shaped < 0.5 (the grader's RUBRIC_v1).

  • npm run e2e:devnet (scripts/devnet-onboard.mjs, not published) onboards one seller end to end. DEVNET.md is
    the internal note; it is not in files.

  • Removed from the package: the test-network rows that 0.8.0 shipped.

    • JEV_DECISION_LOG_DEVNET
    • POOL_FACTORY[36927]: pass factory, or factories to poolsOpenOn
    • GRADE_STAMP_REGISTRY[36927]: pass registry
    • the ERC8004_DEPLOYMENTS devnet row

    The generators skip devnet-only rows. Two source comments no longer name the layer.

  • Version is 0.9.0 in package.json and CHANGELOG.md. Not published.

Checks

  • npm run check passes: typecheck, build, 731 tests (9 skipped), pins ok. 32 new tests run over mocked fetch.
  • The leak check is clean on the repo and on the npm pack tree.
  • The pack tree has no devnet address from the registry, except in the hash-pinned vendored assurance-shared.ts
    (upstream only).

Ran for real (devnet)

One seller, DrHobbs Knowledge Sales Agent (8453:55552), went all the way through to Completed:

  • edge edge_ae6bfa8580d017b1, live;
  • pool backed with 10 dGLMR;
  • job 0xf8bf8b65…cbb6.

The edge call, meter and agreement reads answer pending until the layer routes those operations.

Still in the package (for the owner)

  • The dependencies @taifoon/jev and @taifoon/jev-wilson.
  • The taifoon.*.v1 domain strings in stamp, payment-scheme and assurance-shared. These are on-chain hash domains:
    changing them changes the hashes.
  • The vendored assurance-shared.ts copy, which carries devnet rows and layer names. It is pinned, so it changes only
    upstream.

…rk one call per step

A devnet profile that ships no test-network address or URL: chain id, RPC and contracts are read at runtime from
options, the environment, or the API's own registry (GET /pools/networks, GET /rpc/:chainId), each field with its
source. The onboarding steps as calls: findSellers, mcpTools, checkSeller, openPoolPlan, poolOpened, edgeAgreement,
edgeBody, writeEdge, readEdge, faucetMintCalls, claimGas, fundPoolPlan, quoteEdge, hire, deliver, grade (binary,
the grader's RUBRIC_v1 thresholds), decisionDigest, settle, callEdge, meterLines, agreementState. Money calls refuse
any chain but the profile's and any chain with value.

npm run e2e:devnet onboards one seller end to end (scripts/devnet-onboard.mjs, not published). DEVNET.md is the
internal note (not in files). 32 unit tests over mocked fetch.
… comments

POOL_FACTORY, GRADE_STAMP_REGISTRY and ERC8004_DEPLOYMENTS lose their test-network rows, and JEV_DECISION_LOG_DEVNET
is removed; createPoolCalls takes factory, poolsOpenOn takes factories and encodeStamp takes registry for a test
network. Both registry generators skip devnet-only rows. Two comments no longer name the layer or its repos.
@MaciejBaj
MaciejBaj merged commit 3047f02 into main Nov 6, 2026
4 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