Skip to content

Professional Standards

professional_standards — mvp.professional_standards

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

Overview

Verifies job agent outputs against real-world regulatory and professional standards as a standards-aware review aid. Maintains a jurisdiction-aware standard registry, detects likely deficiencies with severity grading, provides remediation hints, and generates audit-style reports for human review. Supports multi-jurisdiction comparison and corpus enrichment.

Standards-aware review, not compliance certification

professional_standards is useful for MVP and pilot workflows that need standards-aware checks, deficiency flags, remediation hints, and audit trails. It does not certify legal, clinical, financial, security, engineering, privacy, or other regulated-industry compliance. Checklist scores, LLM consensus, auto-remediation, and corpus/RAG grounding are decision-support signals, not professional sign-off or auditor-approved determinations.

Production use in regulated or client-facing workflows requires qualified human review, jurisdiction-specific source verification, current standards and law, validated evidence, audit controls, and any required external legal, clinical, engineering, security, or compliance assessment.

When to use:

  • Validating job_lawyer, job_medical_surgical, or job_pharmaceutical outputs against professional codes
  • Checking likely regulatory or professional-standard gaps in agent pipelines (GDPR, medical ethics, legal obligations)
  • Generating audit trails and review artifacts for supervised compliance workflows

Example:

from mvp.professional_standards import ProfessionalStandardsBlock, StandardsVerificationInput

block = ProfessionalStandardsBlock(name="standards")
result = block.infer(StandardsVerificationInput(
    job_type="lawyer",
    job_output={"advice": "The client should sign the contract immediately."},
    jurisdiction="AU",
))
# result.ok → True; result.value → StandardsVerificationOutput with grade, deficiencies

Works well with: duty_of_care, compliance, align_specs

Public API

ChecklistResult

Field Type Default
deficiencies list[StandardDeficiency] required
total_checked int required
requirements_passed int required

ChecklistEvaluator

Field Type Default
threshold float 0.3

Methods:

evaluate(output_text: str, standards: list, jurisdiction: str) -> ChecklistResult

Evaluate output_text against per-standard requirement checklists.

ConsensusResult

Field Type Default
deficiencies list[StandardDeficiency] required
human_review_required bool required
human_review_reasons list[str] required
evaluation_layers list[str] required
layer_agreements dict[str, str] required
total_requirements_checked int 0
requirements_passed int 0

ConsensusResolver

Field Type Default
threshold float 0.7

Methods:

resolve(checklist_deficiencies: list[StandardDeficiency], llm_verdicts: list[LLMVerdict] | None, standards: list, job_type: str, jurisdiction: str, llm_allowed: bool = True) -> ConsensusResult

Compare checklist and LLM results per standard, resolve conflicts.

Jurisdiction(str, Enum)

Supported jurisdictions.

LLMVerdict

Field Type Default
standard_id str required
verdict str required
confidence float required
reasoning str required
deficiencies list[dict] required

LLMEvaluator

Field Type Default
enabled bool True
timeout float 60.0

Methods:

evaluate(output_text: str, standards: list, checklist_deficiencies: list, job_type: str, jurisdiction: str, grounding_facts: list[str] | None = None) -> list[LLMVerdict] | None

Evaluate output against standards using LLM.

AutoRemediator

Field Type Default
max_retries int 3

Methods:

remediate(verify_fn: Callable[[dict], StandardsVerificationOutput], job_output: dict, initial_result: StandardsVerificationOutput) -> StandardsVerificationOutput

Run LLM rewrite loop up to max_retries times.

RequirementSpec

Field Type Default
name str required
keywords tuple[str, ...] required
description str ''
mandatory bool True

StandardDeficiency(BaseModel)

A single deficiency found during verification.

Field Type Default
standard_id str required
standard_name str required
description str required
severity Literal['minor', 'major', 'critical'] 'minor'
remediation_hint str ''
clause_ref str ''
clause_text str ''
layer_source str ''

StandardsVerificationInput(BaseModel)

Input to ProfessionalStandardsBlock.

Field Type Default
job_type str required
job_output dict[str, Any] Field(default_factory=dict)
jurisdiction str ''
failure_mode str ''
context dict[str, Any] Field(default_factory=dict)
request_id str ''
task_id str ''
run_id str ''
max_retries int 0
source_urls list[str] Field(default_factory=list)
rag_documents list[str] Field(default_factory=list)
grounding_domains list[str] Field(default_factory=list)
enable_web_check bool False
enable_grounding bool True
enable_rag bool False

StandardsVerificationOutput(BaseModel)

Output from ProfessionalStandardsBlock.

Field Type Default
job_type str required
jurisdiction str required
passed bool \| None required
grade QualityGrade required
deficiencies list[StandardDeficiency] Field(default_factory=list)
applicable_standards list[str] Field(default_factory=list)
remediation_hints list[str] Field(default_factory=list)
confidence float 0.5
failure_mode_applied str 'grade'
auto_remediation_attempts int 0
retrieval_sources list[str] Field(default_factory=list)
result str ''
human_review_required bool False
human_review_reasons list[str] Field(default_factory=list)
evaluation_layers list[str] Field(default_factory=list)
layer_agreements dict[str, str] Field(default_factory=dict)
degraded bool False
degradation_reason str \| None None
completion_state CompletionState 'qualified-draft'
warning_card dict[str, Any] Field(default_factory=dict)
evidence dict[str, Any] Field(default_factory=dict)
request_id str ''
task_id str ''
run_id str ''

ProfessionalStandardsBlock(AIBlock[StandardsVerificationInput, StandardsVerificationOutput, None])

Verifies job agent outputs against professional and regulatory standards.

Field Type Default
name str 'professional_standards'
default_jurisdiction str ''
default_failure_mode str ''
resource_bounds ResourceBounds \| None None
usage ResourceUsage field(default_factory=ResourceUsage)
top_k int 5

Methods:

infer(data: object) -> Result[StandardsVerificationOutput]

StandardSpec

Field Type Default
id str required
name str required
body str required
jurisdictions tuple[str, ...] required
mandatory bool True
category str ''
effective_date str ''
version str ''
expiry_date str ''

Functions

resolve_failure_mode(input_mode: str = '', block_default: str = '', settings_default: str = '') -> FailureMode

Resolve failure mode using fallback chain: input -> block -> settings -> grade.

apply_failure_mode(failure_mode: FailureMode, job_type: str, jurisdiction: str, deficiencies: list[StandardDeficiency], applicable_standards: list[str], confidence: float = 0.5, auto_remediation_attempts: int = 0, human_review_required: bool = False, human_review_reasons: list[str] | None = None, evaluation_layers: list[str] | None = None, layer_agreements: dict[str, str] | None = None) -> Result[StandardsVerificationOutput]

Apply the resolved failure mode strategy to produce the final output.

resolve_jurisdiction(input_jurisdiction: str = '', block_default: str = '', settings_default: str = '') -> str

Resolve jurisdiction using fallback chain: input -> block -> settings -> INTL.

is_valid_jurisdiction(code: str) -> bool

Check if a jurisdiction code is valid.

get_facts_for_cluster(cluster: str) -> list[tuple[str, str, str, tuple[str, ...]]]

Get all facts for a domain cluster.

get_facts_for_job(job_type: str, jurisdiction: str = 'INTL') -> list[tuple[str, str, str, tuple[str, ...]]]

Get all facts applicable to a job type, optionally filtered by jurisdiction.

get_all_clusters() -> list[str]

Return all domain cluster names.

get_standards_for_job(job_type: str, jurisdiction: str = 'INTL', as_of_date: str = '') -> list[StandardSpec]

Get applicable standards for a job type filtered by jurisdiction.

get_all_job_types() -> list[str]

Return all 38 registered job types.

get_standard_by_id(standard_id: str) -> StandardSpec | None

Find a standard by its ID across all jobs.

MCP Tools

Operation Source
add_standard professional_standards_mcp
update_standard professional_standards_mcp
remove_standard professional_standards_mcp
get_standard professional_standards_mcp
list_standards professional_standards_mcp
search_standards professional_standards_mcp
verify_output professional_standards_mcp
verify_batch professional_standards_mcp
check_compliance professional_standards_mcp
capabilities professional_standards_mcp
get_applicable_standards professional_standards_mcp
explain_deficiency professional_standards_mcp
add_jurisdiction professional_standards_mcp
list_jurisdictions professional_standards_mcp
get_jurisdiction_standards professional_standards_mcp
set_default_jurisdiction professional_standards_mcp
generate_report professional_standards_mcp
get_audit_trail professional_standards_mcp
compliance_summary professional_standards_mcp
export_deficiencies professional_standards_mcp
compare_jurisdictions professional_standards_mcp
enrich_corpus professional_standards_mcp
corpus_status professional_standards_mcp
rebuild_index professional_standards_mcp
seed_defaults professional_standards_mcp
load_compliance_docs professional_standards_mcp
clear_compliance_docs professional_standards_mcp
list_patterns professional_standards_mcp
info professional_standards_mcp