Skip to content

docs: Chaos Mode setup guide + weighted strategy semantics - #12250

Merged
diegosouzapw merged 2 commits into
release/v3.8.51from
docs/chaos-mode-setup-weighted-semantics
Sep 1, 2026
Merged

diegosouzapw merged 2 commits into
release/v3.8.51from
docs/chaos-mode-setup-weighted-semantics

Conversation

@diegosouzapw

@diegosouzapw diegosouzapw commented Sep 1, 2026 •

Copy link
Copy Markdown
Owner

Closes a real doc gap surfaced while triaging OmniCopilot#16 (user "tried to setup the Chaos with no success by following the documentation" — there was no setup documentation to follow), where we publicly committed to fixing it.

What

  • New docs/guides/CHAOS-MODE.md — the dashboard page (/dashboard/chaos), the disabled-by-default global switch, the config schema (fields, defaults, limits), parallel vs collaborative semantics (chain + summary), both dispatch endpoints with their distinct auth (POST /api/chaos/run = management session; POST /api/skills/collect/chaos = Bearer key with the per-key chaosModeEnabled permission, off by default), the response shape, troubleshooting, and a disambiguation table for the three "chaos" things (auto/chaos mode pack, chaos combo config, Chaos Mode). Registered in docs/guides/meta.json + docs/README.md.
  • docs/routing/AUTO-COMBO.md — new weighted semantics subsection under the strategy table: proportional per-request draw, zero-weight steps never drawn while any weight > 0, eligibility exclusions (breaker/cooldown/lockout), stickyWeightedLimit, and the round-robin pointer. This is the exact confusion behind the OmniCopilot#16 report (one provider winning ~90%).

Everything is written from the code on this branch tip: src/lib/chaos/chaosConfig.ts, src/lib/chaos/chaosExecutor.ts, both route files, open-sse/services/combo/targetSorters.ts, open-sse/services/combo/targetResolution.ts.

Validation

  • npm run check:docs-all — exit 0 (doc-links PASS, fabricated-docs clean; the 87 drift warnings are pre-existing in untouched files).
  • Docs-only change — no production code, no tests required.

⚠️ base-red inherited: check:mutation-test-coverage fails on the release/v3.8.51 tip (tests from #12240/#10573 missing in stryker tap.testFiles — reproduced on the pristine tip). Drain PR: #12255 (supersedes my #12257, closed as its subset — #12255 also realigns the turn-pin suites to the #12247 window gate, the second inherited red layer). The only red check here is that inherited gate.

Gap surfaced by OmniCopilot#16: the Chaos Mode dashboard page, its per-key
chaosModeEnabled permission and both dispatch endpoints had no setup doc at
all (only the auto/chaos table line existed), and AUTO-COMBO.md never stated
that weighted is a proportional draw where zero-weight steps are never drawn.
New docs/guides/CHAOS-MODE.md (registered in meta.json + docs/README.md) and
a 'weighted semantics' subsection under the strategy table, both written from
the code (chaosConfig.ts, chaosExecutor.ts, both routes, targetSorters.ts,
targetResolution.ts). check:docs-all exits 0.
@diegosouzapw
diegosouzapw merged commit aa2aec5 into release/v3.8.51 Sep 1, 2026
18 checks passed
@diegosouzapw
diegosouzapw deleted the docs/chaos-mode-setup-weighted-semantics branch September 1, 2026 06:25
muhamadgalihsaputra pushed a commit to niyatna/NiyatnaRoute that referenced this pull request Sep 27, 2026
…apw#12250)

Gap surfaced by OmniCopilot#16: the Chaos Mode dashboard page, its per-key
chaosModeEnabled permission and both dispatch endpoints had no setup doc at
all (only the auto/chaos table line existed), and AUTO-COMBO.md never stated
that weighted is a proportional draw where zero-weight steps are never drawn.
New docs/guides/CHAOS-MODE.md (registered in meta.json + docs/README.md) and
a 'weighted semantics' subsection under the strategy table, both written from
the code (chaosConfig.ts, chaosExecutor.ts, both routes, targetSorters.ts,
targetResolution.ts). check:docs-all exits 0.
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.

1 participant