Advanced Trust Debt¶
Status: Draft (Extension — v1.1 Preview)
Last Updated: 2026-02-26
Not required for ACGP v1.0 Standard or Safety-Critical conformance.
Abstract¶
The Advanced Trust Debt extension defines the trust debt provider model beyond the default deterministic provider. It introduces public provider descriptors, optional opaque attestations, configurable decay and compounding hooks, and private provider semantics while preserving the observable trust-debt constraints defined in ACGP-3.
Key Concepts (Preview)¶
- Observable/public boundary: Provider identity, visibility, fail semantics, and optional attestation are public.
- Private internals: Accumulation, decay, and compounding formulas MAY remain private.
- Default provider:
acgp.core.default@1preserves the deterministic baseline. - TrustDebtProvider interface: Pluggable provider contract for domain-tuned debt models while preserving auditable outputs.
Hook Point¶
Core interface in ACGP-3: TrustDebtProvider.
Status¶
Implementations MAY provide this interface. If not provided, the core hook defaults to acgp.core.default@1. Conformance-bearing behavior is defined by ACGP-3 observable semantics plus the default provider rules.
Interface Signature¶
from typing import Protocol, Optional
from dataclasses import dataclass
from datetime import datetime
@dataclass
class TrustDebtState:
current_debt: float
last_eval_time: Optional[datetime]
decay_model: str # "linear", "exponential", "piecewise"
recovery_credits: float
class TrustDebtProvider(Protocol):
"""Pluggable trust debt model for domain-tuned debt semantics."""
def accumulate(
self,
current: TrustDebtState,
decision: str,
severity: Optional[str] = None,
) -> TrustDebtState:
"""Compute new debt state after an intervention."""
...
def decay(
self,
current: TrustDebtState,
eval_time: datetime,
) -> TrustDebtState:
"""Apply decay function to debt state."""
...
def apply_recovery(
self,
current: TrustDebtState,
safe_evaluations: int,
) -> TrustDebtState:
"""Apply recovery credits for sustained safe behavior."""
...
Public Descriptor [NORMATIVE]¶
Blueprints MAY declare a trust debt provider using public metadata only:
trust_debt:
provider:
id: "urn:acgp:ext:trust-debt-private@1"
visibility: private
fail_mode: deny
attestation:
digest: "sha256:..."
issued_by: "did:example:steward"
The public protocol does not require provider formulas, compounding tables, or recovery logic to be disclosed.
Reserved Wire Field¶
| Field | Type | Location | Description |
|---|---|---|---|
trust_debt_extended |
object | EVAL payload | Optional provider identifier, visibility, and opaque attestation metadata |
Minimal Forward-Compatible Example¶
{
"trace_id": "trace-12345",
"blueprint_id": "finance_qa@2.1",
"governance_tier": "GT-2",
"ctq_dimensions": {
"reasoning_quality": {
"score": 0.89,
"weight": 0.25,
"status": "evaluated",
"contributors": ["rationale_clarity", "plan_completeness"]
},
"knowledge_grounding": {
"score": 0.87,
"weight": 0.20,
"status": "evaluated",
"contributors": ["citation_coverage"]
},
"ethical_alignment": {
"score": 0.92,
"weight": 0.20,
"status": "evaluated",
"contributors": ["fairness_review"]
},
"tool_safety": {
"score": 0.90,
"weight": 0.20,
"status": "evaluated",
"contributors": ["permission_check"]
},
"context_awareness": {
"score": 0.88,
"weight": 0.15,
"status": "evaluated",
"contributors": ["situational_fit"]
}
},
"ctq_score": 0.8915,
"risk_score": 0.1085,
"tripwires_triggered": [],
"intervention": "ok",
"flagged": false,
"runtime_posture": "normal",
"review_required": false,
"trust_debt": {
"provider_id": "urn:acgp:ext:trust-debt-private@1",
"pre": 1.2000,
"delta": 0.0000,
"post": 1.2000,
"thresholds_crossed": []
},
"trust_debt_extended": {
"provider": {
"id": "urn:acgp:ext:trust-debt-private@1",
"visibility": "private"
},
"attestation": {
"digest": "sha256:...",
"issued_by": "did:example:steward"
}
}
}
Private providers MAY withhold formulas, compounding logic, and recovery internals, but MUST emit the core observable EVAL trust-debt fields defined in ACGP-3.
Private providers MUST preserve the ACGP-3 observable constraints: trust debt participates in canonical ordering, may tighten scrutiny, and must never relax an intervention.