docs/content/docs
Hongming Wang b625445357 docs: reframe secret encryption as KMS envelopes (with static-key fallback)
The platform's actual crypto model is two-mode envelope encryption
(workspace-server/internal/crypto/envelope.go):

- KMS mode (production): KMS_KEY_ARN selects an AWS KMS CMK; each
  Encrypt() calls GenerateDataKey for a fresh per-secret DEK, seals
  the payload with AES-256-GCM, stores the KMS-encrypted DEK +
  ciphertext together. CMK rotation is a no-op for existing blobs.

- Static mode (dev / self-host): SECRETS_ENCRYPTION_KEY is a single
  long-lived 32-byte AES-256 key. Cannot rotate without a data
  migration.

Both modes coexist during cutover (v2 prefix byte tags KMS blobs).
The platform refuses to start with neither configured rather than
silently storing plaintext.

Previous docs framed this as "AES-256-GCM at the application layer"
and named only SECRETS_ENCRYPTION_KEY, which under-described the
production path and made the KMS migration invisible to readers.

Files updated:
- content/docs/architecture.mdx — env table adds KMS_KEY_ARN, clarifies
  SECRETS_ENCRYPTION_KEY as static-mode/self-host
- content/docs/self-hosting.mdx — env table + Secrets Encryption section
  rewritten to cover both modes; cites envelope.go
- content/docs/security/owasp-agentic-top-10.mdx — A02 control
  description now lists envelope encryption with KMS as production path
- content/docs/development/constraints-and-rules.md — Rule 11 reframes
  storage model as envelope encryption (KMS prod, static dev)
- content/docs/architecture/database-schema.md — workspace_secrets
  description updated to mention envelope encryption + v2 prefix +
  source file pointer
- content/docs/architecture/molecule-technical-doc.md — five touchpoints
  (capability bullet, schema table, codebase tree, env table now
  includes KMS_KEY_ARN, recent-features global API keys row)

No infra/runtime/Nemotron claims touched.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-04 04:46:02 -07:00
..
adapters fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
adr fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
agent-runtime docs(runtime): document PyPI-canonical / git-mirror-lag asymmetry 2026-05-01 21:20:00 -07:00
api fix(docs): correct broken link ./platform-api.md → ./reference.md in workspace-files.mdx 2026-04-21 15:52:10 +00:00
api-protocol fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
architecture docs: reframe secret encryption as KMS envelopes (with static-key fallback) 2026-05-04 04:46:02 -07:00
development docs: reframe secret encryption as KMS envelopes (with static-key fallback) 2026-05-04 04:46:02 -07:00
frontend fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
guides docs: wrap <ws-id> placeholders in backticks to fix MDX build 2026-05-01 16:31:05 -07:00
incidents security(incident-log): redact full token values from F1088 incident report 2026-04-26 19:37:20 -07:00
integrations fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
marketplace docs(marketplace): add tier overview + creator listing guide 2026-04-30 18:35:21 -07:00
migration docs(migration): add a2a-sdk v0→v1 migration guide 2026-05-01 19:51:18 -07:00
plugins fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
research fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
runtime-mcp docs(runtime-mcp): add dev-channels tagged-form requirement page 2026-05-01 19:28:41 -07:00
security docs: reframe secret encryption as KMS envelopes (with static-key fallback) 2026-05-04 04:46:02 -07:00
self-hosting fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
tutorials docs(tutorials): add frontmatter to SaaS file writes EIC tutorial (#84) 2026-04-24 01:48:04 +00:00
api-reference.mdx docs(tutorials): add SaaS federation v2 tutorial (#82) 2026-04-23 17:28:44 +00:00
architecture.mdx docs: reframe secret encryption as KMS envelopes (with static-key fallback) 2026-05-04 04:46:02 -07:00
changelog.mdx docs(changelog): add late-day updates for 2026-04-23 (#86) 2026-04-24 01:48:15 +00:00
channels.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
concepts.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
external-agents.mdx docs: fix MDX build — escape <1 + drop Callout JSX 2026-05-01 16:31:05 -07:00
glossary.md docs: add frontmatter to glossary.md 2026-04-21 08:31:24 +00:00
google-adk.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
hermes.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
index.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
marketplace.mdx docs(marketplace): add tier overview + creator listing guide 2026-04-30 18:35:21 -07:00
mcp-server.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
meta.json Merge branch 'main' into docs/dev-channels-tagged-form 2026-05-01 19:53:52 -07:00
observability.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
opencode.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
org-template.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
plugins.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
quickstart.md docs: update clone URLs after molecule-core repo split (quickstart + self-hosting) 2026-05-01 19:24:55 -07:00
runtime-mcp.mdx docs(runtime-mcp): add dev-channels tagged-form requirement page 2026-05-01 19:28:41 -07:00
schedules.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
self-hosting.mdx docs: reframe secret encryption as KMS envelopes (with static-key fallback) 2026-05-04 04:46:02 -07:00
tokens.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
troubleshooting.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00
workspace-config.mdx fix: restore build infrastructure deleted by bad PR #59 merge 2026-04-22 14:03:24 -07:00