Repository navigation
feat: public forms and the incoming webhook are served by core (dune#78) - #10
Merged
Merged
Conversation
Removes public-api, email and webhook from the plugin. The submissions UI reads the store from BootstrapResult.submissions, the incoming webhook's audit entries are written from core's onSystemAction hook, the data dir follows system.data_dir, and dev/apply blocks system.webhooks (the new home of incoming-webhook tokens). Needs a core that provides BootstrapResult.submissions; the dependency range is set when that core is published. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
… apps (dune#78) Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…form routes) Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
zumbrunn
marked this pull request as ready for review
November 3, 2026 13:23
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Draft: needs a published
@dune/corethat has duneorg/dune#79 and duneorg/dune#80. The@dune/corerange indeno.jsonis still0.35and is set when that core ships (expected^0.35.2); CI cannot pass until then, because the JSR core it resolves today has noBootstrapResult.submissionsand noregisterFormRoutes.Part of duneorg/dune#78: public features must not depend on an admin plugin.
Forms, the legacy contact route and the incoming webhook are now served by
@dune/core. This plugin keeps only the submissions management UI.What changes
public-api.ts,email.tsandwebhook.ts; the plugin no longer registers/api/forms/:name,/api/contactor/api/webhook/incoming, nor sends the submission email/webhook.submissions.tsre-exportscreateSubmissionManagerand the submission types from@dune/core/forms, so existing importers keep working. The UI reads the same files throughbootstrap.submissions.BootstrapResult.submissionsthe plugin stops at startup with a message that says what to upgrade (or to stay on 3.1).system.rebuild,system.cache_purge) are written from core's newonSystemActionhook.system.data_dir, falling back to the deprecatedadmin.dataDir, the same resolution core uses for the submissions it stores.mountDuneAdmin()calls core'sregisterFormRoutes()so headless apps (bootstrap +mountDuneAdmin, nocreateDuneApp) still get the public routes; it is a no-op when already registered.dev/applyblocks writes toadmin.incoming_webhooksbecause those are secret tokens. The tokens now live atsystem.webhooks, so that is blocked too (with a test).Tests
239 pass (locally, against the workspace core). Lint shows the same 6 pre-existing problems as
main.Release
Core first (#79 is merged, #80 open), then the 24 h dependency-age window, then set the core range here and publish. Version is not bumped in this PR; this is a behaviour change for anyone relying on this plugin to serve the public form routes with an older core, so decide the bump at release.
Not touched: the now-unused
nodemailerimport andpublicServerErrorinhttp.ts.🤖 Generated with Claude Code