@javierkaiser/opencode-indexing 0.2.3 → 0.2.4
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 +33 -0
- package/README.md +6 -0
- package/package.json +7 -18
- package/tsconfig.json +22 -0
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,39 @@ All notable changes to this project are documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.2.4] - 2026-10-16
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
- **The prompt-footer indicator stopped rendering after OpenCode 2.0.30.** The
|
|
12
|
+
footer view imports `createSignal` from `solid-js` as a value, and `solid-js`,
|
|
13
|
+
`@opentui/core` and `@opentui/solid` were declared as *optional
|
|
14
|
+
peerDependencies* — which means npm never installs them, on the assumption that
|
|
15
|
+
the host already provides them. 2.0.30 stopped providing them, the plugin's own
|
|
16
|
+
`import()` of the footer view failed, the `catch` swallowed it, and the slot
|
|
17
|
+
rendered nothing. Everything else kept working, because nothing else needs
|
|
18
|
+
JSX: the command palette comes from `tui.ts` itself, which is what made it look
|
|
19
|
+
like a cosmetic regression rather than a missing dependency.
|
|
20
|
+
|
|
21
|
+
The three packages are now `optionalDependencies`. That still tolerates a
|
|
22
|
+
failed install, but unlike an optional peer it actually puts them on disk, so
|
|
23
|
+
the indicator no longer depends on what the host happens to supply.
|
|
24
|
+
|
|
25
|
+
- **A package listed in both `optionalDependencies` and `devDependencies` is not
|
|
26
|
+
installed at all.** npm 12 lets the dev list win, so `--omit=dev` skips the
|
|
27
|
+
package and the optionalDependency never reaches disk — and `package.json`
|
|
28
|
+
still reads as though it is declared. This is why moving the three packages
|
|
29
|
+
was not by itself enough; they had to leave `devDependencies` as well.
|
|
30
|
+
|
|
31
|
+
- `tsconfig.json` is published. `jsx: react-jsx` with
|
|
32
|
+
`jsxImportSource: "@opentui/solid"` is what makes a `.tsx` file load at all, and
|
|
33
|
+
it was not in `files`.
|
|
34
|
+
|
|
35
|
+
### Added
|
|
36
|
+
- `test/package-deps.test.ts` guards the manifest against all three of the
|
|
37
|
+
above, and asserts that every value import in the published sources resolves
|
|
38
|
+
to something the manifest installs — so the next third-party import fails a
|
|
39
|
+
test instead of becoming another silent missing module at load time.
|
|
40
|
+
|
|
8
41
|
## [0.2.3] - 2026-10-16
|
|
9
42
|
|
|
10
43
|
### Added
|
package/README.md
CHANGED
|
@@ -383,6 +383,12 @@ Word about data safety: Kilo's indexes (`ws-*` collections and its LanceDB direc
|
|
|
383
383
|
## Requirements
|
|
384
384
|
|
|
385
385
|
- OpenCode v2 (plugin API `@opencode/plugin@2.x`).
|
|
386
|
+
- **For the prompt-footer indicator:** `solid-js`, `@opentui/core` and
|
|
387
|
+
`@opentui/solid`, which the plugin installs itself (~14 MB). They used to be
|
|
388
|
+
declared as optional *peer* dependencies, on the assumption that the host
|
|
389
|
+
already had them; OpenCode 2.0.30 stopped providing them and the indicator
|
|
390
|
+
silently stopped rendering. Everything else works without them — the settings
|
|
391
|
+
page degrades to dialogs and the footer is simply absent.
|
|
386
392
|
- **For the own index: nothing to run.** The default store is embedded LanceDB
|
|
387
393
|
(`@lancedb/lancedb@0.26.2`), so there is no server to start, no port to free and
|
|
388
394
|
no container to keep alive.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@javierkaiser/opencode-indexing",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.4",
|
|
4
4
|
"description": "OpenCode plugin: semantic code search that reuses Kilo Code indexes (Qdrant/LanceDB) and maintains its own independent index",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Carlos Javier Lust <javierkaiser@gmail.com>",
|
|
@@ -37,6 +37,7 @@
|
|
|
37
37
|
"tui.ts",
|
|
38
38
|
"tui",
|
|
39
39
|
"src",
|
|
40
|
+
"tsconfig.json",
|
|
40
41
|
"install.mjs",
|
|
41
42
|
"install.sh",
|
|
42
43
|
"install.ps1",
|
|
@@ -65,23 +66,20 @@
|
|
|
65
66
|
"@lancedb/lancedb": "0.26.2",
|
|
66
67
|
"tree-sitter-wasms": "0.1.13",
|
|
67
68
|
"web-tree-sitter": "0.25.10",
|
|
68
|
-
"apache-arrow": "18.1.0"
|
|
69
|
+
"apache-arrow": "18.1.0",
|
|
70
|
+
"solid-js": "^1.9.12",
|
|
71
|
+
"@opentui/core": "0.5.14",
|
|
72
|
+
"@opentui/solid": "0.5.14"
|
|
69
73
|
},
|
|
70
74
|
"devDependencies": {
|
|
71
75
|
"@opencode/plugin": "2.0.23",
|
|
72
76
|
"@opencode/theme": "^2.0.23",
|
|
73
|
-
"@opentui/core": "^0.5.14",
|
|
74
|
-
"@opentui/solid": "^0.5.14",
|
|
75
77
|
"@types/node": "^24.0.0",
|
|
76
|
-
"solid-js": "^1.9.12",
|
|
77
78
|
"typescript": "^5.8.2"
|
|
78
79
|
},
|
|
79
80
|
"peerDependencies": {
|
|
80
81
|
"@opencode/plugin": ">=2.0.0",
|
|
81
|
-
"@opencode/theme": ">=2.0.23"
|
|
82
|
-
"@opentui/core": ">=0.5.14",
|
|
83
|
-
"@opentui/solid": ">=0.5.14",
|
|
84
|
-
"solid-js": ">=1.9.12"
|
|
82
|
+
"@opencode/theme": ">=2.0.23"
|
|
85
83
|
},
|
|
86
84
|
"peerDependenciesMeta": {
|
|
87
85
|
"@opencode/plugin": {
|
|
@@ -89,15 +87,6 @@
|
|
|
89
87
|
},
|
|
90
88
|
"@opencode/theme": {
|
|
91
89
|
"optional": true
|
|
92
|
-
},
|
|
93
|
-
"@opentui/core": {
|
|
94
|
-
"optional": true
|
|
95
|
-
},
|
|
96
|
-
"@opentui/solid": {
|
|
97
|
-
"optional": true
|
|
98
|
-
},
|
|
99
|
-
"solid-js": {
|
|
100
|
-
"optional": true
|
|
101
90
|
}
|
|
102
91
|
}
|
|
103
92
|
}
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES2022",
|
|
4
|
+
"module": "ESNext",
|
|
5
|
+
"moduleResolution": "Bundler",
|
|
6
|
+
"allowImportingTsExtensions": true,
|
|
7
|
+
"lib": ["ES2022", "DOM", "DOM.Iterable"],
|
|
8
|
+
"types": ["node"],
|
|
9
|
+
"jsx": "react-jsx",
|
|
10
|
+
"jsxImportSource": "@opentui/solid",
|
|
11
|
+
"strict": true,
|
|
12
|
+
"noEmit": true,
|
|
13
|
+
"skipLibCheck": true,
|
|
14
|
+
"esModuleInterop": true,
|
|
15
|
+
"allowSyntheticDefaultImports": true,
|
|
16
|
+
"forceConsistentCasingInFileNames": true,
|
|
17
|
+
"resolveJsonModule": true,
|
|
18
|
+
"isolatedModules": true,
|
|
19
|
+
"verbatimModuleSyntax": true
|
|
20
|
+
},
|
|
21
|
+
"include": ["index.ts", "tui.ts", "tui/**/*.ts", "tui/**/*.tsx", "src/**/*.ts", "test/**/*.ts"]
|
|
22
|
+
}
|