Repository navigation
feat: telemetry for the workspace engine - #1513
ralphstodomingo wants to merge 14 commits into
Conversation
Codex review logStacked on #1511; review only the commit above it. Review runs against these claims. Report only a reproducible trace that violates a numbered claim; instances of the disclosed residuals are not findings. A round with no claim violation ends review. Claims
Residuals
Rounds: round 1 on f2bb0a0 found C5 (capabilities summed as connections; fixed in 4c3cf95) and C4 (TUI realm; declined with evidence). Round 2 on 4c3cf95 found C1 (the retry sentinel reported as a connect failure) and C4 (an install rejection unreported), fixed in ab20e9c. Round 3 on ab20e9c found C6 (the precedence error row taking the process-global session), fixed in 0bb8580, which no Codex round has reviewed. The cap of three rounds is spent; no further rounds unless Ralph raises it. Cubic's first pass (on the ready flip) found 9 items: 8 fixed in 82f88d8 (C1, C2, C3, C4, C5, C7, R4, R5 updated above), 1 declined (the dialog's session, as before). 82f88d8 is not Codex-reviewed. Cubic's second pass found the relink dedupe gap and Kilo a dropped session on a create's add; both fixed in a027586, not Codex-reviewed. |
|
@codex review against the numbered claims and the disclosed residuals in the review-log comment on this PR: report only a reproducible trace that violates a numbered claim. Instances of the disclosed residuals are not findings. A round with no claim violation ends review. This PR is stacked on #1511: review only the commit above it. |
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configuration
You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
This PR doesn't fully meet our contributing guidelines and PR template. What needs to be fixed:
Please edit this PR description to address the above within 2 hours, or it will be automatically closed. If you believe this was flagged incorrectly, please let a maintainer know. |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f2bb0a0181
ℹ️ 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 against the numbered claims and the disclosed residuals in the review-log comment on this PR: report only a reproducible trace that violates a numbered claim. Instances of the disclosed residuals are not findings. A round with no claim violation ends review. This PR is stacked on #1511: review only the two commits above it. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4c3cf955a3
ℹ️ 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 against the numbered claims and the disclosed residuals in the review-log comment on this PR: report only a reproducible trace that violates a numbered claim. Instances of the disclosed residuals are not findings. A round with no claim violation ends review. This PR is stacked on #1511: review only the three commits above it. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ab20e9c5be
ℹ️ 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".
Code Review SummaryStatus: No Issues Found | Recommendation: Merge Files Reviewed (17 files)
Previous Review Summaries (10 snapshots, latest commit 4c68447)Current summary above is authoritative. Previous snapshots are kept for context only. Previous review (commit 4c68447)Status: No Issues Found | Recommendation: Merge Files Reviewed (17 files)
Previous review (commit f9c1531)Status: No Issues Found | Recommendation: Merge Files Reviewed (17 files)
Previous review (commit 589f845)Status: No Issues Found | Recommendation: Merge Files Reviewed (14 files)
Previous review (commit 87721c5)Status: No Issues Found | Recommendation: Merge Files Reviewed (13 files)
Previous review (commit a8f283a)Status: No Issues Found | Recommendation: Merge Files Reviewed (13 files)
Previous review (commit cd10a15)Status: No Issues Found | Recommendation: Merge Files Reviewed (13 files)
Previous review (commit 444bfd6)Status: No Issues Found | Recommendation: Merge Files Reviewed (13 files)
Previous review (commit a027586)Status: No Issues Found | Recommendation: Merge Files Reviewed (13 files)
Previous review (commit 82f88d8)Status: 1 Issue Found | Recommendation: Address before merge Overview
Issue Details (click to expand)WARNING
Files Reviewed (13 files)
Fix these issues in Kilo Cloud Previous review (commit 0bb8580)Status: No Issues Found | Recommendation: Merge Files Reviewed (12 files)
Reviewed by gemini-4-argon · Input: 334.8K · Output: 2.7K · Cached: 1.7M Review guidance: REVIEW.md from base branch |
There was a problem hiding this comment.
All reported issues were addressed across 12 files
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
There was a problem hiding this comment.
All reported issues were addressed across 12 files (changes from recent commits).
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
|
@codex review against the numbered claims and the disclosed residuals in the review-log comment on this PR: report only a reproducible trace that violates a numbered claim. Instances of the disclosed residuals are not findings. A round with no claim violation ends review. This PR is stacked on #1511: review only the commits above it. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a027586a01
ℹ️ 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 against the numbered claims and the disclosed residuals in the review-log comment on this PR: report only a reproducible trace that violates a numbered claim. Instances of the disclosed residuals are not findings. A round with no claim violation ends review. This PR is stacked on #1511: review only the commits above it. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 444bfd6a96
ℹ️ 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 against the numbered claims and the disclosed residuals in the review-log comment on this PR: report only a reproducible trace that violates a numbered claim. Instances of the disclosed residuals are not findings. A round with no claim violation ends review. This PR is stacked on #1511: review only the commits above it. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: c427a1b20a
ℹ️ 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 against the numbered claims and the disclosed residuals in the review-log comment on this PR: report only a reproducible trace that violates a numbered claim. Instances of the disclosed residuals are not findings. A round with no claim violation ends review. This PR is stacked on #1511: review only the commits above it. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: cd10a15c49
ℹ️ 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 against the numbered claims and the disclosed residuals in the review-log comment on this PR: report only a reproducible trace that violates a numbered claim. Instances of the disclosed residuals are not findings. A round with no claim violation ends review. This PR is stacked on #1511: review only the commits above it. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a8f283aab2
ℹ️ 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 against the numbered claims and the disclosed residuals in the review-log comment on this PR: report only a reproducible trace that violates a numbered claim. Instances of the disclosed residuals are not findings. A round with no claim violation ends review. This PR is stacked on #1511: review only the commits above it. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 87721c569a
ℹ️ 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".
87721c5 to
589f845
Compare
|
@codex review against the numbered claims and the disclosed residuals in the review-log comment on this PR: report only a reproducible trace that violates a numbered claim. Instances of the disclosed residuals are not findings. A round with no claim violation ends review. This PR is stacked on #1511: review only the commits above it. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 589f8451b0
ℹ️ 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 against the numbered claims and the disclosed residuals in the review-log comment on this PR: report only a reproducible trace that violates a numbered claim. Instances of the disclosed residuals are not findings. A round with no claim violation ends review. This PR is stacked on #1511: review only the commits above it. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f9c1531ce1
ℹ️ 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".
f9c1531 to
4c68447
Compare
37563d1 to
3ce788b
Compare
Attach outcomes, the install prompt and what the user did with it, the precedence snapshot, refusals of datamate_manager and engine errors, each reported once per session when it changes. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
The precedence row summed served capabilities; it now reports the registry connections whose type the engine serves, the count the inventory line uses, and re-reports when that count moves. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
…hat rejects The in-session retry records a transient connect-failed before the real outcome; it no longer reports, and the next settled outcome is compared with the last reported one. A throw past installEngine's result now tracks the same failure rows as a reported failure. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
Rows name their session and workspace explicitly; shown is reported by the surface that rendered the offer; a retry add that throws settles as a failure; turn-hook attach errors are tracked; dedupe signatures cover the escape hatch and extensions; the registry is read only for an enabled snapshot. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
…ate's add Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
…ow names no workspace `confirmedCopy` writes and reads back; the dialog tracks `copied` only when the clipboard then holds the command. `precedenceEvent` sets `workspace_id` explicitly (undefined when unbound and unlinked), as the attach row does. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
The offer command carries the offer's telemetry fields and the server's node major (`arguments`, JSON); `run --attach` reports `shown` with surface `bus` from them when it prints the line. The server's publish is not a display. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
4c68447 to
bb184e9
Compare
|
@cubic review |
@ralphstodomingo I have started the AI code review. It will take a few minutes to complete. |
There was a problem hiding this comment.
All reported issues were addressed across 17 files
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
The bus offer carries the offer's fields only, so publishing no longer awaits `node --version` ahead of the turn boundary; the printed-offer row has no node fields. `confirmedCopy` returns false without a writer, whatever the clipboard holds. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
Closes #1512
Stacked on #1511 (usage rows), itself on #1509; review the commit above #1511.
What
The rows that say whether the workspace engine is there for a linked project, and what gets in the way, per the shared event contract.
workspace_engine_attachwhen a session's attach outcome settles and differs from the last one recorded for that session:attached(withavailable,declaredandmissingcounts andengine_version),engine_missing,engine_too_old(found_version),connect_failed(anerror_class),disabled,unbound. A repeated turn boundary with the same outcome reports nothing.workspace_engine_install_prompt:shownonce per offer with the surface that took it (headless,dialog,bus,toast) and whether Node was found to install with (node_detected,node_major); thenaccepted,installed,install_failed,copiedordeclinedfrom the TUI dialog.workspace_engine_precedencewhen a session's precedence snapshot changes: on or off with the reason, counts of shadowed integration types and connections, extensions, and whether the escape hatch is set.workspace_engine_redirectwhen adatamate_managercall is refused because the project is linked (the workspace's engine owns its integrations).workspace_engine_errorwith a stage (attach,install,precedence) and a masked message when the overlay, an install or a precedence derivation throws.The builders live in
altimate/workspace/engine-telemetry.ts; each hook is one call at an existing decision point (the overlay'srecord,offerOrNotify, the dialog's actions,refresh,refusal). Nothing awaits the network and no tracker can throw into its caller.Not here: an attach duration (the outcome settles across turn boundaries, so there is no single start to measure from), and a redirect row for a datamate call that runs on the engine (that is an ordinary MCP call, reported as
tool_call.via_workspaceby #1511).Why
Linking and usage (#1509, #1511) say a workspace reached the CLI and was used. These rows say whether the engine that serves its integrations was actually available, how the install offer lands, and where it fails: the "what gets in the way" stage of the funnel.
Verification
shownevents with node detection, the precedence snapshot deduped per session, the refusal's redirect row.tsgo --noEmit, oxlint and the marker guard clean.Review log (claims and residuals Codex reviews against): #1513 (comment)
🤖 Generated with Claude Code
https://claude.ai/code/session_011AhtJPr3nmT1Po92ZQk4VE
Summary by cubic
Adds telemetry for the workspace engine to see whether the engine that serves a linked project's integrations was available, how the install offer lands, and where it fails, alongside the usage rows from #1511.
New events
workspace_engine_attach— one row per session when the attach outcome settles or changes, with counts, the engine version, and the reason when it did not attach. Dedupe uses the account-scoped workspace identity, so a relink or the same id under another account reports again. An unbound row names no workspace explicitly. The in-session retry sentinel reports nothing, and a retry add that throws settles as a connect failure.workspace_engine_install_prompt—shownis reported by the surface that rendered the offer (the dialog when it renders, the headless and toast paths when they actually show it, and an attached run that prints the offer it read off the bus), then the user's action, and whether Node was available to install with; an install that throws pastinstallEnginereports the same rows as a reported failure. The bus path'sshownrow carries no node fields, as the probe stays off the publish path.copiedis tracked only when a writer exists and a write-read-back confirms the clipboard holds the command.workspace_engine_precedence— one row per session when the snapshot changes, with the types the session can route through the engine, the local connections the engine shadows, extensions, and the escape hatch flag; a change in shadowed connection count re-reports it, and dedupe uses the account-scoped workspace identity. A disabled snapshot's row names the linked workspace instead of its own binding.workspace_engine_redirect— adatamate_managercall refused because the project is linked.workspace_engine_error— attach, install, or precedence failures with masked, bounded messages, including turn-hook attach failures; a precedence error names the refreshed session.All tracking is fire-and-forget: no tracker awaits the network or throws into its caller, and repeated identical outcomes are not re-reported per session.
Written for commit 951858d. Summary will update on new commits.