Commit Graph

5297 Commits

Author SHA1 Message Date
Friel
b2acee0938 ci: bump workflow timeouts 2026-03-30 08:45:50 +00:00
Friel
6cf38738d6 ci: bump workflow timeouts 2026-03-30 08:45:50 +00:00
Friel
484eb1ebfd ci: bump workflow timeouts 2026-03-30 08:45:49 +00:00
Friel
7430b77494 ci: bump sdk and arglint timeouts 2026-03-30 08:44:52 +00:00
Friel
6a516b1947 ci: bump sdk and arglint timeouts 2026-03-30 08:44:52 +00:00
Friel
bef956ccd4 ci: bump sdk and arglint timeouts 2026-03-30 08:44:52 +00:00
Friel
c4e5ccdc77 merge upstream/dev/friel/watchdog-runtime-and-prompts into collab stack
# Conflicts:
#	codex-rs/core/tests/suite/subagent_notifications.rs
2026-03-30 07:54:32 +00:00
Friel
63b1bb2a8e test(core): handle namespaced spawn_agent description 2026-03-30 07:49:11 +00:00
Friel
ab51df57db test(core): align watchdog prompt-layering expectations 2026-03-30 07:27:20 +00:00
Friel
bf47ade0bb test(core): align watchdog prompt-layering expectations 2026-03-30 07:22:13 +00:00
Friel
a2d94eafb1 test(core): keep notification test non-forked by default 2026-03-30 06:14:32 +00:00
Friel
8bbc644b76 test(core): keep notification test non-forked by default 2026-03-30 06:09:12 +00:00
Friel
d4489dc497 test(core): fix subagent notification validator 2026-03-30 05:51:27 +00:00
Friel
5b498925e3 test(core): fix subagent notification validator 2026-03-30 05:48:14 +00:00
Friel
9c1342c36a merge origin/dev/friel/fork-context-inherits-parent-model into collab stack 2026-03-30 04:51:06 +00:00
Friel
d14cfd2597 merge upstream/dev/friel/watchdog-runtime-and-prompts into collab stack 2026-03-30 04:26:24 +00:00
Friel
c79cb41b7d fix(core): preserve effective effort for fork-context children 2026-03-30 04:22:19 +00:00
Friel
3fe0995729 merge upstream/dev/friel/fork-context-inherits-parent-model into collab stack 2026-03-30 03:41:43 +00:00
Friel
e13dc9d843 chore(core): clean watchdog prompt layering leftovers 2026-03-30 03:37:39 +00:00
Friel
df69f49b6b test: refresh fork-context expectations 2026-03-30 03:07:31 +00:00
Friel
54ec91e277 fix(stack): finish 20260330 collab integration 2026-03-30 02:36:50 +00:00
Friel
845a0e571a merge upstream/dev/codex/add-fork-option-to-codex-exec into collab stack 2026-03-30 01:54:37 +00:00
Friel
fb462c3efb merge upstream/dev/codex/add-custom-models-support-in-config.toml-r2 into collab stack 2026-03-30 01:54:32 +00:00
Friel
52c823d2a4 merge upstream/dev/friel/tui-watchdog-and-subagent-behavior into collab stack 2026-03-30 01:53:49 +00:00
Friel
379d9f68a5 merge upstream/dev/friel/watchdog-runtime-and-prompts into collab stack 2026-03-30 01:53:08 +00:00
Friel
a245175736 merge model-fallback-list into collab stack 2026-03-30 01:43:00 +00:00
Friel
8885b0f59e merge dev/friel/agent-tools-namespace into collab stack 2026-03-30 01:42:56 +00:00
Friel
b0d543f21f merge origin/friel/auto-unarchive-resume into collab stack 2026-03-30 01:42:50 +00:00
Friel
41f0cb36cb merge upstream/dev/friel/fork-references into collab stack 2026-03-30 01:42:45 +00:00
Friel
4883b3ca9c fix(core): annotate spawn model fallback positional args 2026-03-30 01:38:06 +00:00
Friel
1222f23d0c feat(core): expose agent tools in namespace 2026-03-30 00:54:18 +00:00
Friel
2da9e1b7f2 feat(core): remove spawn_mode from agent roles 2026-03-30 00:39:45 +00:00
Eric Traut
bb95ec3ec6 [codex] Normalize Windows path in MCP startup snapshot test (#16204)
## Summary
A Windows-only snapshot assertion in the app-server MCP startup warning
test compared the raw rendered path, so CI saw `C:\tmp\project` instead
of the normalized `/tmp/project` snapshot fixture.

## Fix
Route that snapshot assertion through the existing
`normalize_snapshot_paths(...)` helper so the test remains
platform-stable.
2026-03-29 17:54:17 -06:00
Friel
0ad661977e fix(core): preserve role precedence for model fallback 2026-03-29 23:47:22 +00:00
Friel
bbbe245f14 add deferred watchdog self-close tool 2026-03-29 22:10:23 +00:00
Friel
d45c1a581f Add ordered model fallback list for subagent spawn 2026-03-29 21:36:03 +00:00
Michael Bolin
af568afdd5 codex-tools: extract utility tool specs (#16154)
## Why

The previous `codex-tools` migration steps moved the shared schema
models, local-host specs, collaboration specs, and related adapters out
of `codex-core`, but `core/src/tools/spec.rs` still contained a grab bag
of pure utility tool builders. Those specs do not need session state or
handler logic; they only describe wire shapes for tools that
`codex-core` already knows how to execute.

Moving that remaining low-coupling layer into `codex-tools` keeps the
migration moving in meaningful chunks and trims another large block of
passive tool-spec construction out of `codex-core` without touching the
runtime-coupled handlers.

## What changed

- extended `codex-tools` to own the pure spec builders for:
  - code-mode `exec` / `wait`
  - `js_repl` / `js_repl_reset`
- MCP resource tools `list_mcp_resources`,
`list_mcp_resource_templates`, and `read_mcp_resource`
  - utility tools `list_dir` and `test_sync_tool`
- split those builders across small module files with sibling
`*_tests.rs` coverage, keeping `src/lib.rs` exports-only
- rewired `core/src/tools/spec.rs` to call the extracted builders and
deleted the duplicated core-local implementations
- moved the direct JS REPL grammar seam test out of
`core/src/tools/spec_tests.rs` so it now lives with the extracted
implementation in `codex-tools`
- updated `codex-rs/tools/README.md` so the documented crate boundary
matches the new utility-spec surface

## Test plan

- `CARGO_TARGET_DIR=/tmp/codex-tools-utility-specs cargo test -p
codex-tools`
- `CARGO_TARGET_DIR=/tmp/codex-core-utility-specs cargo test -p
codex-core --lib tools::spec::`
- `just fix -p codex-tools -p codex-core`
- `just argument-comment-lint`

## References

- #15923
- #15928
- #15944
- #15953
- #16031
- #16047
- #16129
- #16132
- #16138
- #16141
2026-03-29 14:34:36 -07:00
Friel
4dc32e8c5e feat(core): reset watchdog on owner input 2026-03-29 21:28:15 +00:00
Friel
d4ed343c1d docs(core): guard against accidental watchdog closure 2026-03-29 21:20:48 +00:00
Friel
45bf65d007 Render watchdog countdown in subagent panel 2026-03-29 21:11:31 +00:00
Friel
b1213d0a2a feat(core): preserve watchdog fork prefix 2026-03-29 19:29:54 +00:00
Eric Traut
38e648ca67 Fix tui_app_server ghost subagent entries in /agent (#16110)
Fixes #16092

The app-server-backed TUI could accumulate ghost subagent entries in
`/agent` after resume/backfill flows. Some of those rows were no longer
live according to the backend, but still appeared selectable in the
picker and could open as blank threads.

*Cause*
Unlike the legacy tui behavior, tui_app_server was creating local
picker/replay state for subagents discovered through metadata refresh
and loaded-thread backfill, even when no real local session or
transcript had been attached. That let stale ids survive in the picker
as if they were replayable threads.

*Fix*
Stop creating empty local thread channels during subagent metadata
hydration and loaded-thread backfill.
When opening /agent, prune metadata-only entries that thread/read
reports as terminally unavailable.
When selecting a discovered subagent that is still live but not yet
locally attached, materialize a real local session on demand from
thread/read instead of falling back to an empty replay state.
2026-03-29 12:19:34 -06:00
Friel
67e4190951 Merge remote-tracking branch 'origin/dev/friel/fork-context-inherits-parent-model' into repair/watchdog-prompt-layering 2026-03-29 18:07:01 +00:00
Friel
fb8653cd30 Merge remote-tracking branch 'origin/dev/friel/agent-tools-namespace' into repair/watchdog-prompt-layering 2026-03-29 18:07:00 +00:00
Eric Traut
54d3ad1ede Fix app-server TUI MCP startup warnings regression (#16041)
This addresses #16038

The default `tui_app_server` path stopped surfacing MCP startup failures
during cold start, even though the legacy TUI still showed warnings like
`MCP startup incomplete (...)`. The app-server bridge emitted per-server
startup status notifications, but `tui_app_server` ignored them, so
failed MCP handshakes could look like a clean startup.

This change teaches `tui_app_server` to consume MCP startup status
notifications, preserve the immediate per-server failure warning, and
synthesize the same aggregate startup warning the legacy TUI shows once
startup settles.
2026-03-29 11:57:00 -06:00
Friel
cc60cafc50 feat(core): add role-level fork_context defaults 2026-03-29 17:56:12 +00:00
Friel
70ba3d1e29 feat(core): expose agent tools in namespace 2026-03-29 17:56:12 +00:00
Friel
2c3bff24e4 test(core): fix multi-agent v2 fork-context regression
Co-authored-by: Codex <noreply@openai.com>
2026-03-29 17:04:29 +00:00
Friel
be051e056e feat(core): force forked agents to inherit parent model
Co-authored-by: Codex <noreply@openai.com>
2026-03-29 17:04:28 +00:00
Friel
a2f37d5548 fix(tui): preserve watchdog behavior on refreshed base
Resolve the remaining TUI-side merge drift after restacking the watchdog and subagent behavior branch onto the refreshed TUI foundation branch.

Co-authored-by: Codex <noreply@openai.com>
2026-03-28 23:09:20 -07:00