Skip to content

feat: audit page writes that no admin route announced - #25

Closed
zumbrunn wants to merge 1 commit into
feat/admin-own-accounts-onlyfrom
feat/audit-page-events
Closed

zumbrunn wants to merge 1 commit into
feat/admin-own-accounts-onlyfrom
feat/audit-page-events

Conversation

@zumbrunn

Copy link
Copy Markdown
Member

Part of duneorg/dune#127. Stacked on #24.

The inline-edit bar, a plugin or any other writer fires the page event with the person's name as actor. The admin now writes a page.create / page.update / page.delete audit entry for it (no IP or user agent: the event does not carry them; a write with no actor is logged as the system). Events the admin's own routes announce keep writing their own entry with IP and user agent; announcePageEvent marks the payload with a non-enumerable symbol so the listener skips it, and the mark never reaches a webhook body.

Not covered: onPageMove (there is no page.move audit type, and the admin's routes do not log moves either).

Tests: the listener (updates, create/delete, no-actor, no double entry, no audit trail), the full suite passes.

🤖 Generated with Claude Code

Inline edits and other writers fire the page event with the person as actor; the admin now logs
page.create/update/delete for them. Events its own routes announce are marked and skipped.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@zumbrunn
zumbrunn marked this pull request as ready for review November 10, 2026 16:33
zumbrunn added a commit that referenced this pull request Nov 10, 2026
…#26)

Lands the whole 4.0 stack as one change; the intermediate commits only type-check against the final contract.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@zumbrunn

Copy link
Copy Markdown
Member Author

Landed in 4.0.0 as part of #26 (one squash of the whole stack: its intermediate commits only type-check against the final contract). Verified against the published @dune/core 0.36.0 and @dune/testing 2.0.0.

@zumbrunn zumbrunn closed this Nov 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant