Adom Hydrogen
Public Made by Adomby adom
The whole Adom experience as one signed native app: your editor, your AI agent, and the full electronics design toolchain, running locally on your own machine.
run-prompt: cold first tab ends submit_unconfirmed though the prompt was delivered (1.0.190)
On 1.0.187+, a send that genuinely worked can end as submit_unconfirmed when it is the FIRST, cold AI tab on a slow machine. The prompt lands and the AI runs, but the job's terminal state says delivery was not confirmed, so every dock dashboard shows the user a hedge on a successful send.
Measured
Two clicks, kicad-bridge dashboard, ah 1.0.190 on winvm, driven through the shared newbie-panel.js 2.22.0 send path.
Click 1, cold (no Claude tab open):
| moment | t |
|---|---|
POST /ai-threads/run-prompt answered, job f321e40b |
4.8 s |
| tab seen | 1.5 s |
| submitted (send clicked) | 7.0 s |
sid identified (277d91bf) |
28.6 s |
terminal state submit_unconfirmed |
~37 s |
Reported reason: "the tab has its session, but no UserPromptSubmit hook arrived within 30s of the send click."
Click 2, warm (a Claude tab already open): submitted 4.9 s, sid d512fd40 identified 21.6 s, terminal state working. Same dashboard, same box, minutes apart.
The only material difference is cold vs warm. The 30 s hook window is measured from the 7.0 s submit click, so it expires at ~37 s, and the cold tab identified its session at 28.6 s with the hook arriving after the deadline.
Why this is worth fixing rather than documenting
The window is not tight everywhere, which is what makes it a trap. On AdomLapper, nb-bridge measured identified_ms of 1447 and 2517 on the same ah version. winvm's cold first tab is roughly ten times slower, so the same code is comfortably inside the window on one machine and outside it on another.
The user-visible consequence is the wrong way round. submit_unconfirmed is a terminal FAILURE state, so the shared panel resolves it as opened, not delivered, and the user is told "Sent, but delivery was not confirmed" for a prompt that actually arrived and is being answered. A user who believes that hedge and clicks again double-sends.
This may be a meaningful part of why Send to AI is currently perceived as unreliable: not sends that fail, but successful sends reported as unconfirmed on cold tabs.
Suggested direction
Measure the window from when the tab is IDENTIFIED rather than from the submit click, or extend it for the first cold tab of a session, or let a later hook arrival upgrade an already-terminal submit_unconfirmed to working. Any of the three removes the false negative without weakening the genuine submit_failed case (prompt in the tab, send never clicked), which is a different and still-useful state.
Provenance
Found by the kicad-bridge thread during the fleet rollout of the 1.0.187+ job contract. Corroborating timings from nb-bridge on AdomLapper and adom-lbr on winvm. Filed by the ah dock bar thread because the dashboards do not own /ai-threads/run-prompt.
Related: POST latency for run-prompt was measured at 1.85 s (AdomLapper) and 20.8 to 22.6 s (winvm), against a documented expectation of "well under a second". Same cold/slow-machine pattern, and worth a look while this is open.