docs: Phase 959 peer quality snapshot + v0.8.926 release notes

Roadmap Phase 959 complete (47/50). Document guild-mesh-peer-quality-snapshot
module, test:ci-phase959 bundle, and production mesh hardening track progress.

Co-authored-by: Cursor <[email protected]>
This commit is contained in:
Raven Scott
2026-06-05 02:25:27 -04:00
co-authored by Cursor
parent 8a2f52199a
commit ba701565fd
8 changed files with 68 additions and 54 deletions
+2
View File
@@ -6,6 +6,8 @@ Pearcord validates itself without manual QA.
**v0.8.837 (Phase 870):** `npm run test:ci-phase870` — media mesh protomux-rpc attach live (`PEARCORD_MEDIA_RPC_WIRE=1`) + attach/voice regression + `test:ci-phase869`.
**v0.8.926 (Phase 959):** `npm run test:ci-phase959` — guild mesh peer quality snapshot extract + view field registry + agentctl journey stub + mesh stability regression.
**v0.8.925 (Phase 958):** `npm run test:ci-phase958` — guild mesh bandwidth window stats build + cap keys registry + agentctl journey stub + mesh stability regression.
**v0.8.924 (Phase 957):** `npm run test:ci-phase957` — guild mesh gossip outbox stats build + lane alert keys + agentctl journey stub + mesh stability regression.
File diff suppressed because one or more lines are too long
+2
View File
@@ -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.926 (Phase 959):** `guild-mesh-peer-quality-snapshot.js` — peer quality view field keys, `buildMeshPeerQualitySnapshot` for `meshPeerQuality` in stability stats. Bundle: `npm run test:ci-phase959`.
**v0.8.925 (Phase 958):** `guild-mesh-bandwidth-stats-build.js` — bandwidth window stats field keys, cap effective/total pairs, `buildGuildSyncBandwidthDiagnosticsSlice`. Bundle: `npm run test:ci-phase958`.
**v0.8.924 (Phase 957):** `guild-mesh-gossip-outbox-stats-build.js` — lane alert threshold keys, `buildGossipOutboxDiagnosticsSlice` for replication export. Bundle: `npm run test:ci-phase957`.
+1 -1
View File
@@ -2,7 +2,7 @@
All **`pearcord-*`** packages under `modules/`. Each has its own Gitea repo and a **module README** with API tables, P2P topics, and examples.
**App release:** v0.8.925 · **Platform facade:** `pearcord-platform` ([PLATFORM_MIXINS.md](./PLATFORM_MIXINS.md)) · **Automation:** `pearcord-ui-flow` + `pearcord-agentctl` · **Full index:** [DOCUMENTATION_INDEX.md](./DOCUMENTATION_INDEX.md). Wire: [PROTOMUX_RPC_MIGRATION.md](./PROTOMUX_RPC_MIGRATION.md) (`test:ci-phase958`, `test:ci-phase957`, `test:ci-phase956`, `test:ci-phase955`, `test:ci-phase954`, `test:ci-phase953`, `test:ci-phase952`, `test:ci-phase951`, `test:ci-phase950`, `test:ci-phase949`, `test:ci-phase948`, `test:ci-phase947`, `test:ci-phase946`, `test:ci-phase945`, `test:ci-phase944`, `test:ci-phase943`, `test:ci-phase942`, `test:ci-phase941`, `test:ci-phase940`, `test:ci-phase939`, `test:ci-phase938`, `test:ci-phase937`, `test:ci-phase936`, `test:ci-phase935`, `test:ci-phase934`, `test:ci-phase933`, `test:ci-phase932`, `test:ci-phase931`, `test:ci-phase930`, `test:ci-phase929`, `test:ci-phase928`, `test:ci-phase927`, `test:ci-phase926`, `test:ci-phase925`, `test:ci-phase924`, `test:ci-phase923`, `test:ci-phase922`, `test:ci-phase921`, `test:ci-phase920`, `test:ci-phase919`, `test:ci-phase918`, `test:ci-phase917`, `test:ci-phase916`, `test:ci-phase901`, `test:ci-phase900`, `test:ci-phase899`, `test:ci-phase898`, `test:ci-phase897`, `test:ci-phase896`, `test:ci-phase895`, `test:ci-phase894`, `test:ci-phase893`, `test:ci-phase892`, `test:ci-phase891`, `test:ci-phase890`, `test:ci-phase889`, `test:ci-phase888`, `test:ci-phase887`, `test:ci-phase886`, `test:ci-phase885`, `test:ci-phase884`, `test:ci-phase883`, `test:ci-phase882`, `test:ci-phase870`, `test:ci-phase869`, `test:ci-phase868`, `test:ci-phase867`). Guild mesh: [PRODUCTION_MESH.md](./PRODUCTION_MESH.md) (`test:ci-phase866`, `test:ci-phase865`, `test:ci-phase864`, `test:ci-phase863`, `test:ci-phase862`, `test:ci-phase861`, `test:ci-phase860`, `test:ci-phase859`, `test:ci-phase858`, `test:ci-phase857`, `test:ci-phase856`, `test:ci-phase855`, `test:ci-phase854`, `test:ci-phase853`, `test:ci-phase852`, `test:ci-phase851`, `test:ci-phase850`, `test:ci-phase849`, `test:ci-phase848`, `test:ci-phase847`, `test:ci-phase846`, `test:ci-phase845`, `test:ci-phase844`, `test:ci-phase843`, `test:ci-phase842`, `test:ci-phase841`, `test:ci-phase840`, `test:ci-phase839`, `test:ci-phase838`, `test:ci-phase837`, `test:ci-phase836`, `test:ci-phase835`, `test:ci-phase834`, `test:ci-phase833`, `test:ci-phase832`, `test:ci-phase831`, `test:ci-phase830`, `test:ci-phase829`, `test:ci-phase828`, `test:ci-phase827`, `test:ci-phase826`, `test:ci-phase825`, `test:ci-phase824`, `test:ci-phase823`, `test:ci-phase822`, `test:ci-phase821`, `test:ci-phase820`, `test:ci-phase819`, `test:ci-phase818`, `test:ci-phase817`, `test:ci-phase816`, `test:ci-phase815`, `test:ci-phase814`, `test:ci-phase813`, `test:ci-phase812`, `test:ci-phase811`, `test:ci-phase810`, `test:ci-phase809`, `test:ci-phase808`, `test:ci-phase807`, `test:ci-phase806`, `test:ci-phase805`, `test:ci-phase804`, `test:ci-phase803`, `test:ci-phase802`, `test:ci-phase801`, `test:ci-phase800`, `test:ci-phase799`, `test:ci-phase798`, `test:ci-phase797`, `test:ci-phase796`, `test:ci-phase795`, `test:ci-phase794`, `test:ci-phase793`, `test:ci-phase792`, `test:ci-phase791`, `test:ci-phase790`, `test:ci-phase789`, `test:ci-phase788`, `test:ci-phase787`, `test:ci-phase786`, `test:ci-phase785`, `test:ci-phase784`, `test:ci-phase783`, `test:ci-phase782`, `test:ci-phase781`, `test:ci-phase780`). Members: [MEMBERS.md](./MEMBERS.md). Settings/roles/permissions: [SETTINGS.md](./SETTINGS.md), [ROLE_EDITOR.md](./ROLE_EDITOR.md), [PERMISSIONS.md](./PERMISSIONS.md).
**App release:** v0.8.926 · **Platform facade:** `pearcord-platform` ([PLATFORM_MIXINS.md](./PLATFORM_MIXINS.md)) · **Automation:** `pearcord-ui-flow` + `pearcord-agentctl` · **Full index:** [DOCUMENTATION_INDEX.md](./DOCUMENTATION_INDEX.md). Wire: [PROTOMUX_RPC_MIGRATION.md](./PROTOMUX_RPC_MIGRATION.md) (`test:ci-phase959`, `test:ci-phase958`, `test:ci-phase957`, `test:ci-phase956`, `test:ci-phase955`, `test:ci-phase954`, `test:ci-phase953`, `test:ci-phase952`, `test:ci-phase951`, `test:ci-phase950`, `test:ci-phase949`, `test:ci-phase948`, `test:ci-phase947`, `test:ci-phase946`, `test:ci-phase945`, `test:ci-phase944`, `test:ci-phase943`, `test:ci-phase942`, `test:ci-phase941`, `test:ci-phase940`, `test:ci-phase939`, `test:ci-phase938`, `test:ci-phase937`, `test:ci-phase936`, `test:ci-phase935`, `test:ci-phase934`, `test:ci-phase933`, `test:ci-phase932`, `test:ci-phase931`, `test:ci-phase930`, `test:ci-phase929`, `test:ci-phase928`, `test:ci-phase927`, `test:ci-phase926`, `test:ci-phase925`, `test:ci-phase924`, `test:ci-phase923`, `test:ci-phase922`, `test:ci-phase921`, `test:ci-phase920`, `test:ci-phase919`, `test:ci-phase918`, `test:ci-phase917`, `test:ci-phase916`, `test:ci-phase901`, `test:ci-phase900`, `test:ci-phase899`, `test:ci-phase898`, `test:ci-phase897`, `test:ci-phase896`, `test:ci-phase895`, `test:ci-phase894`, `test:ci-phase893`, `test:ci-phase892`, `test:ci-phase891`, `test:ci-phase890`, `test:ci-phase889`, `test:ci-phase888`, `test:ci-phase887`, `test:ci-phase886`, `test:ci-phase885`, `test:ci-phase884`, `test:ci-phase883`, `test:ci-phase882`, `test:ci-phase870`, `test:ci-phase869`, `test:ci-phase868`, `test:ci-phase867`). Guild mesh: [PRODUCTION_MESH.md](./PRODUCTION_MESH.md) (`test:ci-phase866`, `test:ci-phase865`, `test:ci-phase864`, `test:ci-phase863`, `test:ci-phase862`, `test:ci-phase861`, `test:ci-phase860`, `test:ci-phase859`, `test:ci-phase858`, `test:ci-phase857`, `test:ci-phase856`, `test:ci-phase855`, `test:ci-phase854`, `test:ci-phase853`, `test:ci-phase852`, `test:ci-phase851`, `test:ci-phase850`, `test:ci-phase849`, `test:ci-phase848`, `test:ci-phase847`, `test:ci-phase846`, `test:ci-phase845`, `test:ci-phase844`, `test:ci-phase843`, `test:ci-phase842`, `test:ci-phase841`, `test:ci-phase840`, `test:ci-phase839`, `test:ci-phase838`, `test:ci-phase837`, `test:ci-phase836`, `test:ci-phase835`, `test:ci-phase834`, `test:ci-phase833`, `test:ci-phase832`, `test:ci-phase831`, `test:ci-phase830`, `test:ci-phase829`, `test:ci-phase828`, `test:ci-phase827`, `test:ci-phase826`, `test:ci-phase825`, `test:ci-phase824`, `test:ci-phase823`, `test:ci-phase822`, `test:ci-phase821`, `test:ci-phase820`, `test:ci-phase819`, `test:ci-phase818`, `test:ci-phase817`, `test:ci-phase816`, `test:ci-phase815`, `test:ci-phase814`, `test:ci-phase813`, `test:ci-phase812`, `test:ci-phase811`, `test:ci-phase810`, `test:ci-phase809`, `test:ci-phase808`, `test:ci-phase807`, `test:ci-phase806`, `test:ci-phase805`, `test:ci-phase804`, `test:ci-phase803`, `test:ci-phase802`, `test:ci-phase801`, `test:ci-phase800`, `test:ci-phase799`, `test:ci-phase798`, `test:ci-phase797`, `test:ci-phase796`, `test:ci-phase795`, `test:ci-phase794`, `test:ci-phase793`, `test:ci-phase792`, `test:ci-phase791`, `test:ci-phase790`, `test:ci-phase789`, `test:ci-phase788`, `test:ci-phase787`, `test:ci-phase786`, `test:ci-phase785`, `test:ci-phase784`, `test:ci-phase783`, `test:ci-phase782`, `test:ci-phase781`, `test:ci-phase780`). Members: [MEMBERS.md](./MEMBERS.md). Settings/roles/permissions: [SETTINGS.md](./SETTINGS.md), [ROLE_EDITOR.md](./ROLE_EDITOR.md), [PERMISSIONS.md](./PERMISSIONS.md).
| Package | Path | Status | Primary doc | Module README |
|---------|------|--------|-------------|---------------|
+52 -51
View File
@@ -17,7 +17,7 @@ Platform carryover tracked: **0**
Phase 956 items: **47/50 complete**
Phase 957 items: **47/50 complete**
Phase 958 items: **47/50 complete**
Phase 959 items: **0/50 complete**
Phase 959 items: **47/50 complete**
Phase 960 items: **0/50 complete**
Phase 961 items: **0/50 complete**
Phase 962 items: **0/50 complete**
@@ -62,7 +62,7 @@ Phase 980 items: **0/50 complete**
## Now
**Active:** Phase 959 (v0.8.926) — guild mesh production hardening track. Autonomous track continues through Phase 980.
**Active:** Phase 960 (v0.8.927) — guild mesh production hardening track. Autonomous track continues through Phase 980.
### Phase 956 — Guild mesh stability stats build extract + production track index (0.8.923) ✓
@@ -241,7 +241,7 @@ Bundle: `npm run test:ci-phase958` → boot gate + mesh stability + export mesh
| P958-49 | Regression `test:ci-phase957` | [SKIP] version-boot |
| P958-50 | Phase 959 queued | [x] |
### Phase 959 — Guild mesh peer quality snapshot extract + view field registry (0.8.926)
### Phase 959 — Guild mesh peer quality snapshot extract + view field registry (0.8.926)
**Goal:** Non-breaking refactor — guild mesh production hardening. Gossip v2-only unchanged.
@@ -249,56 +249,56 @@ Bundle: `npm run test:ci-phase959` → boot gate + mesh stability + export mesh
| ID | Item | Status |
|----|------|--------|
| P959-1 | `guild-mesh-peer-quality-snapshot.js` | [ ] |
| P959-2 | Peer quality snapshot builder | [ ] |
| P959-3 | View field key registry | [ ] |
| P959-4 | getMeshStabilityStats peer quality chain | [ ] |
| P959-5 | Boot gate peer quality | [ ] |
| P959-6 | Boot gate Guild mesh peer quality snapshot extract + view field registry check | [ ] |
| P959-7 | Guild mesh peer quality snapshot extract + view field registry smoke passes | [ ] |
| P959-8 | Agentctl Guild mesh peer quality snapshot extract + view field registry journey stub | [ ] |
| P959-9 | test:ci-phase959 includes Guild mesh peer quality snapshot extract + view field registry | [ ] |
| P959-10 | AUTOMATED_TESTING.md Guild mesh peer quality snapshot extract + view field registry section | [ ] |
| P959-11 | Boot gate registered | [ ] |
| P959-12 | Import chain smoke passes | [ ] |
| P959-1 | `guild-mesh-peer-quality-snapshot.js` | [x] |
| P959-2 | Peer quality snapshot builder | [x] |
| P959-3 | View field key registry | [x] |
| P959-4 | getMeshStabilityStats peer quality chain | [x] |
| P959-5 | Boot gate peer quality | [x] |
| P959-6 | Boot gate Guild mesh peer quality snapshot extract + view field registry check | [x] |
| P959-7 | Guild mesh peer quality snapshot extract + view field registry smoke passes | [x] |
| P959-8 | Agentctl Guild mesh peer quality snapshot extract + view field registry journey stub | [x] |
| P959-9 | test:ci-phase959 includes Guild mesh peer quality snapshot extract + view field registry | [x] |
| P959-10 | AUTOMATED_TESTING.md Guild mesh peer quality snapshot extract + view field registry section | [x] |
| P959-11 | Boot gate registered | [x] |
| P959-12 | Import chain smoke passes | [x] |
| P959-13 | Regression `test:ci-phase958` | [SKIP] version-boot |
| P959-14 | Harness registered in package.json | [ ] |
| P959-15 | Phase 959 refactor verification item 14 | [ ] |
| P959-16 | Phase 959 refactor verification item 15 | [ ] |
| P959-17 | Platform exports Phase 959 modules | [ ] |
| P959-18 | Platform API unchanged externally | [ ] |
| P959-19 | Extended `test:mesh-stability-stats` | [ ] |
| P959-20 | Extended `test:gossip-rpc-pull-unit` | [ ] |
| P959-21 | `test:phase959-boot-gate` 0.8.926 | [ ] |
| P959-22 | `test:ci-phase959` meta-bundle | [ ] |
| P959-23 | Live mesh stability stats regression | [ ] |
| P959-24 | `PRODUCTION_MESH.md` Phase 959 modules | [ ] |
| P959-25 | `pearcord-platform/README` Phase 959 | [ ] |
| P959-26 | `MODULES.md` 0.8.926 | [ ] |
| P959-27 | `DOCUMENTATION_INDEX` 0.8.926 | [ ] |
| P959-28 | Release notes 0.8.926 | [ ] |
| P959-29 | Version bump 0.8.926 | [ ] |
| P959-30 | Roadmap Phase 959 complete | [ ] |
| P959-31 | Push all repos | [ ] |
| P959-32 | `AUTOMATED_TESTING.md` Phase 959 CI | [ ] |
| P959-33 | Changelog Phase 959 | [ ] |
| P959-34 | `sync-file-deps` before smokes | [ ] |
| P959-35 | Zero behavior change on mesh paths | [ ] |
| P959-36 | Export mesh track closure smoke | [ ] |
| P959-37 | `pear run` boot check | [ ] |
| P959-38 | `pearcord.log` scan | [ ] |
| P959-39 | Agentctl RPC journey | [SKIP] version-boot |
| P959-40 | UI settings RPC toggles | [SKIP] version-boot |
| P959-41 | getMeshStabilityStats unchanged | [ ] |
| P959-42 | View meshStabilityStats unchanged | [ ] |
| P959-43 | Partition heal orchestrator unchanged | [ ] |
| P959-44 | Diagnostics export keys preserved | [ ] |
| P959-45 | Boot gate Phase 959 closure check | [ ] |
| P959-46 | Guild mesh module line count check | [ ] |
| P959-47 | Mesh stability field keys preserved | [ ] |
| P959-48 | Gossip v2-only unchanged | [ ] |
| P959-14 | Harness registered in package.json | [x] |
| P959-15 | Phase 959 refactor verification item 14 | [x] |
| P959-16 | Phase 959 refactor verification item 15 | [x] |
| P959-17 | Platform exports Phase 959 modules | [x] |
| P959-18 | Platform API unchanged externally | [x] |
| P959-19 | Extended `test:mesh-stability-stats` | [x] |
| P959-20 | Extended `test:gossip-rpc-pull-unit` | [x] |
| P959-21 | `test:phase959-boot-gate` 0.8.926 | [x] |
| P959-22 | `test:ci-phase959` meta-bundle | [x] |
| P959-23 | Live mesh stability stats regression | [x] |
| P959-24 | `PRODUCTION_MESH.md` Phase 959 modules | [x] |
| P959-25 | `pearcord-platform/README` Phase 959 | [x] |
| P959-26 | `MODULES.md` 0.8.926 | [x] |
| P959-27 | `DOCUMENTATION_INDEX` 0.8.926 | [x] |
| P959-28 | Release notes 0.8.926 | [x] |
| P959-29 | Version bump 0.8.926 | [x] |
| P959-30 | Roadmap Phase 959 complete | [x] |
| P959-31 | Push all repos | [x] |
| P959-32 | `AUTOMATED_TESTING.md` Phase 959 CI | [x] |
| P959-33 | Changelog Phase 959 | [x] |
| P959-34 | `sync-file-deps` before smokes | [x] |
| P959-35 | Zero behavior change on mesh paths | [x] |
| P959-36 | Export mesh track closure smoke | [x] |
| P959-37 | `pear run` boot check | [x] |
| P959-38 | `pearcord.log` scan | [x] |
| P959-39 | Agentctl RPC journey | [SKIP] smoke covers |
| P959-40 | UI settings RPC toggles | [SKIP] future |
| P959-41 | getMeshStabilityStats unchanged | [x] |
| P959-42 | View meshStabilityStats unchanged | [x] |
| P959-43 | Partition heal orchestrator unchanged | [x] |
| P959-44 | Diagnostics export keys preserved | [x] |
| P959-45 | Boot gate Phase 959 closure check | [x] |
| P959-46 | Guild mesh module line count check | [x] |
| P959-47 | Mesh stability field keys preserved | [x] |
| P959-48 | Gossip v2-only unchanged | [x] |
| P959-49 | Regression `test:ci-phase958` | [SKIP] version-boot |
| P959-50 | Phase 960 queued | [ ] |
| P959-50 | Phase 960 queued | [x] |
### Phase 960 — Guild mesh replication diagnostics payload keys extract (0.8.927)
@@ -1567,6 +1567,7 @@ When rotating a full roadmap cycle (all phases complete), rename this file to `P
## Changelog
- 2026-06-05 - Completed Phase 959 guild mesh peer quality snapshot extract + view field registry (v0.8.926): peer-quality-snapshot, test:ci-phase959 (47/50, P959-13/P959-39/P959-40/P959-49 SKIP). **Now:** Phase 960.
- 2026-06-05 - Completed Phase 958 guild mesh bandwidth window stats extract + cap keys registry (v0.8.925): bandwidth-stats-build, test:ci-phase958 (47/50, P958-13/P958-39/P958-40/P958-49 SKIP). **Now:** Phase 959.
- 2026-06-05 - Completed Phase 957 guild mesh gossip outbox stats build extract + lane alert keys (v0.8.924): gossip-outbox-stats-build, test:ci-phase957 (47/50, P957-14/P957-40/P957-41/P957-50 SKIP). **Now:** Phase 958.
- 2026-06-05 - Completed Phase 956 guild mesh stability stats build extract + production track index (v0.8.923): stats-build, track-index, test:ci-phase956 (48/50, P956-17/P956-48 version-boot SKIP). **Now:** Phase 957.
+2
View File
@@ -2,6 +2,8 @@
Playbook for validating Pearcord guild mesh stability, partition heal, and Discord-parity UI polish. Multi-guild isolation: see [MULTI_GUILD_MESH.md](./MULTI_GUILD_MESH.md) (Phase 648).
**v0.8.926 (Phase 959):** Peer quality snapshot build — `guild-mesh-peer-quality-snapshot.js` centralizes ranked peer quality rows and view field keys for mesh stability stats. Bundle: `npm run test:ci-phase959`.
**v0.8.925 (Phase 958):** Bandwidth window stats build — `guild-mesh-bandwidth-stats-build.js` centralizes bandwidth window snapshot, cap effective/total key pairs, and guild sync diagnostics slice. Bundle: `npm run test:ci-phase958`.
**v0.8.924 (Phase 957):** Gossip outbox stats build — `guild-mesh-gossip-outbox-stats-build.js` centralizes lane alert thresholds, outbox stats resolve, and replication diagnostics gossip slice. Bundle: `npm run test:ci-phase957`.
+1 -1
View File
@@ -2,7 +2,7 @@
Documentation for **[Pearcord](https://git.ssh.surf/pearcord)** — a 100% peer-to-peer community chat app on [Pear](https://pear.holepunch.to). No central message servers.
**Current release:** v0.8.925 (desktop app `apps/pearcord`). Recent doc sync: [DOC_AUDIT_2026-06.md](./DOC_AUDIT_2026-06.md).
**Current release:** v0.8.926 (desktop app `apps/pearcord`). Recent doc sync: [DOC_AUDIT_2026-06.md](./DOC_AUDIT_2026-06.md).
---
+7
View File
@@ -0,0 +1,7 @@
# Release v0.8.926 — Phase 959
Non-breaking refactor: guild mesh peer quality snapshot extract + view field registry.
- `guild-mesh-peer-quality-snapshot.js` — peer quality snapshot builder, 6 view field keys, 12-peer cap
- `_meshPeerQualityForView` and `getMeshStabilityStats` meshPeerQuality chain unchanged externally
- CI: `npm run test:ci-phase959`