@llblab/pi-telegram 0.24.1 → 0.24.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +1 -0
- package/BACKLOG.md +5 -17
- package/CHANGELOG.md +11 -7
- package/package.json +1 -1
package/AGENTS.md
CHANGED
|
@@ -149,6 +149,7 @@ The core product loop is mobile continuation: start or supervise work in the ter
|
|
|
149
149
|
|
|
150
150
|
- Treat queue handling, compaction interaction, and lifecycle-hook state transitions as regression-prone areas; validate them after changing dispatch logic
|
|
151
151
|
- Keep the standard `npm run typecheck` gate strict about unused locals and parameters so stale imports and abandoned adapters fail validation instead of accumulating silently
|
|
152
|
+
- Keep push/PR CI on minimum Node `22.19.0` across Ubuntu, macOS, and Windows with typecheck, tests, and package dry-run on every OS; run audit once on Ubuntu, require the native Windows named-pipe roundtrip to execute, and keep Unix-only skips explicit by protected boundary.
|
|
152
153
|
- Route important runtime failures through the recent runtime event recorder so `/telegram-status` remains useful for post-mortem debugging. Keep the compact TUI status bar bounded to the generic `error` state; detailed error messages belong only in diagnostics/logs, never inline beside the status label.
|
|
153
154
|
- Treat remaining Markdown-to-HTML rendering as Telegram UI/compat output work, not generic Markdown rendering or assistant reply delivery
|
|
154
155
|
- Preserve literal code content in Telegram rendering
|
package/BACKLOG.md
CHANGED
|
@@ -2,31 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
_This backlog tracks only open release-relevant work: hotfixes, bounded maintenance, live runtime verification, evidence-gated Telegram client follow-ups, and upstream Pi API blockers. Completed outcomes and validation evidence belong in `CHANGELOG.md`, not in this queue._
|
|
4
4
|
|
|
5
|
-
## P1 —
|
|
5
|
+
## P1 — Native Windows Runtime Smoke
|
|
6
6
|
|
|
7
|
-
Context:
|
|
7
|
+
Context: Deterministic ownership, persistence, recovery, process, and named-pipe coverage passes on native hosted Windows. A live Telegram client remains the only unverified platform boundary and may be exercised in a later release cycle rather than tied to a specific version.
|
|
8
8
|
|
|
9
9
|
Open work:
|
|
10
10
|
|
|
11
|
-
- [ ] Run
|
|
11
|
+
- [ ] Run a current build through native Windows classic and Threaded Mode smoke: connect, ownership handoff, leader/follower registration, stale recovery, live downgrade, diagnostics rotation, and shutdown cleanup. Record concrete named-pipe, atomic-file, and Telegram-client evidence.
|
|
12
12
|
|
|
13
|
-
Done when: native Windows evidence confirms
|
|
14
|
-
|
|
15
|
-
## P1 — Evidence-Backed Telegram Client Follow-Ups
|
|
16
|
-
|
|
17
|
-
Context: The release should avoid speculative live-test matrices. Future Telegram-client quirks should be handled only when concrete evidence or a minimized fixture exists.
|
|
18
|
-
|
|
19
|
-
Open work:
|
|
20
|
-
|
|
21
|
-
- [ ] Capture any new Telegram client or Bot API behavior that contradicts the documented Threaded Mode contract, including a live local/autonomous `…typing` observation when convenient.
|
|
22
|
-
- [ ] Add a focused regression or documented client caveat only for confirmed behavior.
|
|
23
|
-
- [ ] Keep one-off environment names, thread names, and operator-specific observations out of repository context unless they demonstrate a general product issue.
|
|
24
|
-
|
|
25
|
-
Done when: new client quirks are either fixed with targeted coverage or documented as evidence-backed exceptions, without keeping broad manual smoke matrices in the backlog.
|
|
13
|
+
Done when: native Windows live evidence confirms singleton and leader/follower authority, recovery, diagnostics, downgrade, and shutdown behavior.
|
|
26
14
|
|
|
27
15
|
## Blocked — Same-Thread Telegram `/new`
|
|
28
16
|
|
|
29
|
-
Blocked: upstream Pi core API. Issue: https://github.com/earendil-works/pi/issues/5952
|
|
17
|
+
Blocked: upstream Pi core API remains unavailable. Issue #5952 was auto-closed by intake policy rather than resolved: https://github.com/earendil-works/pi/issues/5952
|
|
30
18
|
|
|
31
19
|
Context: Threaded Mode manual followers are separate visible Pi processes. Same-thread `/new` is a different feature: replacing the current Pi session inside the same Telegram thread. Extension-only hacks are rejected because they would desynchronize Pi lifecycle/TUI semantics.
|
|
32
20
|
|
package/CHANGELOG.md
CHANGED
|
@@ -2,15 +2,19 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 0.24.2: Context Compression Hotfix
|
|
6
|
+
|
|
7
|
+
- `Project Context`: Consolidated the `0.24.1` release narrative into final domain outcomes, reduced the backlog to concrete open work, and made minimum-Node Ubuntu/macOS/Windows CI a durable engineering contract. Impact: future agents receive a smaller, current project model without losing release behavior or platform-validation requirements.
|
|
8
|
+
|
|
5
9
|
## 0.24.1: Persistence I/O And Cross-Platform Validation Hotfix
|
|
6
10
|
|
|
7
|
-
- `Cross-Platform
|
|
8
|
-
- `Test Cooling`: Added test-only transaction timing controls,
|
|
9
|
-
- `Release History`:
|
|
10
|
-
- `Global Config Concurrency`:
|
|
11
|
-
- `Diagnostics Log I/O`: Batch same-turn `logs.jsonl` events
|
|
12
|
-
- `State Snapshot I/O`: Coalesce diagnostics
|
|
13
|
-
- `Ownership Lease I/O`:
|
|
11
|
+
- `Cross-Platform Validation`: Added minimum-Node Ubuntu, macOS, and Windows CI for typecheck, tests, and package shape, with audit once on Ubuntu. Awaited timers remain live on Node 22, Windows uses native pipes and paths, and long macOS socket endpoints map idempotently to short private hashes. Impact: every PR now exercises the supported OS transport and filesystem boundaries.
|
|
12
|
+
- `Test Cooling`: Added test-only transaction timing controls, one bounded Node-eval fixture for config/lock/log races, and a table-driven voice registry contract. Removed 19 unreachable exports after package/composition/docs proof. Impact: duplicated process plumbing shrinks and the lock suite falls from roughly nine seconds to three without changing production retries, compatibility, or recovery coverage.
|
|
13
|
+
- `Release History`: Consolidated noisy chronology across all 85 historical sections while preserving every version, shipped behavior, migration, limitation, compatibility boundary, and material operator result. Impact: the changelog becomes substantially smaller without rewriting already concise releases.
|
|
14
|
+
- `Global Config Concurrency`: Recursive transactional deltas preserve unrelated global/profile writes, keep polling offsets monotonic, and resolve same-leaf conflicts by serialized commit order. Semantically unchanged merges adopt the latest disk snapshot without replacing `telegram.json`. Impact: concurrent polling and Settings updates no longer erase each other or create no-op file churn.
|
|
15
|
+
- `Diagnostics Log I/O`: Batch same-turn `logs.jsonl` events per captured profile inside one transaction, preserving order and failure isolation without a timer. Authorized writers rotate between records at the 5 MiB threshold; one-record/reset-metadata overshoot stays explicit and non-owners defer rotation. Impact: bursts avoid per-event guard churn without weakening bounded diagnostics behavior.
|
|
16
|
+
- `State Snapshot I/O`: Coalesce diagnostics snapshots over 100 ms and skip `state.json` replacement when only observational `writtenAtMs` differs. Exact-owner commit fencing and stale-view disk reload remain intact. Impact: equivalent runtime state no longer creates temporary files or atomic full-snapshot renames.
|
|
17
|
+
- `Ownership Lease I/O`: Preserve one-second exact-owner checks and serialized expected-owner transactions while refreshing durable heartbeats every two seconds with an eight-second stale boundary. Concurrent recovery treats a vanished observed guard as a lost race and still admits one fenced winner. Impact: steady-state `owners.json` rewrites are halved without weakening singleton, leader/follower, Unix-socket, or Windows-pipe authority.
|
|
14
18
|
|
|
15
19
|
## 0.24.0: Canonical Profiles And Extension-Local Ownership
|
|
16
20
|
|