Documentation Coverage and Freshness¶
This page tracks what the documentation covers, where it is stale, and which runtime surfaces need explicit docs before they should be treated as stable.
Last reviewed: 2026-07-29.
Coverage Matrix¶
| Area | Source of truth | Primary docs | Status |
|---|---|---|---|
| Runtime entrypoint and config composition | src/silisocs/runtime/runner.py, src/silisocs/conf/ |
Configuration, Usage | Covered; keep examples synced with packaged defaults |
| Agent runtime and persona pipeline | src/silisocs/agents/ |
Building Agents, Simulation Extensibility API | Covered; custom runtime checkpointing should stay visible |
| Backend app contract | src/silisocs/environments/backends/base.py, factory.py |
Backends, Environment Layer | Covered; BackendApp is the core contract |
| Timeline/recsys capability interface | twitter_like/, reddit_like/, mastodon/ |
Backends, Configuration | Covered; SocialBackendApp wording is capability-scoped |
| Reference-world backends | resource_market/, virtual_space/, public_goods/, packaged env/agent/world configs |
Backends, Environment Layer | Covered; keep examples synced with packaged defaults |
| GM component slots | environments/gm/components/ |
Environment Layer, Simulation Extensibility API | Covered; strict params behavior must be called out |
| Flow and multi-GM routing | gm/game_master.py, simulation_engines/policies/steps.py |
Multi-GM Architecture, agent_docs/architecture.md |
Covered but duplicated; public docs should be canonical |
| Engine policies | src/silisocs/simulation_engines/policies/ |
Environment Layer, Simulation Extensibility API | Covered after path correction |
| Evaluation probes and studies | evaluations/probes/, study docs |
Probes, Study Guide, Study Schema | Covered; update when evaluator APIs change |
| Studio | src/silisocs/studio/ |
Studio | Covered; forms and panels are declarative extension surfaces |
| Studio analysis panels and views | src/silisocs/analysis/ |
Analysis Panels, Studio | Covered; panels bind to semantic roles, never backend names |
| Interactive run control | simulation_engines/control.py |
Configuration, Studio | Covered; controls act at episode boundaries only |
| Run artifacts and run health | runtime/execution/manifest.py, evaluations/run_artifact.py, evaluations/vocabulary.py |
Usage | Covered; the health-counter registry is the single source |
| Harness agents (experimental) | src/silisocs/agents/harness/ |
Harness Agents | Experimental; config surface and internals may change |
| Extension API docs | Public extension contracts | Simulation Extensibility API | Curated API reference; generated internal pages are not shipped |
| Coding-agent guidance | AGENTS.md, agent_docs/ |
AGENTS.md, agent_docs/README.md |
Covered; keep tool-neutral and synced with runtime paths |
Stale or Risky Content Register¶
Only open risks belong here; entries whose issue is fixed are removed rather than left as history (the migration notes carry what users need).
| Issue | Impact | Required action |
|---|---|---|
Advanced flow docs duplicated across docs/ and agent_docs/ |
Divergence risk | Keep public docs canonical; use agent_docs as agent-facing deep dives |
Agent workflow docs are tool-discoverable only through AGENTS.md |
Non-Claude agents may miss /new-scenario and /new-study flows |
Keep agent_docs/README.md and public shortcut links current |
| Harness agent internals are newer than their tests | Live Hermes/OpenClaw runs are less exercised than the deterministic core | Keep the experimental label until live-harness coverage lands |
Extension Surface Coverage¶
Each extensible simulator part should have one documented shape:
- Agent: implements
name,observe(str),act(action_spec) -> ActionOutput; optionalget_state()andset_state()for checkpoint restore. - Backend app: subclasses
BackendApp, implementsinitialize(agent_names, **kwargs), optionally overridesupdate(...)andobserve(...), and exposes actions with@app_action. - Timeline/recsys backend capability: subclasses
SocialBackendAppwhen timeline, feed formatting, recommendation update, or parsed social action components are needed. - GM component: selected from
env.gm.components.<slot>, receives YAMLparams, and implements direct native methods for its slot. Native components do not expose Concordia lifecycle hooks. - Engine turn policy: selected from
sim.engine.turn_policy, receives YAMLparams, and implements the turn policy interface. - Probe schedule: selected from
eval.probes.schedule, receives YAMLparams, and implements the probe schedule interface. - Probe/evaluator: configured under
eval.probesor study evaluator presets, with output written to probe event artifacts.
Freshness Process¶
When changing runtime behavior, update docs in the same pull request:
- Search docs for old names, paths, and config keys.
- Update the reference page for the changed interface.
- Update one workflow guide or recipe if users need a new invocation pattern.
- Add or update a contract test for the extension surface.
- Run
uv run --group docs properdocs build --strict.
The minimum release-readiness marker is: no known stale paths/config keys in public docs, strict docs build succeeds, and the coverage matrix names every stable extension surface.