Context Recovery
Current Context
Where PagePoint is right now. Read this before touching code after a reset or handoff.
Current Architectural State
PagePoint is split into PPOE and PPSM. PPOE is the live operations appliance. PPSM is the service appliance. Maintenance must never interfere with operational paging.
Context recovery rule: Read the Portal. Build the Code. Update the Portal.
AI recovery file: AI_CONTEXT.md is regenerated after meaningful sessions as the one-file current-state briefing.
Subsystem Status
| Subsystem | Status |
|---|---|
| PPOE | DYY9 release-candidate runtime. Stored messages, sequences, live pages, All Call, output mapping, and first-tap live-page handoff are operational on OE-001. |
| PPSM | Service appliance foundation active; wired-only normal operation is applied, with Wi-Fi retained as an emergency profile only. PPSM now owns phone time provisioning and OE health refresh display. |
| Networking | PPSM owns DNS/DHCP, Android validation services, and local NTP service at the appliance level. |
| Phones | Ulefone Armor X12 target; Golden Phone reference captured from serial 3112SH2010130064. |
| Provisioning | Lisa test phone verified with Device Owner, lock task, kiosk UI, keyguard disabled, rotation lock, screen timeout, PagePoint app, Wi-Fi, PPOE connection, PagePoint NTP, and DYY9 timezone. The wizard now separates guided human setup from automatic PPSM provisioning after ADB authorization. |
| Timekeeping | PPSM has DS3231 RTC support on GPIO SDA 21 / SCL 20 and runs chrony as local site NTP at 192.168.50.2. OE is synced to PPSM; phones are provisioned to use PPSM NTP and America/New_York. |
| Engineering Portal | Canonical source now lives at C:\PagePoint\engineering-portal\src. |
| Repository | Local Git monorepo at C:\PagePoint is now the official engineering history baseline. |
| Operational Audio | PagePoint Audio Standard V1 is active: 16 kHz, 16-bit, mono Linear PCM WAV with shared CHIME -> ZONE ID -> MESSAGE stored playback and four-zone concurrent routing. |
| Audio Runtime | RoutedAudioMixer is now the single ALSA/aplay owner for stored files, live-page chimes, and live microphone PCM. FFmpeg remains an external decoder/prober for now; removal is deferred. |
| DYY9 OE image | C:\PagePoint\OE-MASTER-071926.img is the captured 64 GB image baseline. Active OE-001 contains later release-candidate fixes and should be recaptured before final install duplication. |
Current UI Work
- PPSM touchscreen/service UI is active work.
- PPSM Service Portal is the installer/admin surface for keyboard-heavy tasks.
- PPSM phone count is sourced from PPOE health rather than the local phone watcher stub.
- PPSM Provision Phone wizard has three visible states: Guided Human Setup, Control Transfer, and Automatic Provisioning. After ADB authorization, PPSM shows a handoff screen and advances through verifiable automatic steps without unnecessary NEXT presses.
- PPSM human instruction screens now use the PagePoint Instruction Language: short task checklists on the left, large demonstration/action panel on the right, and explicit user-turn versus PagePoint-working messaging.
- PPOE Settings entry remains in its original status-bar location. The Settings modal now opens focused sub-modals for ROLE, TRAFFIC CONTROL, SEQUENCE BUILDER, FIND PHONES, and confirmed ALL CANCEL.
- PPSM phone provisioning layout is portrait-first with larger animation/demonstration area, larger directions, retained NTP/time-zone status, and BACK/NEXT controls in the footer.
Immediate Priorities
- Freeze DYY9 OE release-candidate behavior without broad audio refactors.
- Keep
LIVE_TRACEdisabled by default and recapture OE-001 after trace-cleaned validation. - Recapture OE-001 after release-candidate cleanup so install media includes all post-2026-07-19 fixes.
- Continue PPSM phone provisioning polish and installer acceptance testing.
- Keep PPSM normal operation wired-only while preserving Wi-Fi as an intentional emergency access path.
- Use the Golden Phone Reference plus DYY9 time/NTP checks to drive provisioning health checks and repair targets.
- Keep Engineering Portal source updated as architecture changes.
DYY9 Audio Release Notes
Stored-message startup latency was reduced from about 2.5 seconds to the 300 ms scheduling target by replacing synchronous playback-path duration probing with a startup duration cache. Live-page reliability now takes priority over perfect underrun counters: limited, brief clicks/pops are acceptable if live pages start reliably and quickly.
Current rule: LIVE PAGE IS KING. Zone live pages interrupt only their own zone; All Call live pages interrupt all zones. Unrelated stored messages and sequences continue through zone live pages.
See DYY9 Release Candidate for the complete fault/fix record.
Open Questions
- Exact safe post-reboot wait window before kiosk health should fail.
- APK versioning, update, downgrade, and package migration policy.
- Home-screen icon cleanup and launcher layout strategy.
- Whether future PPSM content compilation should generate audio from structured text packages.
- Exact Cloudflare publishing command or repo integration for
engineering.pagepoint.io. - How much of the older local PPSM docs should be updated or replaced by portal source pages.
- Monitor PPSM wired-only behavior after Wi-Fi autoconnect was disabled on the physical SM.
- Future regional deployments need site-configurable timezone; DYY9 remains frozen on
America/New_York. - Future chime split will use
message_chime.wavandpage_chime.wavafter client-approved files are supplied and validated. - Future FFmpeg removal remains a contained audio-subsystem project, not a DYY9 release blocker.
- Eventually decide when to add a remote Git host; current repository is local-only by design.