Skip to content

Governance

Cluster: Uncategorised | Type: component | MCP Tools: None

Overview

Public API

ApprovalDecision(BaseModel)

Field Type Default
allowed bool required
required_human_decision str ''
categories list[str] Field(default_factory=list)
risk_level str 'low'

ApprovalEnforcer

Constructor:

Parameter Type Default
contract FriendlinessContract \| None None

Methods:

check(action: str, touched_paths: list[str], approval: bool = False, preference: Preference | None = None) -> ApprovalDecision

FriendlinessContract(BaseModel)

Field Type Default
purpose str required
protected_values list[str] Field(default_factory=list)
prohibited_behaviors list[str] Field(default_factory=list)
approval_required_for list[str] Field(default_factory=list)
required_evidence_for_success list[str] Field(default_factory=list)
self_modification_policy dict[str, str] Field(default_factory=dict)

GovernanceContract

Read-only facade over the existing deterministic governance core.

Methods:

classify_risk(action: str = '', touched_paths: list[str] | None = None, diff: str = '') -> FriendlinessRisk

check_approval(action: str, touched_paths: list[str], approval: bool = False) -> ApprovalDecision

review_patch(touched_paths: list[str], diff: str, approval: bool = False) -> FriendlinessPatchReview

load_contract(path: str = 'friendliness_contract.yaml') -> FriendlinessContract

FriendlinessPatchReview(BaseModel)

Field Type Default
user_benefit str ''
affected_invariants list[str] Field(default_factory=list)
risk_level str required
permission_check str required
protected_files_touched list[str] Field(default_factory=list)
approval_required bool False
deception_or_misreporting_risk bool False
rollback_available bool False
tests_added_or_updated bool False
meta_evals_added_or_updated bool False
docs_updated bool False
license_check str 'not_applicable'
security_check str 'not_applicable'
secrets_check str 'not_applicable'
deployment_impact bool False
user_workload_impact str 'unchanged'
known_failure_modes list[str] Field(default_factory=list)
residual_risk str ''

ProtectedFilesPolicy

Field Type Default
protected tuple[str, ...] required
exempt tuple[str, ...] ()

FriendlinessRiskClassifier

Methods:

classify(action: str = '', touched_paths: list[str] | None = None, diff: str = '') -> FriendlinessRisk

T3PolicyRegistry

Constructor:

Parameter Type Default
policies list[T3Policy] \| None None

Methods:

classify_path(path: str | Path) -> T3Policy

Functions

load_friendliness_contract(path: str | Path | None = None) -> FriendlinessContract

review_patch_friendliness(touched_paths: list[str], diff: str, approval: bool = False, tests_added_or_updated: bool = False, docs_updated: bool = False, rollback_available: bool = False, preference: Preference | None = None) -> FriendlinessPatchReview

load_protected_files_policy(policy_path: str | Path = 'policies/protected_files.yaml', exemptions_path: str | Path = 'policies/protected_files_rollout_exemptions.yaml', phase_id: str = '', today: date | None = None) -> ProtectedFilesPolicy

protected_paths(paths: list[str] | tuple[str, ...], policy: ProtectedFilesPolicy | None = None) -> tuple[str, ...]