Commit Graph
3650 Commits
Author SHA1 Message Date
Tianyi Cui 8e95f305b0 refactor(agent-loop): reuse loaded session metadata 2026-07-20 18:26:19 +08:00
Tianyi Cui eab5699fd4 Merge branch 'master' into codex/reject-credentialed-search-redirects 2026-07-20 18:20:47 +08:00
Tianyi Cui 9b28ad785f test(acp-snapshot): emit current session headers 2026-07-20 18:17:25 +08:00
Tianyi Cui 51ba53766e Merge remote-tracking branch 'origin/master' into fix/subagent-depth-budget
# Conflicts:
#	docs/persistence-catalog.md
2026-07-20 18:11:59 +08:00
Tianyi Cui ff6359a0cd docs(subagent): close review contract gaps 2026-07-20 18:10:31 +08:00
Tianyi Cui 94a6a95c8e Merge PR #415 into Ralph tool stack 2026-07-20 18:10:21 +08:00
Tianyi Cui 015ad420af fix(goal): align human commands with blocker reasons 2026-07-20 18:06:22 +08:00
Tianyi Cui 08b37399d1 Merge command and goal feedback fixes into goal commands
# Conflicts:
#	.agents/notes/implemented/feature/2026-07-19-model-facing-goal-tools.i18n.yaml
#	docs/glossary.md
2026-07-20 18:04:03 +08:00
Tianyi Cui d5638ee8e1 Merge remote-tracking branch 'origin/master' into fix/subagent-depth-budget
# Conflicts:
#	website/zh-CN/api/harness/agents.md
#	website/zh-CN/api/harness/events.md
#	website/zh-CN/api/harness/sessions.md
#	website/zh-CN/api/harness/subagents.md
2026-07-20 18:00:40 +08:00
Tianyi Cui 41d3e78d3a test(snapshots): require explicit delegation depth 2026-07-20 17:59:13 +08:00
Tianyi Cui 46d60d6d90 fix(tool-subagent): enforce depth only at runtime 2026-07-20 17:58:57 +08:00
Tianyi Cui c40e63d04b fix(session-persistence-jsonl): require delegation depth 2026-07-20 17:51:21 +08:00
Tianyi Cui 7a9177d624 test(jsonl): pin corruption and storage-fault rejection
Identity validation must reject a header id that cannot derive a path, and only ENOENT may mean that storage is absent. Other root or per-path failures must remain visible instead of becoming an empty list or false miss.

Exercise those branches with narrow storage-mechanics cases, preserving per-file 100% coverage without restoring the flat-layout or multi-writer tests removed from the replacement design.
2026-07-20 17:46:51 +08:00
Tianyi Cui bbdd92ebc1 Merge goal-session snapshot fixes into commands 2026-07-20 17:46:05 +08:00
Tianyi Cui 4e74794236 test(goal): isolate the ACP lifecycle snapshot 2026-07-20 17:44:57 +08:00
Tianyi Cui c9d3d5d557 fix(jsonl): reject unusable roots at plugin load
A configured root that already exists as a file or unreadable directory cannot host cwd buckets, but the backend previously mounted and deferred that deterministic configuration error until a later list or write.

Probe the resolved root while the plugin loads, surface every error except ENOENT, and keep an absent root valid for lazy first materialization. Document the timing contract, regenerate the config catalog, and pin the non-directory case at the load boundary.
2026-07-20 17:42:44 +08:00
Tianyi Cui 73e3f658c6 fix(persistence): bind JSONL identity before mutation
JSONL discovered a log by the requested session id but later routed repair and append from the parsed header. A log selected for session A could therefore declare session B and redirect mutation to B.

Validate the requested id and exact header-derived cwd-bucket path before returning a stored prefix, reject duplicate ids across buckets, and repeat the id/cwd guards in the coordinator before repair or state publication. Collapse the redundant loadLive hook into loadStored while retaining the existing bucket layout and one-live-writer topology, avoiding flat-layout churn and a locator generic that SQLite and test backends do not need.
2026-07-20 17:42:44 +08:00
Tianyi Cui b9a8f2d136 Merge origin/master into codex/send-one-turn 2026-07-20 17:41:28 +08:00
Tianyi Cui 4e7a2c732f fix(commands): remove adapter surface filtering 2026-07-20 17:41:22 +08:00
Tianyi Cui ec0a2bb623 Merge origin/master into codex/send-one-turn
# Conflicts:
#	docs/cordis-catalog/events.md
#	docs/event-producer-consumer.md
#	docs/persistence-catalog.md
#	packages/core/agent-loop/src/loop.ts
#	packages/core/agent/README.md
#	website/zh-CN/api/harness/events.md
2026-07-20 17:41:06 +08:00
Tianyi Cui 8044e63e69 Merge goal-tool cleanup into same-session goals 2026-07-20 17:38:03 +08:00
kingwl 5869a46d94 Merge remote-tracking branch 'origin/master' into jsonl-packed-chunk-rows
Conflicts: generated docs only (cordis services catalog and the website
sessions API page) — resolved by regenerating both over the merged sources.
2026-07-20 17:37:30 +08:00
Tianyi Cui 23330b7a7d chore(goal): remove retired e2e dependencies 2026-07-20 17:35:01 +08:00
Tianyi Cui c56bee0390 Merge remote-tracking branch 'origin/master' into codex/code-runtime-budget-flake 2026-07-20 17:33:29 +08:00
Tianyi Cui 6eaa6073a2 test(code-runtime): stabilize slow-binding budget case 2026-07-20 17:32:17 +08:00
Tianyi Cui ddad8833df Merge remote-tracking branch 'origin/master' into codex/pr353-retarget-master-20260719 2026-07-20 17:27:24 +08:00
Tianyi Cui 02a048ffd9 Merge remote-tracking branch 'origin/master' into fix/subagent-depth-budget 2026-07-20 17:25:21 +08:00
Tianyi Cui a87d3e7e55 Merge branch 'codex/goal-session' into codex/commands 2026-07-20 17:24:39 +08:00
Turtle a661f5c8f3 test(tui): prove color scheme detection switches palette ANSI codes 2026-07-20 17:24:29 +08:00
Turtle 3a1b500cef fix(tui): detect terminal color scheme and apply light-optimised palette 2026-07-20 17:24:29 +08:00
Turtle ed784cfdce Render error cause chains at every diagnostic seam
A TUI run against an unreachable endpoint failed with only 'fetch failed':
undici wraps transport failures in a bare TypeError whose diagnosis lives
on .cause, and every diagnostic seam rendered only error.message. The
readline front door additionally rendered failed turns as pure silence.

