Repository navigation
feat: SysMD concepts as data, project views, assurance-thread profile - #31
Merged
Merged
Conversation
… data, plus project views Transfers four concepts from tukcps/SysMD (Apache-2.0; ideas only, no code): - quantity: Dimension/Unit/Interval/Quantity/ExchangeRate. Currencies are distinct units, never implicitly convertible (SysMD 4.3.0 canonicalizes all currencies to EUR: 100 USD + 100 EUR = 200 EUR). Cross-currency needs an explicit ExchangeRate with caller-supplied as_of + source. Offset units (degC/degF) convert but refuse arithmetic. - verdict: RangeVerdict (Entailed/Narrowed/Inconsistent) and Satisfies<QuantityBound> for Quantity. Narrowed maps to Unknown, not Satisfied. - view_definition: ViewDefinition/ViewUsage/Expose/ViewFilter/RenderingChoice and ModelIndex::select, for kr0ki project views. OMG vocabulary verbatim; the four standard RenderingUsages come from the Views library. - model_edit: hasA/isA qualified-name-addressed edits (parse/print only). CHANGELOG [Unreleased] and AGENTS.md module map updated. cargo test --all-features: 328 pass; clippy --all-targets --all-features -D warnings and fmt --check clean. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GgXQRGsprSZc2oXGNj9n8X
…ness, gap analysis) Typed profile over RequirementGraph: NodeKind, SourceKind, ProfileRequirement, statement lint, EvidenceRecord, CurrentRevisions (global model+implementation revision, per-case configuration digest), Freshness and analyze() -> ThreadReport with Assurance states and GapKinds. Keeps a satisfaction assertion apart from a revision-specific verification result. cargo test --all-features: 345 pass; clippy -D warnings and fmt clean. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GgXQRGsprSZc2oXGNj9n8X
8 tasks
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.
What
Transfers concepts (not code) from tukcps/SysMD (Apache-2.0) and adds the types kr0ki needs for project views and an assurance thread. All additive.
quantity:Dimension/Unit/finiteInterval/Quantity/ExchangeRate. Currencies are distinct units and never implicitly convertible (SysMD 4.3.0 canonicalises every currency to EUR, so100 USD + 100 EUR = 200 EUR; confirmed by running it). Cross-currency needs an explicitExchangeRatewith caller-suppliedas_of+source. °C/°F convert but refuse arithmetic.verdict:RangeVerdict(Entailed/Narrowed/Inconsistent) andSatisfies<QuantityBound> for Quantity.Narrowedmaps toUnknown, notSatisfied;Dispositionis unchanged.view_definition:ViewDefinition/ViewUsage/Expose/ViewFilter/RenderingChoice+ModelIndex::select. OMG vocabulary (D6); the four standardRenderingUsages come from the normativeViewslibrary.model_edit:hasA/isAqualified-name-addressed edits (parse/print only).mbse::assurance: typed profile overRequirementGraph(nine required requirement fields, evidence record,CurrentRevisionswith a per-case configuration digest,analyze->Assurancestate +GapKinds). Keeps a satisfaction assertion apart from revision-specific verification evidence.Verification
cargo test --all-features345 pass;cargo clippy --all-targets --all-features -- -D warningsandcargo fmt --checkclean. CHANGELOG[Unreleased]and AGENTS.md module map updated;Cargo.tomlversion not bumped (maintainer cuts the release).Notes for review
Currencyreusesiso::Currency; only the 16 variants it has are recognised as units.quantity::Intervalis finite-only on purpose (inf-inf is NaN).feat/assurance-thread) depends on this; it will bump itsufo-typesrev after merge.🤖 Generated with Claude Code
https://claude.ai/code/session_01GgXQRGsprSZc2oXGNj9n8X