Skip to main content

Artifact Constitution

1. Purpose

Persistent business artifacts are first-class constitutional citizens within ZAYAZ.

They represent immutable business facts that can be verified, replayed, exchanged, versioned, governed, audited, and preserved independently of the software that created them.

This constitution defines the canonical rules governing artifact identity, naming, ownership, lifecycle, and architectural separation.


2. Constitutional Principles

Every persistent artifact SHALL possess:

  • exactly one canonical artifact type;
  • exactly one owning specification;
  • exactly one producing component;
  • exactly one runtime identifier type;
  • zero or more transport contracts.

Artifacts SHALL be immutable.

Artifacts SHALL NOT be identified by engine names.

Artifacts SHALL NOT be identified by document identifiers.

Artifacts SHALL NOT be identified by CSI contracts.


3. Architectural Separation

Every architectural object belongs to exactly one constitutional layer.

LayerPurposeExample
SpecificationDefines behaviourTG-RP
Component / EngineProduces artifactsTG-ATTESTATION-ENGINE
ArtifactPersistent business objectARTIF-TG-ATTESTATION
Runtime IdentifierIdentifies one artifact instanceTAID
CSITransports artifactscomp.TG.OUTPUT.ATTESTATION.v1_0

These layers SHALL never be conflated.


4. Artifact Namespace

Every persistent artifact SHALL use the constitutional namespace:

ARTIF-<ARTIFACT-DOMAIN-CODE>-<ARTIFACT-TYPE>

Examples:

ARTIF-ADTRSTGT-ATTESTATION

ARTIF-ADTRSTGT-VALIDATION-RESULT

ARTIF-ADTRSTGT-VALIDATION-EVIDENCE

ARTIF-ADTRSTGT-VALIDATION-TRACE

ARTIF-ADTRSTGT-TRUST-SCORE

ARTIF-ADTRSTGT-DECISION

ARTIF-ADTRSTGT-REPLAY-MANIFEST

ARTIF-ADTRSTGT-REPLAY-COMPARISON

ARTIF-ADORGPRO-*

ARTIF-ADKNWPRO-*

ARTIF-ADCONFIG-*

ARTIF-ADREPORT-CSRD

ARTIF-ADMATERL-ASSESSMENT

ARTIF-ADCARBON-*

ARTIF-ADMATERL-DOUBLE-MATERIALITY-ASSESSMENT

ARTIF-ADFEDRTN-KNOWLEDGE-PACKAGE

Artifact names SHALL be descriptive.

Unexplained abbreviations SHOULD NOT be introduced.

4.1. Registered Artifact Domains

The <DOMAIN> segment identifies the constitutional domain that owns the artifact type.

Only constitutionally registered domains may be used.

DomainDescription
ADTRSTGTTrustGate
ADORGPROConstitutional Organization Profile
ADKNWPROIndustry Knowledge Profile
ADCONFIGConstitutional Configuration
ADREPORTReports Hub
ADMATERLMateriality
ADCARBONCarbon Passport
ADFEDRTNFederation
ADLEDGERDistributed Audit Ledger artifacts
ADENGINEEngines
ADRISKINRisk Intelligence Framework

New domains SHALL be introduced only through constitutional amendment.


5. Artifact Instance Identifiers

Artifact types are not artifact-instance identifiers.

An ARTIF-* name identifies a canonical artifact type.

An artifact-instance identifier identifies one concrete immutable instance of that artifact type.

Every persistent artifact instance SHALL possess exactly one canonical artifact-instance identifier.

Artifact families with distinct lifecycle, governance, assurance, federation, or lookup requirements MAY define a specialized identifier type.

Where no specialized identity semantics are required, the platform-wide ARTID Artifact Instance Identifier SHALL be used.

Examples:

ArtifactPrimary identifier typeSpecialized meaning
ARTIF-ADTRSTGT-ATTESTATIONTAIDTrust Attestation Identifier
ARTIF-ADTRSTGT-VALIDATION-RESULTVALRIDValidation Result Identifier
ARTIF-ADTRSTGT-VALIDATION-RUNTIMEVRIDValidation Runtime Identifier
ARTIF-ADTRSTGT-VALIDATION-EVIDENCEVEIDValidation Evidence Identifier
ARTIF-ADTRSTGT-VALIDATION-TRACEVTIDValidation Trace Identifier
ARTIF-ADTRSTGT-REPLAY-MANIFESTRMIDReplay Manifest Identifier
ARTIF-ADORGPRO-ORGANIZATION-PROFILECOPIDConstitutional Organization Profile Identifier
ARTIF-ADKNWPRO-INDUSTRY-KNOWLEDGE-PROFILEIKPIDIndustry Knowledge Profile Identifier
ARTIF-ADCONFIG-ORGANIZATION-CONFIGURATIONCCONIDConstitutional Configuration Identifier
ARTIF-ADLEDGER-ANCHOR-RECEIPTDARIDDigital Assurance Receipt Identifier
ARTIF-ADRISKIN-RISK-ASSESSMENTRASIDRisk Assessment Identifier

