@gotcos/glasses-server 6.39.0 → 6.39.1
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 +13 -0
- package/package.json +1 -1
- package/server/lib/query-job-store.ts +8 -3
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
## 6.39.1
|
|
2
|
+
|
|
3
|
+
Durable jobs now remember they ran on Ollama.
|
|
4
|
+
|
|
5
|
+
FIXED: 6.39.0 allowed `provider: 'ollama'` in the durable-job types and the
|
|
6
|
+
runtime stamped it, but the journal sanitizer (`safeLinkage`) and the replay
|
|
7
|
+
reader (`applyLinkage`) both stripped it -- so a live or replayed Ollama job
|
|
8
|
+
came back providerless and the phone could never acknowledge which engine
|
|
9
|
+
answered. Both now persist `ollama` and `ollamaRunId`; unknown providers still
|
|
10
|
+
strip. Pinned by journal round-trip tests, mutation-verified.
|
|
11
|
+
|
|
12
|
+
No other changes; pairs with COS Glasses 6.8.436 and COS Control 0.5.74.
|
|
13
|
+
|
|
1
14
|
## 6.39.0
|
|
2
15
|
|
|
3
16
|
Ollama is a fourth G2 picker, hidden unless a local daemon answers.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gotcos/glasses-server",
|
|
3
|
-
"version": "6.39.
|
|
3
|
+
"version": "6.39.1",
|
|
4
4
|
"description": "COS Glasses \u2014 self-hosted AI heads-up-display server for Even G2 smart glasses, powered by Claude Code, Codex, Cursor Agent CLI, or local Ollama",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -550,11 +550,11 @@ export class QueryJobStore {
|
|
|
550
550
|
}
|
|
551
551
|
|
|
552
552
|
private applyLinkage(snapshot: QueryJobSnapshot, raw: Record<string, unknown>): void {
|
|
553
|
-
const provider = raw.provider === 'claude' || raw.provider === 'codex' || raw.provider === 'cursor'
|
|
553
|
+
const provider = raw.provider === 'claude' || raw.provider === 'codex' || raw.provider === 'cursor' || raw.provider === 'ollama'
|
|
554
554
|
? raw.provider
|
|
555
555
|
: undefined
|
|
556
556
|
if (provider) snapshot.provider = provider
|
|
557
|
-
const fields = ['resolvedModel', 'cliSessionId', 'claudeRunId', 'codexRunId', 'codexThreadId', 'cursorRunId'] as const
|
|
557
|
+
const fields = ['resolvedModel', 'cliSessionId', 'claudeRunId', 'codexRunId', 'codexThreadId', 'cursorRunId', 'ollamaRunId'] as const
|
|
558
558
|
for (const field of fields) {
|
|
559
559
|
const value = safeOptional(raw[field])
|
|
560
560
|
if (value) snapshot[field] = value
|
|
@@ -886,7 +886,11 @@ export class QueryJobStore {
|
|
|
886
886
|
|
|
887
887
|
private safeLinkage(linkage: QueryJobProviderLinkage): QueryJobProviderLinkage {
|
|
888
888
|
return {
|
|
889
|
-
|
|
889
|
+
// 'ollama' joined this allowlist in 6.39.1. The 6.39.0 types allowed it and
|
|
890
|
+
// query-job-runtime stamped it, but this sanitizer silently dropped it on
|
|
891
|
+
// persist -- so phone acknowledgement of a live or replayed Ollama job could
|
|
892
|
+
// never see its provider. Unknown providers still strip.
|
|
893
|
+
...(linkage.provider === 'claude' || linkage.provider === 'codex' || linkage.provider === 'cursor' || linkage.provider === 'ollama'
|
|
890
894
|
? { provider: linkage.provider }
|
|
891
895
|
: {}),
|
|
892
896
|
...(safeOptional(linkage.resolvedModel, 64) ? { resolvedModel: safeOptional(linkage.resolvedModel, 64) } : {}),
|
|
@@ -895,6 +899,7 @@ export class QueryJobStore {
|
|
|
895
899
|
...(safeOptional(linkage.codexRunId) ? { codexRunId: safeOptional(linkage.codexRunId) } : {}),
|
|
896
900
|
...(safeOptional(linkage.codexThreadId) ? { codexThreadId: safeOptional(linkage.codexThreadId) } : {}),
|
|
897
901
|
...(safeOptional(linkage.cursorRunId) ? { cursorRunId: safeOptional(linkage.cursorRunId) } : {}),
|
|
902
|
+
...(safeOptional(linkage.ollamaRunId) ? { ollamaRunId: safeOptional(linkage.ollamaRunId) } : {}),
|
|
898
903
|
}
|
|
899
904
|
}
|
|
900
905
|
|