antechamber 1.0.37 → 1.0.38

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/CHANGELOG.md CHANGED
@@ -7,6 +7,13 @@ and this project uses [Semantic Versioning](https://semver.org/).
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.0.38] - 2026-11-03
11
+
12
+ ### Fixed
13
+
14
+ - Reverting a `/compact` message works again. The revert was rejected as an unknown message and OpenChamber 2.x
15
+ dropped the error silently. It now returns the conversation to where it was before the compaction.
16
+
10
17
  ## [1.0.37] - 2026-11-03
11
18
 
12
19
  - feat(session-hosts): tear down private OmO hosts on macOS (#85)
@@ -319,8 +319,12 @@ export function bindMessageEntries(s, tree) {
319
319
  s.tree.localShellTurns = localShellTurns.filter((turn) => s.tree.messageEntries[turn.messages[1].info.id] === undefined);
320
320
  }
321
321
  function entryForMessage(s, tree, messageID) {
322
+ // A compaction's `/compact` row is never bound; its ID carries the native compaction entry ID.
323
+ const compaction = /^msg_compaction_(.+)$/.exec(messageID)?.[1];
322
324
  const entryId = s.tree.messageEntries[messageID];
323
- const entry = tree.entries.find((candidate) => candidate.id === entryId);
325
+ const entry = entryId !== undefined
326
+ ? tree.entries.find((candidate) => candidate.id === entryId)
327
+ : tree.entries.find((candidate) => candidate.type === "compaction" && candidate.id === compaction);
324
328
  if (!entry || !s.messages?.some((message) => message.info.id === messageID)) {
325
329
  throw new SessionTreeError(`Unknown messageID: ${messageID}`);
326
330
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "antechamber-omo-compat",
3
- "version": "1.0.37",
3
+ "version": "1.0.38",
4
4
  "description": "OpenChamber extension: displays OmO tool calls the way OmO means them when OpenChamber runs on antechamber",
5
5
  "private": true,
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "antechamber-omo-graph",
3
- "version": "1.0.37",
3
+ "version": "1.0.38",
4
4
  "description": "OpenChamber extension: live, interactive graph of the OmO sub-agents behind the current session",
5
5
  "private": true,
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "antechamber-omo-work",
3
- "version": "1.0.37",
3
+ "version": "1.0.38",
4
4
  "description": "OpenChamber 2.x Work Status section: OmO todo phases, monitors, eval cells and background work of the current session",
5
5
  "private": true,
6
6
  "type": "module",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "antechamber",
3
- "version": "1.0.37",
3
+ "version": "1.0.38",
4
4
  "description": "OpenCode-compatible HTTP/SSE server that lets OpenChamber drive the pi coding agent (and OmO) over RPC",
5
5
  "type": "module",
6
6
  "license": "MIT",