Artifact types without specialized identity semantics SHALL use the platform-wide ARTID Artifact Instance Identifier.

See config/system/artifact-types.json for the latest versions.

The identifier type SHALL define:

  • canonical prefix;
  • uniqueness scope;
  • issuing authority;
  • identifier format;
  • immutability requirements;
  • registry or lookup mechanism;
  • federation behavior;
  • replay behavior;
  • deprecation and migration rules.

Identifiers identify instances.

ARTIF-* names identify artifact types.


6. Components Produce Artifacts

Components SHALL produce artifacts.

Components SHALL NOT become artifacts.

Example:

TG-ATTESTATION-ENGINE





ARTIF-TG-ATTESTATION





TAID

7. Specifications Govern Artifacts

Specifications define:

  • structure;
  • semantics;
  • lifecycle;
  • conformance;
  • invariants;
  • replay behaviour;
  • governance.

Specifications SHALL NOT be runtime objects.


8. CSI Contracts Transport Artifacts

CSI contracts define interoperability.

They do not define artifact identity.

Example:

ARTIF-ADTRSTGT-ATTESTATION



comp.TG.OUTPUT.ATTESTATION.v1_0

The CSI may evolve independently from the artifact.


9. Artifact Lifecycle

A canonical lifecycle consists of:

Definition



Creation



Validation



Anchoring



Replay



Federation



Archive

Additional domain-specific states MAY be introduced.


10. Ownership

Every artifact SHALL declare:

  • owning specification;
  • producing component;
  • runtime identifier;
  • replay profile;
  • governing policy bundle (where applicable).

Ownership SHALL be singular.


11. Constitutional Rules

ART-001

Every persistent business object SHALL possess exactly one canonical ARTIF-* type.


ART-002

Artifact names SHALL describe business objects, not software components.


ART-003

Artifact names SHALL remain stable across versions.


ART-004

Runtime identifiers SHALL identify instances, not artifact types.


ART-005

CSI contracts SHALL transport artifacts but SHALL NOT define artifact identity.


ART-006

Engines SHALL produce artifacts.

Artifacts SHALL never produce engines.


ART-007

Specifications SHALL define artifacts.

Artifacts SHALL not define specifications.


ART-008

Every artifact SHALL possess an immutable constitutional identity.


ART-009

Artifact names SHALL use descriptive English terminology.

Cryptic abbreviations SHOULD be avoided.


ART-010

New artifact namespaces SHALL require a constitutional amendment.

Projects SHALL NOT invent prefixes outside the registered constitutional namespaces.


12. Registered Artifact Namespace

The following namespace is constitutionally reserved.

PrefixMeaning
ARTIFCanonical persistent business artifact

Additional namespaces SHALL be introduced only through constitutional amendment.


13. Examples

EngineArtifactIdentifierCSI
TG-ATTESTATION-ENGINEARTIF-TG-ATTESTATIONTAIDcomp.TG.OUTPUT.ATTESTATION.v1_0
TG-REPLAY-ENGINEARTIF-TG-REPLAY-MANIFESTRMIDcomp.TG.OUTPUT.REPLAY-MANIFEST.v1_0
TG-RULE-EVALUATORARTIF-TG-VALIDATION-RESULTVRIDcomp.TG.OUTPUT.VALIDATION-RESULT.v1_0

14. AI Guidance

AI agents contributing to ZAYAZ SHALL:

  • distinguish artifacts from engines;
  • distinguish artifacts from specifications;
  • distinguish artifacts from CSI contracts;
  • use registered constitutional namespaces;
  • avoid inventing new prefixes;
  • propose constitutional amendments when new artifact families become necessary.

15. Future Evolution

Future constitutions may introduce:

  • artifact inheritance;
  • artifact federation;
  • artifact registries;
  • artifact digital signatures;
  • artifact retention policies;
  • artifact provenance graphs;
  • artifact lifecycle governance.

The ARTIF namespace SHALL remain the canonical namespace for persistent business artifacts throughout the ZAYAZ platform.




GitHub RepoRequest for Change (RFC)