Repository navigation
docs: design 002, database route operations - #683
Merged
ditadi merged 3 commits intoNov 6, 2026
Merged
Conversation
Contributor
🤖 AppKit PR bot🔬 Run evalsStart an eval for this PR from the evals-monitor app: Go to Evals Monitor → 📦 Try this PR's app templateScaffolds a new app from this PR's SDK build. Run it in any folder (requires the GitHub CLI — gh run download 41903371881 -R databricks/appkit -n appkit-template-0.90.0-pr.c0d140f-victor-ditadi-data-stack-database-route-blocks-00-design-683 -D appkit-pr-683 \
&& unzip -o "appkit-pr-683/appkit-template-0.90.0-pr.c0d140f-victor-ditadi-data-stack-database-route-blocks-00-design-683.zip" -d "appkit-pr-683" \
&& databricks apps init --template "appkit-pr-683"The template pins |
ditadi
force-pushed
the
victor-ditadi_data/stack/database-route-blocks-00-design
branch
2 times, most recently
from
October 22, 2026 11:05
0656f0d to
933d3aa
Compare
ditadi
force-pushed
the
victor-ditadi_data/stack/database-route-blocks-00-design
branch
from
October 22, 2026 14:00
933d3aa to
ef4dab1
Compare
ditadi
force-pushed
the
victor-ditadi_data/stack/database-route-blocks-00-design
branch
from
November 3, 2026 15:18
ef4dab1 to
6cd6d86
Compare
This was referenced Nov 3, 2026
ditadi
marked this pull request as ready for review
November 3, 2026 15:20
ditadi
requested review from
MarioCadenas,
calvarjorge and
fjakobs
and removed request for
calvarjorge
November 3, 2026 15:20
Signed-off-by: ditadi <victordperd@gmail.com>
Signed-off-by: ditadi <victordperd@gmail.com>
Design 002 no longer gives defineOperation an entity field or infers a response body from a table. An operation without an output schema answers with no body, every example declares its output, and the author experience states that the resource lookup receives the actor like every other callback. Co-authored-by: Isaac <no-reply@databricks.com> Signed-off-by: ditadi <victordperd@gmail.com>
ditadi
force-pushed
the
victor-ditadi_data/stack/database-route-blocks-00-design
branch
from
November 4, 2026 20:06
37af1f7 to
f25524b
Compare
MarioCadenas
approved these changes
Nov 6, 2026
ditadi
deleted the
victor-ditadi_data/stack/database-route-blocks-00-design
branch
November 6, 2026 10:48
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.
What changed, and why?
The original design described an earlier proposal that no longer matched the implemented database-operation stack. This updates
designs/002_DatabaseRouteOperations.mdto the current author experience and makes this existing design PR the first layer, before #687.database()discovers conventional routes;routes: falsedisables HTTP, and an explicit registry supports custom layouts. Standard builds include the compiled registry automatically.useDatabaseQuery("alerts.queue"),databaseApi.execute(name), andmutate()work without empty objects. Parameterized operations require their declared Zod input.undefinedanswers 204,nullon GET, PATCH, or PUT answers 404, and any other value answers 500 without being sent. An operation that answers data declares anoutputschema, which is also its public projection;.private()does not filter it.resourcelookup included, receives the verifiedactor.skipToken, mutation identity across name/session changes, automatic query refresh, and unknown write outcomes.Validation
Reviewed the design against the runtime, metadata validation, identity resolver, generator, registry loader, client, hooks, and current database guide. Markdown fences, source references, and whitespace checks pass.
Review feedback removed
entityand the output defaults and documented the actor in policy lookups. #688, #689, #690, and #692 each gained one commit for it, and #687 and #691 were rebased unchanged. At the stack tip,pnpm build,pnpm docs:build,pnpm -r typecheck,pnpm check, knip, 840 database and type-generator tests, the playground smoke test, and the source-less bundle check pass.Knip on the design layer's unchanged baseline reports the same findings as with the revised document:
packages/appkit/bin/appkit.jsand five unused development dependencies (esbuild,ora,zod,@types/react-dom,react-dom). The documentation commit bypasses that existing hook failure; no dependency or runtime change is included.The AML evaluation app remains local and ignored, and is excluded from every PR. Live Apps identity/proxy behavior was not exercised by this documentation update.
Stack
Bottom to top: #683 (design) → #687 → #688 → #689 → #690 → #691 → #692.
Base:
main. Next: #687, lifecycle/serializer removal. Design 001 and its migration chain remain separate: #677.