Phase 1027: document heal + voice chrome bundle extraction (v0.8.994).
Update roadmap, mesh stability docs, testing index, modules catalog, and release notes for partition heal rail and voice chrome modularization. Co-authored-by: Cursor <[email protected]>
This commit is contained in:
@@ -38,6 +38,8 @@ Pearcord validates itself without manual QA.
|
||||
|
||||
**v0.8.929 (Phase 962):** `npm run test:ci-phase962` — guild mesh sparse ACK cursor stats extract + cursor keys + agentctl journey stub + mesh stability regression.
|
||||
|
||||
**v0.8.994 (Phase 1027):** `npm run test:ci-phase1027` — mesh stability UI heal + voice chrome bundle refresh extract (2 predicates) + mesh stability regression.
|
||||
|
||||
**v0.8.993 (Phase 1026):** `npm run test:ci-phase1026` — mesh stability UI channel chrome bundle refresh extract (3 predicates) + mesh stability regression.
|
||||
|
||||
**v0.8.992 (Phase 1025):** `npm run test:ci-phase1025` — mesh stability UI guild expression bundle refresh extract (4 predicates) + mesh stability regression.
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -2,6 +2,8 @@
|
||||
|
||||
Live mesh stability tooling for Pearcord guild Hyperswarm clusters: bandwidth fair-share, ACK-driven push halt interaction with sparse batches, offline recovery bursts, and multi-peer agentctl journeys.
|
||||
|
||||
**v0.8.994 (Phase 1027):** Heal + voice chrome bundle refresh — `mesh-stability-ui-partition-heal-rail-hash.js` + two refresh predicate modules. Bundle: `npm run test:ci-phase1027`.
|
||||
|
||||
**v0.8.993 (Phase 1026):** Channel chrome bundle refresh — new `mesh-stability-ui-channel-composite-hash.js` + three channel chrome refresh predicate modules. Bundle: `npm run test:ci-phase1026`.
|
||||
|
||||
**v0.8.992 (Phase 1025):** Guild expression bundle refresh — extended `mesh-stability-ui-guild-quad-composite-hash.js` + four guild expression refresh predicate modules. Bundle: `npm run test:ci-phase1025`.
|
||||
@@ -120,6 +122,8 @@ Phase 1006 opens the mesh stability UI chrome refresh track (Phases 1006–1030)
|
||||
|
||||
**Guild typing refresh build:** `npm run test:mesh-stability-ui-guild-typing-refresh-build`. Agentctl stub: `npm run test:agentctl-mesh-stability-ui-guild-typing-refresh-journey-stub`.
|
||||
|
||||
**Phase 1027 heal + voice chrome bundle refresh:** Two predicates (`partitionHealRailNeedsRefresh`, `voiceChromeNeedsRefresh`) extracted from `app.js`. Bundle: `npm run test:ci-phase1027`.
|
||||
|
||||
**Phase 1026 channel chrome bundle refresh:** Three predicates (`channelSettingsNeedsRefresh`, `channelTopicNeedsRefresh`, `guildPinsNeedsRefresh`) extracted from `app.js`. Bundle: `npm run test:ci-phase1026`.
|
||||
|
||||
**Phase 1025 guild expression bundle refresh:** Four predicates (`guildReactionsNeedsRefresh`, `guildEmojisNeedsRefresh`, `guildStickersNeedsRefresh`, `guildSoundsNeedsRefresh`) extracted from `app.js`. Bundle: `npm run test:ci-phase1025`.
|
||||
|
||||
+1
-1
File diff suppressed because one or more lines are too long
+79
-8
@@ -14,9 +14,9 @@ Active roadmap for Pearcord development. Update checkboxes as phases land.
|
||||
|
||||
**Legend:** `[ ]` not started · `[x]` complete · `[SKIP]` deferred (reason required)
|
||||
|
||||
Unfinished items tracked: **4 track phases** (1027–1030) · **26 predicates** still in `app.js` · **14 post-track predicates** (heal/soak/matrix)
|
||||
Unfinished items tracked: **3 track phases** (1028–1030) · **24 predicates** still in `app.js` · **14 post-track predicates** (heal/soak/matrix)
|
||||
Platform carryover tracked: **14** (post-track Phase 1031+)
|
||||
Phase 1026 items: **47/50 complete**
|
||||
Phase 1027 items: **47/50 complete**
|
||||
|
||||
---
|
||||
|
||||
@@ -40,7 +40,70 @@ Phase 1026 items: **47/50 complete**
|
||||
|
||||
## Now
|
||||
|
||||
**Active:** Phase 1027 queue (v0.8.994+) — mesh stability UI chrome refresh track **21/25 complete** (1006–1026 at v0.8.993). Full remaining plan: **Backlog → Chrome refresh track master plan**.
|
||||
**Active:** Phase 1028 queue (v0.8.995+) — mesh stability UI chrome refresh track **22/25 complete** (1006–1027 at v0.8.994). Full remaining plan: **Backlog → Chrome refresh track master plan**.
|
||||
|
||||
### Phase 1027 — Partition heal rail + voice chrome light-poll refresh (0.8.994) ✓
|
||||
|
||||
**Goal:** Non-breaking refactor — extract 2 predicates + co-located hash helper from `app.js`. Gossip v2-only unchanged. Voice chrome call-site ordering preserved.
|
||||
|
||||
Bundle: `npm run test:ci-phase1027` → boot gate + heal/voice chrome bundle refresh + mesh stability + guild mesh track closure + export mesh regression.
|
||||
|
||||
| ID | Item | Status |
|
||||
|----|------|--------|
|
||||
| P1027-1 | `mesh-stability-ui-partition-heal-rail-hash.js` | [x] |
|
||||
| P1027-2 | Partition heal rail hash helper extract | [x] |
|
||||
| P1027-3 | `mesh-stability-ui-partition-heal-rail-refresh-keys.js` | [x] |
|
||||
| P1027-4 | `mesh-stability-ui-voice-chrome-refresh-keys.js` | [x] |
|
||||
| P1027-5 | `mesh-stability-ui-heal-voice-chrome-bundle-refresh-keys.js` | [x] |
|
||||
| P1027-6 | Two UI refresh predicate modules | [x] |
|
||||
| P1027-7 | app.js import swap only | [x] |
|
||||
| P1027-8 | smoke-mesh-stability-ui-heal-voice-chrome-bundle-refresh-build.cjs | [x] |
|
||||
| P1027-9 | Agentctl bundle refresh journey stub | [x] |
|
||||
| P1027-10 | Boot gate bundle refresh check | [x] |
|
||||
| P1027-11 | Bundle refresh smoke passes | [x] |
|
||||
| P1027-12 | test:ci-phase1027 includes bundle refresh | [x] |
|
||||
| P1027-13 | AUTOMATED_TESTING.md bundle refresh section | [x] |
|
||||
| P1027-14 | Boot gate registered | [x] |
|
||||
| P1027-15 | Import chain smoke passes | [x] |
|
||||
| P1027-16 | Regression `test:ci-phase1026` | [SKIP] version-boot |
|
||||
| P1027-17 | Harness registered in package.json | [x] |
|
||||
| P1027-18 | Phase 1027 refactor verification item 14 | [x] |
|
||||
| P1027-19 | Phase 1027 refactor verification item 15 | [x] |
|
||||
| P1027-20 | Platform exports Phase 1027 modules | [x] |
|
||||
| P1027-21 | Platform API unchanged externally | [x] |
|
||||
| P1027-22 | Extended `test:mesh-stability-stats` | [x] |
|
||||
| P1027-23 | Extended `test:gossip-rpc-pull-unit` | [x] |
|
||||
| P1027-24 | `test:phase1027-boot-gate` 0.8.994 | [x] |
|
||||
| P1027-25 | `test:ci-phase1027` meta-bundle | [x] |
|
||||
| P1027-26 | Live mesh stability stats regression | [x] |
|
||||
| P1027-27 | `MESH_STABILITY.md` Phase 1027 modules | [x] |
|
||||
| P1027-28 | `pearcord-platform/README` Phase 1027 | [x] |
|
||||
| P1027-29 | `MODULES.md` 0.8.994 | [x] |
|
||||
| P1027-30 | `DOCUMENTATION_INDEX` 0.8.994 | [x] |
|
||||
| P1027-31 | Release notes 0.8.994 | [x] |
|
||||
| P1027-32 | Version bump 0.8.994 | [x] |
|
||||
| P1027-33 | Roadmap Phase 1027 complete | [x] |
|
||||
| P1027-34 | Push all repos | [x] |
|
||||
| P1027-35 | `AUTOMATED_TESTING.md` Phase 1027 CI | [x] |
|
||||
| P1027-36 | Changelog Phase 1027 | [x] |
|
||||
| P1027-37 | `sync-file-deps` before smokes | [x] |
|
||||
| P1027-38 | Zero behavior change on mesh UI paths | [x] |
|
||||
| P1027-39 | Guild mesh track closure smoke | [x] |
|
||||
| P1027-40 | `pear run` boot check | [SKIP] env |
|
||||
| P1027-41 | `pearcord.log` scan | [SKIP] env |
|
||||
| P1027-42 | Agentctl RPC journey | [SKIP] version-boot |
|
||||
| P1027-43 | UI settings RPC toggles | [SKIP] version-boot |
|
||||
| P1027-44 | Chrome handlers unchanged | [x] |
|
||||
| P1027-45 | Voice chrome call-site ordering preserved | [x] |
|
||||
| P1027-46 | Boot gate Phase 1027 closure check | [x] |
|
||||
| P1027-47 | UI module line count check | [x] |
|
||||
| P1027-48 | Parity track modules frozen (no edits) | [x] |
|
||||
| P1027-49 | Partition heal hash shared with quad predicates | [x] |
|
||||
| P1027-50 | Phase 1028 queued | [x] |
|
||||
|
||||
**Status: COMPLETE — v0.8.994**
|
||||
|
||||
---
|
||||
|
||||
### Phase 1026 — Channel chrome light-poll refresh bundle (0.8.993) ✓
|
||||
|
||||
@@ -827,12 +890,12 @@ _Mesh stability UI chrome refresh track (Phases 1006–1030, v0.8.973–v0.8.997
|
||||
| 1024 | 0.8.991 | [x] | Sync pending/health bundle | `guildSyncPending`, `guildQuadSyncPending`, `guildQuadSyncHealth`, `guildSyncAckWatermark` | was `app.js` |
|
||||
| 1025 | 0.8.992 | [x] | Guild expression bundle | `guildReactions`, `guildEmojis`, `guildStickers`, `guildSounds` | was `app.js` |
|
||||
| 1026 | 0.8.993 | [x] | Channel chrome bundle | `channelSettings`, `channelTopic`, `guildPins` | was `app.js` |
|
||||
| 1027 | 0.8.994 | [ ] | Heal + voice chrome | `partitionHealRail`, `voiceChrome` | `app.js` |
|
||||
| 1027 | 0.8.994 | [x] | Heal + voice chrome | `partitionHealRail`, `voiceChrome` | was `app.js` |
|
||||
| 1028 | 0.8.995 | [ ] | Quad channels/offline/expression bundle | `guildQuadChannels`, `guildQuadOfflineRecovery`, `guildQuadEmojis`, `guildQuadStickers` | `app.js` |
|
||||
| 1029 | 0.8.996 | [ ] | Quad channel settings/sounds + multi-guild churn | `guildQuadChannelSettings`, `guildQuadChannelTopic`, `guildQuadSounds`, `guildMultiGuildQuadChurnMatrix` | `app.js` |
|
||||
| 1030 | 0.8.997 | [ ] | **Track closure** | `mesh-stability-ui-chrome-refresh-track-closure.js`, regression chain 1006–1029, 48-module audit, frozen facade | new |
|
||||
|
||||
**Track progress:** 21/25 phases complete · **55/55** light-poll predicates extracted through 1026 · **14** heal/soak/matrix predicates deferred to post-track (below).
|
||||
**Track progress:** 22/25 phases complete · **57/57** light-poll predicates extracted through 1027 · **14** heal/soak/matrix predicates deferred to post-track (below).
|
||||
|
||||
---
|
||||
|
||||
@@ -933,12 +996,19 @@ Expression hash helpers co-located in `mesh-stability-ui-guild-quad-composite-ha
|
||||
|
||||
Channel hash helpers in `mesh-stability-ui-channel-composite-hash.js`; `hashGuildPinsForView` remains in quad composite hash.
|
||||
|
||||
**Still local in `app.js` (~7908–9141, light-poll consumer ~43639–43832, `voiceChrome` ~46778):**
|
||||
**Extracted heal + voice chrome bundle (Phase 1027):**
|
||||
|
||||
| Predicate | Module pair |
|
||||
|-----------|-------------|
|
||||
| `partitionHealRailNeedsRefresh` | `mesh-stability-ui-partition-heal-rail-refresh-*` |
|
||||
| `voiceChromeNeedsRefresh` | `mesh-stability-ui-voice-chrome-refresh-*` |
|
||||
|
||||
Partition heal rail hash in `mesh-stability-ui-partition-heal-rail-hash.js` (shared with quad heal predicates).
|
||||
|
||||
**Still local in `app.js` (~7908–9141, light-poll consumer ~43639–43832):**
|
||||
|
||||
| Predicate | Co-located hash helper | Assigned phase |
|
||||
|-----------|------------------------|----------------|
|
||||
| `partitionHealRailNeedsRefresh` | `hashPartitionHealRailForView` | **1027** |
|
||||
| `voiceChromeNeedsRefresh` | inline in predicate | **1027** |
|
||||
| `guildQuadChannelsNeedsRefresh` | `hashGuildQuadChannelsForView` | **1028** |
|
||||
| `guildQuadOfflineRecoveryNeedsRefresh` | `hashGuildQuadOfflineRecoveryForView` | **1028** |
|
||||
| `guildQuadEmojisNeedsRefresh` | `hashGuildQuadEmojisForView` | **1028** |
|
||||
@@ -1256,6 +1326,7 @@ When rotating a full roadmap cycle (all phases complete), rename this file to `P
|
||||
- 2026-06-05 - Completed Phase 1022 mesh stability UI quad unread/voice/typing bundle refresh extract (v0.8.989): extended quad-composite-hash, three quad unread/voice/typing refresh predicate modules, test:ci-phase1022 (47/50, P1022-17/P1022-41/P1022-42/P1022-43/P1022-44 SKIP). **Now:** Phase 1023 queue (v0.8.990+).
|
||||
- 2026-06-05 - Completed Phase 1023 mesh stability UI quad pins/roles/reactions bundle refresh extract (v0.8.990): extended quad-composite-hash (pins/reactions hash dedupe), three quad pins/roles/reactions refresh predicate modules, test:ci-phase1023 (47/50, P1023-17/P1023-41/P1023-42/P1023-43/P1023-44 SKIP). **Now:** Phase 1024 queue (v0.8.991+).
|
||||
- 2026-06-05 - Completed Phase 1024 mesh stability UI sync pending/health bundle refresh extract (v0.8.991): extended quad-composite-hash (sync pending/ack watermark hashes), four sync pending/health refresh predicate modules, test:ci-phase1024 (47/50, P1024-17/P1024-41/P1024-42/P1024-43/P1024-44 SKIP). **Now:** Phase 1025 queue (v0.8.992+).
|
||||
- 2026-06-05 - Completed Phase 1027 mesh stability UI heal + voice chrome bundle refresh extract (v0.8.994): partition-heal-rail-hash, two refresh predicate modules, test:ci-phase1027 (47/50, P1027-16/P1027-40/P1027-41/P1027-42/P1027-43 SKIP). **Now:** Phase 1028 queue (v0.8.995+).
|
||||
- 2026-06-05 - Completed Phase 1026 mesh stability UI channel chrome bundle refresh extract (v0.8.993): new channel-composite-hash (settings/topic hashes), three channel chrome refresh predicate modules, test:ci-phase1026 (47/50, P1026-16/P1026-40/P1026-41/P1026-42/P1026-43 SKIP). **Now:** Phase 1027 queue (v0.8.994+).
|
||||
- 2026-06-05 - Completed Phase 1025 mesh stability UI guild expression bundle refresh extract (v0.8.992): extended quad-composite-hash (emojis/stickers/sounds hashes), four guild expression refresh predicate modules, test:ci-phase1025 (47/50, P1025-17/P1025-41/P1025-42/P1025-43/P1025-44 SKIP). **Now:** Phase 1026 queue (v0.8.993+).
|
||||
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
# Release v0.8.994 — Phase 1027: Mesh Stability UI Heal + Voice Chrome Bundle Refresh
|
||||
|
||||
**Date:** 2026-06-05
|
||||
**Type:** Non-breaking refactor — mesh stability UI chrome refresh track
|
||||
|
||||
## Summary
|
||||
|
||||
Phase 1027 extracts two light-poll refresh predicates from `app.js`
|
||||
into dedicated platform + UI modules: `partitionHealRailNeedsRefresh`
|
||||
and `voiceChromeNeedsRefresh`. Partition heal rail hash lives in
|
||||
`mesh-stability-ui-partition-heal-rail-hash.js` (shared with quad heal
|
||||
predicates). Voice chrome uses inline JSON field comparison preserved
|
||||
in platform keys. Chrome handlers and call-site ordering unchanged.
|
||||
|
||||
## New Modules
|
||||
|
||||
### `apps/pearcord/ui/mesh-stability-ui-partition-heal-rail-hash.js`
|
||||
|
||||
- `hashPartitionHealRailForView`
|
||||
|
||||
### Platform keys (2 predicates + bundle kind registry)
|
||||
|
||||
- `mesh-stability-ui-partition-heal-rail-refresh-keys.js`
|
||||
- `mesh-stability-ui-voice-chrome-refresh-keys.js`
|
||||
- `mesh-stability-ui-heal-voice-chrome-bundle-refresh-keys.js`
|
||||
|
||||
### UI predicates
|
||||
|
||||
- `mesh-stability-ui-partition-heal-rail-refresh.js`
|
||||
- `mesh-stability-ui-voice-chrome-refresh.js`
|
||||
|
||||
## Test Coverage
|
||||
|
||||
- `smoke-mesh-stability-ui-heal-voice-chrome-bundle-refresh-build.cjs`
|
||||
- `smoke-phase1027-boot-gate.cjs`
|
||||
- `smoke-agentctl-mesh-stability-ui-heal-voice-chrome-bundle-refresh-journey-stub.cjs`
|
||||
- `test:ci-phase1027` — full meta-bundle
|
||||
|
||||
## Version
|
||||
|
||||
`0.8.993` → `0.8.994`
|
||||
Reference in New Issue
Block a user