Bind scalar ABI rows to source claims - #83
Merged
Conversation
Join named scalar ABI rows with inventory-anchored caller source claims in one frozen internal projection. Validate namespaces, owners, coordinates, and complete payloads before allocating bound rows without defining a serialized or public contract.
jscott3201
commented
Aug 24, 2026
jscott3201
left a comment
Owner
Author
There was a problem hiding this comment.
Immutable review cycle 1 targeted 40abea8de02fb09dc881b3920e35abde06c988e1.
Both standard review lenses are blocker/major-clean. No PR-introduced findings were deferred. The verify and book checks completed successfully on the reviewed head.
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
The new projection is an in-memory lowering input. Source class and member values remain caller claims rather than verified declarations. This change adds no serialization, graph topology, CXF, deployment identity, registry content, public schema, or production routine.
Validation
python3 -m unittest tools.lint.tests.test_routine_resolution tools.lint.tests.test_routine_scalar_abi tools.lint.tests.test_routine_scalar_names tools.lint.tests.test_routine_scalar_source_claims tools.lint.tests.test_routine_bound_scalars -v(74 tests)python3 -m py_compile tools/lint/routine_bound_scalars.py tools/lint/tests/test_routine_bound_scalars.pypython3 -m unittest discover -s tools/lint/tests -v(179 tests, pinned schema environment)python3 tools/lint/routine_schemas.pypython3 tools/lint/routine_semantics.pypython3 tools/lint/routines.pycargo test --manifest-path tools/verify/Cargo.toml(11 tests)cargo run --quiet --manifest-path tools/verify/Cargo.toml -- --routinescargo run --quiet --manifest-path tools/verify/Cargo.toml -- --allpython3 -m unittest discover -s tools/dataset_harness/tests -v(32 tests)verify.ymlpython3 tools/book/generate.py && mdbook build bookwith no tracked generated changesgit diff --checkThe exact two-checkout G36 inventory command was not rerun locally because the pinned source checkouts were unavailable. The base commit passed that gate, and pull-request CI runs it against both exact pins.