diff --git a/README.md b/README.md index 52b9f4f..05ea52f 100644 --- a/README.md +++ b/README.md @@ -19,3 +19,8 @@ The draft [counterparty model](infospace/models/counterparty/CommerceCanonCounte now defines the commerce assignments using explicit identity and evidence imports. The [distributed corpus](infospace/assimilation/canon-federation/README.md) preserves research provenance; reciprocal interface cards remain pending T08. + +## Canon federation + +[Published interface card](infospace/interfaces/federation.yaml) declares exports, imports, authority, +source-of-truth boundaries and reciprocal canon references. diff --git a/canon.yaml b/canon.yaml index 771d8f3..457c666 100644 --- a/canon.yaml +++ b/canon.yaml @@ -1,7 +1,7 @@ repository: commerce-canon title: CommerceCanon status: draft -version: 0.2.0-draft +version: 0.3.0-draft description: Counterparty and commercial-relationship semantics importing shared InfoTechCanon concepts. classification: kernel: Canon purpose, ownership boundary, and contribution rules. @@ -29,3 +29,9 @@ models: ledger_locator: counterparty standards: [] planned_models: [] + +interface_cards: + - id: commerce-canon/federation-interface + path: infospace/interfaces/federation.yaml + status: published + version: 0.1.0 diff --git a/infospace/interfaces/README.md b/infospace/interfaces/README.md new file mode 100644 index 0000000..dacafe1 --- /dev/null +++ b/infospace/interfaces/README.md @@ -0,0 +1,19 @@ +# Canon federation interface + +The [interface card](federation.yaml) publishes this canon's federation boundary +under [accepted ADR-006](../../../the-custodian/canon/architecture/adr-006-canon-federation-concept-ownership.md). + +- [info-tech-canon interface](../../../info-tech-canon/infospace/interfaces/federation.yaml) +- [the-custodian interface](../../../the-custodian/canon/interfaces/federation.yaml) + +Each export names its source document and current maturity. Imports identify +actual dependencies; reciprocal navigation does not imply reciprocal semantic +imports. Custodian supplies ecosystem governance, InfoTechCanon information- +processing semantics, and CommerceCanon commercial semantics. Family remains +seeded, not authored. The card scope is this federation, not every repo artifact. + +Reproduce G7 from the adjacent project checkout: + +```bash +python3 tools/validate_interfaces.py --workspace .. +``` diff --git a/infospace/interfaces/federation.yaml b/infospace/interfaces/federation.yaml new file mode 100644 index 0000000..47446dd --- /dev/null +++ b/infospace/interfaces/federation.yaml @@ -0,0 +1,124 @@ +id: commerce-canon/federation-interface +title: commerce-canon Canon Federation Interface Card +consumer: commerce-canon +canon_surfaces: +- commerce-counterparty +status: published +version: 0.1.0 +owner: commerce-canon +scope: CFED-WP-0001 federation boundary; not a complete inventory of the repository or a runtime adoption + claim +schema_source: + repository: info-tech-canon + path: infospace/schemas/interface-card.schema.yaml +authority: + repository: the-custodian + artifact: CUST-ADR-006 + path: canon/architecture/adr-006-canon-federation-concept-ownership.md + revision: accepted-1 + source_commit: f895d2d0ab49aab2f278f63388d9a683ecac6c63 + sha256: a454df0e1d227f99ebb36c4abd45c76cc12579086d34f0c0ccfccfd7f4790823 +peers: +- repository: info-tech-canon + card: infospace/interfaces/federation.yaml + relationship: independent domain canon +- repository: the-custodian + card: canon/interfaces/federation.yaml + relationship: governance authority +exports: +- artifact: commerce-counterparty + ledger_model: counterparty + kind: domain-model + path: infospace/models/counterparty/CommerceCanonCounterpartyModel.md + status: draft + concepts: + - Beneficial Owner + - Beneficial Ownership Exemption + - Beneficial Ownership Relationship + - Commercial Commitment + - Commercial Record + - Commercial Relationship + - Counterparty Assurance Gradient + - Customer + - Legal Entity + - Legal Person + - Payment Instrument Reference + - Payment Mandate + - Performance Evidence + - Pipeline Pursuit + - Proxy Commercial Identifier + - Registry Identifier + - Reputation Signal + - Vendor + availability: referenceable; adoption requires consumer review +imports: +- repository: the-custodian + artifact: CUST-ADR-006 + kind: ecosystem-governance + concepts: [] +- repository: info-tech-canon + artifact: itc-ident + kind: domain-model + concepts: + - Identifier + - Scoped Identifier + - Identity Record + - Account + - Scope + - Tenant + - Lifecycle State + - Synonymity Assertion + - Representation Relationship + - Trust Relationship + - Assurance Level + - Profile + manifest: infospace/models/counterparty/imports.json +- repository: info-tech-canon + artifact: itc-evid + kind: domain-model + concepts: + - Evidence + - Evidence Source + - Adjudication Outcome + - Evidence strength + manifest: infospace/models/counterparty/imports.json +- repository: info-tech-canon + artifact: itc-org + kind: domain-model + concepts: + - Actor + - Person + - Organization + - Role + - Ownership + manifest: infospace/models/counterparty/imports.json +- repository: info-tech-canon + artifact: itc-gov + kind: domain-model + concepts: + - Obligation + - Decision + - AssuranceCase + - AssuranceConclusion + manifest: infospace/models/counterparty/imports.json +source_of_truth: + governance: the-custodian/CUST-ADR-006 + ownership_assignment: prj-canon-federation/ledger/concept-ownership.json + definitions: exporting canon model documents; seed areas carry no authored domain model +mapping_rules: +- Import a concept from its declared owner; do not copy a definition as a competing local root. +- Identifier stays itc-ident; Registry Identifier and Proxy Commercial Identifier are Commerce specializations. +- Evidence assertions and Evidence Source containers stay distinct under itc-evid. +- Identity Assurance Level, governance AssuranceCase/AssuranceConclusion, and Counterparty Assurance Gradient + stay distinct. +- Family is a separate seed; Community and Household are itc-org draft social collectives. +known_deviations: +- This card uses the existing JSON Schema string consumer / array canon_surfaces shape; richer Core section + 24 fields are additive. +- Exports describe availability, not proof of adoption. No reverse Commerce domain import by InfoTechCanon + or Custodian is asserted. +- Custodian governs both domain canons but owns none of their domain semantics. +expectations: +- Validate reciprocal cards and pinned sources with prj-canon-federation/tools/validate_interfaces.py. +- Review changed source versions explicitly and retain earlier import manifests. +- Fleet reference acceptance remains CFED-WP-0001-T09; demand-driven residuals remain T10. diff --git a/infospace/kernel/CommerceCanonCore.md b/infospace/kernel/CommerceCanonCore.md index b1912fb..a546b81 100644 --- a/infospace/kernel/CommerceCanonCore.md +++ b/infospace/kernel/CommerceCanonCore.md @@ -2,7 +2,7 @@ id: commerce-core title: CommerceCanon Core status: draft -version: 0.1.0-draft +version: 0.1.1-draft --- # CommerceCanon Core @@ -31,8 +31,8 @@ alternative registry of CommerceCanon-owned definitions. The | Obligation, Decision, AssuranceCase, AssuranceConclusion, Audit | itc-gov | Import; a commercial commitment may relate to obligations without redefining them. | | Identifier, Account, Scope, Assurance Level and ledger-assigned identity concepts | itc-ident (draft 0.1.0) | Import; identifier specializations retain upstream identity semantics. | | Evidence, Evidence Source, Adjudication Outcome, general evidence strength | itc-evid (draft 0.1.0) | Import assertions and their addressable sources as distinct concepts. | -| Community, Household | itc-org extension (pending T12) | Import distinct social collectives when available. | -| Family | Separate InfoTechCanon concept-area seed (pending T13) | Reference only; not a CommerceCanon collective-actor definition. | +| Community, Household | itc-org social extension (draft 0.1.0) | Available boundary references; not added to Counterparty’s 25 declared imports. | +| Family | Separate InfoTechCanon concept-area seed (seeded, not authored) | Reference only; not a CommerceCanon collective-actor definition. | Existing upstream models are [organization](../../../info-tech-canon/infospace/models/organization/InfoTechCanonOrganizationModel.md), [access control](../../../info-tech-canon/infospace/models/access-control/InfoTechCanonAccessControlModel.md), @@ -71,5 +71,7 @@ Validate assignments against the federation ledger and review for duplicate ownership. Historical source material is preserved in the [T07 provenance workspace](../assimilation/canon-federation/README.md). [Repository layout](../../docs/RepositoryLayout.md) explains content placement. -T08 owns reciprocal interface cards once models and imports are established. +The [federation interface card](../interfaces/federation.yaml) declares imports, +exports and reciprocal canon references. The [upstream review](../models/counterparty/import-review-2026-09-06.md) +records the T12/T13 source review while preserving the previous import manifest. Runtime services, a CLI, and production APIs are outside this foundation scope. diff --git a/infospace/models/counterparty/import-history/2026-09-05-imports.json b/infospace/models/counterparty/import-history/2026-09-05-imports.json new file mode 100644 index 0000000..2296c68 --- /dev/null +++ b/infospace/models/counterparty/import-history/2026-09-05-imports.json @@ -0,0 +1,61 @@ +{ + "schema_version": 1, + "model": "commerce-counterparty", + "source_repository": "info-tech-canon", + "source_commit": "361c944325934ccdb190470baf6f55440b6b486e", + "imports": [ + { + "model": "itc-ident", + "path": "infospace/models/identity/InfoTechCanonIdentityModel.md", + "sha256": "20bc844d9de07041c40009cc5e3d6eeb42aeb7adcbb86b0194d4b2517aa23f32", + "concepts": [ + "Identifier", + "Scoped Identifier", + "Identity Record", + "Account", + "Scope", + "Tenant", + "Lifecycle State", + "Synonymity Assertion", + "Representation Relationship", + "Trust Relationship", + "Assurance Level", + "Profile" + ] + }, + { + "model": "itc-evid", + "path": "infospace/models/evidence/InfoTechCanonEvidenceModel.md", + "sha256": "a93472818b3ae60c07a4c6226090d63eebf1402dfd9f46dad643dbb5608ed086", + "concepts": [ + "Evidence", + "Evidence Source", + "Adjudication Outcome", + "Evidence strength" + ] + }, + { + "model": "itc-org", + "path": "infospace/models/organization/InfoTechCanonOrganizationModel.md", + "sha256": "98fb4569a555e5a91a1219b6e413b5b4e3c243d7bef15cb9db03fd8d6743f1b4", + "concepts": [ + "Actor", + "Person", + "Organization", + "Role", + "Ownership" + ] + }, + { + "model": "itc-gov", + "path": "infospace/models/governance/InfoTechCanonGovernanceModel.md", + "sha256": "5f3174147ec0d6f5bb6479a7ce4dc130bf61ecc0bab3936895b92c6baf21deb5", + "concepts": [ + "Obligation", + "Decision", + "AssuranceCase", + "AssuranceConclusion" + ] + } + ] +} diff --git a/infospace/models/counterparty/import-review-2026-09-06.md b/infospace/models/counterparty/import-review-2026-09-06.md new file mode 100644 index 0000000..ca1fa04 --- /dev/null +++ b/infospace/models/counterparty/import-review-2026-09-06.md @@ -0,0 +1,23 @@ +# Counterparty upstream review — 2026-09-06 + +Reviewed by codex under COMMERCE-WP-0004 / CFED-WP-0001-T08. + +Previous source: `361c944325934ccdb190470baf6f55440b6b486e`. Reviewed source: +`372f671eef861e3f180eb5f9fc2fbd8c479ef8b7`. The [previous manifest](import-history/2026-09-05-imports.json) +is preserved byte-for-byte; [current manifest](imports.json) records its SHA-256. +Both revisions are verified against Git blobs by the federation G7 validator. + +The complete diff of the four imported source documents has been reviewed. +Identity, evidence and governance are unchanged. Organization adds explicit +incremental ownership metadata, Community and Household under CollectiveActor, +social scope and P4 boundary cases. Its five imported concepts (Actor, Person, +Organization, Role, Ownership) keep their definitions. Metadata listing only +Community/Household is incremental; existing prose definitions still own the +older organization concepts. + +The import set remains exactly 25 concepts from four models. This review advances +the source pin without adding Community or Household to Counterparty's imports. +The kernel records those available draft definitions as boundary references. +Family is now a separate seeded-not-authored concept area; neither this review +nor the interface card imports a Family domain model. No stable promotion, +consumer adoption, legal interpretation or new semantic definition is implied. diff --git a/infospace/models/counterparty/imports.json b/infospace/models/counterparty/imports.json index 2296c68..7119e3b 100644 --- a/infospace/models/counterparty/imports.json +++ b/infospace/models/counterparty/imports.json @@ -2,7 +2,7 @@ "schema_version": 1, "model": "commerce-counterparty", "source_repository": "info-tech-canon", - "source_commit": "361c944325934ccdb190470baf6f55440b6b486e", + "source_commit": "372f671eef861e3f180eb5f9fc2fbd8c479ef8b7", "imports": [ { "model": "itc-ident", @@ -37,7 +37,7 @@ { "model": "itc-org", "path": "infospace/models/organization/InfoTechCanonOrganizationModel.md", - "sha256": "98fb4569a555e5a91a1219b6e413b5b4e3c243d7bef15cb9db03fd8d6743f1b4", + "sha256": "bdb1277e78c3a0802f8ea08e058be093452390e61ca0f7e979051e48680fe6c3", "concepts": [ "Actor", "Person", @@ -57,5 +57,13 @@ "AssuranceConclusion" ] } - ] + ], + "review": { + "date": "2026-09-06", + "workplan": "COMMERCE-WP-0004", + "record": "import-review-2026-09-06.md", + "previous_manifest": "import-history/2026-09-05-imports.json", + "previous_manifest_sha256": "60a6c5187f1e208dcf763913d4d6a98840bc934d238f25d660c8ff3b5ea241d9", + "concept_changes": [] + } } diff --git a/workplans/COMMERCE-WP-0004-federation-interface.md b/workplans/COMMERCE-WP-0004-federation-interface.md new file mode 100644 index 0000000..33d3c3f --- /dev/null +++ b/workplans/COMMERCE-WP-0004-federation-interface.md @@ -0,0 +1,56 @@ +--- +id: COMMERCE-WP-0004 +type: workplan +title: "Publish the commerce-canon federation interface" +domain: financials +repo: commerce-canon +status: finished +owner: codex +topic_slug: canon-federation +created: "2026-09-06" +updated: "2026-09-06" +--- + +# Federation interface publication + +Native implementation of CFED-WP-0001-T08, authorized by the user's continuation +of the accepted federation plan. Review uses CUST-ADR-006 accepted-1 and the +completed model placements; no governance amendment or domain promotion. + +## Publish the interface and reciprocal navigation + +```task +id: COMMERCE-WP-0004-T01 +status: done +priority: medium +``` + +Publish [commerce-canon's card](../infospace/interfaces/federation.yaml) with actual imports, available exports, +source authority, maturity and both peer references. Custodian has no domain +semantics. Commerce reviews and preserves the prior Counterparty import pin. + +## Verify and publish evidence + +```task +id: COMMERCE-WP-0004-T02 +status: done +priority: medium +``` + +Pass schema, reciprocal-edge, ledger ownership, pinned-source and navigation +checks in the project G7 validator. For InfoTechCanon also regenerate discovery +surfaces and run make check. Publish and synchronize this native record. + +## Remaining scope + +CFED-WP-0001-T09 already owns fleet references; T10 owns demand-driven residual +review. This card creates no runtime adoption, Family authoring or service work. + +## Result — 2026-09-06 + +Published card and reciprocal navigation pass the project G7 validator. +[Consolidated evidence](../../prj-canon-federation/docs/evidence/2026-09-06-interface-cards.md) +records three valid cards, six reciprocal links, unchanged import concepts and +verified historical sources. InfoTechCanon make check passes (46 tests, current +generated surfaces and small-saas proof). No new unowned residual was created; +existing CFED-WP-0001-T09/T10 retain the remaining project scope.