From fa3dad95487fb96b36a8e9052c9e0e6c90633f21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Jacob=20Read=20IV=20=E2=80=94=20Creator=20of=20?= =?UTF-8?q?=C4=80ML=E2=84=A2?= Date: Sat, 10 Oct 2026 21:09:46 -0700 Subject: [PATCH 1/6] Add visual action challenge board: docs/action-challenge.html --- docs/action-challenge.html | 142 +++++++++++++++++++++++++++++++++++++ 1 file changed, 142 insertions(+) create mode 100644 docs/action-challenge.html diff --git a/docs/action-challenge.html b/docs/action-challenge.html new file mode 100644 index 00000000..37fe8b29 --- /dev/null +++ b/docs/action-challenge.html @@ -0,0 +1,142 @@ + + + + + + + + 13 cases. One agent boundary. · ĀML™ + + + +
+ +
+
+
PUBLISHED CONTRACT · 13 CASES · NO LIVE TOOLS
+

Can your boundary hold?

+

An AI agent proposes a tool call. Your host freezes the proposal, checks its exact policy, binds approval to the digest, and reports what happened at dispatch.

+ +

These are project-authored expected results. This board does not run an adapter or claim an independent pass.

+
+
+
AGENT REQUEST → HOST BOUNDARYEXAMPLE / 03
+
01send_messageproposed
+
02outsider@example.testchanged destination
+
03No exact host rulepolicy decision
+
04BLOCKED0 tool calls
+

Illustration of the published changed-destination fixture; no message is sent.

+
+
+
+
13published adversarial cases
+
0live services or real approvals
+
PASS / FAIL / MIXEDoutside reports invited
+
+
+

Every edge has an expected result.

Select a case to inspect its host fixture, expected receipt, and tool-call count. Filters show the expected outcome, not observed performance.

+
+ + + + +
+

Loading the published cases…

+
+
+ SELECTED FIXTURE

Choose a case

+

The contract is loading.

+
Expected policy decision—
Expected receipt—
Expected tool calls—
Receipt reason—
+

Source of truth: machine contract. The browser holds a copy checked against that file in repository tests.

+
+
PUBLISHED CASE RECORD
Select a case to inspect its JSON.
+
+
+
+
YOUR CODE · YOUR REPOSITORY · REPRODUCIBLE REPORT
+

Make the claim falsifiable.

+

Implement the adapter outside this repository, then run the harness against your executable. It prints case-by-case failures and hashes of the exact challenge and vector files. Keep your implementation and evidence outside the project reference code.

+
node scripts/run-action-boundary-challenge.mjs -- ./your-adapter
+
+

Run from a checkout of aml-core; replace ./your-adapter with your executable. The harness uses simulated callbacks only.

