Skip to content

Add granular type-use derivation lineage - #47

Merged
woksin merged 7 commits into
mainfrom
feat/granular-type-use-lineage
Aug 28, 2026
Merged

Add granular type-use derivation lineage#47
woksin merged 7 commits into
mainfrom
feat/granular-type-use-lineage

Conversation

@woksin

@woksin woksin commented Aug 28, 2026

Copy link
Copy Markdown
Collaborator

Added

Changed

woksin added 7 commits August 28, 2026 00:43
Establish independent artifact, member, type-use, binding, and member-role facts so adapters can contribute exact use-site semantics without replacing complete artifact definitions. Admission freezes and rejects malformed inputs atomically while preserving existing contracts.
Derive exact member bindings once from a canonical admitted base snapshot and retain the rule, input facts, and complete evidence lineage. Conflicting or incomplete subjects fail closed without consulting adapter identities, Roslyn, or prior derived outputs.
Resolve admitted and derived member facets at their smallest semantic key, materializing compatibility artifact definitions only in the resolved graph. Conflicts and unsupported shapes now fail closed with exact dispositions while legacy aggregate paths remain supported.
Let .NET adapters emit independently admitted member declarations, nested use-site shapes, exact terminal subjects, and explicit member roles while preserving the existing aggregate type-shape APIs.
Document fixed-snapshot type-use lineage and exercise modern Vogen/external composition, a source-independent non-.NET frontend, the 0.16 API baseline, and unchanged 0.1/0.5 consumer binaries against candidate packages.
Block complete legacy artifacts when exact member evidence conflicts or cannot be represented, retain complete binding target roles through lowering, distinguish ordinary and event-source identifiers, and validate malformed shape structures without throwing.
Clarify exact ArtifactKey retention, role-specific dispositions, and atomic omission of malformed or lossy member evidence, and exercise target-role preservation in the package consumer.
@woksin woksin added the minor New features, non-breaking additions label Aug 28, 2026
@woksin
woksin merged commit 6ff231d into main Aug 28, 2026
3 of 4 checks passed
@woksin
woksin deleted the feat/granular-type-use-lineage branch August 28, 2026 08:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

minor New features, non-breaking additions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant