Canonical location: skills/perspective-validation/CHECKLIST.md
This checklist complements type/contract validation with socio-technical, security, governance, and operational validation.
Treat it like a “meta-validator”: it doesn’t replace tools/validate_workflows.py; it catches the failure classes that are not primarily type errors (e.g., operator confusion, bad incentives, policy drift, irreversibility, data governance).
Apply PVC to one of:
- a capability (node in
schemas/capability_ontology.yaml) - a workflow (entry in
schemas/workflow_catalog.yaml) - a schema/policy (
schemas/*.yaml) - a runtime enforcement component (
hooks/, SDK adapter) - a document (e.g.,
docs/PROJECT_ARTICLE.md)
target: docs/PROJECT_ARTICLE.md
context:
domain: general | manufacturing | healthcare | personal_assistant | data_analysis | other
deployment: local-dev | internal | customer-facing | safety-critical
risk_tier: low | medium | high
stakeholders:
- operator/on-call
- end user
- security
- compliance/legal
- product/engineering owners
assumptions:
- "What you assume about tools, permissions, data, reversibility"
evidence:
- "file:...#L"
- "test:... (how to run)"
- "benchmark:... (how to run)"
scorecard:
HF-101: PASS|PARTIAL|FAIL|N/A
HF-102: PASS|PARTIAL|FAIL|N/A
HF-103: PASS|PARTIAL|FAIL|N/A
ORG-201: PASS|PARTIAL|FAIL|N/A
GOV-202: PASS|PARTIAL|FAIL|N/A
ECON-301: PASS|PARTIAL|FAIL|N/A
ECON-302: PASS|PARTIAL|FAIL|N/A
SEC-401: PASS|PARTIAL|FAIL|N/A
SEC-402: PASS|PARTIAL|FAIL|N/A
CTRL-501: PASS|PARTIAL|FAIL|N/A
ASSUR-601: PASS|PARTIAL|FAIL|N/A
ASSUR-602: PASS|PARTIAL|FAIL|N/A
DG-701: PASS|PARTIAL|FAIL|N/A
ETH-801: PASS|PARTIAL|FAIL|N/A
ECO-901: PASS|PARTIAL|FAIL|N/A
actions:
- id: "DOC-001"
priority: P0|P1|P2
fix: "What to add/change"
artifact: "doc|workflow|policy|hook|test|benchmark"
owner: "role/team"Create a short report with:
- Target:
<name/path> - Context: domain + deployment assumptions
- Stakeholders: who is affected
- Scoring table (PASS / PARTIAL / FAIL / N/A) for tests below
- Evidence links: files, config, tests, benchmark outputs, example logs
PASS requires explicit, checkable evidence (e.g., documented invariant + where it’s enforced; a test/fixture; a policy file; a log format).
PARTIAL means the topic is acknowledged but lacks operational detail, measurable criteria, or enforcement points.
FAIL means the topic is absent or implied only by aspiration.
For each FAIL/PARTIAL:
- pick a remediation pattern (listed per test)
- add an artifact: policy config, constraint, gate, hook, fixture, benchmark scenario, or doc section
- re-run the PVC report
You can optionally track maturity by coverage:
- PVC-L1 (Narrative): risks and stakeholders are named (mostly doc-level)
- PVC-L2 (Procedural): decision + escalation paths are defined (workflow/policy-level)
- PVC-L3 (Enforced): invariants are mechanically enforced (validator/gates/hooks)
- PVC-L4 (Measured): benchmarks/tabletops/red-teams prove properties in practice
Each test is written to be “auditable”: it asks for explicit artifacts and measurable outcomes.
Intent: An on-call engineer can understand “what happened” and “what to do next” quickly.
Questions
- What are the top 5 failure modes that will page someone?
- What information will they see first (logs, audit trail, UI)?
- Can they answer: What changed? Why? With what confidence? How to undo?
Acceptance criteria (PASS requires all)
- A single canonical “incident view” exists (doc or tool output format) containing:
- last checkpoint id + scope
- mutations performed (targets + diffs or references)
- evidence anchors supporting decisions
- current workflow step + next action (retry/rollback/escalate)
- A “tabletop exercise” recipe exists for at least one high-risk workflow (even if manual).
Remediation patterns
- Add an audit summary schema (fields above) and ensure hooks/adapter emit it.
- Add a runbook section to the workflow doc or domain profile.
Intent: Humans can challenge/override decisions without bypassing safety.
Questions
- If a human disagrees with conflict resolution, what is the override mechanism?
- Is override auditable and reversible (where possible)?
- What is the fallback when uncertainty is high?
Acceptance criteria
- Override mechanism is explicitly defined (policy + logging + permissions).
- Overrides require evidence anchors and produce an audit record.
- Overrides cannot silently disable checkpoint/rollback requirements.
Remediation patterns
- Add
constrainpolicy for override authorization + record format. - Add workflow gate: “if manual override, require audit + checkpoint.”
Intent: Explanations correspond to actual evidence and decisions.
Questions
- How do you prevent “nice story” explanations that don’t match execution?
- Can an explanation be regenerated from evidence anchors?
Acceptance criteria
- Explanation pathways reference concrete anchors (tool outputs, file paths, logs).
- There is a benchmark or fixture where explanation faithfulness is evaluated.
Remediation patterns
- Add a benchmark scenario (like
benchmarks/scenarios/decision_audit.py) for your domain. - Require
auditstep outputs to be referenced byexplain.
Intent: Trust weights, constraints, and approvals have explicit owners and change control.
Questions
- Who can change trust weights? Who reviews? How are changes rolled out?
- What is the rollback plan for a bad policy update?
Acceptance criteria
- Policy owners are specified (team/role), with change process and rollback procedure.
- Versioning strategy exists (semver or explicit policy version fields).
Remediation patterns
- Add governance doc section: “Policy ownership + review cadence + incident protocol.”
- Add policy version field and “policy diff” audit entries.
Intent: Audit logs are not just generated; they are interpretable and reviewed.
Questions
- What constitutes an audit anomaly?
- How often are audits reviewed, and by whom?
Acceptance criteria
- Audit schema includes: actor, capability, intent/purpose, evidence anchors, outcome.
- Review process exists (even minimal): cadence + trigger conditions + retention.
Remediation patterns
- Add “audit anomaly detection” rules (simple heuristics) and an escalation path.
Intent: Reliability work has explicit budgets and tradeoffs.
Questions
- What is the acceptable latency for validation, checkpoints, evidence collection?
- What is the storage cost of anchors/audits, and retention policy?
Acceptance criteria
- A stated latency target for critical workflows (p50/p95) or a “budget table”.
- A stated retention + sampling policy for audits/evidence (by risk level).
Remediation patterns
- Add tiered retention: low/medium/high risk workflows keep different evidence detail.
- Add “async evidence capture” option with integrity guarantees.
Intent: Adoption is guided by “which failures pay back first.”
Questions
- Which failure classes dominate incidents (type mismatches, state corruption, conflicts)?
- Which PVC items reduce them measurably?
Acceptance criteria
- Map top incident categories to capabilities/workflow patterns.
- Include at least one before/after metric claim with a measurement plan.
Remediation patterns
- Add a domain-specific benchmark suite that mirrors real incident distribution.
Intent: Capabilities are treated as permissions with blast-radius control.
Questions
- What is the smallest set of tools/capabilities allowed per workflow?
- How do you prevent high-risk capabilities from being invoked indirectly?
Acceptance criteria
- Allowed-tools/capabilities are enumerated per workflow (or per deployment profile).
- There is a deny-by-default rule for high-risk mutations in strict mode.
- Sensitive paths/resources are explicitly constrained.
Remediation patterns
- Add
constrainpolicies for file paths/domains, tool allowlists, and rate limits.
Intent: Structural mitigations are explicit even if content filtering isn’t solved here.
Questions
- How do you prevent retrieved content from becoming “instructions”?
- How are sources verified and trust-weighted?
Acceptance criteria
- Clear separation of “data” and “instructions” is specified in workflow patterns.
- Trust model + provenance anchors are required for high-impact decisions.
Remediation patterns
- Add a “tainted input” gate: require verification before acting on untrusted content.
Intent: Avoid oscillation, flapping, and infinite recovery loops.
Questions
- What prevents “replan every tick” or “retry forever”?
- How do thresholds/hysteresis work?
Acceptance criteria
- Explicit bounds exist: max retries, max recovery loops, cooldown windows.
- Thresholds include hysteresis or confidence gating (not single brittle cutoffs).
Remediation patterns
- Add
constrainlimits + recovery loop counters to workflow DSL patterns.
Intent: “Safe enough” is argued with evidence, not implied.
Questions
- What are the top safety claims (e.g., “no mutation without checkpoint”)?
- Where are they enforced (validator + hook + SDK adapter)?
Acceptance criteria
- For each safety claim: (a) enforcement point(s), (b) test/fixture, (c) audit evidence.
Remediation patterns
- Add a “safety case” section per workflow or per risk tier with links to tests.
Intent: Detect invariant violations in the wild and respond.
Questions
- What is the detection mechanism when invariants are violated at runtime?
- What is the default response (halt, rollback, escalate)?
Acceptance criteria
- A monitor rule exists for at least one critical invariant.
- Alert + escalation path exists.
Remediation patterns
- Add a minimal invariant monitor (log-based or metrics-based) and a runbook.
Intent: Evidence anchors and audit trails don’t become an ungoverned data lake.
Questions
- Do evidence anchors capture secrets/PII? How is redaction handled?
- Who can access audit trails? For how long?
Acceptance criteria
- Retention policy exists by risk tier and data sensitivity.
- Access controls are documented (roles/scopes) and enforced in implementation.
Remediation patterns
- Add an “evidence minimization” policy and a redaction pipeline for anchors.
Intent: Make normative choices explicit: “trust weights encode power.”
Questions
- Who sets trust weights and field authority mappings?
- Who is harmed if a source is systematically deprioritized?
Acceptance criteria
- Document the decision process and the appeal/override path.
- Document at least one “harm scenario” and mitigation.
Remediation patterns
- Add a “trust model rationale” appendix with stakeholder review notes.
Intent: Teams can adopt the standard without rewriting everything.
Questions
- What’s the smallest valuable adoption unit (validator only? hooks only?)?
- How do you interop with existing frameworks/tools?
Acceptance criteria
- A staged adoption plan is documented, with clearly scoped milestones.
- Compatibility notes exist for at least one external ecosystem (SDK integration counts).
Remediation patterns
- Provide “minimum viable conformance” templates per domain.