Repository navigation
feat(lastcode): wait for exact thread replies - #61
Conversation
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 657a2ab91b
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 96ce2bb795
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
A tracked inter-thread message needs an exact, resumable answer path; reading the newest transcript entry is not reliable enough. This adds opt-in `send --wait` and standalone `wait` commands. Only tracked sends create a narrow correlation record keyed by thread and message; provider startup resolves it to the exact turn, and an authenticated event-driven wait returns that turn’s bounded assistant response or a resumable handle. Plain send remains unchanged. The implementation uses one additive projection table and no polling, MCP daemon, host registry, UI, or generic workflow coordinator. The design was deliberately complexity-braked for one user across two small hosts: exhaustive transport/interruption simulations are deferred, while the core live composed workflow, exact correlation, timeout handles, authoritative failures, subscription readiness, migration/projection behavior, and credential cleanup are covered. Validation: three Luna-high review rounds ending clean across correctness, KISS, and best-practices; full required local CI; 2,664 server tests passed in the publication gate. Implemented with GPT-5.6 Sol (medium) through the Codex harness.
## Problem Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. ## Implemented This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. ## Scope This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. ## Validation - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
## Problem Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. ## Implemented This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. ## Scope This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. ## Validation - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
Codex can already discover and inspect LastCode/T3 Code sessions by probing environment variables and SQLite, but that path is unofficial, inconsistent, and awkward across hosts. A single user running a handful of concurrent threads needs a small supported command surface for identifying, listing, reading, messaging, and waiting on those threads. This umbrella contains all three reviewed slices: 1. [#54](#54) adds Codex-only `current`, `list`, and `read` commands plus the generated `lastcode-thread` launcher. Reads prefer the authenticated live server and use a bounded, read-only SQLite fallback. 2. [#59](#59) adds live-only, fire-and-forget `send`. 3. [#61](#61) adds exact `send --wait` correlation and standalone `wait`, with bounded answers and recovery handles. Codex receives authoritative LastCode and provider thread identity. Cross-host use deliberately composes the same command over SSH. Durable usage documentation is in `docs/user/codex-thread-tools.md`. This remains a personal, low-concurrency tool. It does not add an MCP server, broker, host registry, UI, generic retry framework, or general-purpose orchestrator. If the provider accepts a turn but the process dies, correlation finalization fails, the assistant-finalization marker cannot be persisted before the durable link is recorded, or a checkpoint revert removes the tracked turn, that wait handle can time out; automatic retry and reconciliation are intentionally deferred. - Each slice passed focused tests, package typechecks, lint, formatting, bounded Luna-high review rounds, and exact-head Codex review before being merged into this umbrella. - The rebased patch is identical across all 16 feature commits and contains only 42 thread-tools files. - The exact current head `6c618fa9d` passed 224 focused tests and the guarded quick local CI gate on base `0b0bca08e`, including all workspace tests and typechecks and 2,749 passing server tests. - Exact-head Codex review reported no major issues, and every review thread is resolved. **Do not merge this umbrella PR into `lastcode/main` until the user explicitly rubberstamps it.** Implemented by GPT-5.6 Sol, reviewed with GPT-5.6 Luna, in the T3 Code Codex harness.
A tracked inter-thread message needs an exact, resumable answer path; reading the newest transcript entry is not reliable enough.
This adds opt-in
send --waitand standalonewaitcommands. Only tracked sends create a narrow correlation record keyed by thread and message; provider startup resolves it to the exact turn, and an authenticated event-driven wait returns that turn’s bounded assistant response or a resumable handle. Plain send remains unchanged. The implementation uses one additive projection table and no polling, MCP daemon, host registry, UI, or generic workflow coordinator.The design was deliberately complexity-braked for one user across two small hosts: exhaustive transport/interruption simulations are deferred, while the core live composed workflow, exact correlation, timeout handles, authoritative failures, subscription readiness, migration/projection behavior, and credential cleanup are covered.
Validation: three Luna-high review rounds ending clean across correctness, KISS, and best-practices; full required local CI; 2,664 server tests passed in the publication gate.
Implemented with GPT-5.6 Sol (medium) through the Codex harness.