Skip to content

fix: make Van Rossem hard fork ready - #53

Merged
matiwinnetou merged 6 commits into
mainfrom
feat/van-rossem-hard-fork-ready
Jun 3, 2026
Merged

fix: make Van Rossem hard fork ready#53
matiwinnetou merged 6 commits into
mainfrom
feat/van-rossem-hard-fork-ready

Conversation

@matiwinnetou

@matiwinnetou matiwinnetou commented Jun 2, 2026

Copy link
Copy Markdown
Contributor

What

Make the ADA Handle Resolver ready for the Van Rossem hard fork (Cardano protocol version 11, intra-era Conway upgrade).

Changes

  • yaci-store starters 0.1.20.1.7 — the latest stable release in the 0.1.x line.
  • cardano-client-lib follows transitively 0.6.20.6.6.
  • Project version bumped 0.1.40.1.5.

Verification

  • ./mvnw clean test on JDK 21 → 10 tests pass, BUILD SUCCESS.
  • dependency:tree confirms yaci/yaci-core/yaci-helper resolve to 0.3.10 (the starter's native version).

Tests

  • Live sync smoke-test against preprod / mainnet.

Upgrade yaci-store starters 0.1.2 -> 0.1.7, the latest stable release in
the 0.1.x line (Van Rossem / protocol v11). yaci-core is left to resolve
transitively from the starter (0.3.10) rather than pinned explicitly, so
the project stays on the version combination the 0.1.x starters are built
and tested against.

cardano-client-lib follows transitively to 0.6.6. Bump project version to
0.1.5.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@matiwinnetou
matiwinnetou force-pushed the feat/van-rossem-hard-fork-ready branch from fb21ae5 to 926fb69 Compare June 2, 2026 12:29
@matiwinnetou matiwinnetou changed the title fix: make Van Rossem hard fork ready (yaci-store 0.1.7, yaci-core 0.4.4) fix: make Van Rossem hard fork ready (yaci-store 0.1.7) Jun 2, 2026
Mateusz Czeladka and others added 2 commits June 2, 2026 15:17
Adds a remote-driven QA harness to validate hard-fork (Van Rossem)
readiness end-to-end against mainnet, modelled on cf-token-metadata-registry:

- docker-compose.yml + .env: Postgres + API (built from source), syncing
  mainnet from the first ADA Handle mint (slot 47931310) to tip. DNS-TTL
  relay-wedge mitigation applied via JAVA_TOOL_OPTIONS (the image entrypoint
  is a fixed `java -jar`, so JAVA_OPTS would be ignored).
- .claude/skills/cf-adahandle-resolver-mainnet-integration-test-full-sync:
  SSH-driven skill (preflight -> prepare -> compose up -> tunnels -> monitor
  sync to tip -> parse-error scan -> REST round-trip spot-checks). Pass =
  full sync through Conway with zero genuine block-parse errors + DB-vs-API
  consistency on sampled handles.
- .gitignore: track .claude/, ignore skill runtime config (config.env,
  tunnels.pid) and settings.local.json.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
yaci-store stores cursor_.era as a numeric ordinal (7 = Conway), not the
string "Conway". Map the ordinal to an era name and gate the hard-fork
readiness note on era 7, so crossing into the Conway / Van Rossem window
is detected correctly during the mainnet full-sync regression.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@matiwinnetou
matiwinnetou marked this pull request as ready for review June 2, 2026 13:56
@matiwinnetou
matiwinnetou requested review from flowftw and nemo83 June 2, 2026 13:56
- golden-handles.txt: 25 commonly-known mainnet handles (cardano, hosky,
  minswap, bigpey, charles, ... incl. enterprise-address eth/satoshi/crypto),
  all verified present on mainnet. Names only — handles are transferable NFTs,
  so addresses are asserted by shape + round-trip, not pinned (drift-proof).
- run-golden-handles.sh: forward lookup (well-formed addr1.../stake1...) +
  reverse-by-payment-address round-trip for each golden handle.
- run-rest-spotchecks.sh: fix stdin/heredoc collision (data now passed via
  argv, not a pipe that the heredoc program shadowed) and switch the DB sampler
  to JSON output so arbitrary UTF-8 handle names parse safely; skip empty names.
- SKILL.md: document the golden step and files.

Validated live against the in-progress mainnet sync: golden 25/25, sample 10/10.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@matiwinnetou matiwinnetou changed the title fix: make Van Rossem hard fork ready (yaci-store 0.1.7) fix: make Van Rossem hard fork ready Jun 2, 2026
@matiwinnetou matiwinnetou changed the title fix: make Van Rossem hard fork ready feat: make Van Rossem hard fork ready Jun 2, 2026
@matiwinnetou matiwinnetou changed the title feat: make Van Rossem hard fork ready fix: make Van Rossem hard fork ready Jun 2, 2026

@nemo83 nemo83 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it looks like .claude and .env were added by mistake, please remove, everything else looks 👌

Comment thread .env.example
Mateusz Czeladka and others added 2 commits June 3, 2026 12:29
A full mainnet sync to tip (~317k handles, ~14.7M ada_handle_history_item
rows) exhausted the 2g heap with recurring OutOfMemoryError, wedging the
HTTP server while the indexer thread limped on. 4g runs comfortably
(steady-state heap ~650MB) and the REST API stays responsive at tip.

Surfaced by the mainnet full-sync integration-test harness.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Address PR review (nemo83): a real .env shouldn't be in version control.
Rename .env -> .env.example, gitignore .env, and have the full-sync skill's
start-remote.sh create .env from .env.example on the remote when missing
(a fresh checkout no longer carries .env). The .claude skill folder stays —
it's the intentional QA-engineer full-sync harness.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@matiwinnetou
matiwinnetou requested a review from nemo83 June 3, 2026 12:16
@matiwinnetou
matiwinnetou merged commit 9d167aa into main Jun 3, 2026
3 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.

2 participants