Skip to content

feat(M4-P0E2B): ACK-gated bounded MULTISV upload, three-MU readback and SELECT protocol - #345

Merged
masarray merged 3 commits into
mainfrom
feat/m4-p0e2b-ack-gated-uploader
Oct 26, 2026
Merged

masarray merged 3 commits into
mainfrom
feat/m4-p0e2b-ack-gated-uploader

Conversation

@masarray

@masarray masarray commented Oct 26, 2026 •

Copy link
Copy Markdown
Owner

Code

  • Production Studio host M4MultiSvUploadTransaction state machine, one command per matching firmware ACK. MULTISV STATUS/ABORT/BEGIN/CHUNK/VALIDATE/COMMIT/SHOW/SELECT and bounded 48-byte chunks, zero bulk command blasts.
  • Reject malformed ARM3 V2 before serial, monotonic transaction-ID guard, exact cumulative offsets, CRC/size/whole-roster hash, board boot-change guard, generation-bound firmware readback, and duplicate/wrong MU identities. SELECT allowed only after 3 canonical stream readbacks match SCD.
  • Reuse existing single SCD compiler (merged feat(M4-P0E2A): compile exact Studio 3-MU SCD roster to atomic ARM3 V2 binary #344) for native test input. Linux/Windows Qt + paired Windows native-preview harness exercises successful state transitions and corruption/stale-offset/reboot fail-closed cases.
  • No changes to the firmware hot path, GPTimer, PTP, Ethernet MAC or M3.H.3 Stable assets.

Gate and precise status

This is P0E2B transport-neutral host transaction engine in production Studio build, not yet connected to the running DeviceController/one DeviceIoWorker. The GUI must remain DRAFT ONLY until P0E2C wires serial ownership, ACK deadline/timeout, reconnect adoption and validated START. A passing mock-ACK native harness is not physical device acceptance. No 3×4,000fps on-wire claim.

Base: main with P0E1 #343 and P0E2A #344 already merged. Issue #333 / ARD M4. Merge only with exact-head CI success.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-26T01:42:30.701481Z b428508 PR opened
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

…er readback

Transport-neutral host transaction: decode canonical ARM3, bounded 48-byte serial chunks, each ACK checked for transaction/range, full commit identity and 3-MU firmware SHOW verification before SELECT. Native Linux/Windows regression includes stale staging, corrupt CRC and boot-change guard. Kept draft-only until wired into device controller.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: b428508e80

ℹ️ 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".

Comment thread apps/arstack_studio/src/M4MultiSvUploadHarness.cpp Outdated
@masarray
masarray force-pushed the feat/m4-p0e2b-ack-gated-uploader branch from b428508 to c49cfe5 Compare October 26, 2026 01:42
@masarray
masarray changed the base branch from feat/m4-p0e2a-studio-arm3-compile to main October 26, 2026 01:42
@masarray
masarray merged commit be54592 into main Oct 26, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant