Repository navigation
feat: integrate the classification and enrichment packages - #49
Merged
Merged
Conversation
Preserve parser entrypoints as compiled ESM with declarations. Enforce UTF-8 input limits, reject private IPv6 literals, keep timeouts active through body reads, and release discarded responses. Carry parser parity fixtures and regressions into the public package. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Preserve the runtime and its 28 entrypoints, move the private plugin example, and run all existing colocated plugin tests. Keep application configuration explicit and document the canonical specification boundary. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…pers Ship typed ESM exports for enrichment, provider adapters, extraction, and configurable caches. Preserve provider fixtures and behavior; make the public conformance helper executable under Node and Bun and run both suites. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Add three alpha runtime packages in dependency order, update the workspace lockfile, and exercise every runtime export plus strict consumer declarations from clean-room tarballs under Node and Bun. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Record runtime ownership, parser transport limits, publication ordering, and a verified Bun workspace-to-registry lockfile transition without regenerating the lock or committing temporary overrides. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Port provider utilities and Promise execution without Effect; preserve app provider-local identities behind an opt-in ladder policy with pinned oracle vectors. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Decode file URLs in release tooling, cover registry CLI execution in spaced and symlinked paths, and smoke-test pipeline subpaths and the bound ladder policy on Node and Bun. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The copied app tests require promtool when CI is set. Install the Ubuntu Prometheus tools before running the workspace tests. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Decode file URLs before resolving filesystem paths so uncached builds and release checks run from worktrees whose paths contain spaces. Validated with bun run build. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…endencies ENG-17072 Move pure action envelope builders and schema into SDK actions, retain deprecated CLI aliases, externalize runtime dependencies in the library bundle, and isolate test helpers. Node 20 minimum; Node 24 tested. The executable only exposes encoder commands. Validation: full workspace build; CLI 116 tests; SDK unit tests. npm pack --dry-run --json (file count / packed bytes / unpacked bytes): cli: 658 / 213316 / 2464592 -> 656 / 150446 / 1992192 sdk: 64 / 62273 / 268882 -> 101 / 83438 / 395768 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Keep protocol root and internal ABI imports free of bytecode; preserve bytecode on ./contracts. Remove curve math compatibility shims and dependency, document 4.0.0 migration, and give exported read/write/event helpers named return types. SDK OAuth wallet imports canonical bytecode directly. Validation: workspace build, 216 protocol unit tests. npm pack --dry-run --json: 780 files / 186631 packed bytes / 2787979 unpacked bytes -> 768 files / 99184 packed bytes / 712972 unpacked bytes. Dist: 2732436 -> 654717 bytes. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Disable declaration maps in shared TypeScript defaults and remove overrides in the 16 established packages. Smoke checks reject dangling declaration maps for this scope; atom runtime package overrides remain untouched. Validation: workspace build; npm pack --dry-run --json confirms zero declaration maps for all 16 established packages. Before -> after (files; packed bytes; unpacked bytes): predicates: 843 -> 563; 135882 -> 119956; 1330547 -> 1199886 schema-org: 2817 -> 1879; 693726 -> 642589; 5743151 -> 5346599 iid-registry: 24 -> 17; 11131 -> 9667; 34786 -> 31150 protocol: 768 -> 513; 99184 -> 78005; 712972 -> 549545 cli: 656 -> 331; 150446 -> 131390; 1992192 -> 1818604 periphery: 201 -> 135; 43832 -> 37883; 278733 -> 246638 iid: 42 -> 29; 28314 -> 25551; 92933 -> 83551 ids: 36 -> 25; 13639 -> 9004; 45962 -> 39031 primitives: 27 -> 19; 28431 -> 25280; 119358 -> 103974 iid-spec: 52 -> 52; 85503 -> 85503; 278403 -> 278403 sdk: 101 -> 70; 83451 -> 71949; 395820 -> 331015 classifications: 264 -> 177; 126245 -> 118598; 1391583 -> 1339414 iid-ladder: 24 -> 17; 29334 -> 27742; 88438 -> 83445 react: 48 -> 33; 90249 -> 85215; 1595033 -> 1528914 deployments: 162 -> 109; 224955 -> 220485; 1972922 -> 1931873 curves: 33 -> 23; 31601 -> 28020; 128733 -> 112850 Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ENG-17074 Correct predicate and ID imports in shipped SDK migration guidance. Add a TypeScript-aware import checker covering the root README, every package README, and recursively every package docs Markdown file, including named type exports and export-map wildcards. No existing tracked README import checker was present. Validation: node scripts/check-doc-imports.mjs. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
… ENG-17074 SDK 4.0.0 exports its own API and selected ID helpers and input types. Remove wholesale protocol and ID exports, migrate shipped examples to sdk/protocol, and assert the boundary in tarball smoke tests. Validation: workspace build and docs import checks. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Periphery already re-exports canonical artifacts from deployments; stop compiling and shipping unreferenced copies. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Add explicit named query return types while preserving wagmi query state and refetch APIs. Every exported hook is annotated. Document all hook groups and peer requirements; move protocol/deployments to peers with dev copies for tests. React 18+ remains supported and React 19 is tested; react-dom is an application renderer dependency. Validation: React build and 99 tests. npm pack --dry-run --json: 33 files / 85215 packed / 1528914 unpacked bytes -> 33 / 25148 / 133060. Dist: 1522408 -> 124280 bytes. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Merge duplicate dynamic-fee and gross-up sections, retain bounded solver details, and list all root exports by source module. Validation: documentation imports resolve against dist. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Use JSON import attributes and provide a readFileSync/createRequire alternative for Node environments without import attributes. Validation: documentation imports resolve against package exports. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Remove the unnecessary direct viem install from iid-ladder guidance, normalize Install/License headings, and explain classifications inherits its viem peer requirement via iid. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…17074 List all primitive subpaths, all 15 schema-org root exports, and the exact case-sensitive generated type subpath contract. Validation: documentation import checker. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Add the three atom runtime ownership rows using the existing migration documentation. Clarify deprecated CLI plan aliases. The duplicate SDK/CLI layer row was removed in ENG-17072; atom runtime package files are untouched. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Choose 0.1.0-alpha.0 for deployments, curves, periphery, and CLI; update all exact dependent pins and the release plan. Document the train policy. Registry metadata derives versions from manifests, avoiding a second hard-coded version list. Validation: bun install and registry:check. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Use stable caret ranges and retain exact prerelease pins in runtime, peer, and dev dependencies. Enforce the policy centrally and in packed manifests; release preflight checks the recorded stable baseline. Document when dependent releases are necessary. Include docs import validation in tarball smoke. Validation: registry:check, registry:test, release:registry:test. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Keep the shared normalizer because existing sources and generators still use extensionless imports. Document the preferred .js convention and the migration prerequisite for removal. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Decode the IID-spec fixture directory URL before reading files. Reconcile remaining release prose with the selected stable-caret and exact-prerelease policy. The excluded atom runtime tests contain similar URL-path assumptions; final CI parity is run from a clean checkout without spaces, without editing those packages. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Fresh-checkout validation found a remaining curves-only type import in getConfig and an SDK test still using root bytecode. Derive the config result from the canonical ABI and update the test to deployments/bytecode. Annotate the generic event parser and receipt/context helpers so the union event declaration does not inline the complete ABI. Validation: workspace build and 116 SDK tests. Protocol baseline -> current npm pack --dry-run --json: 780 -> 513 files; 186631 -> 73478 packed bytes; 2787979 -> 460455 unpacked bytes. Dist 2732436 -> 402112 bytes; current measurement also includes ENG-17074 declaration-map removal. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…-17069 Add redactProviderDiagnostic and apply it in createPluginError so every errors[] entry the engine emits is credential-free before any consumer persists or returns it. The helper strips query strings, fragments and userinfo from URLs (verbatim or percent-encoded), redacts credential parameters and headers (plain, quoted, JSON-escaped), bare Bearer/Basic tokens, and scheme-less userinfo. Mirrors the Core hotfix so both lineages stay identical. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…s, make promtool optional (ENG-17075) Stop emitting .d.ts.map from pipeline-runtime so the repo-wide tarball smoke check (no dangling declaration maps) passes once both prerequisite branches merge. Reword the metrics contract comments without references to private repositories or internal worker names. Remove the unpinned apt install from CI and let the promtool-backed tests skip wherever promtool is absent; the pure exposition checks still run everywhere. Give createLadder a named Ladder return type, tighten the README wording on minted handles, and list the app modules that need an Effect adapter against this package. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ges ENG-17074 deployments, curves and periphery already have 0.1.0-alpha.0 on the registry, so the candidate moves to 0.1.0-alpha.1 with every exact pin, the release plan and the release notes following; cli stays 0.1.0-alpha.0 because it has never been published. Record the registry dist-tag state and the release-owner decision on `latest`, and hold the Core-lineage atom packages out of the plan until the application-lineage rebuild lands. Also: envelope metadata reports the SDK as its source package now that the SDK owns the builders; the triple-id helpers return to the SDK root beside calculateAtomId (the app imports them there); document the getConfig return type change in the protocol migration notes and the envelope builders in the SDK README. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
# Conflicts: # docs/release.md # packages/iid-ladder/README.md # release-plan.json # scripts/package-registry.mjs # scripts/package-registry.test.mjs
…sts ENG-17074 Bun does not rewrite workspace dependency range strings on an incremental install, so the cli, periphery and sdk entries still carried the old 0.1.0 and 4.0.0 ranges. Patch exactly those strings to the manifest values; frozen and incremental installs both report no changes. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
fix(providers): redact credentials from HTTP errors (ENG-17069)
…der-policy feat: add Effect-free pipeline runtime and provider-local ladder policy (ENG-17075)
chore: prepare packages for publication (ENG-17072, ENG-17073, ENG-17074)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Integration of the atom runtime train into
update/v1.1.0-alpha: the three atom runtime workspace packages lifted from Core (held, not published), the Effect-free@0xintuition/pipeline-runtime, theproviderLocalHandlesladder policy in@0xintuition/iid-ladder, the credential redaction fix, and the pre-publication hygiene pass across the 16 established packages. This is the reviewed state of packages #45, #46 and #47 (each merged intofeat/atom-runtime-packages); its tree is byte-identical to the head that passed the full gate.Tracks ENG-17069, ENG-17072, ENG-17073, ENG-17074, ENG-17075 (project P-ENG-877).
Package impact
pipeline-runtime(new,0.1.0-alpha.0)iid-ladder(0.1.0-alpha.1)providerLocalHandles: 'reject' | 'mint'andcreateLadder; default unchanged, 532 known-answer vectors from the appatom-parser,atom-classification,atom-enrichment(0.1.0-alpha.0, held)release-plan.jsonand documented as held until the application-lineage rebuild publishes0.1.0-alpha.1.atom-enrichmentcarriesProviderHttpErrorand engine-levelredactProviderDiagnosticcli(0.1.0-alpha.0)sdk/actionswith deprecated aliasessdk(4.0.0)calculateAtomId,calculateTripleId,calculateCounterTripleId,calculateOAuthAtomId);./protocolescape hatch keptprotocol(4.0.0)./contracts; curve shims and curves dependency removed; explicit return types (dist 2.79 MB → 460 KB)react(0.1.0-alpha.1)deployments,curves,periphery(0.1.0-alpha.1)0.1.0-alpha.0is already on the registry; pins cascadedregistry:check; README and docs import checker;docs/release.mdrecords registry dist-tag state, held packages and the live preflight requirementIdentity impact
Identity impact: none — existing golden bytes unchanged. The ladder default remains
'reject'; conformance is 1281/0.Fixture impact
Adds
packages/iid-ladder/__tests__/fixtures/provider-local-handles.json(provenance: app7fc0c82b4). Existing conformance fixtures unchanged.Contract artifact
ABI and bytecode contents unchanged;
release:checkverifies the registry tarball SHA-512 for@0xintuition/contracts-v2@1.1.0-alpha.1and@0xintuition/contracts-v2-periphery@1.1.0-alpha.0and byte-identical generated modules. PR #48 (already on the base) removed the same two periphery FeeProxy copies this branch removes; the merge is clean.Validation
On the identical tree (
7bc49d7), every step passed: frozen install, build, typecheck, test (32/32 tasks), check, registry check (20 packages), registry and release-registry tests, supply-chain guard and its tests, artifacts check and tests, conformance, schema validation, generated-output checks, creation-profile check, protocol artifact sync test, pack dry-run, clean-room tarball smoke (Node, Bun, TypeScript), and the live registry preflight (bun run release:registry).bun run release:checkpassed on the merged integration head.Rollout notes
docs/release.md: the 16-entryrelease-plan.jsonin order,--tag alpha; the atom packages are not published.npm login(the local token is currently invalid) and a decision on whetherlatestmoves for the nine packages whoselatestsits on0.1.0-alpha.0.feat/core-package-train, feat(deployments): port address overrides and bring the deployment table to parity with the reference implementation (P17) #34 and feat(iid, iid-spec): floor weak account handles below anchor eligibility, with the spec amendment and conformance rule (P16g) #35) and the app pick up the registry versions after publication.🤖 Generated with Claude Code