- dsh-llm: new errorChain(value) renders the full cause chain and
  AggregateError members with circular/hostile-coercion containment.
- llm-deepseek: pre-response transport failures throw LlmError('NETWORK')
  naming the endpoint and chaining the fetch TypeError; aborts keep their
  DOMException so the loop still classifies them as cancellation.
- agent-loop: durable turn/end error messages and logger warnings render
  through errorChain; local renderThrown copies removed.
- ui-stdio: failure turn/end reasons now render ([turn failed <code>],
  [turn aborted], [turn rejected], output-token-limit); startup-failure
  logs use errorChain.
- ui-tui: agent/error notices and the startup-failure line use errorChain.
2026-07-20 17:24:29 +08:00
Tianyi Cui 51f8bef112 Merge remote-tracking branch 'origin/master' into fix/subagent-depth-budget 2026-07-20 17:24:09 +08:00
Tianyi Cui 77ab5516a9 Merge goal tool fixes and align same-session blockers 2026-07-20 17:23:55 +08:00
Tianyi Cui 60ecdbc88b Merge remote-tracking branch 'origin/master' into codex/pr353-retarget-master-20260719 2026-07-20 17:23:17 +08:00
Turtle ccb1d09850 Merge remote-tracking branch 'origin/master' into fetch-failed-diagnostics
# Conflicts:
#	docs/event-producer-consumer.md
2026-07-20 17:21:43 +08:00
Yichen Jiang 8fd38974d9 Merge branch 'master' into fix/acp-subagent-cwd 2026-07-20 17:20:07 +08:00
Tianyi Cui 442330d55b Merge origin/master into worktree/contain-result-observer-rejections 2026-07-20 17:19:55 +08:00
Tianyi Cui 2d345b5882 Merge remote-tracking branch 'origin/master' into fix/subagent-depth-budget
# Conflicts:
#	docs/cordis-catalog/services.md
#	docs/persistence-catalog.md
#	website/zh-CN/api/harness/sessions.md
2026-07-20 17:14:24 +08:00
Tianyi Cui 1a1ff56ab7 fix(tool-subagent): default maxDepth to 3 2026-07-20 17:12:14 +08:00
Tianyi Cui 44345feaf7 Merge origin/master into worktree/acp-default-fs-suite 2026-07-20 17:10:28 +08:00
Tianyi Cui 45aa46e924 Merge branch 'master' into fetch-failed-diagnostics 2026-07-20 17:03:49 +08:00
Tianyi Cui 9f5b01d446 Merge origin/master into worktree/acp-default-fs-suite 2026-07-20 17:03:33 +08:00
Tianyi Cui 7aee299bda docs(compact): correct pruning surface contracts 2026-07-20 17:02:28 +08:00
Tianyi Cui 27f37942df Merge remote-tracking branch 'origin/master' into fix/subagent-depth-budget 2026-07-20 17:02:25 +08:00
Tianyi Cui bd99e8d04a Merge branch 'master' into steering-unwrap 2026-07-20 17:02:18 +08:00
Tianyi Cui 15640ca697 fix(goal): require explained model blockers 2026-07-20 16:53:10 +08:00
Tianyi Cui a625ef4fe9 docs(compact): qualify pruning cache reuse 2026-07-20 16:47:56 +08:00
Tianyi Cui e9d9791501 Merge branch 'codex/goal-domain' into codex/goal-tools 2026-07-20 16:42:04 +08:00
Tianyi Cui 6b44d01bc8 Merge master into compact-tool-result-prune 2026-07-20 16:41:59 +08:00
Tianyi Cui 1468773dcd fix(goal): simplify blockers into one durable phase 2026-07-20 16:39:40 +08:00