Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
12500b0
fix: verify Cloudflare trace receipts
creatornader Jun 6, 2026
3211c1d
fix: polish Cloudflare approval trace demo
creatornader Jun 7, 2026
26bfeeb
fix: align Cloudflare trace demo with mockup
creatornader Jun 7, 2026
add659c
fix: polish Cloudflare trace demo layout
creatornader Jun 7, 2026
b3071d4
fix: keep Cloudflare trace menu above panels
creatornader Jun 7, 2026
6025912
fix: repair Cloudflare trace demo state controls
creatornader Jun 7, 2026
aa6e512
fix: separate Cloudflare request changes flow
creatornader Jun 7, 2026
eab54e9
fix: wire Cloudflare run mode controls
creatornader Jun 7, 2026
f0fc286
fix: polish Cloudflare trace timeline
creatornader Jun 7, 2026
ed212dd
fix: align Cloudflare trace action controls
creatornader Jun 7, 2026
821005e
fix: align Cloudflare trace rail geometry
creatornader Jun 7, 2026
996077f
fix: tune Cloudflare trace review badge
creatornader Jun 7, 2026
b4eb1af
fix: center Cloudflare trace action controls
creatornader Jun 7, 2026
8614190
fix: align Cloudflare trace diff stack
creatornader Jun 7, 2026
9d1551c
fix: align Cloudflare trace controls
creatornader Jun 7, 2026
6838d31
fix: keep Cloudflare rail badge contained
creatornader Jun 7, 2026
63b7ce4
fix: align Cloudflare trace review controls
creatornader Jun 7, 2026
63331a0
fix: tune Cloudflare trace visual rhythm
creatornader Jun 7, 2026
3015840
fix: align Cloudflare trace button icons
creatornader Jun 7, 2026
b43d492
fix: center Cloudflare trace action icons
creatornader Jun 7, 2026
3078108
fix: fit Cloudflare trace risk copy
creatornader Jun 7, 2026
ba1a438
fix: align Cloudflare trace dropdown and review buttons
creatornader Jun 7, 2026
fad3738
fix: tune Cloudflare trace left panel typography
creatornader Jun 7, 2026
24ce56d
fix: center Cloudflare trace review buttons
creatornader Jun 7, 2026
a5f7350
fix: style Cloudflare trace receipt JSON
creatornader Jun 7, 2026
8a6fa9a
fix: align Cloudflare trace action controls
creatornader Jun 7, 2026
bf58e25
fix: tune Cloudflare trace panel chrome
creatornader Jun 7, 2026
2d156cd
fix: align Cloudflare trace action controls
creatornader Jun 7, 2026
c6617f3
fix: refine Cloudflare verification result
creatornader Jun 7, 2026
6492edd
fix: polish Cloudflare trace control alignment
creatornader Jun 7, 2026
f66f787
fix: contain Cloudflare trace action row
creatornader Jun 7, 2026
fa3683a
fix: center Cloudflare trace controls
creatornader Jun 7, 2026
f085021
fix: space Cloudflare trace timeline
creatornader Jun 8, 2026
17901f0
fix: number Cloudflare timeline gates
creatornader Jun 8, 2026
177bb4e
fix: align Cloudflare timeline placeholders
creatornader Jun 8, 2026
84353d1
fix: align Cloudflare trace action buttons
creatornader Jun 8, 2026
003638b
fix: refine Cloudflare trace halt marker
creatornader Jun 8, 2026
863ac54
fix: fit Cloudflare receipt viewport
creatornader Jun 8, 2026
7f95f6e
fix: match Cloudflare progress copy
creatornader Jun 8, 2026
03299b2
fix: tighten Cloudflare receipt toolbar
creatornader Jun 8, 2026
00dcb8b
fix: size Cloudflare trace header mark
creatornader Jun 8, 2026
2934758
fix: align Cloudflare trace signer icons
creatornader Jun 8, 2026
128d4a6
fix: center Cloudflare trace action buttons
creatornader Jun 8, 2026
09a6d0b
fix: clarify Cloudflare review outcomes
creatornader Jun 8, 2026
daaac38
fix: add Cloudflare trace diff copy control
creatornader Jun 8, 2026
2cc12e8
fix: follow Cloudflare review results
creatornader Jun 8, 2026
f96b983
fix: align Cloudflare review actions
creatornader Jun 8, 2026
c7e2b93
fix: fit Cloudflare trace proof status
creatornader Jun 8, 2026
93b1bd3
fix: align Cloudflare trace controls
creatornader Jun 8, 2026
9b67ab2
fix: match Cloudflare diff stack rhythm
creatornader Jun 8, 2026
b1674cb
fix: match Cloudflare action button rhythm
creatornader Jun 8, 2026
ba22cb5
fix: correct Cloudflare trace logo and cues
creatornader Jun 8, 2026
fffa575
fix: clarify Cloudflare trace controls
creatornader Jun 8, 2026
72fd853
fix: render Cloudflare review state atomically
creatornader Jun 8, 2026
a17b85f
fix: distinguish Cloudflare timeline selection
creatornader Jun 8, 2026
3d18474
fix: combine Cloudflare timeline row states
creatornader Jun 8, 2026
df3a377
fix: center Cloudflare review controls
creatornader Jun 8, 2026
dc07e24
fix: separate Cloudflare timeline rail
creatornader Jun 8, 2026
5f69e24
fix: clarify Cloudflare signer records
creatornader Jun 8, 2026
6051713
fix: clarify Cloudflare review outcomes
creatornader Jun 8, 2026
47c0f97
fix: complete Cloudflare request-change loop
creatornader Jun 9, 2026
971061f
fix: align Cloudflare trace status pills
creatornader Jun 9, 2026
a232eeb
fix: label Cloudflare trace colo
creatornader Jun 9, 2026
9a314f4
chore: merge main into Cloudflare trace branch
creatornader Jun 9, 2026
9d5b809
fix: align Cloudflare proof checks
creatornader Jun 9, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -233,6 +233,7 @@ async function verifyTrace(
const push = (name: string, ok: boolean, detail?: string) => checks.push({ name, ok, detail })
const byLabel = new Map(trace.records.map((record) => [record.label, record]))
const trigger = byLabel.get('trigger')
const triage = byLabel.get('triage')
const proposal = byLabel.get('proposal')
const approval = byLabel.get('approval') ?? byLabel.get('rejection')
const execution = byLabel.get('execution')
Expand All @@ -254,6 +255,7 @@ async function verifyTrace(
}

push(`${trace.run_id}: trigger exists`, Boolean(trigger))
push(`${trace.run_id}: triage exists`, Boolean(triage))
push(`${trace.run_id}: proposal exists`, Boolean(proposal))
push(`${trace.run_id}: decision exists`, Boolean(approval))
push(
Expand All @@ -267,15 +269,27 @@ async function verifyTrace(
.every((node) => node.verification_state === 'signature_valid'),
)
push(
`${trace.run_id}: proposal points at trigger`,
Boolean(trigger && proposal && refsEqual(proposal.record.informed_by, [trigger.record_hash])),
`${trace.run_id}: triage points at trigger`,
Boolean(trigger && triage && refsEqual(triage.record.informed_by, [trigger.record_hash])),
)
push(
`${trace.run_id}: graph trigger edge`,
`${trace.run_id}: graph trigger-to-triage edge`,
Boolean(
trigger &&
triage &&
hasGraphEdge(graph, 'INFORMED_BY', triage.record_hash, trigger.record_hash),
),
)
push(
`${trace.run_id}: proposal points at triage`,
Boolean(triage && proposal && refsEqual(proposal.record.informed_by, [triage.record_hash])),
)
push(
`${trace.run_id}: graph triage-to-proposal edge`,
Boolean(
triage &&
proposal &&
hasGraphEdge(graph, 'INFORMED_BY', proposal.record_hash, trigger.record_hash),
hasGraphEdge(graph, 'INFORMED_BY', proposal.record_hash, triage.record_hash),
),
)
push(
Expand Down Expand Up @@ -403,9 +417,10 @@ async function main() {
page.includes('data-testid="approval-trace-app"') &&
page.includes('Cloudflare Agent Trace') &&
page.includes('Human review halted') &&
page.includes('Trigger and progress') &&
page.includes('Trigger & progress') &&
page.includes('write_file') &&
page.includes('Signed records will appear here as the workflow runs.') &&
page.includes('Record timeline') &&
page.includes('Receipt inspector') &&
page.includes('Approve and resume'),
},
]
Expand Down
Loading
Loading