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.
| Layer | Purpose | Example |
|---|---|---|
| Specification | Defines behaviour | TG-RP |
| Component / Engine | Produces artifacts | TG-ATTESTATION-ENGINE |
| Artifact | Persistent business object | ARTIF-TG-ATTESTATION |
| Runtime Identifier | Identifies one artifact instance | TAID |
| CSI | Transports artifacts | comp.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.
| Domain | Description |
|---|---|
ADTRSTGT | TrustGate |
ADORGPRO | Constitutional Organization Profile |
ADKNWPRO | Industry Knowledge Profile |
ADCONFIG | Constitutional Configuration |
ADREPORT | Reports Hub |
ADMATERL | Materiality |
ADCARBON | Carbon Passport |
ADFEDRTN | Federation |
ADLEDGER | Distributed Audit Ledger artifacts |
ADENGINE | Engines |
ADRISKIN | Risk 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:
| Artifact | Primary identifier type | Specialized meaning |
|---|---|---|
ARTIF-ADTRSTGT-ATTESTATION | TAID | Trust Attestation Identifier |
ARTIF-ADTRSTGT-VALIDATION-RESULT | VALRID | Validation Result Identifier |
ARTIF-ADTRSTGT-VALIDATION-RUNTIME | VRID | Validation Runtime Identifier |
ARTIF-ADTRSTGT-VALIDATION-EVIDENCE | VEID | Validation Evidence Identifier |
ARTIF-ADTRSTGT-VALIDATION-TRACE | VTID | Validation Trace Identifier |
ARTIF-ADTRSTGT-REPLAY-MANIFEST | RMID | Replay Manifest Identifier |
ARTIF-ADORGPRO-ORGANIZATION-PROFILE | COPID | Constitutional Organization Profile Identifier |
ARTIF-ADKNWPRO-INDUSTRY-KNOWLEDGE-PROFILE | IKPID | Industry Knowledge Profile Identifier |
ARTIF-ADCONFIG-ORGANIZATION-CONFIGURATION | CCONID | Constitutional Configuration Identifier |
ARTIF-ADLEDGER-ANCHOR-RECEIPT | DARID | Digital Assurance Receipt Identifier |
ARTIF-ADRISKIN-RISK-ASSESSMENT | RASID | Risk Assessment Identifier |
Artifact types without specialized identity semantics SHALL use the platform-wide ARTID Artifact Instance Identifier.
See
config/system/artifact-types.jsonfor 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.
| Prefix | Meaning |
|---|---|
| ARTIF | Canonical persistent business artifact |
Additional namespaces SHALL be introduced only through constitutional amendment.
13. Examples
| Engine | Artifact | Identifier | CSI |
|---|---|---|---|
| TG-ATTESTATION-ENGINE | ARTIF-TG-ATTESTATION | TAID | comp.TG.OUTPUT.ATTESTATION.v1_0 |
| TG-REPLAY-ENGINE | ARTIF-TG-REPLAY-MANIFEST | RMID | comp.TG.OUTPUT.REPLAY-MANIFEST.v1_0 |
| TG-RULE-EVALUATOR | ARTIF-TG-VALIDATION-RESULT | VRID | comp.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.