TG-QUARANTINE-MANAGER
TrustGate Quarantine Manager Engine
0. Identity
Depends on module:
1. Purpose
The TrustGate Quarantine Manager Engine manages signals that cannot safely proceed through the ZAYAZ assurance pipeline.
It receives quarantine candidates from the TrustGate Decision Engine and converts them into controlled, auditable quarantine records with review status, evidence requirements, remediation paths, replay hooks, and DAL-anchorable audit events.
A quarantined signal is not deleted and not silently ignored. It is isolated from downstream sustainability calculations, disclosures, Carbon Passport assembly, federation export, and regulatory reporting until the required review or remediation has completed.
The engine exists to ensure that low-trust data is handled through a controlled assurance workflow rather than contaminating downstream computations.
2. Position within TrustGate Runtime
Trust Scoring
│
▼
Decision Engine
│
├── ACCEPT
├── ROUTE
├── REVIEW
├── ESCALATE
└── QUARANTINE
│
▼
──────────────────────────────────────────
Quarantine Manager Engine
──────────────────────────────────────────
│
├── Review Task
├── Evidence Request
├── Replay Trigger
├── Remediation Workflow
├── Release
└── Reject
The Quarantine Manager executes only when the Decision Engine emits a quarantine candidate or when an authorized reviewer manually places a signal into quarantine.
3. Canonical Identity
| Property | Value |
|---|---|
| MEID | MEID_TRUST_QUARANTINE_MANAGER |
| CMI | vera.TG-QUARANTINE.ENGINE.MANAGER.1_0_0 |
| KIND | ENGINE |
| Owner Module | Verification & Assurance |
| Runtime Tier | Tier-0 Assurance Runtime |
| Engine Category | ROUTE |
| Engine Domain | trust |
| ZAR Registration | Required |
| Replay Support | Native |
| DAL Anchoring | Required |
| Federation Aware | Yes |
4. Runtime Responsibilities
| Responsibility | Description |
|---|---|
| Quarantine Record Creation | Convert quarantine candidates into immutable quarantine records. |
| Isolation Enforcement | Prevent quarantined signals from entering downstream processing. |
| Review Task Creation | Generate human review tasks with required evidence and reviewer role. |
| Evidence Management | Track requested, submitted, accepted, and rejected evidence. |
| Replay Triggering | Initiate replay when policy requires independent reproducibility checks. |
| Remediation Routing | Route signals to supplier correction, internal review, or auditor workflows. |
| Status Management | Manage lifecycle transitions from open to released, rejected, expired, or escalated. |
| Audit Evidence | Emit quarantine events suitable for DAL anchoring and OARM replay. |
| AI Feedback | Emit quarantine outcomes to DSAIL for trust calibration. |
| AII Telemetry | Provide quarantine rates and aging metrics for AII. |
The engine must never modify the original signal payload. It only manages quarantine state and review metadata.
5. Quarantine Lifecycle
Candidate
│
▼
Open
│
├── Evidence Requested
│ │
│ ▼
│ Evidence Submitted
│ │
│ ▼
│ Under Review
│
├── Replay Required
│ │
│ ▼
│ Replay Completed
│
├── Escalated
│
├── Released
│
├── Rejected
│
└── Expired
| State | Meaning |
|---|---|
CANDIDATE | Decision Engine has proposed quarantine. |
OPEN | Quarantine record has been created. |
EVIDENCE_REQUESTED | Additional evidence has been requested. |
EVIDENCE_SUBMITTED | Evidence has been supplied by source, supplier, or reviewer. |
UNDER_REVIEW | Authorized reviewer is evaluating the case. |
REPLAY_REQUIRED | Replay must complete before release or rejection. |
ESCALATED | Case is escalated to assurance, governance, or security. |
RELEASED | Signal is approved to re-enter the pipeline. |
REJECTED | Signal is permanently rejected for the current processing cycle. |
EXPIRED | Quarantine exceeded the maximum policy window. |
Only terminal states may close the quarantine record.
6. Quarantine Reasons
| Reason Code | Description |
|---|---|
LOW_TRUST_SCORE | Trust score below quarantine threshold. |
LOW_CONFIDENCE | Confidence below configured minimum. |
BLOCKING_RULE_FAILURE | One or more blocking validation or assurance rules failed. |
INVALID_IDENTITY | ECO Number, DID, or identity metadata failed validation. |
SIGNATURE_FAILURE | Signature or cryptographic validation failed. |
FEDERATION_CONFLICT | Cross-ECO attestation or federation metadata conflict. |
REPLAY_DRIFT | Replay output diverged from original output. |
POLICY_VIOLATION | Active policy requires quarantine. |
MISSING_EVIDENCE | Required evidence is missing. |
MANUAL_HOLD | Authorized user manually placed signal on hold. |
Reason codes should align with the platform-wide Validation Rule Registry where applicable.
7. Runtime Processing Pipeline
Receive Quarantine Candidate
│
▼
Validate Candidate
│
▼
Load Quarantine Policy
│
▼
Create Quarantine Record
│
▼
Determine Evidence Requirements
│
▼
Determine Reviewer Role
│
▼
Emit Quarantine Event
│
▼
Create Review / Remediation Task
│
▼
Block Downstream Processing
8. Processing Algorithm
function quarantine(candidate, policy_context):
validate_candidate(candidate)
policy = load_quarantine_policy(policy_context)
record = create_quarantine_record(candidate, policy)
evidence_requirements = resolve_evidence_requirements(
candidate.reason_codes,
policy
)
reviewer = resolve_reviewer_role(
candidate.severity,
candidate.domain,
policy
)
if policy.requires_replay(candidate):
create_replay_trigger(record)
if policy.requires_escalation(candidate):
create_escalation(record)
emit_quarantine_event(record)
block_downstream_processing(record.signal_id)
return record
The engine must fail closed. If the quarantine candidate cannot be safely evaluated, the signal remains isolated.
9. Quarantine Decision Rules
| Condition | Required Action |
|---|---|
| Trust score < 0.50 | Open quarantine record. |
| Signature failure | Open quarantine and reject federation export. |
| Invalid ECO Number | Open quarantine and escalate identity review. |
| Replay drift > policy threshold | Open quarantine and trigger OARM replay. |
| Missing Carbon Passport evidence | Request evidence from supplier. |
| Federation conflict | Escalate to AFLE/FAGF review. |
| Manual hold | Preserve hold until authorized release. |
Quarantine rules must be registered in the Validation Rule Registry or the FAGF policy registry.
10. CSI Contracts
10.1. Input CSIs
| CSI | Required | Purpose |
|---|---|---|
comp.TG.INPUT.QUARANTINE-CANDIDATE.v1_0 | Yes | Quarantine candidate emitted by the Decision Engine. |
comp.TG.INPUT.TRUST-DECISION.v1_0 | Yes | Decision outcome and reason. |
comp.TG.INPUT.POLICY-CONTEXT.v1_0 | Yes | Active quarantine policy. |
comp.TG.INPUT.RULE-RESULT.v1_0 | No | Rule failures and severities. |
comp.OARM.INPUT.REPLAY-SUMMARY.v1_0 | No | Replay status and replay drift. |
comp.AFLE.INPUT.ATTESTATION-SUMMARY.v1_0 | No | Federation attestation context. |
comp.TG.INPUT.REVIEWER-ACTION.v1_0 | No | Manual reviewer action. |
comp.TG.INPUT.EVIDENCE-SUBMISSION.v1_0 | No | Additional evidence submission. |
10.2. Output CSIs
| CSI | Purpose |
|---|---|
comp.TG.OUTPUT.QUARANTINE-RECORD.v1_0 | Canonical quarantine record. |
comp.TG.OUTPUT.REVIEW-TASK.v1_0 | Human review task. |
comp.TG.OUTPUT.EVIDENCE-REQUEST.v1_0 | Evidence request object. |
comp.TG.EVENT.QUARANTINE-CREATED.v1_0 | Runtime quarantine creation event. |
comp.TG.EVENT.QUARANTINE-RELEASED.v1_0 | Release event. |
comp.TG.EVENT.QUARANTINE-REJECTED.v1_0 | Rejection event. |
comp.DSAIL.INPUT.QUARANTINE-FEEDBACK.v1_0 | AI learning feedback. |
comp.AII.INPUT.QUARANTINE-TELEMETRY.v1_0 | AII quarantine telemetry. |
11. Canonical Input Payload
{
"quarantine_candidate_id": "TGQC-2026-00001472",
"signal_id": "SIG-2026-00001472",
"eco_number": "ECO-B456",
"decision_id": "TGD-2026-00001472",
"decision": "QUARANTINE",
"trust_score": 0.421,
"confidence": 0.582,
"reason_codes": [
"LOW_TRUST_SCORE",
"BLOCKING_RULE_FAILURE"
],
"rule_codes": [
"TG-VAL-0008",
"TG-VAL-0010"
],
"severity": "critical",
"policy_context": {
"policy_bundle": "FAGF-2026.2",
"quarantine_profile": "generic_assurance_quarantine_v1"
},
"created_at": "2026-06-25T12:22:44Z"
}
12. Canonical Output Payload
{
"quarantine_id": "TGQ-2026-00001472",
"signal_id": "SIG-2026-00001472",
"eco_number": "ECO-B456",
"engine_cmi": "vera.TG-QUARANTINE.ENGINE.MANAGER.1_0_0",
"meid": "MEID_TRUST_QUARANTINE_MANAGER",
"status": "OPEN",
"severity": "critical",
"reason_codes": [
"LOW_TRUST_SCORE",
"BLOCKING_RULE_FAILURE"
],
"rule_codes": [
"TG-VAL-0008",
"TG-VAL-0010"
],
"required_actions": [
"human_assurance_review",
"identity_revalidation",
"signature_recheck"
],
"evidence_required": [
"valid_did_document",
"signature_proof",
"source_system_confirmation"
],
"review": {
"required_role": "assurance_reviewer",
"sla_hours": 48
},
"downstream_blocked": true,
"created_at": "2026-06-25T12:22:44Z"
}
13. Quarantine Event
{
"event_type": "trustgate.quarantine.created",
"quarantine_id": "TGQ-2026-00001472",
"signal_id": "SIG-2026-00001472",
"eco_number": "ECO-B456",
"severity": "critical",
"reason_codes": [
"LOW_TRUST_SCORE",
"BLOCKING_RULE_FAILURE"
],
"engine_cmi": "vera.TG-QUARANTINE.ENGINE.MANAGER.1_0_0",
"timestamp": "2026-06-25T12:22:44Z"
}
14. Evidence Request
{
"evidence_request_id": "TGER-2026-00001472",
"quarantine_id": "TGQ-2026-00001472",
"signal_id": "SIG-2026-00001472",
"requested_from": "ECO-B456",
"evidence_types": [
"valid_did_document",
"signature_proof",
"source_system_confirmation"
],
"due_at": "2026-06-27T12:22:44Z",
"status": "OPEN"
}
Evidence requests may be sent to suppliers, internal data owners, auditors, or federation counterparties depending on the quarantine profile.
15. Release Event
{
"event_type": "trustgate.quarantine.released",
"quarantine_id": "TGQ-2026-00001472",
"signal_id": "SIG-2026-00001472",
"released_by": "assurance_reviewer",
"release_reason": "identity_revalidated_and_signature_verified",
"reentry_route": "trustgate.rescore",
"timestamp": "2026-06-26T09:14:03Z"
}
Released signals must normally re-enter the pipeline at the earliest required safe stage. Most releases should re-enter at Trust Scoring or Decision, not directly into downstream reporting.
16. Rejection Event
{
"event_type": "trustgate.quarantine.rejected",
"quarantine_id": "TGQ-2026-00001472",
"signal_id": "SIG-2026-00001472",
"rejected_by": "assurance_reviewer",
"rejection_reason": "signature_verification_failed_after_evidence_review",
"final": true,
"timestamp": "2026-06-26T11:02:19Z"
}
Rejected signals are excluded from the current reporting and assurance cycle unless explicitly re-submitted as a new signal.
17. DAL Integration
The Quarantine Manager produces DAL anchor candidates for:
- quarantine creation;
- evidence requests;
- evidence submissions;
- reviewer actions;
- release events;
- rejection events;
- escalation events.
{
"artifact_type": "TrustQuarantineEvent",
"artifact_id": "TGQ-2026-00001472",
"artifact_hash": "sha256:8bc22e...",
"engine_cmi": "vera.TG-QUARANTINE.ENGINE.MANAGER.1_0_0",
"meid": "MEID_TRUST_QUARANTINE_MANAGER",
"status": "OPEN",
"created_at": "2026-06-25T12:22:44Z"
}
Final anchoring is performed by the TrustGate DAL Anchor Engine.
18. Replay Behaviour
The engine must be replay deterministic for quarantine creation and lifecycle transition validation.
Replay inputs include:
- quarantine candidate;
- decision event;
- rule result;
- policy context;
- evidence request policy;
- reviewer action metadata;
- engine CMI.
Replay verification for creation succeeds when:
Reviewer actions may be replayed as event-sequence verification rather than regenerated decisions.
19. Federation Behaviour
Quarantine records may affect federation trust.
| Event | Federation Relevance |
|---|---|
| Signature failure | High |
| Invalid DID | High |
| Federation conflict | High |
| Carbon Passport evidence missing | Medium |
| Low local trust score | Optional |
| Manual hold | Optional |
Federation exports must respect FAGF and AFLE disclosure profiles.
Sensitive internal review notes must not be exported unless explicitly authorized.
20. AI Integration
The engine emits quarantine outcomes to DSAIL.
AI may recommend:
- reviewer prioritization;
- likely remediation route;
- evidence type suggestions;
- expected resolution probability;
- anomaly clusters;
- supplier risk escalation.
AI may not:
- release a signal;
- reject a signal;
- override reviewer decisions;
- bypass quarantine;
- suppress mandatory evidence requirements.
{
"event_type": "trustgate.quarantine.feedback",
"quarantine_id": "TGQ-2026-00001472",
"reason_codes": [
"LOW_TRUST_SCORE",
"BLOCKING_RULE_FAILURE"
],
"resolution": "released",
"resolution_time_hours": 20.8,
"model_training_allowed": true
}
21. AII Integration
Quarantine metrics contribute to the Assurance Intelligence Index.
{
"eco_number": "ECO-B456",
"period": "2026-Q2",
"quarantine_count": 38,
"quarantine_rate": 0.0035,
"avg_quarantine_age_hours": 18.4,
"release_rate": 0.71,
"rejection_rate": 0.18,
"escalation_rate": 0.11,
"top_reasons": [
"LOW_TRUST_SCORE",
"MISSING_EVIDENCE",
"SIGNATURE_FAILURE"
]
}
22. Failure Handling
| Failure | Severity | Action |
|---|---|---|
| Missing quarantine candidate | Critical | Abort |
| Missing decision reference | Critical | Abort |
| Missing policy context | Critical | Abort |
| Invalid status transition | Critical | Reject transition |
| Missing reviewer authorization | Critical | Reject action |
| Missing evidence metadata | Warning | Keep open |
| DAL unavailable | Warning | Queue anchor candidate |
| AAE unavailable | Warning | Continue if replay not mandatory |
| DSAIL unavailable | Info | Continue |
| Federation unavailable | Warning | Continue local quarantine |
The engine must fail closed. Unsafe or incomplete quarantine transitions must not be applied.
23. Observability Metrics
| Metric | Description |
|---|---|
tg_quarantine_created_total | Total quarantine records created. |
tg_quarantine_open_total | Currently open quarantine records. |
tg_quarantine_released_total | Released records. |
tg_quarantine_rejected_total | Rejected records. |
tg_quarantine_escalated_total | Escalated records. |
tg_quarantine_avg_age_hours | Average age of open records. |
tg_quarantine_sla_breach_total | Records exceeding SLA. |
tg_quarantine_by_reason_total | Count by reason code. |
tg_quarantine_replay_trigger_total | Replay triggers caused by quarantine. |
24. Performance Targets
| Metric | Target |
|---|---|
| Quarantine creation latency | < 50 ms |
| Evidence request creation latency | < 100 ms |
| Status transition latency | < 50 ms |
| Review task creation latency | < 250 ms |
| Throughput | 5,000 quarantine events/sec per worker pool |
| Availability | 99.99% |
| Replay determinism | 100% |
25. Security Requirements
The engine must:
- enforce role-based access control for reviewer actions;
- verify reviewer identity;
- verify ECO ownership or authorized review scope;
- prevent unauthorized release;
- preserve original payload immutability;
- redact sensitive evidence before federation export;
- log all lifecycle transitions;
- require approval for terminal state changes where policy mandates;
- record MEID and CMI in all events;
- prevent direct downstream processing while status is non-terminal.
26. Compliance Alignment
| Framework | Quarantine Manager Contribution |
|---|---|
| CSRD | Supports controlled remediation and auditability of low-quality sustainability data. |
| ESRS | Supports data quality, uncertainty, and control evidence. |
| ISSB / IFRS S1-S2 | Supports governance of decision-useful sustainability information. |
| ISO 14064-1 | Supports evidence management and verification workflow control. |
| ISO 27001 | Supports controlled access and audit logging. |
| EU AI Act | Ensures AI cannot release or reject quarantined records autonomously. |
27. Developer Implementation Notes
Developers should implement the Quarantine Manager as a stateful workflow engine with immutable event sourcing.
Recommended design:
- immutable quarantine event log;
- current-state materialized view;
- workflow transition validator;
- evidence object store;
- reviewer task integration;
- DAL anchor queue;
- OARM replay trigger queue;
- DSAIL feedback event publisher.
The original signal payload must remain immutable and separately referenced.
28. Summary
The TrustGate Quarantine Manager Engine ensures that low-trust, invalid, incomplete, suspicious, or policy-violating signals are isolated and handled through auditable assurance workflows.
It protects downstream ESG calculations, Carbon Passports, disclosures, federation attestations, and regulatory outputs from contamination by unverified data.
No quarantined signal may re-enter the ZAYAZ assurance pipeline without a valid release event generated by this engine or an equivalent FAGF-authorized workflow.