Skip to content

docs: committed .appkit/ type cache and warehouse-less deploys - #503

Merged
atilafassina merged 2 commits into
move-typegenfrom
move-typegen-docs
Jul 31, 2026
Merged

docs: committed .appkit/ type cache and warehouse-less deploys#503
atilafassina merged 2 commits into
move-typegenfrom
move-typegen-docs

Conversation

@atilafassina

Copy link
Copy Markdown
Contributor

What

Documentation for the typegen cache relocation in #502 (stacked on top of it; base = move-typegen). The code moves the type cache from node_modules/ to a committed .appkit/ directory and changes deploy semantics; the docs didn't reflect any of that.

Changes

  • development/type-generation.md — new Type cache section: the cache now lives in the committed .appkit/ dir (types-cache.json + serving-types-cache.json), must be checked into git (not gitignored), ephemeral state stays under node_modules/.databricks/appkit/, and serialization is deterministic. New Deploying without warehouse access subsection: the rollout ordering (produce + commit .appkit/ while the warehouse is reachable, then remove access) and the bootstrap-vs-drift failure messages. Updated the --wait section to describe hit-skips-warehouse / miss-attempts / unresolved-miss-fails-loud.
  • development/project-setup.md.appkit/ added to the canonical project layout as a committed artifact.
  • app-management.mdx — deploy-guide admonition that a warehouse-less deploy needs a committed .appkit/ covering every query, linking to the type-generation detail.

Verification

  • pnpm docs:build — ✅ both bundles compile, 230 docs processed, no broken internal links (the new cross-references resolve).
  • pnpm docs:check — ✅ 24 files, no fixes.

Stacking

Base is move-typegen (#502), so this PR's diff shows only the doc changes. Merge #502 first; this retargets to main automatically once #502 lands.

This pull request and its description were written by Isaac.

Reflect the typegen cache relocation in the docs:

- type-generation.md: add a "Type cache" section (cache now lives in the
  committed .appkit/ dir, not node_modules; what to commit; deterministic
  serialization) and a "Deploying without warehouse access" subsection
  covering the rollout ordering (seed + commit .appkit/ while the warehouse is
  reachable, then cut access) and the bootstrap-vs-drift failure messages.
  Update the --wait section to describe hit-skips-warehouse / miss-attempts /
  unresolved-miss-fails semantics.
- project-setup.md: add .appkit/ to the canonical layout as a committed
  artifact (do not gitignore).
- app-management.mdx: deploy-guide admonition that a warehouse-less deploy
  needs a committed .appkit/ covering every query.

Co-authored-by: Isaac
Signed-off-by: Atila Fassina <atila@fassina.eu>
@atilafassina
atilafassina marked this pull request as ready for review July 31, 2026 12:57
@atilafassina
atilafassina requested a review from a team as a code owner July 31, 2026 12:57
@atilafassina
atilafassina requested review from Copilot, ditadi and pkosiec and removed request for a team July 31, 2026 12:57

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates AppKit documentation to reflect the relocated, committed typegen cache under .appkit/ (from PR #502) and to document the “warehouse-less deploy” workflow enabled by that change.

Changes:

  • Documented the new committed .appkit/ type cache location (and what remains ephemeral under node_modules/.databricks/appkit/).
  • Added guidance for deploying/building in CI/CD without SQL warehouse access, including required rollout ordering and failure behavior.
  • Updated project layout and deploy docs to reference .appkit/ and link to the detailed typegen guidance.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
docs/docs/development/type-generation.md Adds a “Type cache” section and details blocking mode cache-hit/miss behavior plus warehouse-less deploy guidance.
docs/docs/development/project-setup.md Updates the canonical project layout to include committed .appkit/.
docs/docs/app-management.mdx Adds an admonition warning that warehouse-less deploys require a fully-populated committed .appkit/ cache.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +102 to +105
This imposes a rollout ordering: **produce and commit `.appkit/` while the warehouse is still reachable, then remove warehouse access.** A build that runs after warehouse access is gone with an uninitialized or incomplete cache fails loudly (never silently degrades to `unknown`), and the error message tells you which case you hit:

- **Uninitialized cache** (no `.appkit/` yet) — run `generate-types --wait` against a warehouse and commit `.appkit/`.
- **Drifted cache** (a query changed since the cache was built) — regenerate the affected query against a warehouse and commit the updated `.appkit/`.

@pkosiec pkosiec left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Align the warehouse-less deploy failure bullets with the strings the
build actually prints ('No committed type cache found' vs 'The committed
.appkit/ cache is missing or stale') so they are greppable in CI logs,
and broaden the drift case to cover added/missing queries, not just
changed ones.

Co-authored-by: Isaac
Signed-off-by: Atila Fassina <atila@fassina.eu>
@atilafassina
atilafassina merged commit 67f1aa7 into move-typegen Jul 31, 2026
@atilafassina
atilafassina deleted the move-typegen-docs branch July 31, 2026 14:39
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.

3 participants