Skip to content

fix(web): show submitted messages while attachments upload - #97

Merged
alexcstark merged 4 commits into
mainfrom
fix/show-submitted-messages
Nov 4, 2026
Merged

alexcstark merged 4 commits into
mainfrom
fix/show-submitted-messages

Conversation

@alexcstark

@alexcstark alexcstark commented Nov 3, 2026 •

Copy link
Copy Markdown
Owner

Sending a message with an attachment could leave the conversation empty until the upload finished. The conversation now shows the local message immediately while attachment preparation continues.

Failed sends remove the unsent bubble and restore the draft. If newer input exists, it is preserved and a persistent Restore message action keeps the failed snapshot available.

CI exposed existing fork blockers that also needed repair:

  • Pass runtime objects from both composers and use compiler-compatible notification/settings code. Track both mobile thread-group callbacks in the memoized handler.
  • Recognize newer Git's invalid-checkout diagnostic while retaining the worktree and still reporting unexpected errors.
  • Fix the thread-group label layout, release-link repository fixtures, native test isolation, browser selectors, focus/hover timing, the usage fixture's clock, and the prompt-editor test's circular import.

Validation includes seven message-preparation browser regressions and 147 focused unit tests, mobile/web typechecks, 11 release-link tests, compiler checks, and focused browser suites. The latest repair additionally passes five server cases, seven mobile route cases, one compiler case, and 19 browser cases. The prompt-editor suite now completes. The original right-panel CI failure did not reproduce locally; its fixed-frame wait was replaced with deterministic timer draining. CI for the repaired revision runs the full suites.

T4 version .26 builds from the repaired revision, and its local signature, embedded runtime, bundle identity, and profile settings verify. Packaging uses exact patched-dependency pins only in a local build checkout; dependency manifests in this PR are unchanged.

Full-app conversation verification remains unverified because the required T3 Browser panel tools were unavailable. The gate records an inconclusive live-test exception; no full-app screenshots or video were captured.

Model: GPT-6; harness: Codex. Reviewed with Opus in Claude Code and the no-mistakes gate.

@github-actions github-actions Bot added vouch:trusted PR author is trusted by repo permissions or the VOUCHED list. size:L labels Nov 3, 2026
@github-actions

github-actions Bot commented Nov 3, 2026 •

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

ℹ️ The exact PR base did not have a successful artifact. Baseline uses the latest successful main measurement shown below.

Provider Metric Main baseline This PR Impact PR ceiling
Codex Total thread wire 5.0 KiB 5.0 KiB +7 B (+0.1%) 6.8 KiB ✅
Codex Thread snapshot wire 3.8 KiB 3.8 KiB 0 B (0.0%) 4.9 KiB ✅
Codex Live turn WebSocket wire 1.2 KiB 1.2 KiB +7 B (+0.6%) 2.0 KiB ✅
Codex Live turn WebSocket decoded 20.9 KiB 20.9 KiB 0 B (0.0%) 29.3 KiB ✅
Codex Live turn messages 2 2 0 (0.0%) 8 ✅
Claude Total thread wire 5.0 KiB 5.0 KiB 0 B (0.0%) 6.8 KiB ✅
Claude Thread snapshot wire 3.8 KiB 3.8 KiB 0 B (0.0%) 4.9 KiB ✅
Claude Live turn WebSocket wire 1.2 KiB 1.2 KiB 0 B (0.0%) 2.0 KiB ✅
Claude Live turn WebSocket decoded 21.2 KiB 21.2 KiB 0 B (0.0%) 29.3 KiB ✅
Claude Live turn messages 2 2 0 (0.0%) 8 ✅

Baseline: 99c96b0 · PR result: 04d1059 · Source CI: success

Scenario and decoded snapshot size

10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.

  • Codex decoded thread snapshot: 108.5 KiB
  • Claude decoded thread snapshot: 108.8 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

…elease-test fixtures, compiler incompatibilities, and browser-test isolation/selectors while preserving message-feedback code. Focused mobile/web typechecks, formatting/lint, 11 release tests, 4 compiler checks, and 11 browser tests pass. An additional prompt-editor browser probe stalled before execution and was stopped. Publication and fresh CI remain with the outer executor
…agnostics, the usage-test clock, mobile test isolation/compiler dependencies, and browser timing/import-cycle defects. Preserved message-feedback behavior. Passed 5 focused server tests, 7 mobile tests, 1 compiler case, 19 browser tests, and scoped lint/format checks. The original right-panel failure did not reproduce locally; its fixed-frame wait was replaced with deterministic timer draining. Fresh CI, publication, merge, and T4 installation remain with the outer executor
@alexcstark
alexcstark merged commit 5b21b9f into main Nov 4, 2026
26 checks passed
@alexcstark
alexcstark deleted the fix/show-submitted-messages branch November 4, 2026 00:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L vouch:trusted PR author is trusted by repo permissions or the VOUCHED list.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant