You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/architecture.md
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,20 +28,28 @@ Until those conditions are met, treat the 9-node workflow as fixed.
28
28
29
29
- TUI (`autolabos`) and local web ops UI (`autolabos web`) share the same interaction/runtime layer.
30
30
- Node execution and transitions are controlled by `StateGraphRuntime`.
31
+
- Runtime events are persisted per run in `.autolabos/runs/<run-id>/events.jsonl`; high-churn telemetry should go there rather than into `runs.json`.
32
+
- Deferred `collect_papers` recovery state is persisted in `.autolabos/runs/<run-id>/collect_background_job.json` whenever background enrichment is active, so restart recovery stays inspectable.
31
33
- Approval mode and transition recommendation behavior are part of runtime contracts.
34
+
-`/approve` must respect stored non-advance pending transitions (for example `analyze_results -> backtrack_to_design`) instead of advancing by graph order. Explicit manual `/agent run <next-node>` handoffs may resume `pause_for_human` transitions without weakening default approval behavior.
32
35
33
36
Harness and runtime work must preserve both TUI and web behaviors unless a change is explicitly requested.
34
37
35
38
## 3) Artifact model
36
39
37
40
- Run-scoped source of truth: `.autolabos/runs/<run-id>/...`
41
+
- Lightweight run index/projection: `.autolabos/runs/runs.json` (status, node pointer, aggregate `usage`)
38
42
- Public mirrored outputs: `outputs/` (single latest-run public bundle)
39
43
- Checkpoints and run context are persisted under each run directory.
44
+
- Design/execution experiment contracts live in `experiment_portfolio.json` and `run_manifest.json`.
45
+
- Transition/gate decisions remain inspectable through artifacts such as `transition_recommendation.json`, `analysis/evidence_scale_assessment.json`, `review/*`, and `paper/write_paper_eligibility.json`.
40
46
41
47
Quality checks should be deterministic and file-based whenever possible.
42
48
43
49
Public-facing outputs must remain traceable to underlying run artifacts.
44
50
51
+
Because events, checkpoints, background-job recovery, and execution artifacts already live in per-run files, `runs.json` should stay a summary index rather than a sink for append-only logs. If index write contention becomes material, split the summary index or move it to sqlite instead of pushing more high-volume data into `runs.json`.
52
+
45
53
## 4) Node-internal loops are bounded
46
54
47
55
Internal control loops inside nodes are allowed and expected, including loops in analysis, design, implementation, execution, result interpretation, and writing.
- Paper trace outputs (`paper/main.tex`, `paper/references.bib`, `paper/evidence_links.json`)
13
16
14
17
## 2) Run-state traceability
15
18
16
19
For each run, preserve:
17
20
18
21
- run id
19
-
- workflow node progression (`runs.json`)
22
+
- workflow node progression (`runs.json`) including current node/status and aggregate usage when available
23
+
- append-only runtime events (`events.jsonl`)
24
+
- key gate/recovery artifacts (`transition_recommendation.json`, `collect_background_job.json` when present)
20
25
- key generated artifacts in `.autolabos/runs/<run_id>/...`
21
26
22
27
## 3) Reproducibility claim language
@@ -29,12 +34,12 @@ For each run, preserve:
29
34
Before marking work complete:
30
35
31
36
1. Re-run the relevant flow or tests.
32
-
2. Confirm expected artifacts are presentand parseable.
37
+
2. Confirm expected artifacts are present, parseable, and consistent across `runs.json`, `events.jsonl`, and run-scoped artifacts.
33
38
3. Record limitations and unresolved uncertainty.
34
39
35
40
## 5) Validation surfaces
36
41
37
42
- Runtime diagnostics: `/doctor` in TUI and web Doctor tab (environment + workspace harness checks).
38
-
- CI/internal gate: `npm run validate:harness` (issue log format + workspace/test run artifact structure).
43
+
- CI/internal gate: `npm run validate:harness` (issue log format + workspace/test run artifact structure, including event logs and portfolio/manifest contracts).
39
44
40
-
No separate end-user command is required beyond `/doctor`.
45
+
No separate end-user command is required beyond `/doctor`, but maintainers should still run `npm run validate:harness` before declaring artifact-level reproducibility complete.
0 commit comments