ouroboros/devtools
Ouroboros b09a60fa7f feat(core): v6.40.0 — LLM-first project naming, per-model self-DoS guard, soft join-ledger, orchestrator read-only roots, turn-into-project ordering, deferrals 1-5
Naming (B): SSOT `ouroboros/project_naming.py` coins a short human project title via a
bounded LIGHT-model call (P5, no keyword gates; fail-soft to a heuristic; spend recorded
through chat_observed + update_budget_from_usage). A proactive card namer
(`supervisor/workers.py::_spawn_proactive_namer`) names a fresh main-chat card up front —
background thread → `suggested_name` on the result + a `task_named` WS broadcast → the live
card shows the title (UI-buffered if the card races ahead; persisted across reload via
history.py for progress AND task_summary rows). turn-into-project reuses that name with ZERO
extra call; the heuristic `task-…` is gone. ensure_project_scope/agent paths share the SSOT.

Ordering (A): the owner's request sorts to the TOP of the converted project thread —
`_owner_message_send_ts` matched in the originating chat at/before task creation (dup-text
safe), then queued_at / result ts / now. chat_id persisted on the direct-chat RUNNING result.

Self-DoS (#4): a per-(model,use_local)-route `threading.BoundedSemaphore`
(`ouroboros/model_concurrency.py`, `OUROBOROS_MODEL_MAX_CONCURRENCY` from the config SSOT,
default-on, fail-soft, deadline-bounded, cap in the cache key) caps CONCURRENT provider
calls within a process so a task's loop + in-process subagent threads + status pings can't
storm one rate limit. PER-PROCESS (like fallback_cooldown); cross-worker is future work.

Soft join (#7): cancel_task gains a recorded reason; new peek_task inspects a child WITHOUT
absorbing; new discard_child_result(reason) is the EXPLICIT (not prose-parsed) abandon —
both stamp a durable parent_decision the handoff reminder honors, lineage-gated to own
children (cancel fail-closed for constrained profiles). The prose acknowledgement gate is
REMOVED (P5): the reminder is suppressed only by structured decisions/absorption, and a
forced/deadline/provider finalization records orphaned (incl. completed-unread) children
instead of dropping them. peek/discard/cancel extracted to `ouroboros/tools/join_ledger.py`.

Deferrals 1-5 (C): read-only `subagent_projects`/`deliverables` ResourceRoots (never
write/shell, never to subagents); a freshly provisioned genesis root must be empty
(fail-loud); a genesis project emits a typed `deliverable_manifest` on the artifact axis; a
shared `_str_match_replace` gives the data-plane editor the repo editor's match feedback; a
data-plane shrink-guard blocks accidental overwrite/edit truncation (force bypass) across
_data_write/_write_file (single+batch)/_edit_text incl. skill_payload.

Workstreams (E): bench swe_bench_pro/osworld slot keys CODE/FALLBACK/USE_LOCAL_CODE →
HEAVY/FALLBACKS/USE_LOCAL_HEAVY; stale joi-lab catalog URLs → razzant in repo.

Surface: peek_task/discard_child_result tools, OUROBOROS_MODEL_MAX_CONCURRENCY,
subagent_projects/deliverables resource roots, TaskNamedOutbound WS contract. Reviewed:
triad+scope converged (scope pass + gemini/opus SAFE) + codex SAFE TO COMMIT.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-21 18:32:37 +03:00
..
benchmarks feat(core): v6.40.0 — LLM-first project naming, per-model self-DoS guard, soft join-ledger, orchestrator read-only roots, turn-into-project ordering, deferrals 1-5 2026-06-21 18:32:37 +03:00
__init__.py feat(devtools-benchmarks): add official benchmark harnesses and workspace executor 2026-06-06 12:03:30 +03:00
README.md feat(devtools-benchmarks): add official benchmark harnesses and workspace executor 2026-06-06 12:03:30 +03:00

Ouroboros Devtools

devtools/ contains operator-side and benchmark support code that should be versioned with Ouroboros without becoming part of the runtime core.

Rules:

  • Generated logs, datasets, run outputs, Docker layers, and secrets do not live here.
  • Default benchmark outputs go under /Users/anton/Ouroboros/bench_runs/.
  • Runtime modules must not import devtools.
  • This is not an immune-system bypass: touched files are reviewed normally.
  • Promote code out of devtools only through a separate reviewed runtime plan.