@pellux/goodvibes-tui 0.19.6 → 0.19.7
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
|
@@ -4,6 +4,31 @@ All notable changes to GoodVibes TUI.
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
+
## [0.19.7] - 2026-04-18
|
|
8
|
+
|
|
9
|
+
### Changed
|
|
10
|
+
- Bumped `@pellux/goodvibes-sdk` from 0.21.10 to 0.21.12.
|
|
11
|
+
|
|
12
|
+
### Investigation: No TUI-side changes required
|
|
13
|
+
|
|
14
|
+
SDK 0.21.12 ships three additive changes to the daemon:
|
|
15
|
+
|
|
16
|
+
1. **`kind: 'message'` at `POST /api/sessions/:id/messages`** now calls `sessionBroker.submitMessage()` (previously called `appendCompanionMessage` + `publishConversationFollowup` only). A real turn is started and the full agent event chain (TURN_STARTED, STREAM_DELTA, TURN_COMPLETED) streams back.
|
|
17
|
+
|
|
18
|
+
2. **`kind: 'followup'`** — new kind value that always spawns an agent. Full agent event chain streams to companion SSE.
|
|
19
|
+
|
|
20
|
+
3. **`GET /api/sessions/:id/events`** — new session-scoped SSE endpoint for companion consumption.
|
|
21
|
+
|
|
22
|
+
4. **`'turn'` added to `DEFAULT_DOMAINS`** in the control-plane gateway — turn events are now auto-delivered to all SSE subscribers.
|
|
23
|
+
|
|
24
|
+
Investigation of the TUI's `COMPANION_MESSAGE_RECEIVED` subscription in `src/runtime/bootstrap-core.ts` found **no double-render risk**: SDK 0.21.12 emits `COMPANION_MESSAGE_RECEIVED` _before_ calling `submitMessage`, so the user message is shown once (via the existing subscription), and the AI response streams in via the existing `uiServices.events.turns` path. These are distinct content on distinct code paths. No deduplication needed.
|
|
25
|
+
|
|
26
|
+
The `'turn'` addition to `DEFAULT_DOMAINS` affects external SSE subscribers (companion app). The TUI consumes turn events in-process via the runtime bus — unaffected.
|
|
27
|
+
|
|
28
|
+
Updated `docs/foundation-artifacts/operator-contract.json` SDK version field to `0.21.12`.
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
7
32
|
## [0.19.6] - 2026-04-18
|
|
8
33
|
|
|
9
34
|
### Fixed
|
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
[](https://github.com/mgd34msu/goodvibes-tui/actions/workflows/ci.yml)
|
|
4
4
|
[](https://opensource.org/licenses/MIT)
|
|
5
|
-
[](https://github.com/mgd34msu/goodvibes-tui)
|
|
6
6
|
|
|
7
7
|
A terminal-native AI coding, operations, automation, knowledge, and integration console with a typed runtime, omnichannel surfaces, structured memory/knowledge, and a raw ANSI renderer.
|
|
8
8
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pellux/goodvibes-tui",
|
|
3
|
-
"version": "0.19.
|
|
3
|
+
"version": "0.19.7",
|
|
4
4
|
"description": "Terminal-native GoodVibes product for coding, operations, automation, knowledge, channels, and daemon-backed control-plane workflows.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "src/main.ts",
|
|
@@ -89,7 +89,7 @@
|
|
|
89
89
|
"@anthropic-ai/vertex-sdk": "^0.16.0",
|
|
90
90
|
"@ast-grep/napi": "^0.42.0",
|
|
91
91
|
"@aws/bedrock-token-generator": "^1.1.0",
|
|
92
|
-
"@pellux/goodvibes-sdk": "0.21.
|
|
92
|
+
"@pellux/goodvibes-sdk": "0.21.12",
|
|
93
93
|
"bash-language-server": "^5.6.0",
|
|
94
94
|
"fuse.js": "^7.1.0",
|
|
95
95
|
"graphql": "^16.13.2",
|
|
@@ -287,7 +287,13 @@ export async function initializeBootstrapCore(
|
|
|
287
287
|
});
|
|
288
288
|
|
|
289
289
|
// Subscribe to companion follow-up messages received from the daemon's HTTP layer.
|
|
290
|
-
// The daemon emits COMPANION_MESSAGE_RECEIVED on the runtime bus (SDK 0.21.10+)
|
|
290
|
+
// The daemon emits COMPANION_MESSAGE_RECEIVED on the runtime bus (SDK 0.21.10+).
|
|
291
|
+
// In SDK 0.21.12, kind='message' at POST /api/sessions/:id/messages now also calls
|
|
292
|
+
// sessionBroker.submitMessage(), starting a real turn. COMPANION_MESSAGE_RECEIVED
|
|
293
|
+
// still fires BEFORE submitMessage so the user message appears immediately in the
|
|
294
|
+
// conversation view, and the AI response streams in via the normal turn path.
|
|
295
|
+
// No double-render: COMPANION_MESSAGE_RECEIVED adds the user message once; the turn
|
|
296
|
+
// path adds the AI response. Both paths are correctly wired with no changes required.
|
|
291
297
|
// after persisting the message, so the TUI conversation view can render it immediately.
|
|
292
298
|
runtimeUnsubs.push(runtimeBus.on<Extract<SessionEvent, { type: 'COMPANION_MESSAGE_RECEIVED' }>>(
|
|
293
299
|
'COMPANION_MESSAGE_RECEIVED',
|
package/src/version.ts
CHANGED
|
@@ -6,7 +6,7 @@ import { join } from 'node:path';
|
|
|
6
6
|
// The prebuild script updates the fallback value before compilation.
|
|
7
7
|
// Uses import.meta.dir (Bun) to locate package.json relative to this file,
|
|
8
8
|
// which is correct regardless of the process working directory.
|
|
9
|
-
let _version = '0.19.
|
|
9
|
+
let _version = '0.19.7';
|
|
10
10
|
try {
|
|
11
11
|
const pkg = JSON.parse(readFileSync(join(import.meta.dir, '..', 'package.json'), 'utf-8'));
|
|
12
12
|
_version = pkg.version ?? _version;
|