Skip to content

Phase 4D-R2c: expose BRCB ownership and replay controls through MMS - #20

Closed
masarray wants to merge 8 commits into
agent/phase-4d-r2b-brcb-mms-contextfrom
agent/phase-4d-r2c-brcb-mms-objects
Closed

masarray wants to merge 8 commits into
agent/phase-4d-r2b-brcb-mms-contextfrom
agent/phase-4d-r2c-brcb-mms-objects

Conversation

@masarray

@masarray masarray commented Aug 9, 2026

Copy link
Copy Markdown
Owner

Scope

Stacked on Phase 4D-R2b. Expose the bounded BRCB operational control plane through the static MMS object model, using the association-aware write context introduced in R2b.

Implemented MMS attributes

  • RptID read-only
  • RptEna read/write
  • DatSet read-only
  • ConfRev read-only
  • PurgeBuf read/write command (readback false)
  • EntryID read/write
  • ResvTms read/write
  • Owner read-only

Operational semantics

  • first RptEna=true on a free BRCB implicitly claims connection-lifetime ownership (ResvTms=0)
  • another association/Owner is denied while the BRCB is owned
  • RptEna=false does not clear Owner
  • positive ResvTms retains/updates the owning reservation
  • EntryID=X resumes delivery after retained X
  • all-zero EntryID rewinds to the oldest retained entry
  • unavailable EntryID maps to MMS data-access object-value-invalid (11)
  • PurgeBuf=true clears the retained queue and replay-gap state; readback remains false
  • ResvTms=0 releases the reservation while reporting is disabled
  • latest retained EntryID is exposed by the runtime for MMS readback

Hard-profile evidence

Adds an encoded MMS write smoke that crosses BER decode -> static dispatcher -> contextual write callback -> BRCB ownership/runtime. It exercises two clients, two captured reports, replay/resync, stale EntryID rejection, purge, and release under GCC/Clang -fno-exceptions -fno-rtti.

Deliberately deferred

  • mutable OptFlds, BufTm, TrgOps, IntgPd definition lifecycle
  • association-close callback wiring from transport into BRCB control
  • persistence format v2 for delivered replay history/cursor/operational recovery
  • physical ESP32-P4 flash acceptance (still READY_NOT_MEASURED)

masarray commented Sep 5, 2026

Copy link
Copy Markdown
Owner Author

Closing as superseded by #51, which landed the cumulative BRCB R1–R3 server stack on current main, including the maintained ownership/replay control path. This older stacked MMS-object tranche is no longer active.

@masarray masarray closed this Sep 5, 2026
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