Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
193 commits
Select commit Hold shift + click to select a range
bdfb2a2
feat(v2): scaffold the V2 information architecture (CIP-3325)
coderdan Jul 2, 2026
af92d2c
fix(v2): quote colon-bearing frontmatter descriptions; unshadow /refe…
coderdan Jul 2, 2026
a6a4274
feat(v2): serve the /docs landing inside the docs navigation; redirec…
coderdan Jul 2, 2026
5c34cef
docs(v2): note landing-page state in IA.md checklist
coderdan Jul 2, 2026
b604d4f
fix(v2): merge folder index pages into their nav rows
coderdan Jul 2, 2026
f5c9e81
fix(v2): no chevron on nav items without sub-pages
coderdan Jul 2, 2026
8514932
fix(v2): make all MDX links basePath-relative
coderdan Jul 2, 2026
d415a48
feat(v2): EQL v3 reference section (CIP-3326)
coderdan Jul 2, 2026
dd2a8d6
refactor(v2): restructure EQL reference Tailwind-style (CIP-3326)
coderdan Jul 2, 2026
9cecb45
refactor(v2): SEM specifiers, Tailwind-style variant enumeration, pay…
coderdan Jul 2, 2026
127f0a6
refactor(v2): split numbers/dates pages, Example headings, separate O…
coderdan Jul 2, 2026
123a544
docs(v2): track EQL 3.0.0 release-alignment gate in IA.md (CIP-3352)
coderdan Jul 2, 2026
896eae5
docs(v2): address Copilot review on EQL reference (PR #38)
coderdan Jul 2, 2026
d0ccd7e
docs(v2): address PR #37 review comments
coderdan Jul 2, 2026
5e5641c
Merge v2 review fixes (placeholder pages, non-permanent redirects)
coderdan Jul 2, 2026
19a132b
Merge pull request #38 from cipherstash/cip-3326-eql-v3-reference
coderdan Jul 2, 2026
4901b0f
docs(v2): add the two-axis content model to IA.md
coderdan Jul 5, 2026
299c1cb
docs(v2): reconcile structure with the two-axis IA
coderdan Jul 6, 2026
9bbdcfb
chore(v2): fix Biome lint errors so `bun run lint` passes clean
coderdan Jul 7, 2026
a900369
chore: ignore .serena/ (local MCP tooling state)
coderdan Jul 7, 2026
064c176
fix(eql-docs): strip Doxygen <tt> tags so a stray one can't break the…
coderdan Jul 8, 2026
fd4ddbb
Merge pull request #52 from cipherstash/fix/eql-docs-strip-tt-tag
coderdan Jul 8, 2026
ccca2e5
docs(v2): prototype — generate the CLI reference from `stash --help`
coderdan Jul 5, 2026
7371257
docs(v2): CLI generator tracks latest published stash + wire into pre…
coderdan Jul 5, 2026
22dd036
docs(v2): hybrid CLI reference — merge hand-authored supplements + ex…
coderdan Jul 5, 2026
6a7ac7b
docs(cli): generate the CLI reference from `stash manifest --json`
coderdan Jul 8, 2026
118259b
docs(v2): port KMS/HSM/Vault comparisons into the /compare IA section
coderdan Jul 5, 2026
b5bc0f5
docs(v2): port the FHE comparison to /compare, rewritten for EQL v3
coderdan Jul 5, 2026
a10e6b7
docs(v2): add nested EQL v2 reference for existing v2.2 deployments
coderdan Jul 5, 2026
6db2352
docs(v2): relocate comparisons under /concepts/compare per revised IA
coderdan Jul 6, 2026
40ee221
fix(cli-docs): escape MDX braces in manifest-derived prose
coderdan Jul 8, 2026
261b69c
docs(cli): address auth-page review feedback
coderdan Jul 8, 2026
7d1dcff
fix(cli-docs): harden manifest loading (Copilot review)
coderdan Jul 8, 2026
f736ffa
Merge pull request #45 from cipherstash/docs/v2-cli-generator
coderdan Jul 8, 2026
089645d
chore(cli-docs): drop the internal tracker ref from the generator header
coderdan Jul 8, 2026
83ae605
Merge pull request #53 from cipherstash/chore/cli-gen-cip3460
coderdan Jul 8, 2026
c9cc2ef
Merge pull request #44 from cipherstash/docs/v2-eql-v2-reference
coderdan Jul 8, 2026
1dd4b98
docs(v2): generate the EQL function catalog from the manifest + drift…
coderdan Jul 5, 2026
1f08e4f
docs(v2): render the EQL domain/variant matrix + extend the drift-lin…
coderdan Jul 5, 2026
200ee2e
docs(v2): switch the domain matrix to the catalog-driven shape
coderdan Jul 6, 2026
1e9f6f8
docs(v2): consume jsonb domains + extractor functions from the manifest
coderdan Jul 6, 2026
7e5f301
docs(eql): schema-aware drift-lint + sweep pages to the shipped surface
coderdan Jul 6, 2026
d5e1910
docs(eql): fix schema placeholders + add 'The three schemas' section
coderdan Jul 6, 2026
a0e9204
docs(eql): rename public.jsonb_query -> eql_v3.query_jsonb
coderdan Jul 8, 2026
79b8833
docs(eql): add an EQL-version banner linking to the v2 reference
coderdan Jul 8, 2026
88b819f
Merge pull request #46 from cipherstash/docs/v2-eql-manifest-consumer
coderdan Jul 8, 2026
78a4a22
docs(eql): install via `stash eql install` CLI
coderdan Jul 8, 2026
e19f7d0
docs(eql): document stash.config.ts
coderdan Jul 8, 2026
4c05054
Merge pull request #51 from cipherstash/eql-install-cli
coderdan Jul 8, 2026
212f894
docs(reference): port proxy, workspace, glossary, agent-skills
coderdan Jul 9, 2026
e2c33a9
docs(workspace): link to pricing instead of listing plan prices and l…
coderdan Jul 9, 2026
d9a5b6c
docs(workspace): drop per-plan subsections from billing
coderdan Jul 9, 2026
026a5a0
Merge pull request #55 from cipherstash/docs/v2-reference-mechanical-…
coderdan Jul 9, 2026
f3d4554
docs(solutions): port ai-and-rag, data-residency, provable-access, index
coderdan Jul 9, 2026
6d7268f
docs(solutions): address review, move to strategy-based identity API
coderdan Jul 9, 2026
619c122
docs(solutions): narrow the LockContext deprecation to identify()
coderdan Jul 9, 2026
9804cd6
docs(solutions): make the authStrategy dependency explicit in provabl…
coderdan Jul 9, 2026
b4883db
Merge pull request #56 from cipherstash/docs/v2-solutions-port
coderdan Jul 9, 2026
abc761d
docs(compare): update the aws-kms identity example to the strategy-ba…
coderdan Jul 9, 2026
9484ffb
chore: merge main into v2
coderdan Jul 9, 2026
e8e1542
chore(ci): gate the build on deprecated and non-existent API in docs
coderdan Jul 9, 2026
779f6aa
Merge pull request #61 from cipherstash/chore/deprecated-api-lint
coderdan Jul 9, 2026
0bf6fe5
docs(security): write the canonical architecture page
coderdan Jul 9, 2026
005d22c
docs(security): rename Architecture to Cryptography, label the index …
coderdan Jul 9, 2026
5cbb9ce
feat(mdx): render mermaid code fences as diagrams
coderdan Jul 9, 2026
cabc111
docs(solutions): convert the data-residency diagrams to mermaid
coderdan Jul 9, 2026
9cdfb8f
docs(security): correct the key exchange, the client key never leaves
coderdan Jul 9, 2026
d17c110
docs(security): show the key-ID request in the ZeroKMS diagram
coderdan Jul 9, 2026
f3575c6
chore: merge main into v2
coderdan Jul 9, 2026
802dae2
Merge pull request #64 from cipherstash/chore/merge-main-into-v2-2
coderdan Jul 9, 2026
353615c
Merge pull request #62 from cipherstash/docs/v2-security-architecture
coderdan Jul 9, 2026
c6ed577
docs(get-started): rewrite the quickstart on EQL v3
coderdan Jul 9, 2026
1b4f340
docs(get-started): tell the quickstart to install EQL v3 explicitly
coderdan Jul 9, 2026
4f13b93
docs(get-started): write the section overview, fix the landing page
coderdan Jul 9, 2026
c255d16
fix(eql): document the CLLW OPE ordering term, unblocking the build
coderdan Jul 9, 2026
60ce290
fix(eql): rename the remaining oc payload keys, and pin the EQL release
coderdan Jul 9, 2026
393dddc
Merge pull request #66 from cipherstash/fix/eql-ope-cllw-drift
coderdan Jul 9, 2026
217319f
Merge remote-tracking branch 'origin/v2' into docs/v2-quickstart
coderdan Jul 9, 2026
6fe86b1
docs(get-started): write what-is-cipherstash and choose-your-stack
coderdan Jul 9, 2026
7f7b38c
docs(get-started): restore the performance numbers, with 14x for AWS KMS
coderdan Jul 9, 2026
2f79af0
docs(get-started): frame leakage as a design choice, not a confession
coderdan Jul 9, 2026
2961856
docs(get-started): apply the choose-your-stack preview comments
coderdan Jul 9, 2026
bf32cef
Merge pull request #65 from cipherstash/docs/v2-quickstart
coderdan Jul 9, 2026
98e03ee
docs(eql): update the reference to the EQL 3.0.0 shapes
coderdan Jul 9, 2026
3935598
docs(eql): pin to the EQL 3.0.0 release
coderdan Jul 9, 2026
b9e5adc
Merge pull request #67 from cipherstash/docs/eql-3.0.0-shapes
coderdan Jul 14, 2026
249dfe2
docs(reference): add the benchmarks page (#54)
coderdan Jul 14, 2026
4321355
fix(generator): make the TypeDoc SDK reference build against Stack 1.0
coderdan Jul 14, 2026
56fd18b
docs(eql): generate per-type function tables as included partials
coderdan Jul 14, 2026
68eeb93
docs(eql): per-function cards for the EQL function reference
coderdan Jul 14, 2026
47a2cf7
docs(eql): drop per-card examples, add deep-link anchors, flatten cards
coderdan Jul 14, 2026
b1f5b16
docs(eql): keep examples in the function cards, drop the page Example…
coderdan Jul 14, 2026
f6a1265
docs(eql): make each function a heading so it appears in the page nav
coderdan Jul 15, 2026
f3af667
docs(eql): give the JSON page the per-function card treatment
coderdan Jul 15, 2026
36dcbed
docs(eql): add a shared plaintext document to the JSON functions section
coderdan Jul 15, 2026
e7a8793
Merge pull request #69 from cipherstash/docs/eql-function-partials
coderdan Jul 15, 2026
f2ec5c4
docs: brand the code syntax highlighting with a CipherStash theme
coderdan Jul 15, 2026
e18c502
docs: use Geist Sans for H2+ headings, keep Fira Code for H1
coderdan Jul 15, 2026
8e1f685
docs: relax H4-H6 heading tracking to -0.01em
coderdan Jul 15, 2026
9a2bf64
Merge pull request #70 from cipherstash/docs/code-theme
coderdan Jul 15, 2026
e9b0a02
docs: retune the code theme to match the marketing site
coderdan Jul 15, 2026
5d68d6c
Merge pull request #71 from cipherstash/docs/code-theme-tweaks
coderdan Jul 15, 2026
8d267e8
docs: document eql_v3.grouped_value and fix the GROUP BY / DISTINCT s…
coderdan Jul 27, 2026
2376fe9
docs: address review — restore heading, flag broken examples, drop ve…
coderdan Jul 27, 2026
cab3fc2
docs: pin EQL 3.0.3 and fix the fuzzy-match and encrypted-JSON surfaces
coderdan Jul 27, 2026
a1538d3
docs: escape manifest prose before it reaches MDX
coderdan Jul 27, 2026
e304ff1
docs: add an EQL pin resolver so patch bumps stop relying on memory
coderdan Jul 28, 2026
c6733cc
Merge pull request #75 from cipherstash/docs/auto-eql-pin
coderdan Jul 28, 2026
95e90e4
docs: resolve protect-ffi's real types so the Stack reference stops s…
coderdan Jul 28, 2026
e6bd6e6
Merge pull request #77 from cipherstash/docs/fix-typedoc-conditions
coderdan Jul 28, 2026
642a249
Merge remote-tracking branch 'origin/v2' into docs/eql-grouped-value
coderdan Jul 28, 2026
90916c4
docs: pin EQL 3.0.4 and drop the two manifest blind spots it fixed
coderdan Jul 28, 2026
5d279a8
chore: merge main into v2
coderdan Jul 28, 2026
13da74e
Merge pull request #74 from cipherstash/docs/eql-grouped-value
coderdan Jul 28, 2026
2d8ba27
Merge pull request #78 from cipherstash/chore/merge-main-into-v2
coderdan Jul 28, 2026
8107f7a
docs: generate the stack-supabase reference, and stop overstating the…
coderdan Jul 28, 2026
57dd44f
Merge pull request #80 from cipherstash/docs/api-validation
coderdan Jul 28, 2026
642cc94
fix(ci): validate links across both content trees, and check anchors
coderdan Jul 29, 2026
543f2a8
ci: run the link check on pull requests
coderdan Jul 29, 2026
904198d
style: mute body copy, and let the standfirst lead
coderdan Jul 29, 2026
33bec22
fix(ci): address review — line numbers, escaping links, path guards
coderdan Jul 29, 2026
30acb72
Merge pull request #81 from cipherstash/docs/validate-links-v2-tree
coderdan Jul 29, 2026
308f082
style(callout): un-mute callout body text, and double the padding
coderdan Jul 29, 2026
fc360ff
style(callout): keep Fumadocs' body colour, matching the sidebar
coderdan Jul 29, 2026
818db45
style(callout): sit callout body one step above the page copy
coderdan Jul 29, 2026
7675b52
style(callout): adjust padding for callout component
coderdan Jul 29, 2026
3be5d98
Merge pull request #82 from cipherstash/docs/text-colour-scheme
coderdan Jul 29, 2026
0361cf7
docs(v2): Supabase integration section + canonical encryptedSupabase …
coderdan Jul 2, 2026
3924f7c
docs(v2): restructure Supabase section into a 6-page journey
coderdan Jul 7, 2026
8354037
docs(v2): rename Supabase index page title to Overview
coderdan Jul 7, 2026
4574fa8
docs(supabase): rework "How it works" with corrected EQL type names
coderdan Jul 8, 2026
911458a
docs(supabase): address PR #39 review feedback
coderdan Jul 8, 2026
91fd786
docs(supabase): add reusable FAQ to the overview
coderdan Jul 8, 2026
45dedcd
docs(dynamodb): add reusable FAQ to the DynamoDB page
coderdan Jul 8, 2026
41a44df
docs(supabase): rework onto encryptedSupabaseV3 and the EQL 3.0.0 dom…
coderdan Jul 9, 2026
e360f28
docs(supabase): state the real cause of the broken substring contains
coderdan Jul 9, 2026
e807f89
docs(supabase): separate the encryptQuery gap from the PostgREST one
coderdan Jul 9, 2026
5a1f834
docs(supabase): point the contains defect at the real cause
coderdan Jul 9, 2026
bc3a4ec
docs(supabase): drop the issue link and tighten the contains callout
coderdan Jul 9, 2026
d2019d0
docs(supabase): drop the contains defect callout, fix nav and overvie…
coderdan Jul 9, 2026
7fd9400
docs(supabase): remove the outdated Dashboard screenshot
coderdan Jul 9, 2026
5b89257
docs(supabase): address the preview comments
coderdan Jul 9, 2026
f525095
docs(integrations): delete the Next.js page and strip its inbound links
coderdan Jul 9, 2026
8ef0f31
docs(integrations): write the Drizzle and Prisma pages, and the secti…
coderdan Jul 9, 2026
aeec96e
docs(integrations): rename Prisma to Prisma Next
coderdan Jul 9, 2026
a8a8ae1
docs: match the shipped Stack 1.0-rc.0 family and EQL 3.0 defaults
coderdan Jul 14, 2026
05ac216
docs(supabase): free-text search is matches(), not contains()
coderdan Jul 28, 2026
844290f
docs(supabase): free-text and encrypted-JSON queries need a different…
coderdan Jul 28, 2026
ace062d
docs(supabase): address review — stash env, and the install callout v…
coderdan Jul 28, 2026
1c925e5
docs(supabase): drop the v2-wrapper section, explain the two names in…
coderdan Jul 28, 2026
37570a4
docs(integrations): categorised landing page, and fold Fundamentals +…
coderdan Jul 29, 2026
6613512
docs(drizzle): let this branch own the /integrations/drizzle cross-link
coderdan Jul 29, 2026
663abb0
docs(supabase): clarify encryption terminology and enhance quickstart…
coderdan Jul 29, 2026
83e3105
docs(supabase): reframe quickstart as encrypting an existing column
coderdan Jul 30, 2026
4f85b50
docs(supabase): add supabase-js guide
coderdan Jul 30, 2026
8236d41
fix: clear repository lint failures
coderdan Jul 30, 2026
64ed161
docs(supabase): verify against EQL 3.0.4
coderdan Jul 30, 2026
59f8f57
docs(supabase): streamline integration guides
coderdan Jul 30, 2026
4f7f5a4
Merge pull request #39 from cipherstash/cip-3328-supabase
coderdan Jul 30, 2026
cca0739
docs: rewrite Prisma ORM 8 integration
coderdan Jul 30, 2026
9477cdc
docs: add Prisma navigation icon
coderdan Jul 30, 2026
eb3e46e
docs: use the Prisma init flag
coderdan Jul 30, 2026
4031180
docs: add reusable credential options
coderdan Jul 30, 2026
37db92c
docs: polish credential options styling
coderdan Jul 30, 2026
6d43991
Merge pull request #84 from cipherstash/docs/prisma-8-integration
coderdan Jul 30, 2026
60599fc
docs(prisma): add generated API reference
coderdan Jul 30, 2026
26919a9
docs: reuse credential options across v2
coderdan Jul 30, 2026
0f957a3
docs: refine credential option hierarchy
coderdan Jul 30, 2026
2aafd64
fix(docs): flatten TypeDoc code spans
coderdan Jul 30, 2026
81ba1be
docs: add copyable credential commands
coderdan Jul 30, 2026
f3c033c
docs: present credential options as tabs
coderdan Jul 30, 2026
4032508
docs: scope deployment variables to deployment tabs
coderdan Jul 30, 2026
acf865f
docs(prisma): move API reference nav last
coderdan Jul 30, 2026
14f328e
docs: polish credential variable styling
coderdan Jul 30, 2026
63b0dd6
fix: use credential dropdown on narrow screens
coderdan Jul 30, 2026
eee3f25
Merge pull request #85 from cipherstash/docs/prisma-reference
coderdan Jul 30, 2026
e9753c5
fix: anchor mobile credential menu
coderdan Jul 30, 2026
4aa7a3b
Merge pull request #86 from cipherstash/docs/reuse-credential-options
coderdan Jul 30, 2026
6e39aa5
docs: reorganize SDK references
coderdan Jul 30, 2026
d8af10f
Merge pull request #87 from cipherstash/docs/reference-nav-cleanup
coderdan Jul 30, 2026
f9d0458
docs(drizzle): add integration API reference
coderdan Jul 30, 2026
65a616d
Merge pull request #88 from cipherstash/docs/drizzle-api-reference
coderdan Jul 30, 2026
9eec8a4
docs: align references with Stack 1.0
coderdan Jul 30, 2026
8350d00
Merge pull request #89 from cipherstash/docs/stash-cli-1.0
coderdan Jul 30, 2026
e854c27
docs(concepts): add encryption foundations
coderdan Jul 30, 2026
12fbc4b
Merge pull request #90 from cipherstash/docs/searchable-encryption-co…
coderdan Jul 30, 2026
f2ee294
docs(compare): refresh comparison pages
coderdan Jul 30, 2026
e5553f7
docs(compare): lead with ZeroKMS advantages
coderdan Jul 30, 2026
9ac42fd
Merge pull request #43 from cipherstash/docs/v2-comparisons
coderdan Jul 30, 2026
52cb052
docs(v2): make legacy redirects merge-safe
coderdan Jul 30, 2026
de2ce18
fix(redirects): route Supabase to overview
coderdan Jul 30, 2026
6badc9f
docs(nav): restore CTS
coderdan Jul 30, 2026
b0ff10b
Merge pull request #91 from cipherstash/docs/v2-redirect-readiness
coderdan Jul 30, 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
62 changes: 62 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# Blocking documentation checks for pull requests.
#
# `validate-links` also runs inside `prebuild`, so a broken link already fails
# the Vercel build. This job exists to make that a fast, named status check
# that branch protection can require, rather than a failure buried in a
# deploy log.
name: Docs

on:
pull_request:
# v2 is the live documentation line. `main` is deliberately excluded: it
# trails v2 by ~100 commits and its bun.lock is out of sync with its
# package.json, so `--frozen-lockfile` fails there for reasons that have
# nothing to do with links. Add `main` here once #37 lands and makes it
# current.
branches: [v2]
push:
branches: [v2]
workflow_dispatch:

# A PR that gets pushed to twice shouldn't queue behind its own stale run.
concurrency:
group: docs-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

permissions:
contents: read

jobs:
links:
name: Internal links
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v5

- uses: oven-sh/setup-bun@v2
with:
# Pinned rather than `latest` so a bun release can't turn a
# required check red on its own.
bun-version: 1.3.13

- run: bun install --frozen-lockfile

# The TypeDoc references under the V2 integration/reference sections are
# gitignored and built from a clone of cipherstash/stack. Links point
# into them, so without this step those targets report as missing.
# `prebuild` generates before validating for the same reason.
- name: Generate the SDK reference
run: bun run generate-docs

- name: Generate the Supabase reference
run: bun run generate-docs:supabase

- name: Generate the Drizzle reference
run: bun run generate-docs:drizzle

- name: Generate the Prisma reference
run: bun run generate-docs:prisma

- name: Validate internal links and anchors
run: bun run validate-links
13 changes: 13 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -37,5 +37,18 @@ content/stack/reference/stack/latest/
content/stack/reference/stack/v*/
content/stack/reference/drizzle/latest/
content/stack/reference/drizzle/v*/
content/docs/integrations/prisma/api-reference/*
!content/docs/integrations/prisma/api-reference/meta.json
content/docs/integrations/supabase/api-reference/*
!content/docs/integrations/supabase/api-reference/meta.json
content/docs/integrations/drizzle/api-reference/*
!content/docs/integrations/drizzle/api-reference/meta.json
content/docs/reference/stack/api-reference/*
!content/docs/reference/stack/api-reference/meta.json
.tmp-*
.env.local

# serena (local MCP tooling state)
.serena/
# EQL release manifest extracted by generate-eql-docs.ts (see generate-eql-api-docs.ts)
.eql-manifest.release.json
43 changes: 0 additions & 43 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,46 +102,3 @@ Fumadocs UI theme with custom purple primary color (`hsl(269, 70%, 45%)`). Dark
## Formatting

Biome handles both linting and formatting. 2-space indentation. Biome organizes imports automatically. Run `bun run format` before committing.

## Required Skills

Always use the following agent skills when working in this repository. These skills contain the canonical API references and must be consulted to ensure documentation accuracy.

### CipherStash Product Skills

Use these skills whenever writing or editing documentation about the corresponding product area. They contain the complete, up-to-date API surface, code examples, and type signatures.

| Skill | Use when editing docs in |
|---|---|
| `encryption` | `content/docs/encryption/` — Schema definition, encrypt/decrypt, searchable encryption, bulk operations, identity-aware encryption, error handling, migration |
| `secrets` | `content/docs/secrets/` — Secrets SDK (`set`/`get`/`getMany`/`list`/`delete`), `stash` CLI usage, environment isolation |
| `drizzle` | `content/docs/encryption/drizzle.mdx` — `encryptedType` column, `extractEncryptionSchema`, `createEncryptionOperators`, encrypted query operators, batched and/or, EQL migrations |
| `supabase` | `content/docs/encryption/supabase.mdx` — `encryptedSupabase` wrapper, transparent encrypt/decrypt on insert/update/select, query filters (eq, like, gt, in, or, match), identity-aware encryption |
| `dynamodb` | `content/docs/encryption/dynamodb.mdx` — `encryptedDynamoDB` helper, `__source`/`__hmac` attribute naming, encrypted partition/sort keys, bulk operations, audit logging |

### Documentation Update Skill

Use the `update-docs` skill whenever:
- Creating new documentation pages
- Updating existing documentation based on code changes
- Reviewing documentation completeness for a PR
- Scaffolding docs for a new feature

The `update-docs` skill enforces the following workflow:

1. **Analyze changes** — Diff the branch to identify affected files
2. **Map to docs** — Use the code-to-docs mapping to find which MDX files need updates
3. **Review each doc** — Walk through updates with user confirmation before editing
4. **Validate** — Run `bun run lint` to check formatting
5. **Commit** — Stage documentation changes

#### Documentation Validation Checklist

Before committing documentation changes, verify:

- Frontmatter has `title` and `description`
- Code blocks have `filename` attribute
- TypeScript examples come first, with `switcher` and a JS variant where appropriate
- Props/options tables are properly formatted
- Notes use the `> **Good to know**:` callout pattern
- `bun run lint` passes
Loading