pub trait AgentDomainPackage: Send + Sync {
Show 14 methods
// Required methods
fn domain_id(&self) -> DomainId;
fn detect(&self, workspace: &WorkspaceSnapshot) -> DomainDetection;
fn residual_schema(&self, scope: &DomainScope) -> ResidualSchema;
fn energy_model(&self, scope: &DomainScope) -> EnergyModel;
fn correction_directions(
&self,
residuals: &[ResidualEvent],
) -> Vec<CorrectionDirection>;
fn tool_entries(&self, scope: &DomainScope) -> Vec<ToolEntry>;
fn hard_gate_policy(&self, scope: &DomainScope) -> HardGatePolicy;
fn verifier_suite(&self, scope: &DomainScope) -> VerifierSuiteSpec;
fn safety_barrier(&self, scope: &DomainScope) -> SafetyBarrierDisposition;
// Provided methods
fn proxy_geometry(&self, _scope: &DomainScope) -> Option<&dyn ProxyGeometry> { ... }
fn prompt_library(&self) -> &dyn DomainPromptLibrary { ... }
fn search_strategies(&self, _context: &SearchContext) -> Vec<SearchStrategy> { ... }
fn correction_packet(
&self,
_residuals: &[ResidualEvent],
) -> Option<CorrectionPacket> { ... }
fn compare_branch_measurements(
&self,
_root: &DomainMeasurement,
_candidates: &[BranchMeasurement],
) -> BranchSelection { ... }
}Expand description
The domain-package contract.
A domain package maps verifier evidence into residuals, declares the residual schema and energy model that gate acceptance, derives correction directions from dominant residuals, and — since PSP-9 — declares its governed tools, hard-gate policy, verifier suite, and barrier position.
Required Methods§
Sourcefn detect(&self, workspace: &WorkspaceSnapshot) -> DomainDetection
fn detect(&self, workspace: &WorkspaceSnapshot) -> DomainDetection
Detect whether this domain applies to a workspace.
Sourcefn residual_schema(&self, scope: &DomainScope) -> ResidualSchema
fn residual_schema(&self, scope: &DomainScope) -> ResidualSchema
The residual classes this domain can emit for a scope.
Sourcefn energy_model(&self, scope: &DomainScope) -> EnergyModel
fn energy_model(&self, scope: &DomainScope) -> EnergyModel
The energy model (weights, rho_gate, tolerance, budget) for a scope.
Sourcefn correction_directions(
&self,
residuals: &[ResidualEvent],
) -> Vec<CorrectionDirection>
fn correction_directions( &self, residuals: &[ResidualEvent], ) -> Vec<CorrectionDirection>
Derive correction directions from dominant residuals. Returning an empty vector for residuals that genuinely have no direction is honest; the runtime then escalates rather than issuing an undirected retry.
Sourcefn tool_entries(&self, scope: &DomainScope) -> Vec<ToolEntry>
fn tool_entries(&self, scope: &DomainScope) -> Vec<ToolEntry>
The domain’s tool entries for a scope (joined with the base catalog).
Sourcefn hard_gate_policy(&self, scope: &DomainScope) -> HardGatePolicy
fn hard_gate_policy(&self, scope: &DomainScope) -> HardGatePolicy
The hard predicates required for HardPass.
Sourcefn verifier_suite(&self, scope: &DomainScope) -> VerifierSuiteSpec
fn verifier_suite(&self, scope: &DomainScope) -> VerifierSuiteSpec
The verifier suite and its bounded cadence.
Sourcefn safety_barrier(&self, scope: &DomainScope) -> SafetyBarrierDisposition
fn safety_barrier(&self, scope: &DomainScope) -> SafetyBarrierDisposition
The barrier position — NotClaimed { reason } is a legal, honest
answer; a vacuous default is not.
Provided Methods§
Sourcefn proxy_geometry(&self, _scope: &DomainScope) -> Option<&dyn ProxyGeometry>
fn proxy_geometry(&self, _scope: &DomainScope) -> Option<&dyn ProxyGeometry>
The optional analytic-path extension (Paper I §12). Coding returns
None until a true proxy geometry exists.
Sourcefn prompt_library(&self) -> &dyn DomainPromptLibrary
fn prompt_library(&self) -> &dyn DomainPromptLibrary
The domain’s compiled prompt section library.
Sourcefn search_strategies(&self, _context: &SearchContext) -> Vec<SearchStrategy>
fn search_strategies(&self, _context: &SearchContext) -> Vec<SearchStrategy>
Deliberately diverse branch strategies for a failed attempt (PSP-10 system 20). A strategy is a search prior, never authority.
Sourcefn correction_packet(
&self,
_residuals: &[ResidualEvent],
) -> Option<CorrectionPacket>
fn correction_packet( &self, _residuals: &[ResidualEvent], ) -> Option<CorrectionPacket>
Fold verifier residuals into one coherent typed correction packet
(PSP-10 system 26). None means the domain has no direction — the
caller expands or escalates, never blind-retries.
Sourcefn compare_branch_measurements(
&self,
_root: &DomainMeasurement,
_candidates: &[BranchMeasurement],
) -> BranchSelection
fn compare_branch_measurements( &self, _root: &DomainMeasurement, _candidates: &[BranchMeasurement], ) -> BranchSelection
Compare branch candidates against the accepted root under the domain’s measurement semantics (advisory; Proposition 5’s deterministic rule selects).