Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,35 @@ All notable changes to this project will be documented in this file.
Format based on [Keep a Changelog](https://keepachangelog.com/).


## Web viewer polish deployed to the HQ receiver (2026-10-20)

Owner pointed out the session was already running on HQ (`Bing-HuaQiao`,
`100.125.101.60`); an earlier attempt to reach it over SSH was the long way
round and is abandoned.

**Package.** Release/arm64 `EngramRemoteServer` built from main `881d3ffa`
and packaged with `macos/scripts/package-remote-server.sh` into
`~/.engram-shadow-core-20260911/hq/remote-server-main-881d3ffa-20261020`
(`--verify-only` PASS, sourceRevision `881d3ffa…`).

**Deploy (`com.engram.capture-core.receiver`).** Plist backed up to
`state/remote-server/persistent/main-881d3ffa-20261020-job-before.plist`
(0600). Only `ProgramArguments[0]` changed, via plistlib; the environment
(including credentials) is untouched. `bootout` 03:36:08 UTC; the first
`bootstrap` returned `Bootstrap failed: 5: Input/output error` and left the
job unloaded, and a retry at 03:36:24 UTC succeeded. New PID 79714 running
the new program path. Rollback: bootstrap the backed-up plist; the

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Unload and restore the plist before bootstrapping rollback

If an operator follows this rollback while the new receiver is loaded, bootstrapping the backup alone will not replace the active service definition; launchctl documents bootstrap as adding a definition to a domain and bootout as removing it (launchctl(1)). The rollback should explicitly boot out the current job, restore the backup over the canonical LaunchAgent plist, and then bootstrap it; otherwise the rollback can fail on the duplicate label or leave the new plist to be loaded again at the next login.

Useful? React with 👍 / 👎.

`remote-server-main-1e3b5c34-20261008` package is kept. `service-index` was
not touched.

**Verification.** `/v1/health` 200; `/web/` with the Serve Host header
returns `data-auth-mode="tailscale-serve"`; `/web/app.css` serves the new
rules (`translateY(-1px)` present) with `--bg:#0f172a` unchanged. A local
render of the served HTML/CSS/JS with stubbed data shows the pill badges,
rounded session cards, and the green user / source-tinted assistant
transcript bubbles. stderr gained only the listening line and the archive
index-warm notice.

## Web viewer visual polish, palette unchanged (2026-10-20)

- CSS-only refinement of the shipped Web viewer in
Expand Down
1 change: 1 addition & 0 deletions MEMO.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@

### 2026-10-20

- [部署] Web 视觉精修已上 HQ:Release/arm64 从 main `881d3ffa` 打包为 `remote-server-main-881d3ffa-20261020`(verify-only 通过),receiver 只改 `ProgramArguments[0]`,plist 已备份。第一次 bootstrap 报 `5: Input/output error` 且任务被卸下,03:36:24Z 重试成功,新 PID 79714。`/v1/health` 200,新 CSS 已在线上,调色板未变,本地渲染确认徽标、卡片和转录气泡生效。回滚:用备份 plist bootstrap,旧包保留。详见 `CHANGELOG.md`。
- [变更] Web 端视觉精修(仅 CSS,`WebUIRoutes.swift`):字号层级、间距、圆角(卡片 12px、徽标和筛选 chip 改胶囊)、悬停/按下/键盘焦点态、卡片微阴影、表格等宽数字、转录气泡按来源着色边框、吸顶标题加毛玻璃。锁定的深色 slate/绿调色板、960px 居中布局和全部 DOM id 原样保留,HTML 与 JS 未动。Swift `WebUIRoutesTests` 9 项、TS `collector-web-ui` 180 项通过。详见 `CHANGELOG.md`。
- [合并] UI 重构 PR #485 合入 main(`c22bc822`),全部必需 CI 绿;顺带把已部署 Daily 但从未进 main 的 collector 提交 `81bf3f1a` 带进 main。CI 修复两项:`docs/invariants.md` 三个 collector 锚点的裸符号去反引号(账本门禁要求反引号 token 必须是受检路径)、`detail_transcript` 基线用 CI smoke 的 actual 重生成。
- [部署] Release 包(1.0.5)已装入 `/Applications/Engram.app`(旧包为 3 月 v1.0,GUI 未在运行);`~/.engram-service/current` 的独立服务(PID 30392)在 bundle 之外,未受影响。
Expand Down