Skip to content

extdeps/version.dag: base versioning carriers + Wikipedia anchor + identity - #5310

Closed
gunbai-bot[bot] wants to merge 1 commit into
mainfrom
session/royal-lynx-92
Closed

gunbai-bot[bot] wants to merge 1 commit into
mainfrom
session/royal-lynx-92

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds dsl/extdeps/version.dag — single authority for extdeps fidelity citations (DESIGN §3)
  • Wikipedia anchor: https://en.wikipedia.org/wiki/Software_versioning
  • Four carriers: UpstreamVersionLabel (branded NonEmptyStr), UpstreamSpecCitation, RestApiVersionHeader, RestApiPathVersion
  • Identity functions: spec_citations_match and api_headers_same_version — proven by execution (test true on self, ! on mismatching pairs)
  • Ordering semantics documented in the header: ISO 8601 date labels are lexicographically chronological; no general total order for arbitrary upstream labels
  • By-execution witness file (dsl/test/claim/extdeps_version_base_witness_test.dag) with 6 discriminating witnesses — GREEN on correct behavior, RED if any field reverts to bare String or identity functions break

Consumer path

This PR is foundational. The parent work item (gentle-raven-832, "versioning model in extdeps") migrates existing consumers (extdeps/cron/schedule_model.dag, extdeps/llm/anthropic.dag, extdeps/github/github.dag) to use these carriers and adds their own data rows — that PR stacks on this one.

Test plan

  • gunbc run --source-root dsl --entry dsl/test/claim/extdeps_version_base_witness_test.dag --function extdeps_version_base_witnesses --claim-run → true
  • No Rust changes; cargo tests unaffected

🤖 Generated with Claude Code

…entity (DESIGN §3)

Adds `dsl/extdeps/version.dag` — the single authority for how extdeps records
upstream fidelity citations (spec citations, REST API version headers, path
versions). Wikipedia anchor on software-versioning concept; identity functions
(`spec_citations_match`, `api_headers_same_version`) proven by execution.
Ordering semantics documented in the header (ISO 8601 date labels are
lexicographically chronological; no general total order for arbitrary labels).
By-execution witnesses in `dsl/test/claim/extdeps_version_base_witness_test.dag`
go RED if identity functions return wrong values or labels regress to bare String.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@gunbai-bot

gunbai-bot Bot commented Jun 19, 2026

Copy link
Copy Markdown
Contributor Author

Closing per parent (gentle-raven-832) — this uses the fidelity-citation carrier shape (UpstreamSpecCitation/RestApiVersionHeader) that was rejected in favor of the slice-1 VersionIdentity/VersionScheme/VersionConstraint model in PR #5311. Superseded.

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.

1 participant