stack_ids/ids.rs
1//! Opaque ID newtypes for cross-crate identity.
2//!
3//! Each newtype wraps a `String` and is intentionally opaque — callers
4//! should not parse the inner value. IDs are assigned by their respective
5//! authority crates; `stack-ids` only provides the type contract.
6
7use schemars::JsonSchema;
8use serde::{Deserialize, Serialize};
9use std::str::FromStr;
10
11/// Macro to generate an opaque string-wrapper ID type with standard impls.
12macro_rules! define_id {
13 (
14 $(#[$meta:meta])*
15 $name:ident
16 ) => {
17 $(#[$meta])*
18 #[derive(Debug, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Serialize, Deserialize, JsonSchema)]
19 #[serde(transparent)]
20 pub struct $name(pub String);
21
22 impl $name {
23 /// Create from any string-like value.
24 pub fn new(value: impl Into<String>) -> Self {
25 Self(value.into())
26 }
27
28 /// Generate a new random UUID v4 ID.
29 pub fn generate() -> Self {
30 Self(uuid::Uuid::new_v4().to_string())
31 }
32
33 /// Borrow as a string slice.
34 pub fn as_str(&self) -> &str {
35 &self.0
36 }
37
38 /// Returns true if the inner string is empty.
39 pub fn is_empty(&self) -> bool {
40 self.0.is_empty()
41 }
42 }
43
44 impl std::fmt::Display for $name {
45 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
46 f.write_str(&self.0)
47 }
48 }
49
50 impl From<String> for $name {
51 fn from(value: String) -> Self {
52 Self(value)
53 }
54 }
55
56 impl From<&str> for $name {
57 fn from(value: &str) -> Self {
58 Self(value.to_string())
59 }
60 }
61
62 impl AsRef<str> for $name {
63 fn as_ref(&self) -> &str {
64 &self.0
65 }
66 }
67
68 impl FromStr for $name {
69 type Err = std::convert::Infallible;
70
71 fn from_str(value: &str) -> Result<Self, Self::Err> {
72 Ok(Self::new(value))
73 }
74 }
75 };
76}
77
78define_id!(
79 /// Opaque identifier for an import/export envelope.
80 ///
81 /// Assigned by the exporting authority (e.g. Forge). Stable across
82 /// re-exports of the same logical unit.
83 EnvelopeId
84);
85
86define_id!(
87 /// Opaque identifier for a claim (knowledge assertion).
88 ///
89 /// Assigned by the projection importer. Stable within a claim lineage.
90 ClaimId
91);
92
93define_id!(
94 /// Opaque identifier for a specific version of a claim.
95 ///
96 /// Each mutation to a claim's validity, status, or content produces
97 /// a new version with a new `ClaimVersionId`. The `ClaimId` remains
98 /// stable across versions.
99 ClaimVersionId
100);
101
102define_id!(
103 /// Opaque identifier for an entity (person, concept, code unit, etc.).
104 ///
105 /// The inner string is intentionally unstructured. Use domain-specific
106 /// constructors to create these (e.g. code_entity_id).
107 EntityId
108);
109
110define_id!(
111 /// Opaque identifier for an episode (causal record).
112 ///
113 /// Assigned by the episode creator. Stable within the episode's lifecycle.
114 EpisodeId
115);
116
117define_id!(
118 /// Opaque identifier for a logical retry family within one retry-owner boundary.
119 ///
120 /// One `AttemptId` exists per logical retry family. Retries inside that
121 /// boundary produce new `TrialId`s, NOT new `AttemptId`s. A new `AttemptId`
122 /// is created only when the retry owner changes (e.g. node-level retry
123 /// after transport retries are exhausted) or on explicit replay/re-enqueue.
124 AttemptId
125);
126
127define_id!(
128 /// Opaque identifier for a concrete execution within a logical retry family.
129 ///
130 /// Every retry within one owner boundary creates a new `TrialId` under
131 /// the same `AttemptId`. Each `TrialId` is globally unique (UUID v4).
132 TrialId
133);
134
135define_id!(
136 /// Opaque identifier for a stored artifact (patch, snapshot, file).
137 ///
138 /// Assigned by the artifact store. Stable across reads.
139 ArtifactId
140);
141
142define_id!(
143 /// Opaque identifier for a projection instance.
144 ///
145 /// Identifies a specific derived view (entity registry entry, temporal
146 /// claim set, etc.) within a scope.
147 ProjectionId
148);
149
150define_id!(
151 /// Opaque identifier for a relation (edge between entities).
152 ///
153 /// Assigned by the projection importer. Stable within a relation lineage.
154 /// Each mutation produces a new `RelationVersionId` under the same `RelationId`.
155 RelationId
156);
157
158define_id!(
159 /// Opaque identifier for a relation version.
160 ///
161 /// Each mutation to a relation produces a new version with a new
162 /// `RelationVersionId`. The `RelationId` remains stable across versions.
163 RelationVersionId
164);
165
166define_id!(
167 /// Opaque identifier for an import batch produced by the bridge.
168 ///
169 /// Assigned by the bridge transformation pipeline. Unique per batch.
170 ImportBatchId
171);
172
173define_id!(
174 /// Opaque identifier for a claim family spanning multiple claim versions.
175 ///
176 /// Assigned by the authoritative exporter when version lineage is known.
177 ClaimFamilyId
178);
179
180define_id!(
181 /// Opaque identifier for a higher-order assertion group.
182 ///
183 /// Used to preserve joint assertion meaning across export, bridge, and
184 /// deterministic compilation. The bridge preserves it; it does not invent it.
185 AssertionGroupId
186);
187
188define_id!(
189 /// Opaque identifier for a relation group exported by the authority.
190 ///
191 /// Relation groups allow the compiler to recover hyperedge structure without
192 /// flattening upstream semantics into pairwise folklore.
193 RelationGroupId
194);
195
196define_id!(
197 /// Opaque identifier for a joint evidence group.
198 ///
199 /// Used to tie multiple observations or assertions to a shared evidence basis.
200 JointEvidenceGroupId
201);
202
203define_id!(
204 /// Opaque identifier for a contradiction candidate group.
205 ///
206 /// Assigned upstream when the exporting authority exposes contradiction seed
207 /// structure. Kernel/runtime layers must not synthesize it from absence.
208 ContradictionGroupId
209);
210
211define_id!(
212 /// Opaque identifier for a mutual exclusion or constraint seed group.
213 ConstraintGroupId
214);
215
216define_id!(
217 /// Opaque identifier for a recursive kernel run.
218 ///
219 /// Assigned by the kernel execution layer for one bounded, rebuildable run.
220 KernelRunId
221);
222
223define_id!(
224 /// Opaque identifier for a compiled constraint unit.
225 ConstraintId
226);
227
228define_id!(
229 /// Opaque identifier for a compiled hyperedge recovered from upstream grouping semantics.
230 HyperedgeId
231);
232
233define_id!(
234 /// Opaque identifier for a residual artifact emitted by bounded execution.
235 ResidualId
236);
237
238define_id!(
239 /// Opaque identifier for a stable syndrome signature emitted by the kernel.
240 SyndromeId
241);
242
243define_id!(
244 /// Opaque identifier for a witness artifact produced by execution or oracles.
245 WitnessId
246);
247
248define_id!(
249 /// Opaque identifier for a certificate artifact produced by execution or oracles.
250 CertificateId
251);
252
253define_id!(
254 /// Opaque identifier for a bounded oracle slice definition.
255 OracleSliceId
256);
257
258define_id!(
259 /// Opaque identifier for a bounded execution region.
260 RegionId
261);
262
263define_id!(
264 /// Opaque identifier for a stable digest of one bounded execution region.
265 RegionDigestId
266);
267
268define_id!(
269 /// Opaque identifier for a typed artifact transport crossing region boundaries.
270 ArtifactTransportId
271);
272
273define_id!(
274 /// Opaque identifier for syndrome-first repair routing.
275 RepairRouteId
276);
277
278define_id!(
279 /// Opaque identifier for one ranked local repair candidate.
280 RepairCandidateId
281);
282
283define_id!(
284 /// Opaque identifier for a nuisance-state artifact.
285 NuisanceStateId
286);
287
288define_id!(
289 /// Opaque identifier for a convergence-governance artifact.
290 ConvergenceReportId
291);
292
293define_id!(
294 /// Opaque identifier for a registered recursive operator contract.
295 OperatorId
296);
297
298define_id!(
299 /// Opaque identifier for a specific version of a registered operator contract.
300 ///
301 /// `OperatorId` stays stable across versions; `OperatorVersionId` changes when
302 /// the executable contract or policy-relevant operator surface changes.
303 OperatorVersionId
304);
305
306define_id!(
307 /// Opaque identifier for a structured refutation result artifact.
308 RefutationResultId
309);
310
311define_id!(
312 /// Opaque identifier for a structured calibration report artifact.
313 CalibrationReportId
314);
315
316define_id!(
317 /// Opaque identifier for a verification-control case.
318 VerificationCaseId
319);
320
321define_id!(
322 /// Opaque identifier for a canonical verification check plan.
323 CheckPlanId
324);
325
326define_id!(
327 /// Opaque identifier for a canonical control-plane receipt.
328 ControlReceiptId
329);
330
331define_id!(
332 /// Opaque identifier for an append-only verification ledger entry.
333 LedgerEntryId
334);
335
336define_id!(
337 /// Opaque identifier for a policy decision artifact.
338 PolicyDecisionId
339);
340
341define_id!(
342 /// Opaque identifier for a runtime execution permit.
343 ///
344 /// Minted only after policy, approval, and plan checks succeed for one
345 /// concrete execution surface.
346 ExecutionPermitId
347);
348
349define_id!(
350 /// Opaque identifier for an approval record artifact.
351 ApprovalRecordId
352);
353
354define_id!(
355 /// Opaque identifier for a typed constitutional approval grant.
356 ///
357 /// Grants carry scoped approval lineage for effectful tool dispatch.
358 ApprovalGrantId
359);
360
361define_id!(
362 /// Opaque identifier for a promotion decision artifact.
363 PromotionDecisionId
364);
365
366define_id!(
367 /// Opaque identifier for a refutation decision artifact.
368 RefutationDecisionId
369);
370
371define_id!(
372 /// Opaque identifier for a rollback plan artifact.
373 RollbackPlanId
374);
375
376define_id!(
377 /// Opaque identifier for a calibration snapshot artifact.
378 CalibrationSnapshotId
379);
380
381define_id!(
382 /// Opaque identifier for a versioned learning update artifact.
383 LearningUpdateId
384);
385
386define_id!(
387 /// Opaque identifier for a deterministic boundary repair record artifact.
388 BoundaryRepairRecordId
389);
390
391define_id!(
392 /// Opaque identifier for a semantics profile artifact.
393 SemanticsProfileId
394);
395
396define_id!(
397 /// Opaque identifier for a claim-state artifact.
398 ClaimStateId
399);
400
401define_id!(
402 /// Opaque identifier for a semantic diff artifact.
403 SemanticDiffId
404);
405
406define_id!(
407 /// Opaque identifier for a causal-attribution bundle artifact.
408 CausalAttributionBundleId
409);
410
411define_id!(
412 /// Opaque identifier for an explicit degradation record artifact.
413 DegradationRecordId
414);
415
416define_id!(
417 /// Opaque identifier for an exactness-budget artifact.
418 ExactnessBudgetId
419);
420
421define_id!(
422 /// Opaque identifier for one exported or imported support-set artifact.
423 ///
424 /// Stable for one snapshot of the support expression attached to a claim.
425 SupportSetId
426);
427
428define_id!(
429 /// Opaque identifier for one contradiction-witness artifact.
430 ///
431 /// Used to point at a stored explanation of why a claim is simultaneously
432 /// supported and refuted within one semantics profile.
433 ContradictionWitnessId
434);
435
436define_id!(
437 /// Opaque identifier for one retraction / supersession artifact.
438 ///
439 /// This identifies the transaction-time event that closes currentness for
440 /// a claim version without erasing historical visibility.
441 RetractionRecordId
442);
443
444define_id!(
445 /// Opaque identifier for an intervention bundle artifact.
446 InterventionId
447);
448
449define_id!(
450 /// Opaque identifier for an outcome-schema artifact.
451 OutcomeSchemaId
452);
453
454define_id!(
455 /// Opaque identifier for an experiment case artifact.
456 ExperimentCaseId
457);
458
459define_id!(
460 /// Opaque identifier for a cohort-contract artifact.
461 CohortContractId
462);
463
464define_id!(
465 /// Opaque identifier for a comparability-matrix artifact.
466 ComparabilityMatrixId
467);
468
469define_id!(
470 /// Opaque identifier for a counterfactual-slice artifact.
471 CounterfactualSliceId
472);
473
474define_id!(
475 /// Opaque identifier for a decision-trace artifact.
476 DecisionTraceId
477);
478
479define_id!(
480 /// Opaque identifier for a refuter-suite artifact.
481 RefuterSuiteId
482);
483
484define_id!(
485 /// Opaque identifier for a refuter-result artifact.
486 RefuterResultId
487);
488
489define_id!(
490 /// Opaque identifier for a rollout-decision artifact.
491 RolloutDecisionId
492);
493
494define_id!(
495 /// Opaque identifier for a rollback-decision artifact.
496 RollbackDecisionId
497);
498
499define_id!(
500 /// Opaque identifier for an experiment-budget artifact.
501 ExperimentBudgetId
502);
503
504define_id!(
505 /// Opaque identifier for an attestation-envelope artifact.
506 AttestationEnvelopeId
507);
508
509define_id!(
510 /// Opaque identifier for a trust-root-set artifact.
511 TrustRootSetId
512);
513
514define_id!(
515 /// Opaque identifier for an artifact-admission-policy artifact.
516 ArtifactAdmissionPolicyId
517);
518
519define_id!(
520 /// Opaque identifier for a transparency-receipt artifact.
521 TransparencyReceiptId
522);
523
524define_id!(
525 /// Opaque identifier for an attestation-revocation artifact.
526 AttestationRevocationId
527);
528
529define_id!(
530 /// Opaque identifier for an attestation-supersession artifact.
531 AttestationSupersessionId
532);
533
534define_id!(
535 /// Opaque identifier for a remote-oracle lease artifact.
536 RemoteOracleLeaseId
537);
538
539define_id!(
540 /// Opaque identifier for a remote-slice request artifact.
541 RemoteSliceRequestId
542);
543
544define_id!(
545 /// Opaque identifier for a remote-slice result artifact.
546 RemoteSliceResultId
547);
548
549define_id!(
550 /// Opaque identifier for a cross-runtime replay-ticket artifact.
551 CrossRuntimeReplayTicketId
552);
553
554define_id!(
555 /// Opaque identifier for a dispute-bundle artifact.
556 DisputeBundleId
557);
558
559define_id!(
560 /// Opaque identifier for a disclosure-policy artifact.
561 DisclosurePolicyId
562);
563
564define_id!(
565 /// Opaque identifier for a disclosure-budget artifact.
566 DisclosureBudgetId
567);
568
569define_id!(
570 /// Opaque identifier for a treaty bundle artifact.
571 TreatyBundleId
572);
573
574define_id!(
575 /// Opaque identifier for a runtime identity set artifact.
576 RuntimeIdentitySetId
577);
578
579define_id!(
580 /// Opaque identifier for a cross-runtime equivalence bundle artifact.
581 CrossRuntimeEquivalenceBundleId
582);
583
584define_id!(
585 /// Opaque identifier for a settlement case artifact.
586 SettlementCaseId
587);
588
589define_id!(
590 /// Opaque identifier for a shared disposition artifact.
591 SharedDispositionId
592);
593
594define_id!(
595 /// Opaque identifier for a local dissent record artifact.
596 LocalDissentId
597);
598
599define_id!(
600 /// Opaque identifier for a shared-view downgrade artifact.
601 SharedViewDowngradeId
602);
603
604define_id!(
605 /// Opaque identifier for a settlement receipt artifact.
606 SettlementReceiptId
607);
608
609define_id!(
610 /// Opaque identifier for a shared replay slice artifact.
611 SharedReplaySliceId
612);
613
614define_id!(
615 /// Opaque identifier for a shared divergence report artifact.
616 SharedDivergenceReportId
617);
618
619define_id!(
620 /// Opaque identifier for a treaty suspension artifact.
621 TreatySuspensionId
622);
623
624define_id!(
625 /// Opaque identifier for a mechanism bundle artifact.
626 MechanismBundleId
627);
628
629define_id!(
630 /// Opaque identifier for a theory version artifact.
631 TheoryVersionId
632);
633
634define_id!(
635 /// Opaque identifier for a theory library artifact.
636 TheoryLibraryId
637);
638
639define_id!(
640 /// Opaque identifier for a hypothesis library artifact.
641 HypothesisLibraryId
642);
643
644define_id!(
645 /// Opaque identifier for a simulation contract artifact.
646 SimulationContractId
647);
648
649define_id!(
650 /// Opaque identifier for a fit-run artifact.
651 FitRunId
652);
653
654define_id!(
655 /// Opaque identifier for a theory refuter suite artifact.
656 TheoryRefuterSuiteId
657);
658
659define_id!(
660 /// Opaque identifier for a rollout stability report artifact.
661 RolloutStabilityReportId
662);
663
664define_id!(
665 /// Opaque identifier for a discovery program artifact.
666 DiscoveryProgramId
667);
668
669define_id!(
670 /// Opaque identifier for a portfolio plan artifact.
671 PortfolioPlanId
672);
673
674define_id!(
675 /// Opaque identifier for an experiment campaign artifact.
676 ExperimentCampaignId
677);
678
679define_id!(
680 /// Opaque identifier for a campaign decision trace artifact.
681 CampaignDecisionTraceId
682);
683
684define_id!(
685 /// Opaque identifier for an information-value estimate artifact.
686 InformationValueEstimateId
687);
688
689define_id!(
690 /// Opaque identifier for a verification-load budget artifact.
691 VerificationLoadBudgetId
692);
693
694define_id!(
695 /// Opaque identifier for a charter bundle artifact.
696 CharterBundleId
697);
698
699define_id!(
700 /// Opaque identifier for a doctrine snapshot artifact.
701 DoctrineSnapshotId
702);
703
704define_id!(
705 /// Opaque identifier for an amendment proposal artifact.
706 AmendmentProposalId
707);
708
709define_id!(
710 /// Opaque identifier for an amendment decision artifact.
711 AmendmentDecisionId
712);
713
714define_id!(
715 /// Opaque identifier for an archive manifest artifact.
716 ArchiveManifestId
717);
718
719define_id!(
720 /// Opaque identifier for a compaction receipt artifact.
721 CompactionReceiptId
722);
723
724define_id!(
725 /// Opaque identifier for a historical query guarantee artifact.
726 HistoricalQueryGuaranteeId
727);
728
729define_id!(
730 /// Opaque identifier for a deprecation bundle artifact.
731 DeprecationBundleId
732);
733
734define_id!(
735 /// Opaque identifier for a retirement bundle artifact.
736 RetirementBundleId
737);
738
739define_id!(
740 /// Opaque identifier for a spec bundle artifact.
741 SpecBundleId
742);
743
744define_id!(
745 /// Opaque identifier for a normative AST artifact.
746 NormativeAstId
747);
748
749define_id!(
750 /// Opaque identifier for a generated schema bundle artifact.
751 GeneratedSchemaBundleId
752);
753
754define_id!(
755 /// Opaque identifier for a generated interpreter bundle artifact.
756 GeneratedInterpreterBundleId
757);
758
759define_id!(
760 /// Opaque identifier for a generated conformance corpus artifact.
761 GeneratedConformanceCorpusId
762);
763
764define_id!(
765 /// Opaque identifier for a generated migration plan artifact.
766 GeneratedMigrationPlanId
767);
768
769define_id!(
770 /// Opaque identifier for a proof-obligation set artifact.
771 ProofObligationSetId
772);
773
774define_id!(
775 /// Opaque identifier for a proof evaluation receipt artifact.
776 ProofEvaluationReceiptId
777);
778
779define_id!(
780 /// Opaque identifier for a human-veto bundle artifact.
781 HumanVetoBundleId
782);
783
784define_id!(
785 /// Opaque identifier for a meta-challenge bundle artifact.
786 MetaChallengeBundleId
787);
788
789define_id!(
790 /// Opaque identifier for a self-hosting build receipt artifact.
791 SelfHostingBuildReceiptId
792);
793
794define_id!(
795 /// Opaque identifier for an effect intent artifact.
796 EffectIntentId
797);
798
799define_id!(
800 /// Opaque identifier for an effect preflight report artifact.
801 EffectPreflightReportId
802);
803
804define_id!(
805 /// Opaque identifier for an effect execution window artifact.
806 EffectWindowId
807);
808
809define_id!(
810 /// Opaque identifier for an effect commit decision artifact.
811 EffectCommitDecisionId
812);
813
814define_id!(
815 /// Opaque identifier for an effect execution receipt artifact.
816 EffectExecutionReceiptId
817);
818
819define_id!(
820 /// Opaque identifier for an effect observation bundle artifact.
821 EffectObservationBundleId
822);
823
824define_id!(
825 /// Opaque identifier for a compensation plan artifact.
826 CompensationPlanId
827);
828
829define_id!(
830 /// Opaque identifier for a compensation execution receipt artifact.
831 CompensationExecutionReceiptId
832);
833
834define_id!(
835 /// Opaque identifier for an external effect ledger entry artifact.
836 ExternalEffectLedgerEntryId
837);
838
839define_id!(
840 /// Opaque identifier for a capability class artifact.
841 CapabilityClassId
842);
843
844define_id!(
845 /// Opaque identifier for an authority lease artifact.
846 AuthorityLeaseId
847);
848
849define_id!(
850 /// Opaque identifier for a delegation bundle artifact.
851 DelegationBundleId
852);
853
854define_id!(
855 /// Opaque identifier for an authority chain artifact.
856 AuthorityChainId
857);
858
859define_id!(
860 /// Opaque identifier for a separation-of-duties policy artifact.
861 SeparationOfDutiesPolicyId
862);
863
864define_id!(
865 /// Opaque identifier for a dual-control approval artifact.
866 DualControlApprovalId
867);
868
869define_id!(
870 /// Opaque identifier for a break-glass grant artifact.
871 BreakGlassGrantId
872);
873
874define_id!(
875 /// Opaque identifier for a delegation revocation artifact.
876 DelegationRevocationId
877);
878
879define_id!(
880 /// Opaque identifier for an acting-on-behalf receipt artifact.
881 ActingOnBehalfReceiptId
882);
883
884define_id!(
885 /// Opaque identifier for a conflict disclosure artifact.
886 ConflictDisclosureId
887);
888
889define_id!(
890 /// Opaque identifier for a deployment profile artifact.
891 DeploymentProfileId
892);
893
894define_id!(
895 /// Opaque identifier for an operating envelope artifact.
896 OperatingEnvelopeId
897);
898
899define_id!(
900 /// Opaque identifier for an assurance case artifact.
901 AssuranceCaseId
902);
903
904define_id!(
905 /// Opaque identifier for a hazard register artifact.
906 HazardRegisterId
907);
908
909define_id!(
910 /// Opaque identifier for a control mapping artifact.
911 ControlMappingId
912);
913
914define_id!(
915 /// Opaque identifier for a residual-risk acceptance artifact.
916 ResidualRiskAcceptanceId
917);
918
919define_id!(
920 /// Opaque identifier for a release-readiness decision artifact.
921 ReleaseReadinessDecisionId
922);
923
924define_id!(
925 /// Opaque identifier for a field monitoring plan artifact.
926 FieldMonitoringPlanId
927);
928
929define_id!(
930 /// Opaque identifier for a certification bundle artifact.
931 CertificationBundleId
932);
933
934define_id!(
935 /// Opaque identifier for a recertification trigger artifact.
936 RecertificationTriggerId
937);
938
939define_id!(
940 /// Opaque identifier for a service-level profile artifact.
941 ServiceLevelProfileId
942);
943
944define_id!(
945 /// Opaque identifier for an error-budget ledger artifact.
946 ErrorBudgetLedgerId
947);
948
949define_id!(
950 /// Opaque identifier for an incident case artifact.
951 IncidentCaseId
952);
953
954define_id!(
955 /// Opaque identifier for a containment decision artifact.
956 ContainmentDecisionId
957);
958
959define_id!(
960 /// Opaque identifier for a forensic freeze artifact.
961 ForensicFreezeId
962);
963
964define_id!(
965 /// Opaque identifier for a recovery plan artifact.
966 RecoveryPlanId
967);
968
969define_id!(
970 /// Opaque identifier for a recovery replay slice artifact.
971 RecoveryReplaySliceId
972);
973
974define_id!(
975 /// Opaque identifier for a bounded continuity exception artifact.
976 ContinuityExceptionId
977);
978
979define_id!(
980 /// Opaque identifier for a postmortem bundle artifact.
981 PostmortemBundleId
982);
983
984define_id!(
985 /// Opaque identifier for a resilience exercise artifact.
986 ResilienceExerciseId
987);
988
989define_id!(
990 /// Opaque identifier for an effect review case artifact.
991 EffectReviewCaseId
992);
993
994define_id!(
995 /// Opaque identifier for an effect block receipt artifact.
996 EffectBlockReceiptId
997);
998
999define_id!(
1000 /// Opaque identifier for a delegation review case artifact.
1001 DelegationReviewCaseId
1002);
1003
1004define_id!(
1005 /// Opaque identifier for a release gate case artifact.
1006 ReleaseGateCaseId
1007);
1008
1009define_id!(
1010 /// Opaque identifier for a continuity review case artifact.
1011 ContinuityReviewCaseId
1012);
1013
1014define_id!(
1015 /// Opaque identifier for an effect policy profile artifact.
1016 EffectPolicyProfileId
1017);
1018
1019define_id!(
1020 /// Opaque identifier for a delegation policy profile artifact.
1021 DelegationPolicyProfileId
1022);
1023
1024define_id!(
1025 /// Opaque identifier for a release policy profile artifact.
1026 ReleasePolicyProfileId
1027);
1028
1029define_id!(
1030 /// Opaque identifier for a continuity policy profile artifact.
1031 ContinuityPolicyProfileId
1032);
1033
1034define_id!(
1035 /// Opaque identifier for an effect adjudication receipt artifact.
1036 EffectAdjudicationReceiptId
1037);
1038
1039define_id!(
1040 /// Opaque identifier for a release rollback decision artifact.
1041 ReleaseRollbackDecisionId
1042);
1043
1044define_id!(
1045 /// Opaque identifier for a tool effect dispatch receipt artifact.
1046 ToolEffectDispatchReceiptId
1047);
1048
1049define_id!(
1050 /// Opaque identifier for a privacy/retention profile artifact.
1051 PrivacyRetentionProfileId
1052);
1053
1054define_id!(
1055 /// Opaque identifier for a redaction rule-set artifact.
1056 RedactionRuleSetId
1057);
1058
1059define_id!(
1060 /// Opaque identifier for an access-purpose matrix artifact.
1061 AccessPurposeMatrixId
1062);
1063
1064define_id!(
1065 /// Opaque identifier for an audit extraction policy artifact.
1066 AuditExtractionPolicyId
1067);
1068
1069define_id!(
1070 /// Opaque identifier for a residency policy profile artifact.
1071 ResidencyPolicyProfileId
1072);
1073
1074define_id!(
1075 /// Opaque identifier for a tenant-boundary profile artifact.
1076 TenantBoundaryProfileId
1077);
1078
1079define_id!(
1080 /// Opaque identifier for a cross-boundary transfer class artifact.
1081 CrossBoundaryTransferClassId
1082);
1083
1084define_id!(
1085 /// Opaque identifier for a locality exception artifact.
1086 LocalityExceptionId
1087);
1088
1089define_id!(
1090 /// Opaque identifier for a role catalog artifact.
1091 RoleCatalogId
1092);
1093
1094define_id!(
1095 /// Opaque identifier for a delegation matrix artifact.
1096 DelegationMatrixId
1097);
1098
1099define_id!(
1100 /// Opaque identifier for an approval matrix artifact.
1101 ApprovalMatrixId
1102);
1103
1104define_id!(
1105 /// Opaque identifier for a conflict-class catalog artifact.
1106 ConflictClassCatalogId
1107);
1108
1109define_id!(
1110 /// Opaque identifier for a regulatory-regime profile artifact.
1111 RegulatoryRegimeProfileId
1112);
1113
1114define_id!(
1115 /// Opaque identifier for a requirement-to-control map artifact.
1116 RequirementControlMapId
1117);
1118
1119define_id!(
1120 /// Opaque identifier for an evidence collection plan artifact.
1121 EvidenceCollectionPlanId
1122);
1123
1124define_id!(
1125 /// Opaque identifier for a recertification schedule artifact.
1126 RecertificationScheduleId
1127);
1128
1129define_id!(
1130 /// Opaque identifier for a hazard library artifact.
1131 HazardLibraryId
1132);
1133
1134define_id!(
1135 /// Opaque identifier for a hazard scenario artifact.
1136 HazardScenarioId
1137);
1138
1139define_id!(
1140 /// Opaque identifier for a monitor catalog artifact.
1141 MonitorCatalogId
1142);
1143
1144define_id!(
1145 /// Opaque identifier for a mitigation playbook artifact.
1146 MitigationPlaybookId
1147);
1148
1149define_id!(
1150 /// Opaque identifier for a vendor certification adapter artifact.
1151 VendorCertificationAdapterId
1152);
1153
1154define_id!(
1155 /// Opaque identifier for a vendor evidence translation artifact.
1156 VendorEvidenceTranslationId
1157);
1158
1159define_id!(
1160 /// Opaque identifier for a vendor trust-root binding artifact.
1161 VendorTrustRootBindingId
1162);
1163
1164define_id!(
1165 /// Opaque identifier for a vendor revocation handling artifact.
1166 VendorRevocationHandlingId
1167);
1168
1169define_id!(
1170 /// Opaque identifier for an incident taxonomy artifact.
1171 IncidentTaxonomyId
1172);
1173
1174define_id!(
1175 /// Opaque identifier for a severity matrix artifact.
1176 SeverityMatrixId
1177);
1178
1179define_id!(
1180 /// Opaque identifier for a pager-route profile artifact.
1181 PagerRouteProfileId
1182);
1183
1184define_id!(
1185 /// Opaque identifier for an escalation-clock policy artifact.
1186 EscalationClockPolicyId
1187);
1188
1189define_id!(
1190 /// Opaque identifier for an applicability-context artifact.
1191 ApplicabilityContextId
1192);
1193
1194define_id!(
1195 /// Opaque identifier for a normalized profile-set artifact.
1196 ProfileSetId
1197);
1198
1199define_id!(
1200 /// Opaque identifier for a composition rule-set artifact.
1201 CompositionRuleSetId
1202);
1203
1204define_id!(
1205 /// Opaque identifier for a composition receipt artifact.
1206 CompositionReceiptId
1207);
1208
1209define_id!(
1210 /// Opaque identifier for an effective constitution artifact.
1211 EffectiveConstitutionId
1212);
1213
1214define_id!(
1215 /// Opaque identifier for a compiled obligation-set artifact.
1216 CompiledObligationSetId
1217);
1218
1219define_id!(
1220 /// Opaque identifier for a composition conflict-set artifact.
1221 CompositionConflictSetId
1222);
1223
1224define_id!(
1225 /// Opaque identifier for a profile exception bundle artifact.
1226 ProfileExceptionBundleId
1227);
1228
1229define_id!(
1230 /// Opaque identifier for a policy impact diff artifact.
1231 PolicyImpactDiffId
1232);
1233
1234#[cfg(test)]
1235#[path = "ids_tests.rs"]
1236mod tests;