fabro/docs
Bryan Helmkamp 7c8448ece8
refactor(api): stage 6.6 collapse settings DTOs to freeform v2 shape
Replaces the legacy flat `ServerSettings` / `RunSettings` schemas in
`docs/api-reference/fabro-api.yaml` and 20+ supporting nested type
schemas (LlmSettings, SandboxSettings, HookDefinition, WebSettings,
ApiSettings, GitSettings, McpServerEntry, etc.) with two simple
`type: object, additionalProperties: true` schemas that declare the
wire shape as the v2 `SettingsFile` tree with secret-bearing subtrees
dropped before serialization.

Regenerates the Rust progenitor and TypeScript Axios clients against
the new spec. The progenitor generates `RunSettings` / `ServerSettings`
as `#[serde(transparent)]` newtypes over `serde_json::Map<String,
Value>`; the openapi-generator emits `{ [key: string]: any; }` inlined
into the API method signatures and no longer exports named model
types.

Updates fabro-web to define local `type ServerSettings =
Record<string, unknown>` / `type RunSettings = Record<string,
unknown>` aliases since the generated client no longer exports them.
The UI only `JSON.stringify`s these payloads into a CollapsibleFile,
so the opaque shape is fine.

All 3,756 workspace tests remain green. The OpenAPI conformance test
`server_settings_keys_match_openapi_spec` still passes because
`compare_schema` short-circuits on pure-map schemas (no `properties`);
it becomes a no-op that will be removed entirely when Stage 6.3b
deletes the legacy flat `Settings` struct it still builds.

Unblocks the server handler + CLI migration in the next commits of
Stage 6.6.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-09 17:04:33 -04:00
..
administration docs: migrate reference and guide examples to v2 config shape 2026-04-09 11:30:52 -04:00
agents docs: migrate reference and guide examples to v2 config shape 2026-04-09 11:30:52 -04:00
api-reference refactor(api): stage 6.6 collapse settings DTOs to freeform v2 shape 2026-04-09 17:04:33 -04:00
brainstorms feat(settings): stage 6.1 consumer migration builds workspace-wide 2026-04-09 15:25:59 -04:00
changelog docs 2026-04-06 16:57:34 -04:00
core-concepts docs: migrate reference and guide examples to v2 config shape 2026-04-09 11:30:52 -04:00
examples Attractor spec hunks 9-11: edge selection fallback and default_max_retries rename 2026-03-23 14:20:24 -04:00
execution docs: migrate reference and guide examples to v2 config shape 2026-04-09 11:30:52 -04:00
getting-started Remove deprecated fabro init command 2026-03-30 16:17:38 -04:00
human-tools docs: migrate reference and guide examples to v2 config shape 2026-04-09 11:30:52 -04:00
ideation feat(cli): add fabro uninstall command 2026-04-08 16:31:32 -04:00
images Cut over Fabro web app to a server-backed SPA 2026-04-01 21:36:01 -07:00
integrations docs: migrate reference and guide examples to v2 config shape 2026-04-09 11:30:52 -04:00
languages Add fabro language for syntax highlighting in docs 2026-03-17 09:43:14 -04:00
logo Fix logo SVG viewBox clipping the right edge of the O 2026-03-14 14:11:36 -04:00
plans feat(settings): stage 6.1 consumer migration builds workspace-wide 2026-04-09 15:25:59 -04:00
reference docs: migrate reference and guide examples to v2 config shape 2026-04-09 11:30:52 -04:00
tutorials Attractor spec hunks 14 & 16: remove error_policy and k_of_n/quorum from parallel handler 2026-03-23 14:59:35 -04:00
workflows docs: migrate reference and guide examples to v2 config shape 2026-04-09 11:30:52 -04:00
.mintignore Fix Mintlify dev server: valid navbar URL and ignore AGENTS.md 2026-03-05 16:29:50 -05:00
docs.json chore: remove workflows and steer endpoints 2026-04-07 08:25:54 -04:00
dot-highlight.js Remove debug markers from dot-highlight script 2026-03-17 10:23:48 -04:00
favicon.svg Rebrand docs site from Arc to Fabro 2026-03-11 21:27:58 -04:00