Skip to content

Commit f58f04b

Browse files
committed
Add ClinicOps synthetic proof
1 parent 67b2c95 commit f58f04b

21 files changed

Lines changed: 1447 additions & 3 deletions

README.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,13 @@ Agent intent -> Action Card -> Agent Action Gateway -> Decision Receipt -> devel
3737
| 03 | MCP Risk Gate | `npm run proof:mcp-risk-gate -- --dry-run --json` |
3838
| 04 | CommerceOps Fire Drill | `npm run proof:commerceops-fire-drill -- --dry-run --json` |
3939

40+
Applied proof cases also include:
41+
42+
```bash
43+
npm run proof:clinicops-synthetic -- --dry-run --json
44+
npm run verify:clinicops-synthetic
45+
```
46+
4047
No downstream execution by Neura. The developer-owned runtime decides whether to execute, revise, escalate, or stop after reading the receipt.
4148

4249
Distribution proof:
@@ -76,6 +83,7 @@ The foundation has four pieces:
7683
- Decision Receipt Standard: the working receipt shape for what was authorized before execution.
7784
- MCP Risk Gate: tool-call intent binds to server, tool, target, actor, and params hash.
7885
- CommerceOps Fire Drill: commerce actions receive receipts before money-moving or customer-facing execution.
86+
- ClinicOps Synthetic Proof: regulated-style synthetic actions receive receipts before scheduling, patient-message, prior-auth, insurance follow-up, or policy-exception execution.
7987

8088
Run:
8189

@@ -89,6 +97,8 @@ npm run proof:mcp-risk-gate -- --dry-run --json
8997
npm run verify:mcp-risk-gate
9098
npm run proof:commerceops-fire-drill -- --dry-run --json
9199
npm run verify:commerceops-fire-drill
100+
npm run proof:clinicops-synthetic -- --dry-run --json
101+
npm run verify:clinicops-synthetic
92102
```
93103

94104
Docs:
@@ -98,12 +108,15 @@ Docs:
98108
- [`docs/agent-action-firewall.md`](docs/agent-action-firewall.md)
99109
- [`docs/mcp-risk-gate.md`](docs/mcp-risk-gate.md)
100110
- [`docs/commerceops-fire-drill.md`](docs/commerceops-fire-drill.md)
111+
- [`docs/clinicops-synthetic-proof.md`](docs/clinicops-synthetic-proof.md)
101112

102113
MCP Risk Gate applies the same foundation at the tool-call boundary. It shows how an MCP-style call intent binds a receipt to the exact server, tool, target, actor, and params hash before runtime-owned execution.
103114

104115
CommerceOps Fire Drill applies the foundation to a Shopify-style merchant workflow. It shows how routine tracking replies, refunds, discounts, address changes, cancellations, and unsupported customer promises are allowed, revised, escalated, or stopped before execution.
105116

106-
This is a synthetic dry-run proof. It does not touch Shopify, payment rails, customer accounts, production systems, external message channels, MCP providers, or real data. It does not claim provider approval, marketplace listing, compliance certification, production integration, partnership, or downstream execution by Neura.
117+
ClinicOps Synthetic Proof applies the foundation to regulated-style synthetic workflows. It shows how scheduling changes, patient-message drafts, prior-auth notes, insurance follow-up, and policy exceptions are escalated, revised, or stopped before external use.
118+
119+
This is a synthetic dry-run proof. It does not touch Shopify, payment rails, customer accounts, production systems, external message channels, MCP providers, real provider systems, real insurer systems, real EHRs, real scheduling systems, real patient messages, or real data. It does not claim provider approval, insurer approval, marketplace listing, compliance certification, HIPAA compliance, medical advice, clinical accuracy, production integration, partnership, or downstream execution by Neura.
107120

108121
## Ecosystem Availability: Use Neura Today
109122

docs/agent-action-gateway.md

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ npm run proof:agent-action-firewall -- --dry-run --json
2828
npm run verify:decision-receipt-standard
2929
npm run proof:mcp-risk-gate -- --dry-run --json
3030
npm run proof:commerceops-fire-drill -- --dry-run --json
31+
npm run proof:clinicops-synthetic -- --dry-run --json
3132
```
3233

3334
| Step | Proof | What it confirms |
@@ -37,6 +38,12 @@ npm run proof:commerceops-fire-drill -- --dry-run --json
3738
| 03 | MCP Risk Gate | MCP-style tool calls bind to exact server, tool, target, actor, and params hash before runtime-owned execution |
3839
| 04 | CommerceOps Fire Drill | Commerce actions such as refunds, discounts, address changes, cancellations, replies, and promises receive receipts before execution |
3940

41+
Applied proof cases can extend the ladder without changing the core four-step Gateway proof. ClinicOps Synthetic Proof is one such applied case for regulated-style synthetic workflows:
42+
43+
```bash
44+
npm run verify:clinicops-synthetic
45+
```
46+
4047
## Output
4148

4249
The full ladder returns one JSON artifact with:
@@ -58,6 +65,7 @@ This proof shows the same mechanism across three environments:
5865
- a generic proposed agent action
5966
- an MCP-style tool-call boundary
6067
- a money-moving commerce workflow
68+
- a regulated-style synthetic workflow
6169

6270
Different contexts, same Relay mechanism:
6371

@@ -71,9 +79,9 @@ This is a local dry-run proof with synthetic data only.
7179

7280
No downstream execution by Neura.
7381

74-
It does not touch Shopify, payment rails, fulfillment systems, customer accounts, customer-message channels, real MCP servers, production systems, external providers, private payloads, or real customer records.
82+
It does not touch Shopify, payment rails, fulfillment systems, customer accounts, customer-message channels, real MCP servers, production systems, external providers, private payloads, real customer records, PHI, real provider systems, real insurer systems, real EHRs, real scheduling systems, real patient messages, or real prior-authorization submissions.
7583

76-
It does not claim provider approval, marketplace listing, compliance certification, production integration, partnership, public token issuance, Registry auto-approval, or downstream execution by Neura.
84+
It does not claim provider approval, insurer approval, marketplace listing, compliance certification, HIPAA compliance, medical advice, clinical accuracy, production integration, partnership, public token issuance, Registry auto-approval, or downstream execution by Neura.
7785

7886
Developer-owned runtimes still execute, revise, escalate, or stop downstream actions after reading the receipt.
7987

docs/clinicops-synthetic-proof.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# ClinicOps Synthetic Proof
2+
3+
ClinicOps Synthetic Proof is a local dry-run proof of Neura Relay as the Agent Action Gateway for regulated-style, policy-heavy synthetic operations.
4+
5+
It shows a synthetic workflow agent proposing scheduling, patient-message, prior-auth, insurance follow-up, and policy-exception actions, then receiving a Decision Receipt before anything external happens.
6+
7+
## Core Path
8+
9+
```text
10+
Synthetic ClinicOps intent -> Action Card -> Agent Action Gateway -> Decision Receipt -> developer-owned review or restraint
11+
```
12+
13+
## Run The Proof
14+
15+
```bash
16+
npm run proof:clinicops-synthetic -- --dry-run --json
17+
npm run verify:clinicops-synthetic
18+
```
19+
20+
The proof covers five synthetic regulated-style actions:
21+
22+
| Scenario | Decision | Why |
23+
| --- | --- | --- |
24+
| Scheduling change requiring policy check | `human_review` | Policy-sensitive schedule changes need review before update or notice. |
25+
| Patient message draft requiring human review | `human_review` | Patient-facing administrative messages need qualified review before external use. |
26+
| Prior-auth draft requiring evidence refs | `human_review` | Prior-auth notes need policy, evidence, and reviewer authority before external use. |
27+
| Insurance follow-up requiring allowed channel | `revise` | The external channel is not confirmed, so the action must be revised. |
28+
| Policy exception without approval | `stop` | The exception lacks owner approval and complete supporting evidence. |
29+
30+
## Outputs
31+
32+
Each scenario produces:
33+
34+
- a synthetic Action Card;
35+
- a Decision Receipt;
36+
- policy and evidence basis;
37+
- required reviewer or owner authority;
38+
- allowed next step;
39+
- blocked downstream actions;
40+
- attribution fields for proof measurement;
41+
- boundary flags showing no real regulated workflow action occurred.
42+
43+
## Files
44+
45+
```text
46+
examples/clinicops-synthetic-proof/fixtures/*.json
47+
examples/clinicops-synthetic-proof/scenarios/*.json
48+
examples/clinicops-synthetic-proof/receipts/*.receipt.json
49+
examples/clinicops-synthetic-proof/manifest.json
50+
examples/clinicops-synthetic-proof/run-proof.mjs
51+
scripts/verify-clinicops-synthetic-proof.mjs
52+
```
53+
54+
## Boundary
55+
56+
ClinicOps Synthetic Proof uses synthetic data only. It does not use PHI, real patient data, real provider systems, real insurer systems, real EHRs, real scheduling systems, real patient messages, or real prior-authorization submissions.
57+
58+
It does not claim HIPAA compliance, medical advice, clinical accuracy, provider approval, insurer approval, compliance certification, production healthcare integration, partnership, listing, endorsement, or downstream execution by Neura.
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
[
2+
{
3+
"synthetic_case_id": "CL-204",
4+
"case_type": "prior_authorization",
5+
"case_summary": "Synthetic administrative case for local proof only.",
6+
"appointment_context": {
7+
"appointment_ref": "appt:CL-204-A",
8+
"requested_change": "earlier_slot",
9+
"policy_sensitive_reason": true,
10+
"review_required": true
11+
},
12+
"message_context": {
13+
"draft_ref": "message:CL-204-follow-up",
14+
"message_purpose": "administrative_next_steps",
15+
"contains_medical_advice": false,
16+
"external_use_requires_review": true
17+
},
18+
"prior_auth_context": {
19+
"packet_ref": "prior_auth:CL-204",
20+
"policy_notes_ref": "policy_notes:CL-204",
21+
"payer_requirement_ref": "payer_requirement:CL-204",
22+
"review_required": true
23+
},
24+
"insurance_context": {
25+
"queue_ref": "insurance_queue:CL-204",
26+
"allowed_channel_confirmed": false,
27+
"external_follow_up_requires_review": true
28+
},
29+
"exception_context": {
30+
"exception_ref": "exception:CL-204",
31+
"owner_approval_present": false,
32+
"supporting_evidence_complete": false
33+
},
34+
"boundary": {
35+
"synthetic_data_only": true,
36+
"phi_used": false,
37+
"real_provider_system_touched": false,
38+
"real_insurer_system_touched": false,
39+
"real_patient_message_sent": false
40+
}
41+
}
42+
]
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
{
2+
"internal_review_queue": {
3+
"channel_ref": "channel:internal_review_queue",
4+
"external": false,
5+
"allowed_for_dry_run": true
6+
},
7+
"synthetic_patient_message": {
8+
"channel_ref": "channel:synthetic_patient_message",
9+
"external": true,
10+
"allowed_for_dry_run": false
11+
},
12+
"synthetic_insurer_submission": {
13+
"channel_ref": "channel:synthetic_insurer_submission",
14+
"external": true,
15+
"allowed_for_dry_run": false
16+
},
17+
"synthetic_clinic_system_write": {
18+
"channel_ref": "channel:synthetic_clinic_system_write",
19+
"external": false,
20+
"allowed_for_dry_run": false
21+
}
22+
}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"clinicops.synthetic.scheduling.policy_check": "Scheduling changes with policy-sensitive reason codes require qualified human review before schedule update or patient notice.",
3+
"clinicops.synthetic.patient_message.review_required": "Patient-facing administrative message drafts require qualified human review before external use.",
4+
"clinicops.synthetic.prior_auth.evidence_refs_required": "Prior-authorization drafts require policy notes, referral or order notes, payer requirement refs, and qualified human review before external use.",
5+
"clinicops.synthetic.insurance_follow_up.allowed_channel": "Insurer-facing follow-up must use an allowed channel; if the channel is not confirmed, the action must be revised or sent to review.",
6+
"clinicops.synthetic.policy_exception.owner_approval_required": "Policy exceptions cannot be applied without owner approval and complete supporting evidence.",
7+
"synthetic_data_only": true
8+
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
{
2+
"qualified_human_reviewer": {
3+
"role_ref": "qualified_human_reviewer",
4+
"can_approve_external_patient_message": true,
5+
"can_approve_prior_auth_packet": true,
6+
"can_approve_schedule_change": true,
7+
"can_apply_policy_exception": false
8+
},
9+
"clinic_operations_owner": {
10+
"role_ref": "clinic_operations_owner",
11+
"can_approve_external_patient_message": false,
12+
"can_approve_prior_auth_packet": false,
13+
"can_approve_schedule_change": true,
14+
"can_apply_policy_exception": false
15+
},
16+
"policy_exception_owner": {
17+
"role_ref": "policy_exception_owner",
18+
"can_approve_external_patient_message": false,
19+
"can_approve_prior_auth_packet": false,
20+
"can_approve_schedule_change": false,
21+
"can_apply_policy_exception": true
22+
}
23+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
{
2+
"proof": "clinicops-synthetic-proof",
3+
"capability": "ClinicOps Synthetic Proof",
4+
"receipt_standard": "neura-decision-receipt-v0.1-draft",
5+
"command": "npm run proof:clinicops-synthetic -- --dry-run --json",
6+
"verify_command": "npm run verify:clinicops-synthetic",
7+
"scenario_count": 5,
8+
"decisions_required": ["human_review", "revise", "stop"],
9+
"scenarios": [
10+
"scheduling-change-policy-check",
11+
"patient-message-human-review",
12+
"prior-auth-draft-human-review",
13+
"insurance-follow-up-channel-revise",
14+
"policy-exception-without-approval-stop"
15+
],
16+
"boundary": {
17+
"synthetic_data_only": true,
18+
"phi_used": false,
19+
"real_provider_system_touched": false,
20+
"real_insurer_system_touched": false,
21+
"real_ehr_touched": false,
22+
"real_scheduling_system_touched": false,
23+
"real_patient_message_sent": false,
24+
"real_prior_authorization_submitted": false,
25+
"downstream_execution_performed_by_neura": false,
26+
"hipaa_compliance_claimed": false,
27+
"medical_advice_claimed": false,
28+
"clinical_accuracy_claimed": false,
29+
"provider_approval_claimed": false,
30+
"insurer_approval_claimed": false,
31+
"compliance_certification_claimed": false
32+
}
33+
}
Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
{
2+
"receipt_id": "dr_20260527_clinicops_insurance_follow_up_revise_001",
3+
"standard": "neura-decision-receipt-v0.1-draft",
4+
"created_at": "2026-05-27T21:13:00-04:00",
5+
"action_card_id": "ac_20260527_clinicops_insurance_follow_up_001",
6+
"decision": "revise",
7+
"runtime_instruction": "continue_with_revision",
8+
"decision_reason": "Insurer-facing follow-up cannot use an unconfirmed external channel; the action must be revised before any external use.",
9+
"actor": {
10+
"type": "agent",
11+
"name": "ClinicOps Demo Agent",
12+
"runtime": "synthetic_workflow"
13+
},
14+
"proposed_action": {
15+
"action_type": "send_insurer_follow_up",
16+
"target": "synthetic_case:CL-204:insurance_queue",
17+
"summary": "Send an insurer-facing follow-up through a channel not confirmed as allowed for this synthetic case.",
18+
"params_hash": "sha256:clinicops_insurance_follow_up_001",
19+
"amount_or_value_at_risk": "regulated-style external administrative communication",
20+
"customer_impact": "synthetic insurer-facing communication tied to administrative workflow"
21+
},
22+
"risk": {
23+
"risk_class": "regulated_synthetic_workflow",
24+
"consequence_score": 2
25+
},
26+
"policy_basis": [
27+
{
28+
"policy_ref": "clinicops.synthetic.insurance_follow_up.allowed_channel",
29+
"summary": "Insurer-facing follow-up must use an allowed channel; if the channel is not confirmed, the action must be revised or sent to review."
30+
}
31+
],
32+
"evidence_basis": [
33+
{
34+
"evidence_ref": "synthetic_case:CL-204.insurance_context",
35+
"summary": "Synthetic insurance context shows the allowed channel has not been confirmed."
36+
},
37+
{
38+
"evidence_ref": "channel:synthetic_insurer_submission",
39+
"summary": "Synthetic insurer submission is an external channel and is not allowed for dry run execution."
40+
}
41+
],
42+
"authority": {
43+
"authority_ref": "qualified_human_reviewer",
44+
"approval_state": "revision_required",
45+
"required_role": "qualified_human_reviewer"
46+
},
47+
"validity": {
48+
"valid_for_action_type": "send_insurer_follow_up",
49+
"valid_for_target": "synthetic_case:CL-204:insurance_queue",
50+
"valid_for_actor": "ClinicOps Demo Agent",
51+
"params_hash": "sha256:clinicops_insurance_follow_up_001",
52+
"valid_until": null,
53+
"invalid_if_changed": ["action_type", "target", "params_hash", "actor", "policy_refs", "evidence_refs", "approval_state", "required_authority_role"]
54+
},
55+
"execution": {
56+
"allowed_next_step": "select_allowed_channel_or_prepare_human_review",
57+
"blocked_downstream_actions": ["send_insurer_follow_up", "attach_case_packet", "write_to_external_queue"],
58+
"execution_boundary": "Neura returns a Decision Receipt only; no provider, clinic, scheduling, patient-message, EHR, or insurer system is touched by Neura."
59+
},
60+
"trace": {
61+
"trace_ref": "trace_20260527_clinicops_insurance_follow_up_revise_001",
62+
"source": "github",
63+
"campaign": "agent_action_gateway",
64+
"surface": "clinicops_synthetic_proof"
65+
},
66+
"boundary": {
67+
"synthetic_data_only": true,
68+
"phi_used": false,
69+
"downstream_execution_performed_by_neura": false,
70+
"real_provider_system_touched": false,
71+
"real_insurer_system_touched": false,
72+
"real_ehr_touched": false,
73+
"real_scheduling_system_touched": false,
74+
"real_patient_message_sent": false,
75+
"real_prior_authorization_submitted": false,
76+
"hipaa_compliance_claimed": false,
77+
"medical_advice_claimed": false,
78+
"clinical_accuracy_claimed": false,
79+
"provider_approval_claimed": false,
80+
"insurer_approval_claimed": false,
81+
"compliance_certification_claimed": false
82+
}
83+
}

0 commit comments

Comments
 (0)