+ +
+
ĀML™ · ĀRU Meaning Language™ · Project-authored challenge. Compatibility with these fixtures does not establish human consent, external delivery, production authorization, certification, or a standard.
+
+ + + From cbf577ab9d319133bf6dd39fd17dfbfdbd62c9f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Jacob=20Read=20IV=20=E2=80=94=20Creator=20of=20?= =?UTF-8?q?=C4=80ML=E2=84=A2?= Date: Sat, 10 Oct 2026 21:09:47 -0700 Subject: [PATCH 2/6] Add visual action challenge board: docs/action-challenge-board.json --- docs/action-challenge-board.json | 98 ++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 docs/action-challenge-board.json diff --git a/docs/action-challenge-board.json b/docs/action-challenge-board.json new file mode 100644 index 00000000..6869e83f --- /dev/null +++ b/docs/action-challenge-board.json @@ -0,0 +1,98 @@ +{ + "protocol": "aml-action-boundary-challenge/1", + "vectors_file": "pilots/action-boundary/vectors.json", + "command_contract": { + "invocation": " ", + "stdout": "one JSON object with protocol aml-action-boundary-result/1, plan, receipt, tool_calls, executed_proposal", + "exit_code": "zero for a valid response, including denied or unknown outcomes", + "no_live_tools": true + }, + "cases": [ + { + "id": "approved-send", + "vector": "approved_route", + "host": { "approval": "matching", "tool": "return" }, + "expected": { "decision": "requires_approval", "reason": "exact_rule", "status": "dispatched", "receipt_reason": "host_dispatch_returned", "tool_calls": 1, "executed_vector": "approved_route" } + }, + { + "id": "reordered-keys", + "vector": "same_action_reordered_keys", + "host": { "approval": "matching", "tool": "return" }, + "expected": { "decision": "requires_approval", "reason": "exact_rule", "status": "dispatched", "receipt_reason": "host_dispatch_returned", "tool_calls": 1, "executed_vector": "same_action_reordered_keys" } + }, + { + "id": "changed-destination", + "vector": "changed_destination", + "host": { "approval": "matching", "tool": "return" }, + "expected": { "decision": "deny", "reason": "no_exact_rule", "status": "blocked", "receipt_reason": "no_exact_rule", "tool_calls": 0 } + }, + { + "id": "stale-body-approval", + "vector": "changed_body", + "host": { "approval": "fixed", "approval_digest_vector": "approved_route", "tool": "return" }, + "expected": { "decision": "requires_approval", "reason": "exact_rule", "status": "blocked", "receipt_reason": "approval_missing_or_mismatched", "tool_calls": 0 } + }, + { + "id": "allowed-read", + "vector": "read_route", + "host": { "approval": "missing", "tool": "return" }, + "expected": { "decision": "allow", "reason": "exact_rule", "status": "dispatched", "receipt_reason": "host_dispatch_returned", "tool_calls": 1, "executed_vector": "read_route" } + }, + { + "id": "undeclared-effect", + "vector": "undeclared_effect", + "host": { "approval": "matching", "tool": "return" }, + "expected": { "decision": "deny", "reason": "no_exact_rule", "status": "blocked", "receipt_reason": "no_exact_rule", "tool_calls": 0 } + }, + { + "id": "missing-approval", + "vector": "approved_route", + "host": { "approval": "missing", "tool": "return" }, + "expected": { "decision": "requires_approval", "reason": "exact_rule", "status": "blocked", "receipt_reason": "approval_unavailable", "tool_calls": 0 } + }, + { + "id": "approval-error", + "vector": "approved_route", + "host": { "approval": "throw", "tool": "return" }, + "expected": { "decision": "requires_approval", "reason": "exact_rule", "status": "blocked", "receipt_reason": "approval_error", "tool_calls": 0 } + }, + { + "id": "mutated-while-awaiting", + "vector": "approved_route", + "host": { "approval": "matching", "mutate_proposal_body": "MUTATED", "tool": "return" }, + "expected": { "decision": "requires_approval", "reason": "exact_rule", "status": "dispatched", "receipt_reason": "host_dispatch_returned", "tool_calls": 1, "executed_vector": "approved_route" } + }, + { + "id": "policy-revoked-while-awaiting", + "vector": "approved_route", + "host": { "approval": "matching", "remove_policy_rule": true, "tool": "return" }, + "expected": { "decision": "requires_approval", "reason": "exact_rule", "status": "blocked", "receipt_reason": "policy_changed", "tool_calls": 0 } + }, + { + "id": "dispatch-uncertain", + "vector": "approved_route", + "host": { "approval": "matching", "tool": "throw" }, + "expected": { "decision": "requires_approval", "reason": "exact_rule", "status": "unknown", "receipt_reason": "host_dispatch_error", "tool_calls": 1, "executed_vector": "approved_route" } + }, + { + "id": "ambiguous-policy", + "vector": "approved_route", + "policy_variant": "duplicate_matching_rule", + "host": { "approval": "matching", "tool": "return" }, + "expected": { "decision": "deny", "reason": "ambiguous_policy", "status": "blocked", "receipt_reason": "ambiguous_policy", "tool_calls": 0, "null_digest": true } + }, + { + "id": "malformed-proposal", + "vector": "approved_route", + "proposal_variant": "extra_top_level_field", + "host": { "approval": "matching", "tool": "return" }, + "expected": { "decision": "deny", "reason": "invalid_proposal", "status": "blocked", "receipt_reason": "invalid_proposal", "tool_calls": 0, "null_digest": true } + } + ], + "independence": { + "outside_implementation_required_for_external_witness_credit": true, + "must_not_import_or_wrap_the_aml_core_reference": true, + "pass_fail_mixed_reports_welcome": true + }, + "claim_boundary": "A passing project-defined black-box run is compatibility evidence for these cases, not production authorization, human consent, independent adoption, certification, or a ratified standard." +} From a98a567a9fdfbb94b6e7b1636629006f5617800c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Jacob=20Read=20IV=20=E2=80=94=20Creator=20of=20?= =?UTF-8?q?=C4=80ML=E2=84=A2?= Date: Sat, 10 Oct 2026 21:09:48 -0700 Subject: [PATCH 3/6] Add visual action challenge board: test/action-challenge-board.test.js --- test/action-challenge-board.test.js | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 test/action-challenge-board.test.js diff --git a/test/action-challenge-board.test.js b/test/action-challenge-board.test.js new file mode 100644 index 00000000..faed2a41 --- /dev/null +++ b/test/action-challenge-board.test.js @@ -0,0 +1,16 @@ +import assert from "node:assert/strict"; +import { readFileSync } from "node:fs"; +import test from "node:test"; + +test("the published visual board carries the exact challenge contract bytes", () => { + const manifest = readFileSync(new URL("../conformance/action-boundary-challenge.json", import.meta.url)); + const board = readFileSync(new URL("../docs/action-challenge-board.json", import.meta.url)); + assert.deepEqual(board, manifest, "Update the board copy whenever the canonical contract changes"); + + const challenge = JSON.parse(board); + assert.equal(challenge.protocol, "aml-action-boundary-challenge/1"); + assert.equal(challenge.cases.length, 13); + assert.equal(new Set(challenge.cases.map(row => row.id)).size, 13); + assert.ok(challenge.cases.every(row => ["blocked", "dispatched", "unknown"].includes(row.expected.status))); + assert.equal(challenge.command_contract.no_live_tools, true); +}); From d39f77d82fd16531511b88b9424b3a073825faab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Jacob=20Read=20IV=20=E2=80=94=20Creator=20of=20?= =?UTF-8?q?=C4=80ML=E2=84=A2?= Date: Sat, 10 Oct 2026 21:09:54 -0700 Subject: [PATCH 4/6] Link visual challenge from docs/index.html --- docs/index.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/index.html b/docs/index.html index 75a0754a..a2d74f8a 100644 --- a/docs/index.html +++ b/docs/index.html @@ -11,7 +11,7 @@ *{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;color:var(--ink);background:radial-gradient(circle at 10% 0,rgba(54,104,255,.22),transparent 34rem),radial-gradient(circle at 90% 12%,rgba(0,236,255,.13),transparent 30rem),var(--bg);font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif} a{color:inherit}.shell{width:min(1180px,calc(100% - 32px));margin:auto}.nav{display:flex;align-items:center;justify-content:space-between;padding:24px 0}.brand{font-weight:900;letter-spacing:.14em}.navlinks{display:flex;gap:10px;flex-wrap:wrap}.button,.ghost{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:11px 16px;text-decoration:none;font-weight:850;border:1px solid var(--line)}.button{background:var(--cyan);color:#041018}.ghost{background:rgba(255,255,255,.04)} .hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr);align-items:center;gap:clamp(24px,5vw,68px);padding:64px 0 42px}.eyebrow{color:var(--cyan);font-size:.78rem;font-weight:900;letter-spacing:.18em}.hero h1{margin:18px 0;font-size:clamp(3.3rem,6.3vw,6rem);line-height:.96;letter-spacing:-.06em}.gradient{background:linear-gradient(90deg,var(--cyan),#a994ff,var(--gold));background-clip:text;color:transparent}.lede{max-width:630px;margin:24px 0;color:#c7d0df;font-size:clamp(1.05rem,2vw,1.28rem)}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.equation{display:inline-block;margin-top:28px;padding:12px 15px;border:1px solid rgba(125,249,255,.34);border-radius:12px;background:rgba(0,0,0,.3);color:var(--cyan);font:13px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.hero-note{max-width:620px;color:var(--muted);font-size:.82rem} - .proof-console{border:1px solid rgba(125,249,255,.3);border-radius:24px;background:linear-gradient(150deg,rgba(21,40,65,.95),rgba(8,14,29,.98));box-shadow:0 30px 90px rgba(0,0,0,.34),0 0 70px rgba(0,225,240,.06);overflow:hidden}.console-top{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border-bottom:1px solid var(--line);color:#a6c3d2;font:700 11px ui-monospace,monospace;letter-spacing:.13em}.console-dots{display:flex;gap:6px}.console-dots i{width:7px;height:7px;border-radius:50%;background:#557989}.console-dots i:first-child{background:var(--cyan)}.console-body{padding:23px}.console-label{margin:0 0 13px;color:#8da7bc;font:700 11px ui-monospace,monospace;letter-spacing:.14em}.console-values{display:grid;grid-template-columns:1fr 1fr;gap:10px}.console-value{padding:14px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.035)}.console-value span{display:block;color:var(--muted);font-size:.77rem}.console-value b{display:block;margin-top:3px;font:700 1.65rem ui-monospace,monospace}.console-rule{margin:16px 0;color:#a9c8ce;font:12px ui-monospace,monospace}.verdict{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px;border:1px solid rgba(255,102,136,.43);border-radius:14px;background:rgba(255,102,136,.1)}.verdict span{color:#c4d0de;font-size:.78rem}.verdict strong{color:#ff8aa0;font:900 clamp(1.3rem,2.5vw,2rem) ui-monospace,monospace;letter-spacing:.03em}.verdict.allow{border-color:rgba(156,255,176,.42);background:rgba(156,255,176,.09)}.verdict.allow strong{color:var(--green)}.case-buttons{display:flex;gap:9px;margin-top:15px}.case-buttons button{flex:1;padding:10px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.04);color:var(--ink);font:700 .82rem ui-sans-serif,system-ui;cursor:pointer}.case-buttons button[aria-pressed=true]{border-color:var(--cyan);background:rgba(125,249,255,.12);color:var(--cyan)}.console-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:17px;color:var(--muted);font-size:.75rem}.console-foot a{color:var(--cyan);font-weight:800;text-decoration:none}.console-foot a:hover{text-decoration:underline}.paths{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:10px 0 38px}.path{display:block;padding:19px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.035);text-decoration:none}.path:hover,.path:focus-visible{border-color:var(--cyan);background:rgba(125,249,255,.075)}.path span{display:block;color:var(--cyan);font:800 .72rem ui-monospace,monospace;letter-spacing:.13em}.path b{display:block;margin:9px 0 3px;font-size:1.08rem}.path small{color:var(--muted);font-size:.83rem}.button:focus-visible,.ghost:focus-visible,.case-buttons button:focus-visible{outline:3px solid var(--gold);outline-offset:3px} + .proof-console{border:1px solid rgba(125,249,255,.3);border-radius:24px;background:linear-gradient(150deg,rgba(21,40,65,.95),rgba(8,14,29,.98));box-shadow:0 30px 90px rgba(0,0,0,.34),0 0 70px rgba(0,225,240,.06);overflow:hidden}.console-top{display:flex;align-items:center;justify-content:space-between;padding:17px 20px;border-bottom:1px solid var(--line);color:#a6c3d2;font:700 11px ui-monospace,monospace;letter-spacing:.13em}.console-dots{display:flex;gap:6px}.console-dots i{width:7px;height:7px;border-radius:50%;background:#557989}.console-dots i:first-child{background:var(--cyan)}.console-body{padding:23px}.console-label{margin:0 0 13px;color:#8da7bc;font:700 11px ui-monospace,monospace;letter-spacing:.14em}.console-values{display:grid;grid-template-columns:1fr 1fr;gap:10px}.console-value{padding:14px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.035)}.console-value span{display:block;color:var(--muted);font-size:.77rem}.console-value b{display:block;margin-top:3px;font:700 1.65rem ui-monospace,monospace}.console-rule{margin:16px 0;color:#a9c8ce;font:12px ui-monospace,monospace}.verdict{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px;border:1px solid rgba(255,102,136,.43);border-radius:14px;background:rgba(255,102,136,.1)}.verdict span{color:#c4d0de;font-size:.78rem}.verdict strong{color:#ff8aa0;font:900 clamp(1.3rem,2.5vw,2rem) ui-monospace,monospace;letter-spacing:.03em}.verdict.allow{border-color:rgba(156,255,176,.42);background:rgba(156,255,176,.09)}.verdict.allow strong{color:var(--green)}.case-buttons{display:flex;gap:9px;margin-top:15px}.case-buttons button{flex:1;padding:10px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.04);color:var(--ink);font:700 .82rem ui-sans-serif,system-ui;cursor:pointer}.case-buttons button[aria-pressed=true]{border-color:var(--cyan);background:rgba(125,249,255,.12);color:var(--cyan)}.console-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:17px;color:var(--muted);font-size:.75rem}.console-foot a{color:var(--cyan);font-weight:800;text-decoration:none}.console-foot a:hover{text-decoration:underline}.paths{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:10px 0 38px}.path{display:block;padding:19px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.035);text-decoration:none}.path:hover,.path:focus-visible{border-color:var(--cyan);background:rgba(125,249,255,.075)}.path span{display:block;color:var(--cyan);font:800 .72rem ui-monospace,monospace;letter-spacing:.13em}.path b{display:block;margin:9px 0 3px;font-size:1.08rem}.path small{color:var(--muted);font-size:.83rem}.button:focus-visible,.ghost:focus-visible,.case-buttons button:focus-visible{outline:3px solid var(--gold);outline-offset:3px} .section{padding:34px 0}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:18px}.section h2{margin:0;font-size:clamp(1.75rem,4vw,3rem);letter-spacing:-.04em}.section-head p{max-width:600px;margin:0;color:var(--muted)} .compare{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{border:1px solid var(--line);border-radius:26px;background:var(--panel);box-shadow:0 18px 80px rgba(0,0,0,.2);backdrop-filter:blur(18px);overflow:hidden}.panel-head{padding:22px;border-bottom:1px solid var(--line)}.panel-head h3{margin:0 0 5px}.panel-head p{margin:0;color:var(--muted)}.stack{display:grid;gap:12px;padding:18px}.element{position:relative;padding:17px;border:1px solid var(--line);border-radius:19px;background:rgba(255,255,255,.045);transition:.35s ease}.element strong{display:block;margin-bottom:2px}.small{font-size:.88rem;color:var(--muted)}.status{display:inline-block;margin-top:12px;border-radius:999px;padding:5px 9px;font-size:.72rem;font-weight:950;letter-spacing:.08em}.traditional .status{background:rgba(255,255,255,.1)}.allowed{border-color:rgba(156,255,176,.45);box-shadow:inset 3px 0 var(--green)}.allowed .status{background:rgba(156,255,176,.13);color:var(--green)}.degraded{opacity:.7;border-style:dashed;border-color:rgba(242,206,114,.55)}.degraded .status{background:rgba(242,206,114,.13);color:var(--gold)}.suppressed{opacity:.38;filter:saturate(.35);border-color:rgba(255,102,136,.55)}.suppressed .status{background:rgba(255,102,136,.14);color:var(--red)} .lab{display:grid;grid-template-columns:.9fr 1.1fr;gap:18px}.controls{padding:22px}.control{padding:16px 0;border-bottom:1px solid var(--line)}.control:last-child{border:0}.control-top{display:flex;justify-content:space-between;gap:10px}.value{color:var(--cyan);font-family:ui-monospace,monospace}.range-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;margin-top:10px}input[type=range]{width:100%;accent-color:var(--cyan)}.cost{font-size:.75rem;color:var(--muted)}pre{margin:0;padding:22px;min-height:100%;overflow:auto;white-space:pre-wrap;color:#dffcff;background:rgba(0,0,0,.28);font:12px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.principle{padding:22px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.035)}.principle b{color:var(--cyan)}.principle p{margin:8px 0 0;color:var(--muted)} @@ -55,6 +55,7 @@

From intent
to evidence.

01 / TRYReproduce a decision ↗Change one input; compare SUPPRESS and ALLOW. 02 / VERIFYRun the enterprise pilot ↗Replay receipts and test a deliberate mutation. 03 / INTEGRATEStart from a clean package ↗Use the consumer rehearsal and inspect the release boundary. + 04 / CHALLENGETest an agent boundary ↗Inspect 13 published cases; bring an outside implementation.
From db085734c446cbc3656b38817157bbbb3cac54c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Jacob=20Read=20IV=20=E2=80=94=20Creator=20of=20?= =?UTF-8?q?=C4=80ML=E2=84=A2?= Date: Sat, 10 Oct 2026 21:09:55 -0700 Subject: [PATCH 5/6] Link visual challenge from docs/action-lab.html --- docs/action-lab.html | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/action-lab.html b/docs/action-lab.html index eb292c82..207a3793 100644 --- a/docs/action-lab.html +++ b/docs/action-lab.html @@ -16,7 +16,8 @@ .grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}.card{border:1px solid var(--line);background:linear-gradient(145deg,#17233aee,#0b1425ee);border-radius:18px;padding:22px;min-width:0;box-shadow:0 20px 55px #0004}.card h2{font-size:1.3rem;margin:0 0 6px}.card p{margin:0 0 18px;color:var(--muted);font-size:.91rem}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:block;font-weight:750;font-size:.8rem;color:#d5e4ee}.field.wide{grid-column:1/-1}input,textarea,select{display:block;margin-top:5px;width:100%;padding:10px 11px;border:1px solid #52677f;border-radius:9px;background:#070e1b;color:var(--ink)}textarea{resize:vertical;min-height:100px;font:13px/1.45 ui-monospace,monospace}.helper{color:var(--muted);font-size:.78rem;margin-top:10px}.policy{margin-top:16px;border-top:1px solid var(--line);padding-top:16px}.policy summary{cursor:pointer;color:var(--cyan);font-weight:750} .badge{display:inline-block;padding:5px 10px;border-radius:99px;background:#435169;color:white;font:800 .78rem ui-monospace,monospace;letter-spacing:.04em}.badge.deny,.badge.blocked{background:#7a303d;color:#ffe4e5}.badge.requires_approval,.badge.unknown{background:#655124;color:#fff0c0}.badge.allow,.badge.would_dispatch{background:#265a43;color:#dbffe8}.digest{overflow-wrap:anywhere;font:13px/1.6 ui-monospace,monospace;color:var(--cyan);padding:13px;border:1px solid var(--line);background:#07121e;border-radius:9px}.label{font-weight:850;font-size:.78rem;color:var(--muted);letter-spacing:.08em;margin:17px 0 5px}.actions{display:flex;gap:9px;flex-wrap:wrap;margin:17px 0 6px}.status{min-height:24px;color:var(--gold);font-size:.86rem}pre{overflow:auto;max-height:430px;white-space:pre-wrap;overflow-wrap:anywhere;padding:14px;background:#07121e;border:1px solid var(--line);border-radius:10px;color:#d7eaf6;font:12px/1.55 ui-monospace,monospace}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 30px}.step{border:1px solid var(--line);border-radius:13px;padding:17px;background:#10192a}.step b{color:var(--gold)}.step p{color:var(--muted);font-size:.86rem;margin:6px 0 0}.foot{padding:30px 0 55px;color:var(--muted);font-size:.84rem;border-top:1px solid var(--line)} .path-visual{border:1px solid #3a6376;border-radius:20px;padding:20px;margin:4px 0 28px;background:radial-gradient(circle at 0 0,#15465288,transparent 45%),linear-gradient(130deg,#122137,#0b1729);box-shadow:0 22px 65px #0005}.path-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 0 15px}.path-heading strong{font-size:.79rem;letter-spacing:.16em;color:var(--cyan)}.path-heading span{font-size:.74rem;color:var(--muted)}.path-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.path-card{min-width:0;position:relative;border:1px solid #40546b;border-radius:14px;padding:16px 15px 18px;background:#0b1527;box-shadow:inset 0 3px 0 #74dce6}.path-card:not(:last-child)::after{content:"→";position:absolute;z-index:2;right:-21px;top:42%;width:26px;text-align:center;color:var(--cyan);font-size:23px;font-weight:900;text-shadow:0 0 8px #07121e;background:#0d1b2c;border-radius:99px}.path-card[data-tone=blocked]{border-color:#844555;box-shadow:inset 0 3px 0 var(--red)}.path-card[data-tone=blocked] .path-value{color:var(--red)}.path-card[data-tone=allowed]{border-color:#3c8065;box-shadow:inset 0 3px 0 var(--green)}.path-card[data-tone=allowed] .path-value{color:var(--green)}.path-card[data-tone=awaiting]{border-color:#82693e;box-shadow:inset 0 3px 0 var(--gold)}.path-card[data-tone=awaiting] .path-value{color:var(--gold)}.path-card[data-tone=muted]{box-shadow:inset 0 3px 0 #5b7085}.path-index{display:block;color:#a0bdcd;font:800 .7rem ui-monospace,monospace;letter-spacing:.11em}.path-value{display:block;margin:15px 0 7px;font:850 clamp(1.02rem,1.9vw,1.45rem)/1.13 system-ui,sans-serif;letter-spacing:-.02em;overflow-wrap:anywhere}.path-detail{display:block;color:#b8c8da;font-size:.79rem;line-height:1.4;overflow-wrap:anywhere}.path-note{margin:15px 2px 0;color:#c2d1df;font-size:.79rem} - @media(max-width:800px){.grid,.steps{grid-template-columns:1fr}.path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.path-card:nth-child(2)::after{display:none}.nav{align-items:flex-start;flex-direction:column}.nav a{margin:0 17px 0 0}}@media(max-width:480px){.fields,.path-grid{grid-template-columns:1fr}.path-card::after{display:none}.path-heading{align-items:flex-start;flex-direction:column}.card{padding:17px}header{padding-top:36px}} + .challenge-next{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-8px 0 28px;padding:16px 20px;border:1px solid #6b6149;border-radius:14px;background:#f5d27a13;text-decoration:none}.challenge-next span{color:#d6dce4;font-size:.87rem}.challenge-next b{color:var(--gold);font-size:.91rem}.challenge-next:hover{border-color:var(--gold)} + @media(max-width:800px){.grid,.steps{grid-template-columns:1fr}.path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.path-card:nth-child(2)::after{display:none}.nav{align-items:flex-start;flex-direction:column}.nav a{margin:0 17px 0 0}}@media(max-width:480px){.fields,.path-grid{grid-template-columns:1fr}.path-card::after{display:none}.path-heading,.challenge-next{align-items:flex-start;flex-direction:column}.card{padding:17px}header{padding-top:36px}} @@ -44,6 +45,7 @@

What exactly did the agent ask to do?

This diagram shows a project-authored browser rehearsal. A green simulated path is not tool execution, delivery, or human consent.

+ Can an outside implementation make the same decision?Explore the 13-case challenge ↗

01 / Proposed action

From 220119615b5990852f13919679b04ad49d9585b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Jacob=20Read=20IV=20=E2=80=94=20Creator=20of=20?= =?UTF-8?q?=C4=80ML=E2=84=A2?= Date: Sat, 10 Oct 2026 21:10:03 -0700 Subject: [PATCH 6/6] Surface visual outside-implementation challenge in README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 52d0b5c6..722b7d23 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ **Explore the interface:** [Live lab](https://aruintelligence.github.io/aml-core/) · [View Meaning™ inspector](https://aruintelligence.github.io/aml-core/view-meaning.html) · [API contract](protocol/aml-http.openapi.yaml) -**Explore the next boundary:** [Try the Action Boundary Lab](https://aruintelligence.github.io/aml-core/action-lab.html?view=action-path-1) — change an agent's intended tool call and see an exact policy decision, digest, stale simulated approval, and uncertain outcome. [Run the 13-case outside implementation challenge](publications/ACTION_BOUNDARY_CHALLENGE.md), or [read the pilot](pilots/action-boundary/README.md) and its [six published vectors](pilots/action-boundary/vectors.json). The browser rehearsal and repository self-test are project-authored, with no live tool access. +**Explore the next boundary:** [Try the Action Boundary Lab](https://aruintelligence.github.io/aml-core/action-lab.html?view=action-path-1) — change an agent's intended tool call and see an exact policy decision, digest, stale simulated approval, and uncertain outcome. [Explore the visual 13-case challenge](https://aruintelligence.github.io/aml-core/action-challenge.html), [read its adapter contract](publications/ACTION_BOUNDARY_CHALLENGE.md), or [read the pilot](pilots/action-boundary/README.md) and its [six published vectors](pilots/action-boundary/vectors.json). The browser rehearsal and repository self-test are project-authored, with no live tool access. [![Illustrated local action boundary: an agent proposes sending to an outside destination; the host policy blocks the call before dispatch.](docs/action-boundary-story.svg)](https://aruintelligence.github.io/aml-core/action-lab.html?view=action-path-1)