sphica 0.1.0 → 0.2.0
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/.claude-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/README.md +1 -10
- package/THIRD_PARTY_NOTICES.md +1006 -3145
- package/db/schema.sql +2 -2
- package/dist/capture.js +1 -23
- package/dist/cli.js +14753 -93262
- package/dist/mcp.js +1 -25
- package/package.json +1 -1
- package/skills/trace/example.json +10 -10
package/db/schema.sql
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
-- Three boundaries: the current state of sources (connector / source_item), verbatim conversations (conversation / message),
|
|
5
5
|
-- and searchable knowledge (knowledge). Work status (work_item) is state that gets updated, so it has its own table.
|
|
6
6
|
--
|
|
7
|
-
-- The version is `pragma user_version` at the end. MCP
|
|
7
|
+
-- The version is `pragma user_version` at the end. MCP and the CLI compare it with SCHEMA_REVISION in server/src/db.ts
|
|
8
8
|
-- when opening, and stop on a mismatch. `sphica init` creates an empty database (server/src/admin.ts).
|
|
9
9
|
-- Every table is STRICT (rejects type mismatches). Every primary key says not null (SQLite allows NULL in non-integer primary keys).
|
|
10
10
|
-- server/src/sqlite.ts sets journal_mode and foreign_keys per connection (not here).
|
|
@@ -257,7 +257,7 @@ create index knowledge_listing on knowledge (project_id, kind, status, occurred_
|
|
|
257
257
|
create index knowledge_work on knowledge (work_item_id) where work_item_id is not null;
|
|
258
258
|
|
|
259
259
|
-- Extra search words for a record (synonyms, abbreviations, English equivalents of its words). **Search only**: no search result, read,
|
|
260
|
-
-- CLI output
|
|
260
|
+
-- or CLI output shows them. content_hash is the record's hash when they were written; they are indexed only while it
|
|
261
261
|
-- still matches, so a record whose text changed stops being found by words written for its old text. source says who wrote them.
|
|
262
262
|
create table knowledge_terms (
|
|
263
263
|
knowledge_id integer primary key not null references knowledge (id) on delete cascade,
|
package/dist/capture.js
CHANGED
|
@@ -11203,29 +11203,7 @@ var indexesMessage = (origin, speakerKind) => speakerKind !== "bot" && !(origin
|
|
|
11203
11203
|
var conversationId = (projectId, origin, externalId) => uuidFrom(String(projectId), origin, externalId);
|
|
11204
11204
|
|
|
11205
11205
|
// server/src/panel.ts
|
|
11206
|
-
import { stripVTControlCharacters } from "node:util";
|
|
11207
|
-
|
|
11208
|
-
// server/src/palette.ts
|
|
11209
|
-
var PALETTE = {
|
|
11210
|
-
terracotta: "#C4704B",
|
|
11211
|
-
rosewood: "#A85D5D",
|
|
11212
|
-
failure: "#A85D5D",
|
|
11213
|
-
sage: "#9CAF88",
|
|
11214
|
-
lichen: "#8FAFA3",
|
|
11215
|
-
ochre: "#CFA764",
|
|
11216
|
-
slate: "#8E9CB0",
|
|
11217
|
-
plum: "#A7899F",
|
|
11218
|
-
taupe: "#A99C8C",
|
|
11219
|
-
sand: "#D6C4A2"
|
|
11220
|
-
};
|
|
11221
|
-
|
|
11222
|
-
// server/src/panel.ts
|
|
11223
|
-
var MARKS = {
|
|
11224
|
-
ok: ["✓", PALETTE.sage],
|
|
11225
|
-
warn: ["△", PALETTE.ochre],
|
|
11226
|
-
fail: ["✗", PALETTE.failure],
|
|
11227
|
-
none: ["○", PALETTE.taupe]
|
|
11228
|
-
};
|
|
11206
|
+
import { stripVTControlCharacters, styleText } from "node:util";
|
|
11229
11207
|
var title = (text) => `✦ ${text}`;
|
|
11230
11208
|
var rule = (text) => text.split(`
|
|
11231
11209
|
`).map((line) => line ? `│ ${line}` : "│").join(`
|