Skip to content

Make lineage equivalence levels and comparison coverage explicit #29

Description

@jacksenpierce

Status

Confirmed as a design/contract gap in Parmesan 3.0.2. This issue does not assume that every kind of equivalence must be collapsed into one fingerprint.

Observed behavior

Semantic snapshots fingerprint current nodes (including revision UUIDs), graphs, triples, and tags. The lineage comparator currently compares node content hashes only. Registered extension schemas receive drift checks, but extension contents, custom views, and triggers do not participate in the semantic snapshot fingerprint.

Desired outcome

Return explicit, separately named comparison facts rather than a single ambiguous notion of "same":

  • corpus identity and authority head;
  • current visible-node state;
  • current revision state and revision-history coverage;
  • graph, triple, tag, lifecycle, and sentinel state;
  • extension/schema/machinery coverage;
  • materialization-byte equality.

When custom SQL or semantic extensions are outside the comparator's declared coverage, report that incompleteness rather than implying full semantic equivalence.

Acceptance evidence

Tests distinguish identical visible content with different revision identity, triple-only and tag-only changes, extension-data changes, and custom executable-schema changes.

Related to #22.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    clarityNaming, semantics, and documentation clarityenhancementNew feature or requestllm-affordanceStructured guidance and recovery for LLM operators

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions