Log in

mrmrs-0a9c5c

mrmrs-0a9c5c

Closed into main
3 commits · 6 files ~6 modified
M README.md
@@ -117,6 +117,7 @@
117117 | Scripted workflows | `scripts/workflow_ab.py` | Implemented for deterministic bugfix, wide refactor, large asset, history archaeology, error recovery, and sync/divergence recovery workflows. |
118118 | Real agents | `scripts/agent_workflow.py` | Implemented for mock plus local Codex, Claude, and Cursor Agent stream adapters. Use real rows only when the installed CLI stream has campaign evidence. |
119119 | Parallel contention | `scripts/parallel_contention.py` | Implemented for Git shared/workspace modes; Oak workspace-per-task rows require a disposable Oak remote and otherwise skip honestly. |
120+| End-to-end task loop | `scripts/task_loop.py` | Git local-file cold-clone/warm-worktree rows, successful Oak two-fresh-checkout work against owned loopback `oak serve`, and actual Oak loopback interrupted-publication evidence are runnable without production writes. Local Oak CI/review and transport-matched hosted phases remain unmeasured. |
120121 | Mount/lazy hydration | `scripts/mount_probe.py`, `scripts/mount_vs_clone.py` | Dry probe and partial remote-backed coverage. Real mount timing needs `OAK_BENCH_MOUNT_REPO`; large-mirror Oak-vs-Git acquisition is not publishable yet. |
121122 | Platform lifecycle | `scripts/platform_lifecycle.py` | Implemented for capability probes, hosted integration anatomy, poll-until-merged, race scenarios, and fake-provider branch triage. Real hosted rows need credentials and disposable repos. Excluded from devloop. |
122123 | Netshape | `scripts/netshape_bench.py` | Implemented where Linux network namespaces and `tc` are available. Cross-subject latency claims require the same shaped pipe and server identity. |
@@ -144,9 +145,10 @@
144145 - Workspace-per-agent fleets: Git worktree contention is implemented. Oak
145146 workspace-per-task needs real disposable remotes, high-concurrency mount/push
146147 behavior, branch cleanup, and merge/integration plumbing.
147-- Full Oak task loop: the roadmap is mount -> edit -> commit -> push -> desc
148- -> finish/clean -> remount follow-up, compared with Git's clone/worktree,
149- branch, commit, push, cleanup, and follow-up flow.
148+- Full hosted task loop: local Git cold-clone/warm-worktree and Oak
149+ interrupted-publication cells are implemented. A transport-matched Oak/GitHub
150+ acquisition -> publish -> exact-CI -> review comparison still needs disposable
151+ provider fixtures; missing provider phases stay explicit skip rows.
150152 - Hosted workflow evidence: platform rows need GitHub org assets, PATs or app
151153 credentials, webhooks, disposable repos, and real Oak/GitHub provider wiring
152154 before public hosted-branch claims.
@@ -307,6 +309,42 @@
307309 --workers 2,8,32 --commits-per-worker 5
308310 ```
309311
312+End-to-end task cost without production writes:
313+
314+```bash
315+# Fresh full clone followed by a shared-object Git worktree. Hosted CI remains
316+# an explicit unmeasured phase on the local-file transport.
317+python3 scripts/task_loop.py --subjects git --git-remote local \
318+ --scenarios agent_task_baseline_v1 --runs 10
319+
320+# Successful Oak clone/edit/commit/push in two independent fresh checkouts,
321+# backed by an owned loopback `oak serve`. Hosted CI/review remain explicit skips.
322+python3 scripts/task_loop.py --subjects oak_local \
323+ --oak-local-bin /path/to/current-oak \
324+ --scenarios agent_task_oak_local_v1 --runs 10
325+
326+# Actual Oak HTTP publication attempt whose loopback fixture verifies the
327+# declared request bytes, then drops the reply. Use pinned released/current
328+# binaries; no live remote is used.
329+python3 scripts/task_loop.py --subjects oak_installed,oak_local \
330+ --oak-installed-bin /path/to/released-oak \
331+ --oak-local-bin /path/to/current-oak \
332+ --scenarios interrupted_publication_after_request_v1 \
333+ --runs 10 --randomize-subject-order
334+```
335+
336+These cells are different evidence classes. Local Git wall time is not a
337+network comparison, and the Oak local-server row is loopback-only. Its second
338+checkout is fresh and does not claim shared-object or OS-cache warmth. The
339+interruption fixture reports framed-request delivery
340+knowledge separately from the CLI's own outcome claim and verifies exact local
341+head, unpublished state, and payload preservation; it does not measure
342+successful publication latency. Its call counts are scripted command
343+equivalents, not model-observed tool calls. Local Oak CI/review are unconfigured
344+and stay explicit skips rather than synthetic passes. Use
345+`parallel_contention.py --modes workspace_per_task` for concurrent isolated
346+tasks instead of duplicating its worker implementation here.
347+
310348 Mount and acquisition probes:
311349
312350 ```bash