Skip to content

WP-22: fixes from the first live Sepolia publish (versions cid placeholder, gateways, --http-only, bootstrap plan, HB lock 409) - #32

Merged
cursor[bot] merged 10 commits into
masterfrom
wp-22-publish-followups
Sep 15, 2026
Merged

cursor[bot] merged 10 commits into
masterfrom
wp-22-publish-followups

Conversation

@jefflau

@jefflau jefflau commented Sep 15, 2026

Copy link
Copy Markdown
Owner

Six fixes surfaced by the first live publish of qwen--qwen3-0-6b.mirrors.enspack.eth (ops report in the project store).

  1. versions[last].cid is now the documented SELF_CID_PLACEHOLDER instead of the draft's CID, which looked real but resolved to nothing (spec-change spec-change: versions[] last entry cannot carry its own CID (self-referential); make cid optional for the current version #30, 0.1 behaviour); previous entries keep real CIDs; versions --json adds latestCidFromContenthash.
  2. CLI and bootstrap gateway list: ENSPACK_IPFS_GATEWAYS extras → Pinata gateway → core DEFAULT_GATEWAYS (spec order preserved; public gateways 429 on fresh pins); getVerified rotates on 429.
  3. --http-only skips the torrent-metainfo fetch/checks (files come from webseeds and are SHA-256 verified anyway); the torrent path is unchanged.
  4. Bootstrap production store honours ENSPACK_IPFS_GATEWAYS via shared gatewaysFromEnv.
  5. plan records a failing entry (resolve or dry-run throw) and continues; an already-published model plans 1.1.0.
  6. Hugging Bay lock 404/409 → null = no lock, cross-check skipped (BOOTSTRAP.md §2 rule 3); a tampered lock still aborts.

Docs: docs/publishing.md, CLI README, CHANGELOGs (core, cli, hf, bootstrap).

Proof: root pnpm check green — core 171, cli 49, hf 27, bootstrap 20, plus all other suites. Unproven: live new-version publish and live tier-1 plan on Sepolia (next ops run). SPEC.md / schema/* untouched.

Open in Web Open in Cursor 

jefflau and others added 10 commits September 15, 2026 13:57
A manifest cannot contain its own CID. Publish and assembleManifest now
keep SELF_CID_PLACEHOLDER on the current versions[] entry and stamp the
previous tail with the on-chain CID. inspect/versions human output marks
the latest cid; versions --json adds latestCidFromContenthash.

Co-authored-by: Jeff Lau <jefflau@users.noreply.github.com>
Configured clients try ENSPACK_IPFS_GATEWAYS, then Pinata, then the SPEC
DEFAULT_GATEWAYS list. getVerified already treated 429 like other HTTP
failures; add a regression test.

Co-authored-by: Jeff Lau <jefflau@users.noreply.github.com>
SPEC §4 step 7c downloads files from webseeds and verifies SHA-256, so
the torrent CID does not need to be available on IPFS.

Co-authored-by: Jeff Lau <jefflau@users.noreply.github.com>
Share gatewaysFromEnv with the CLI so Pinata and env extras are tried
before SPEC DEFAULT_GATEWAYS.

Co-authored-by: Jeff Lau <jefflau@users.noreply.github.com>
planBootstrap records failed entries with a reason and continues.
When the model name already resolves, plan a minor bump (1.1.0)
using the same previous-manifest logic as run.

Co-authored-by: Jeff Lau <jefflau@users.noreply.github.com>
BOOTSTRAP.md §2 rule 3 only cross-checks where Hugging Bay has a lock.
409 and 404 return null; the files step logs and continues. Tampered
locks still fail closed.

Co-authored-by: Jeff Lau <jefflau@users.noreply.github.com>
Document issue #30 in docs/publishing.md and the CLI gateway default
(Pinata after ENSPACK_IPFS_GATEWAYS).

Co-authored-by: Jeff Lau <jefflau@users.noreply.github.com>
Co-authored-by: Jeff Lau <jefflau@users.noreply.github.com>
Co-authored-by: Jeff Lau <jefflau@users.noreply.github.com>
The publish test returns early without a pinner or 0x-prefixed key.
Default tiny-model.mirrors.enspack.eth is not on Sepolia, so get must
not run against it when ENSPACK_E2E_NAME is also unset.

Co-authored-by: Jeff Lau <jefflau@users.noreply.github.com>
@cursor
cursor Bot merged commit 4505bb8 into master Sep 15, 2026
1 check passed
@cursor
cursor Bot deleted the wp-22-publish-followups branch September 15, 2026 14:23
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