Skip to content

Session Handoff [hw-cli]: liquidraver/ZephCore#98 rebased onto #99 and pushed; fork #44/#45 ready for upstream on Pieter's go #46

Closed

Description

@ptr727

Next steps, in priority order

  1. Answer liquidraver's feedback on rak4631: use a fitted RAK12002 RTC, and keep its backup switchover enabled liquidraver/ZephCore#98. The rebase was pushed as clean branch rak4631-rak12002-rtc at ad2df09, with a reply to the owner's review posted on 2026-10-05. Fork iteration PR rak4631: use a fitted RAK12002 RTC, and keep its backup switchover enabled (iteration branch) #35 is at 7c75633, the same tree. List everything posted on rak4631: use a fitted RAK12002 RTC, and keep its backup switchover enabled liquidraver/ZephCore#98 and rak4631: use a fitted RAK12002 RTC, and keep its backup switchover enabled (iteration branch) #35 after 2026-10-05T15:40Z (issue comments, review comments, reviews). Fix on the dirty branch first, run local review, then re-squash and force-push the clean branch with a lease, on Pieter's go-ahead. Done means the owner has merged it or asked for nothing more.
  2. Upstream PRs for fork cli: bound sensor list's start index and its pages #44 (sensor list bounds, fork issue sensor list <start> wraps a large start negative and prints NULL names #43) and rtc: write the RX8130CE weekday one-hot #45 (RX8130CE weekday one-hot, fork issue RTC save writes the weekday in binary; the RX8130CE's WEEK register is one-hot #39), when Pieter says go. Both have had local review and Copilot rounds. Squash each onto current dev as its own clean branch, and use the fork PR body as the upstream body. Name the MeshCore counterparts (Reject a negative sensor list start index 🤖🤖 meshcore-dev/MeshCore#3433, Write and read the RX8130CE WEEK register as one-hot 🤖🤖 meshcore-dev/MeshCore#3550), per Pieter's keep-in-sync policy.
  3. Close the rtc: identify RTCs by documented always-zero bits; stop skipping real ones liquidraver/ZephCore#99 contribution, if Pieter agrees (asked at close; see the comments below). Close fork RTC probe: identify RTCs by documented always-zero bits, stop skipping real ones (iteration branch) #40 unmerged and delete work/rtc-probe-identity and rtc-probe-identity.
  4. Hold companion: mark a CLI reply cut to the app frame (iteration branch) #27-companion: never treat an over-the-air CLI command as local (iteration branch) #32 until Pieter says go (his answer of 2026-10-04 on Session Handoff [hw-cli]: liquidraver/ZephCore #98 and #99 upstream; monitor them, reconnect with MeshCore and Zephyr sessions #41).
  5. hw CLI on hardware (Add hw hardware-report CLI command (iteration branch) #1, Add the hw hardware-report CLI command (rebased, hw CLI only) #16). Not re-run since it was separated out.

External blockers

Internal dependencies

State (re-derive: git worktree list, gh pr list)

The parked decision queue

0 issues carry decision on this fork. Questions put to Pieter at close are commented below.

What the last round did

What not to repeat

  • Comment-accuracy review loops. After the code was settled, five extra passes went on comment sentences, each finding faults in the previous fix's wording. Write comments that state only what the code does, without qualifying cases, from the first draft. Cutting a claim ends the loop; refining it does not.
  • A posted reply drifted from the reviewed code. The reply was drafted before the last review rounds narrowed a claim, and it went out with the old wording. Re-read every drafted text against the final review findings before posting.
  • Building against the shared Zephyr symlink after upstream changes a patch. It would re-patch the tree every other worktree uses. Give the worktree its own Zephyr git worktree at the manifest revision.
  • Side effects inside log macro arguments are compiled out with CONFIG_LOG=n, and every hardware test used debug builds. Check a release image for anything a log call wraps.

New learnings

  • None beyond the four above. They are about this chain's work and have no other durable home.

Activity

  1. added
    handoffA link in the session handoff chain, one open issue per track
    on Oct 5, 2026
  2. ptr727 commented on Oct 5, 2026

    @ptr727
    OwnerAuthor

    Questions put to Pieter at close, 2026-10-05 (PT), and his answers:

    1. Close the finished rtc: identify RTCs by documented always-zero bits; stop skipping real ones liquidraver/ZephCore#99 contribution? "Close RTC probe: identify RTCs by documented always-zero bits, stop skipping real ones (iteration branch) #40, delete both". Done: fork RTC probe: identify RTCs by documented always-zero bits, stop skipping real ones (iteration branch) #40 is closed unmerged, and work/rtc-probe-identity and rtc-probe-identity are deleted on the fork and locally, along with their worktrees.
    2. Upstream PRs for the new fixes? "cli: bound sensor list's start index and its pages #44 now, rtc: write the RX8130CE weekday one-hot #45 after rak4631: use a fitted RAK12002 RTC, and keep its backup switchover enabled liquidraver/ZephCore#98".

    Next steps, updated: 1. Monitor liquidraver#98 and liquidraver#100 and answer feedback. 2. After liquidraver#98 merges, open #45 upstream. 3. Hold #27-#32. 4. hw CLI on hardware.

    Queue: 0 open questions (0 issues carry decision).

  3. ptr727 commented on Oct 5, 2026

    @ptr727
    OwnerAuthor

    Session closed 2026-10-05 09:26 PT with nothing new on liquidraver#98, liquidraver#100 or fork #35/#44/#45 since this link was written; upstream dev still 52644a8. Pieter relaunches later today: start with next step 1 and list activity posted after 2026-10-05T16:26Z on those five PRs (issue comments, review comments, reviews), including any Copilot round on liquidraver#100. Queue: 0 open questions.

  4. ptr727 commented on Oct 5, 2026

    @ptr727
    OwnerAuthor

    Parity note from the MeshCore session at close (its handoff is ptr727/meshcore-dev-MeshCore#19, which points here):

  5. ptr727 commented on Oct 5, 2026

    @ptr727
    OwnerAuthor

    From the Zephyr session (closing 2026-10-05 ~09:30 PDT), for the relaunched ZephCore session:

    • Zephyr handoff: ptr727/zephyrproject-rtos-zephyr#32 (track dm9051-ch390).
    • Zephyr implements the same five RV3028 rules as #98: EEbusy gate (in zephyrproject-rtos/zephyr#121252), BSF bracket, year-00-first write order with year 00 = not set, 35h through a masked compare (Zephyr stores FD=111 when devicetree has no clkout-frequency; Pieter: keep as is), and an RV3028-only scope. The guard and the write order are in fork draft PR ptr727/zephyrproject-rtos-zephyr#31 (unsigned, not upstream). Parity confirmed on hardware with board 26B95...; its 35h was restored to 40 and the clock set from host UTC, and you have since verified it.
    • The Zephyr RV3028 driver files were swept for side effects in LOG_*/__ASSERT arguments: clean.
  6. ptr727 commented on Oct 5, 2026

    @ptr727
    OwnerAuthor

    Resumed 2026-10-05 (PT). Activity since 16:26Z:

  7. ptr727 commented on Oct 5, 2026

    @ptr727
    OwnerAuthor

    Update 2026-10-05 (PT). Pieter decided two things this session (scope: these two PRs, this session):

    1. cli: reject a negative sensor list start index liquidraver/ZephCore#100: "Agree, cut to one line".
      • The reply and evaluation: the parse wraps through unsigned arithmetic, which is defined and is not a buffer overflow. The only reachable fault was the negative start. The 256-vs-161 page bound is latent, because ZephyrSensorManager has one setting.
      • The dirty branch is at 7f4688e. The clean branch sensor-list-bounds was force-pushed with a lease to 8190b40, a one-line diff. The title and body are updated, and the reply is posted.
    2. Fork rtc: write the RX8130CE weekday one-hot #45 → upstream: "Open rtc: write the RX8130CE weekday one-hot #45 upstream now".

    Also: fork dev was fast-forwarded to cdd6cc6. The MeshCore session was told about both changes (the liquidraver#100 divergence from #3433, and liquidraver#101 as the counterpart of #3550). Zephyr is unaffected and was not messaged.

    Next steps: 1. Monitor liquidraver#100 and liquidraver#101 for owner feedback. 2. Hold #27-#32. 3. hw CLI on hardware. Queue: 0 open questions.

  8. ptr727 commented on Oct 5, 2026

    @ptr727
    OwnerAuthor

    Update 2026-10-05, ~12:50 PT.

    Next steps: 1. Monitor liquidraver#101 for owner feedback. Once it merges, close fork #45 and #39 and delete work/rx8130ce-week-one-hot and rx8130ce-week-one-hot, on Pieter's go. 2. Hold #27-#32. 3. hw CLI on hardware. Queue: 0 open questions.

  9. ptr727 commented on Oct 5, 2026

    @ptr727
    OwnerAuthor

    Hardware, 2026-10-05 ~13:40 PT. The RAK4631 without the extra sensor modules was lent to the Zephyr session for about 15 minutes for its RV3028 BASE/FIX demo, and handed back with its test app on it. It reports that no image enabled a radio, and that 35h (written 40 -> 47 by Zephyr's init) was restored to 40, with 36h=01 and 37h=34 unchanged.

    ZephCore is reflashed: a repeater debug build of upstream dev d1cc647 (includes liquidraver#98 and liquidraver#100), with default TX at 1 dBm. The touch missed twice, then worked. The prefs carried over: name lpxz, freq 927.875, tx 1, advert.interval 0. clock reads the time the Zephyr session set from host UTC, which means the merged liquidraver#98 RTC restore is working on hardware.

  10. ptr727 commented on Oct 5, 2026

    @ptr727
    OwnerAuthor

    Parity: meshcore-dev/MeshCore#3433 is now the same one-line guard as liquidraver#100 (head bbacf47a). Its body links liquidraver#100 as the source of the scope cut and lists the paging bound as not fixed. The MeshCore session tested it on its RAK4631. No MeshCore action is needed for the YSN8900.

  11. ptr727 commented on Oct 5, 2026

    @ptr727
    OwnerAuthor

    Continued in #47, round 7 on track hw-cli.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    handoffA link in the session handoff chain, one open issue per track

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions