@inharness-ai/claude4spec 1.0.2 → 1.0.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 +19 -0
- package/README.md +1 -0
- package/dist/client/assets/{arc-D8brDDag.js → arc-grMo2vzL.js} +1 -1
- package/dist/client/assets/{architectureDiagram-3BPJPVTR-Bmh1uTQZ.js → architectureDiagram-3BPJPVTR-Fp_VHONq.js} +1 -1
- package/dist/client/assets/{blockDiagram-GPEHLZMM-55jaVWwd.js → blockDiagram-GPEHLZMM-CIwVG0sx.js} +1 -1
- package/dist/client/assets/{c4Diagram-AAUBKEIU-Dxm0tLsZ.js → c4Diagram-AAUBKEIU-tysuJyz0.js} +1 -1
- package/dist/client/assets/channel-B30S19wt.js +1 -0
- package/dist/client/assets/{chunk-2J33WTMH-vDJ1slcJ.js → chunk-2J33WTMH-DZFNNwID.js} +1 -1
- package/dist/client/assets/{chunk-4BX2VUAB-DP6CC-Qn.js → chunk-4BX2VUAB-CsnJG7Pv.js} +1 -1
- package/dist/client/assets/{chunk-55IACEB6-SgOSJYkL.js → chunk-55IACEB6-MhREYXzo.js} +1 -1
- package/dist/client/assets/{chunk-727SXJPM-BtRfbjBO.js → chunk-727SXJPM-BjvyGtK3.js} +1 -1
- package/dist/client/assets/{chunk-AQP2D5EJ-yIRaTgFg.js → chunk-AQP2D5EJ-zfcfKNbO.js} +1 -1
- package/dist/client/assets/{chunk-FMBD7UC4-B_VD4t8N.js → chunk-FMBD7UC4-Ckx-Hc8U.js} +1 -1
- package/dist/client/assets/{chunk-ND2GUHAM-BvJdtX82.js → chunk-ND2GUHAM-DSIVVmYM.js} +1 -1
- package/dist/client/assets/{chunk-QZHKN3VN-BLNWKymD.js → chunk-QZHKN3VN-EcIM6ZdS.js} +1 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-Bm4SZLsb.js +1 -0
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-Bm4SZLsb.js +1 -0
- package/dist/client/assets/{cose-bilkent-S5V4N54A-BQyA-r-y.js → cose-bilkent-S5V4N54A-DC8DVe0z.js} +1 -1
- package/dist/client/assets/{dagre-BM42HDAG-CAh0mTzA.js → dagre-BM42HDAG-BQjcdXnw.js} +1 -1
- package/dist/client/assets/{diagram-2AECGRRQ-C83TGK4o.js → diagram-2AECGRRQ-BUPeBMwt.js} +1 -1
- package/dist/client/assets/{diagram-5GNKFQAL-2L6uowvf.js → diagram-5GNKFQAL-I_Q-Pnp6.js} +1 -1
- package/dist/client/assets/{diagram-KO2AKTUF-Cj5n4jdq.js → diagram-KO2AKTUF-B8WbbWJu.js} +1 -1
- package/dist/client/assets/{diagram-LMA3HP47-Bp5SDMjg.js → diagram-LMA3HP47-CsACxgW7.js} +1 -1
- package/dist/client/assets/{diagram-OG6HWLK6-cFsDQ8Qk.js → diagram-OG6HWLK6-lPuJxQED.js} +1 -1
- package/dist/client/assets/{erDiagram-TEJ5UH35-D8G5xpg3.js → erDiagram-TEJ5UH35-cU5ZGREz.js} +1 -1
- package/dist/client/assets/{flowDiagram-I6XJVG4X-CuNudlCD.js → flowDiagram-I6XJVG4X-Dr-vZTBV.js} +1 -1
- package/dist/client/assets/{ganttDiagram-6RSMTGT7-CtFlsB15.js → ganttDiagram-6RSMTGT7-CXiWZ0R8.js} +1 -1
- package/dist/client/assets/{gitGraphDiagram-PVQCEYII-h66Tso4O.js → gitGraphDiagram-PVQCEYII-PDvLBbvz.js} +1 -1
- package/dist/client/assets/{index-aPVup1Re.js → index-BQltseJ-.js} +1 -1
- package/dist/client/assets/{index-aJE-l7h7.js → index-RMlMPKY7.js} +1 -1
- package/dist/client/assets/{index-D5ljIkCJ.js → index-YFPhJxE5.js} +184 -174
- package/dist/client/assets/{index-CZOpb3O7.css → index-zpHL2aYW.css} +1 -1
- package/dist/client/assets/{infoDiagram-5YYISTIA-CO_BLfuW.js → infoDiagram-5YYISTIA-Re9fOUPS.js} +1 -1
- package/dist/client/assets/{ishikawaDiagram-YF4QCWOH-D4rSRnQA.js → ishikawaDiagram-YF4QCWOH-BTazB_7p.js} +1 -1
- package/dist/client/assets/{journeyDiagram-JHISSGLW-GyHI6dB8.js → journeyDiagram-JHISSGLW-pGUoqxHl.js} +1 -1
- package/dist/client/assets/{kanban-definition-UN3LZRKU-CrH33WLe.js → kanban-definition-UN3LZRKU-C2RzCJrM.js} +1 -1
- package/dist/client/assets/{linear-Dh1OyvSm.js → linear-Be3WPYKf.js} +1 -1
- package/dist/client/assets/{mermaid.core-C45sMDhS.js → mermaid.core-GdPXct3q.js} +4 -4
- package/dist/client/assets/{mindmap-definition-RKZ34NQL-Bgwb0vwA.js → mindmap-definition-RKZ34NQL-DvktVTUU.js} +1 -1
- package/dist/client/assets/{pieDiagram-4H26LBE5-l9cCpVfG.js → pieDiagram-4H26LBE5-DvC_m4m5.js} +1 -1
- package/dist/client/assets/{quadrantDiagram-W4KKPZXB-BCPSUbC3.js → quadrantDiagram-W4KKPZXB-SWtidcZL.js} +1 -1
- package/dist/client/assets/{requirementDiagram-4Y6WPE33-TEGOe-vV.js → requirementDiagram-4Y6WPE33-CQEHDx1W.js} +1 -1
- package/dist/client/assets/{sankeyDiagram-5OEKKPKP-C69pv_7D.js → sankeyDiagram-5OEKKPKP-C0PTA3gP.js} +1 -1
- package/dist/client/assets/{sequenceDiagram-3UESZ5HK-arinzeCk.js → sequenceDiagram-3UESZ5HK-D-x7SXoo.js} +1 -1
- package/dist/client/assets/{stateDiagram-AJRCARHV-C2YENpmw.js → stateDiagram-AJRCARHV-BhcGVfs1.js} +1 -1
- package/dist/client/assets/stateDiagram-v2-BHNVJYJU-2vcyLY1V.js +1 -0
- package/dist/client/assets/{timeline-definition-PNZ67QCA-h5qtI99f.js → timeline-definition-PNZ67QCA-JYTlKPB-.js} +1 -1
- package/dist/client/assets/{vennDiagram-CIIHVFJN-CnuK75Ut.js → vennDiagram-CIIHVFJN-KjNL1Qpz.js} +1 -1
- package/dist/client/assets/{wardley-L42UT6IY-B4bQ0Xyy.js → wardley-L42UT6IY-DcljmmEY.js} +1 -1
- package/dist/client/assets/{wardleyDiagram-YWT4CUSO-apV8olQc.js → wardleyDiagram-YWT4CUSO-Pbq6ALgg.js} +1 -1
- package/dist/client/assets/{xychartDiagram-2RQKCTM6-OTP6zeEy.js → xychartDiagram-2RQKCTM6-G_r_2Cvk.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/server/config.d.ts +6 -0
- package/dist/server/config.js +6 -0
- package/dist/server/config.js.map +1 -1
- package/dist/server/db/migrate.js +28 -11
- package/dist/server/db/migrate.js.map +1 -1
- package/dist/server/db/migrations/028_page_version_kind_patch.sql +43 -0
- package/dist/server/db/migrations/029_chat_thread_patch.sql +64 -0
- package/dist/server/index.js +73 -4
- package/dist/server/index.js.map +1 -1
- package/dist/server/routes/chat.d.ts +2 -0
- package/dist/server/routes/chat.js +14 -0
- package/dist/server/routes/chat.js.map +1 -1
- package/dist/server/routes/errors.js +4 -0
- package/dist/server/routes/errors.js.map +1 -1
- package/dist/server/routes/patches.d.ts +8 -0
- package/dist/server/routes/patches.js +106 -0
- package/dist/server/routes/patches.js.map +1 -0
- package/dist/server/services/brief.js +0 -1
- package/dist/server/services/brief.js.map +1 -1
- package/dist/server/services/chat-context.d.ts +3 -1
- package/dist/server/services/chat-context.js +32 -1
- package/dist/server/services/chat-context.js.map +1 -1
- package/dist/server/services/chat.d.ts +5 -2
- package/dist/server/services/chat.js +35 -7
- package/dist/server/services/chat.js.map +1 -1
- package/dist/server/services/page-version.d.ts +11 -4
- package/dist/server/services/page-version.js +19 -11
- package/dist/server/services/page-version.js.map +1 -1
- package/dist/server/services/pages-frontmatter-indexer.d.ts +4 -1
- package/dist/server/services/pages-frontmatter-indexer.js +19 -9
- package/dist/server/services/pages-frontmatter-indexer.js.map +1 -1
- package/dist/server/services/patch.d.ts +66 -0
- package/dist/server/services/patch.js +196 -0
- package/dist/server/services/patch.js.map +1 -0
- package/dist/shared/entities.d.ts +62 -2
- package/dist/shared/entities.js +11 -0
- package/dist/shared/entities.js.map +1 -1
- package/dist/shared/types.d.ts +5 -2
- package/docs/screenshots/hero-dark.png +0 -0
- package/docs/screenshots/hero.png +0 -0
- package/package.json +3 -2
- package/dist/client/assets/channel-ArVcv4Yl.js +0 -1
- package/dist/client/assets/classDiagram-4FO5ZUOK-B3nmPR7w.js +0 -1
- package/dist/client/assets/classDiagram-v2-Q7XG4LA2-B3nmPR7w.js +0 -1
- package/dist/client/assets/stateDiagram-v2-BHNVJYJU-CS6ocDH6.js +0 -1
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
-- M23 Patches (v0.1.23) — chat_thread gains a third context_type ('patch') and
|
|
2
|
+
-- a `patch_path` pointer. Migration 022 added `context_type` with
|
|
3
|
+
-- `CHECK (context_type IN ('chat','brief'))`; SQLite cannot ALTER a CHECK, so
|
|
4
|
+
-- the table is rebuilt. Per the v0.1.23 brief the rebuilt column carries NO
|
|
5
|
+
-- CHECK at all — `context_type` is a plain TEXT column whose allowed values
|
|
6
|
+
-- ('chat'|'brief'|'patch', and any future value) are validated in application
|
|
7
|
+
-- code by the contextTypeRegistry in chat-context.ts. Adding a future
|
|
8
|
+
-- context_type therefore needs no migration.
|
|
9
|
+
-- Spec: db/db-m05-chat.md, modules/m23-patches.md.
|
|
10
|
+
--
|
|
11
|
+
-- chat_thread has INCOMING foreign keys: chat_message.thread_id (ON DELETE
|
|
12
|
+
-- CASCADE) and plan.accepted_thread_id (ON DELETE SET NULL). The SQLite
|
|
13
|
+
-- table-rebuild procedure is followed: create the new table under a temp
|
|
14
|
+
-- name, copy, DROP the original, then RENAME the new one into place. The
|
|
15
|
+
-- migration runner disables `foreign_keys` around the batch, so the DROP does
|
|
16
|
+
-- NOT cascade-delete chat_message rows; the child FK clauses keep referencing
|
|
17
|
+
-- the name `chat_thread` and resolve again once the new table is renamed in.
|
|
18
|
+
|
|
19
|
+
-- Full column set as of migrations 005/009/010/011/013/021/024/022, plus the
|
|
20
|
+
-- new patch_path. Only changes vs. the old schema: the context_type CHECK is
|
|
21
|
+
-- dropped (validation moves to application code), and patch_path is appended.
|
|
22
|
+
CREATE TABLE chat_thread_new (
|
|
23
|
+
id TEXT PRIMARY KEY NOT NULL,
|
|
24
|
+
title TEXT,
|
|
25
|
+
last_session_id TEXT,
|
|
26
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
27
|
+
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
28
|
+
current_todo_items TEXT,
|
|
29
|
+
plan_mode INTEGER NOT NULL DEFAULT 0,
|
|
30
|
+
initial_system_prompt TEXT,
|
|
31
|
+
last_usage_json TEXT,
|
|
32
|
+
plan_id INTEGER REFERENCES plan(id) ON DELETE SET NULL,
|
|
33
|
+
last_seen_plan_version INTEGER,
|
|
34
|
+
last_context_size INTEGER,
|
|
35
|
+
context_type TEXT NOT NULL DEFAULT 'chat',
|
|
36
|
+
brief_path TEXT,
|
|
37
|
+
patch_path TEXT
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
INSERT INTO chat_thread_new (
|
|
41
|
+
id, title, last_session_id, created_at, updated_at, current_todo_items,
|
|
42
|
+
plan_mode, initial_system_prompt, last_usage_json, plan_id,
|
|
43
|
+
last_seen_plan_version, last_context_size, context_type, brief_path
|
|
44
|
+
)
|
|
45
|
+
SELECT
|
|
46
|
+
id, title, last_session_id, created_at, updated_at, current_todo_items,
|
|
47
|
+
plan_mode, initial_system_prompt, last_usage_json, plan_id,
|
|
48
|
+
last_seen_plan_version, last_context_size, context_type, brief_path
|
|
49
|
+
FROM chat_thread;
|
|
50
|
+
|
|
51
|
+
DROP TABLE chat_thread;
|
|
52
|
+
|
|
53
|
+
ALTER TABLE chat_thread_new RENAME TO chat_thread;
|
|
54
|
+
|
|
55
|
+
CREATE INDEX idx_chat_thread_plan ON chat_thread(plan_id);
|
|
56
|
+
|
|
57
|
+
-- Partial index for "open threads for this brief" — same as migration 022.
|
|
58
|
+
CREATE INDEX IF NOT EXISTS idx_chat_thread_brief_path
|
|
59
|
+
ON chat_thread(brief_path) WHERE brief_path IS NOT NULL;
|
|
60
|
+
|
|
61
|
+
-- Partial index for "open threads for this patch" (GET /api/patches/:path
|
|
62
|
+
-- threadCount + POST /api/patches/:path/threads lookups).
|
|
63
|
+
CREATE INDEX IF NOT EXISTS idx_chat_thread_patch_path
|
|
64
|
+
ON chat_thread(patch_path) WHERE patch_path IS NOT NULL;
|
package/dist/server/index.js
CHANGED
|
@@ -20,6 +20,8 @@ import { PlanService } from './services/plan.js';
|
|
|
20
20
|
import { plansRouter } from './routes/plans.js';
|
|
21
21
|
import { BriefService } from './services/brief.js';
|
|
22
22
|
import { briefsRouter } from './routes/briefs.js';
|
|
23
|
+
import { PatchService } from './services/patch.js';
|
|
24
|
+
import { patchesRouter } from './routes/patches.js';
|
|
23
25
|
import { PagesFrontmatterIndexer } from './services/pages-frontmatter-indexer.js';
|
|
24
26
|
import { SectionIndexerService } from './services/section-indexer.js';
|
|
25
27
|
import { TodosIndexerService } from './services/todos-indexer.js';
|
|
@@ -144,6 +146,19 @@ export async function startServer(opts) {
|
|
|
144
146
|
if (briefsDir === pagesDir) {
|
|
145
147
|
console.warn(`[config] briefsDir === pagesDir ("${pagesDir}") — brief files will be visible in both indexers`);
|
|
146
148
|
}
|
|
149
|
+
// M23: patchesDir, default '.claude4spec/patches'. Same validation as briefsDir.
|
|
150
|
+
const patchesDir = bootConfig.patchesDir ?? '.claude4spec/patches';
|
|
151
|
+
if (path.isAbsolute(patchesDir)) {
|
|
152
|
+
throw new Error(`config.json: patchesDir must be relative to cwd, got: ${patchesDir}`);
|
|
153
|
+
}
|
|
154
|
+
const patchesAbs = path.resolve(cwd, patchesDir);
|
|
155
|
+
const patchesRel = path.relative(cwd, patchesAbs);
|
|
156
|
+
if (patchesRel.startsWith('..') || path.isAbsolute(patchesRel)) {
|
|
157
|
+
throw new Error(`config.json: patchesDir must not escape project root, got: ${patchesDir}`);
|
|
158
|
+
}
|
|
159
|
+
if (patchesDir === pagesDir || patchesDir === briefsDir) {
|
|
160
|
+
console.warn(`[config] patchesDir collides with pagesDir/briefsDir ("${patchesDir}") — patch files will be visible in multiple indexers`);
|
|
161
|
+
}
|
|
147
162
|
pluginHost.consolidate(bootConfig.entities);
|
|
148
163
|
const hostState = pluginHost.state();
|
|
149
164
|
console.log(`[plugin-host] active: [${hostState.active.join(', ') || '∅'}]` +
|
|
@@ -164,6 +179,9 @@ export async function startServer(opts) {
|
|
|
164
179
|
// odpowiedniego rootDir).
|
|
165
180
|
const briefsPages = new PagesService(cwd, briefsDir);
|
|
166
181
|
await briefsPages.ensureRoot();
|
|
182
|
+
// M23 m02multidir: trzeci PagesService dla patchesDir (analogicznie do briefsDir).
|
|
183
|
+
const patchesPages = new PagesService(cwd, patchesDir);
|
|
184
|
+
await patchesPages.ensureRoot();
|
|
167
185
|
const tagsService = new TagsService(db.handle);
|
|
168
186
|
const versionService = new VersionService(db.handle);
|
|
169
187
|
const rawReader = new RawEntityReader(db.handle);
|
|
@@ -257,6 +275,8 @@ export async function startServer(opts) {
|
|
|
257
275
|
// gateway (broadcast `page:changed` z drugiego katalogu — UI może slot-detect
|
|
258
276
|
// przez prefix sciezki, jezeli kiedys bedzie potrzebne).
|
|
259
277
|
const briefsWatcher = new PagesWatcher(briefsPages.root, gateway);
|
|
278
|
+
// M23 m02multidir: trzeci PagesWatcher na patchesDir.
|
|
279
|
+
const patchesWatcher = new PagesWatcher(patchesPages.root, gateway);
|
|
260
280
|
const referencesService = new ReferencesService(pages, watcher);
|
|
261
281
|
const sectionsService = new SectionsService(db.handle);
|
|
262
282
|
sectionsService.setWriteDeps({ pages, watcher });
|
|
@@ -284,9 +304,11 @@ export async function startServer(opts) {
|
|
|
284
304
|
// PageVersionService akceptuje override serializera w recordVersion(),
|
|
285
305
|
// wiec dwa serializery dziela jedna instancje wersjonowania.
|
|
286
306
|
const briefsSerializer = new PageSerializer(briefsPages);
|
|
307
|
+
// M23: serializer dla patchesDir (analogicznie do briefsSerializer).
|
|
308
|
+
const patchesSerializer = new PageSerializer(patchesPages);
|
|
287
309
|
const pageVersions = new PageVersionService(db.handle, pageSerializer);
|
|
288
|
-
// M21 m02fmidx: in-memory frontmatter indexer feeded przez
|
|
289
|
-
const pagesFrontmatterIndexer = new PagesFrontmatterIndexer(pages, briefsPages, gateway);
|
|
310
|
+
// M21 m02fmidx / M23: in-memory frontmatter indexer feeded przez trzy watchery.
|
|
311
|
+
const pagesFrontmatterIndexer = new PagesFrontmatterIndexer(pages, briefsPages, patchesPages, gateway);
|
|
290
312
|
// Mount all active backend modules — each plugin constructs its own service,
|
|
291
313
|
// mounts its router, registers its MCP server, and wires its id resolver via
|
|
292
314
|
// the supplied MountContext. Inactive plugins are skipped (config.entities).
|
|
@@ -329,6 +351,16 @@ export async function startServer(opts) {
|
|
|
329
351
|
releaseService,
|
|
330
352
|
frontmatterIndexer: pagesFrontmatterIndexer,
|
|
331
353
|
});
|
|
354
|
+
// M23: PatchService — top-level (nie plugin), wzorzec analogiczny do
|
|
355
|
+
// BriefService. Mountowany router /api/patches poniżej.
|
|
356
|
+
const patchService = new PatchService({
|
|
357
|
+
patchesPages,
|
|
358
|
+
patchesWatcher,
|
|
359
|
+
patchesSerializer,
|
|
360
|
+
pageVersions,
|
|
361
|
+
chatService,
|
|
362
|
+
frontmatterIndexer: pagesFrontmatterIndexer,
|
|
363
|
+
});
|
|
332
364
|
app.use('/api', pluginHostRouter(pluginHost));
|
|
333
365
|
app.use('/api/pages', pagesRouter(pages, watcher, pageVersions));
|
|
334
366
|
app.use('/api/tags', tagsRouter(tagsService, referencesService));
|
|
@@ -341,6 +373,7 @@ export async function startServer(opts) {
|
|
|
341
373
|
app.use('/api/plans', plansRouter(planService));
|
|
342
374
|
app.use('/api/releases', releasesRouter(releaseService, gateway));
|
|
343
375
|
app.use('/api/briefs', briefsRouter(briefService, pageVersions));
|
|
376
|
+
app.use('/api/patches', patchesRouter(patchService));
|
|
344
377
|
app.use('/api/chat', chatRouter({
|
|
345
378
|
chatService,
|
|
346
379
|
pagesService: pages,
|
|
@@ -348,6 +381,7 @@ export async function startServer(opts) {
|
|
|
348
381
|
sectionsService,
|
|
349
382
|
planService,
|
|
350
383
|
briefService,
|
|
384
|
+
patchService,
|
|
351
385
|
pageVersions,
|
|
352
386
|
skillResolver,
|
|
353
387
|
skillRegistry,
|
|
@@ -404,8 +438,25 @@ export async function startServer(opts) {
|
|
|
404
438
|
});
|
|
405
439
|
}
|
|
406
440
|
});
|
|
441
|
+
// M23: trzeci watcher dla patchesDir — analogicznie do briefsWatcher.
|
|
442
|
+
patchesWatcher.onChange((relPath, kind) => {
|
|
443
|
+
if (kind === 'unlink') {
|
|
444
|
+
pagesFrontmatterIndexer.handleUnlink('patches', relPath);
|
|
445
|
+
pageVersions.recordVersion(relPath, 'delete', 'filesystem', undefined, patchesSerializer, 'patch').catch((err) => {
|
|
446
|
+
console.warn(`[page-version] patch delete capture for ${relPath}:`, err.message);
|
|
447
|
+
});
|
|
448
|
+
}
|
|
449
|
+
else {
|
|
450
|
+
pagesFrontmatterIndexer.schedulePage('patches', relPath);
|
|
451
|
+
const op = kind === 'add' && !pageVersions.hasAny(relPath) ? 'create' : 'update';
|
|
452
|
+
pageVersions.recordVersion(relPath, op, 'filesystem', undefined, patchesSerializer, 'patch').catch((err) => {
|
|
453
|
+
console.warn(`[page-version] patch capture for ${relPath}:`, err.message);
|
|
454
|
+
});
|
|
455
|
+
}
|
|
456
|
+
});
|
|
407
457
|
watcher.start();
|
|
408
458
|
briefsWatcher.start();
|
|
459
|
+
patchesWatcher.start();
|
|
409
460
|
sectionIndexer.indexAll().catch((err) => {
|
|
410
461
|
console.error('[section-indexer] initial indexAll failed:', err);
|
|
411
462
|
});
|
|
@@ -416,12 +467,17 @@ export async function startServer(opts) {
|
|
|
416
467
|
console.error('[pages-link-indexer] initial indexAll failed:', err);
|
|
417
468
|
});
|
|
418
469
|
// M17: initial sync of page_version. For each markdown file with no captured
|
|
419
|
-
// version
|
|
470
|
+
// version — or whose latest captured version is a `delete` tombstone while the
|
|
471
|
+
// file is back on disk — write an `op = 'create'` baseline. The latter case
|
|
472
|
+
// covers delete+recreate that happened while the server wasn't watching
|
|
473
|
+
// (server down, `git checkout` between restarts): without this, the phantom
|
|
474
|
+
// `delete` stays the latest row and release diffs show the page as removed.
|
|
420
475
|
(async () => {
|
|
421
476
|
try {
|
|
422
477
|
const files = await pages.listMarkdownFiles();
|
|
423
478
|
for (const relPath of files) {
|
|
424
|
-
|
|
479
|
+
const latest = pageVersions.getLatestForPath(relPath);
|
|
480
|
+
if (latest && latest.op !== 'delete')
|
|
425
481
|
continue;
|
|
426
482
|
await pageVersions.recordVersion(relPath, 'create', 'filesystem');
|
|
427
483
|
}
|
|
@@ -443,6 +499,18 @@ export async function startServer(opts) {
|
|
|
443
499
|
catch (err) {
|
|
444
500
|
console.warn('[page-version] briefs initial sync failed:', err.message);
|
|
445
501
|
}
|
|
502
|
+
// M23: initial sync — page_version baseline dla patchy.
|
|
503
|
+
try {
|
|
504
|
+
const files = await patchesPages.listMarkdownFiles();
|
|
505
|
+
for (const relPath of files) {
|
|
506
|
+
if (pageVersions.hasAny(relPath))
|
|
507
|
+
continue;
|
|
508
|
+
await pageVersions.recordVersion(relPath, 'create', 'filesystem', undefined, patchesSerializer, 'patch');
|
|
509
|
+
}
|
|
510
|
+
}
|
|
511
|
+
catch (err) {
|
|
512
|
+
console.warn('[page-version] patches initial sync failed:', err.message);
|
|
513
|
+
}
|
|
446
514
|
try {
|
|
447
515
|
await pagesFrontmatterIndexer.indexAll();
|
|
448
516
|
}
|
|
@@ -464,6 +532,7 @@ export async function startServer(opts) {
|
|
|
464
532
|
shutdown: async () => {
|
|
465
533
|
await watcher.close();
|
|
466
534
|
await briefsWatcher.close();
|
|
535
|
+
await patchesWatcher.close();
|
|
467
536
|
await gateway.close();
|
|
468
537
|
await closeAssets();
|
|
469
538
|
db.close();
|
package/dist/server/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAyB,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,YAAY,IAAI,gBAAgB,EAA6B,MAAM,WAAW,CAAC;AACxF,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,MAAM,EAAW,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC3F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,sFAAsF;AACtF,OAAO,gCAAgC,CAAC;AAExC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAiB/D,MAAM,YAAY,GAAG,IAAI,CAAC;AAC1B,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B,KAAK,UAAU,SAAS,CAAC,MAAkB,EAAE,SAAiB;IAC5D,KAAK,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC,GAAG,SAAS,GAAG,mBAAmB,EAAE,CAAC,EAAE,EAAE,CAAC;QACjE,IAAI,CAAC;YACH,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC1C,MAAM,OAAO,GAAG,CAAC,GAA0B,EAAE,EAAE;oBAC7C,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;oBACrC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC,CAAC;gBACF,MAAM,WAAW,GAAG,GAAG,EAAE;oBACvB,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;oBAC7B,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC;gBACF,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC9B,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;gBACtC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACnB,CAAC,CAAC,CAAC;YACH,OAAO,CAAC,CAAC;QACX,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAK,GAA6B,CAAC,IAAI,KAAK,YAAY;gBAAE,MAAM,GAAG,CAAC;QACtE,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,IAAI,SAAS,GAAG,mBAAmB,EAAE,CAAC,CAAC;AAC3F,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,GAAY,EAAE,GAAW;IACnD,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC;QAC9B,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC;QACjD,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC;QACvC,MAAM,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE;QAChC,OAAO,EAAE,QAAQ;KAClB,CAAC,CAAC;IACH,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC1B,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACpC,IAAI,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,EAAE,CAAC;QAC3F,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC;YAC9D,IAAI,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACzD,IAAI,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;YAC5D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,gBAAgB,CAAC,GAAY,CAAC,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,CAAC;QACZ,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,SAAS,CAAC,GAAY,EAAE,GAAW;IAC1C,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACnC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACtD,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IACpC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC9B,IAAI,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,UAAU,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,EAAE,CAAC;QAC3F,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC;AACxB,CAAC;AAED,SAAS,YAAY,CAAC,SAAiB;IACrC,IAAI,GAAG,GAAG,SAAS,CAAC;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAAE,OAAO,GAAG,CAAC;QAC9D,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAkB;IAClD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACnF,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,YAAY,EAAE,CAAC;IAEvD,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IACtB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAExC,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IACnC,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,UAAU,CAAC,QAAQ,IAAI,OAAO,CAAC;IACjE,+EAA+E;IAC/E,2EAA2E;IAC3E,wEAAwE;IACxE,6BAA6B;IAC7B,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,IAAI,qBAAqB,CAAC;IAChE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,wDAAwD,SAAS,EAAE,CAAC,CAAC;IACvF,CAAC;IACD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAChD,IAAI,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,6DAA6D,SAAS,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,CAAC,IAAI,CACV,qCAAqC,QAAQ,mDAAmD,CACjG,CAAC;IACJ,CAAC;IACD,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC;IACrC,OAAO,CAAC,GAAG,CACT,0BAA0B,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG;QAC7D,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CACnF,CAAC;IACF,MAAM,mBAAmB,GAAG,UAAU,CAAC,YAAY,CAAC;IACpD,IAAI,mBAAmB,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACrF,MAAM,SAAS,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC;QAC3F,MAAM,IAAI,KAAK,CACb,8BAA8B,mBAAmB,sDAAsD,SAAS,EAAE,CACnH,CAAC;IACJ,CAAC;IACD,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;IAE5D,MAAM,EAAE,GAAO,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC9C,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC;IACzB,4EAA4E;IAC5E,8EAA8E;IAC9E,yEAAyE;IACzE,0BAA0B;IAC1B,MAAM,WAAW,GAAG,IAAI,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACrD,MAAM,WAAW,CAAC,UAAU,EAAE,CAAC;IAE/B,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IACjD,oEAAoE;IACpE,qEAAqE;IACrE,cAAc,CAAC,iBAAiB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACxD,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IAC/C,yFAAyF;IACzF,iGAAiG;IACjG,WAAW,CAAC,wBAAwB,EAAE,CAAC;IAEvC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QACnC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QACjC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QACnC,kFAAkF;QAClF,oEAAoE;QACpE,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC;YACP,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,IAAI,EAAE,OAAO,CAAC,OAAO;YACrB,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,IAAI;YACJ,YAAY,EAAE,CAAC,CAAC,YAAY;YAC5B,UAAU,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,mBAAmB,EAAE;SACjD,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QAC1C,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAA4B,CAAC;YACzD,MAAM,KAAK,GAAyF,EAAE,CAAC;YAEvG,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAClC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,uBAAuB,EAAE,EAAE,CAAC,CAAC;gBACnG,CAAC;gBACD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACjC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;oBACtF,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,2CAA2C,EAAE,EAAE,CAAC,CAAC;gBACvH,CAAC;gBACD,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC;YACvB,CAAC;YAED,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;gBAC3B,IAAI,IAAI,CAAC,YAAY,KAAK,IAAI,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;oBACxE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,oCAAoC,EAAE,EAAE,CAAC,CAAC;gBAChH,CAAC;gBACD,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC5F,MAAM,SAAS,GAAG,aAAa,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC;oBAC3F,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,iBAAiB,IAAI,CAAC,YAAY,sDAAsD,SAAS,EAAE,EAAE,EAAE,CAAC,CAAC;gBAC/K,CAAC;gBACD,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC;YACzC,CAAC;YAED,IAAI,qBAAqB,IAAI,IAAI,EAAE,CAAC;gBAClC,IAAI,OAAO,IAAI,CAAC,mBAAmB,KAAK,SAAS,EAAE,CAAC;oBAClD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,qCAAqC,EAAE,EAAE,CAAC,CAAC;gBACjH,CAAC;gBACD,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;YACvD,CAAC;YAED,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;YACxC,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,IAAI,EAAE,OAAO,CAAC,OAAO;gBACrB,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,IAAI;gBACJ,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,UAAU,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,mBAAmB,EAAE;aACvD,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,GAAG,CAAC,CAAC;QACZ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;QAC3C,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC;YACP,MAAM,EAAE,CAAC,CAAC,YAAY;YACtB,SAAS,EAAE,aAAa,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACpD,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ;aACrB,CAAC,CAAC;SACJ,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,UAAU,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACtD,wEAAwE;IACxE,8EAA8E;IAC9E,yDAAyD;IACzD,MAAM,aAAa,GAAG,IAAI,YAAY,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAClE,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAChE,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;IACvD,eAAe,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAEjD,qEAAqE;IACrE,uEAAuE;IACvE,gFAAgF;IAChF,8BAA8B,CAAC;QAC7B,GAAG,EAAE,aAAa;QAClB,SAAS,EAAE,CAAC,QAAQ,CAAC;QACrB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YAClB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC;YAClC,OAAO,MAAM,IAAI,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC;gBAC1C,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAC9B,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC;QAChD,CAAC;KACF,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACrE,MAAM,cAAc,GAAG,IAAI,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACrF,MAAM,YAAY,GAAG,IAAI,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAC7D,MAAM,gBAAgB,GAAG,IAAI,uBAAuB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACrE,2DAA2D;IAC3D,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;IACjD,0EAA0E;IAC1E,yEAAyE;IACzE,uEAAuE;IACvE,6DAA6D;IAC7D,MAAM,gBAAgB,GAAG,IAAI,cAAc,CAAC,WAAW,CAAC,CAAC;IACzD,MAAM,YAAY,GAAG,IAAI,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACvE,yEAAyE;IACzE,MAAM,uBAAuB,GAAG,IAAI,uBAAuB,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAEzF,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,UAAU,CAAC,YAAY,CAAC;QACtB,GAAG;QACH,EAAE,EAAE,EAAE,CAAC,MAAM;QACb,EAAE,EAAE,OAAO;QACX,WAAW;QACX,cAAc;QACd,iBAAiB;QACjB,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC;QAC/E,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE,CAAC;QAC/D,qBAAqB,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,qBAAqB,CAAC,IAAI,EAAE,OAAO,CAAC;KAC1F,CAAC,CAAC;IAEH,oEAAoE;IACpE,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;QACtD,WAAW;QACX,iBAAiB;QACjB,YAAY,EAAE,KAAK;QACnB,eAAe;QACf,EAAE,EAAE,OAAO;QACX,EAAE,EAAE,EAAE,CAAC,MAAM;QACb,GAAG;KACJ,CAAC,CAAC;IACH,UAAU,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,CAAC;IAEtE,gEAAgE;IAChE,wEAAwE;IACxE,qEAAqE;IACrE,MAAM,cAAc,GAAG,IAAI,cAAc,CACvC,EAAE,CAAC,MAAM,EACT,UAAU,EACV,cAAc,EACd,YAAY,EACZ,cAAc,EACd,SAAS,EACT,WAAW,EACX,KAAK,EACL,OAAO,CACR,CAAC;IACF,MAAM,kBAAkB,GAAG,wBAAwB,CAAC,EAAE,cAAc,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACrF,UAAU,CAAC,iBAAiB,CAAC,eAAe,EAAE,kBAAkB,CAAC,CAAC;IAElE,qEAAqE;IACrE,sDAAsD;IACtD,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC;QACpC,WAAW;QACX,aAAa;QACb,gBAAgB;QAChB,YAAY;QACZ,WAAW;QACX,cAAc;QACd,kBAAkB,EAAE,uBAAuB;KAC5C,CAAC,CAAC;IAEH,GAAG,CAAC,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;IAC9C,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;IACjE,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACjE,GAAG,CAAC,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAChE,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC,CAAC;IACtE,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC;IACpD,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC,eAAe,CAAC,CAAC,CAAC;IAC1D,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;IACjD,GAAG,CAAC,GAAG,CAAC,iBAAiB,EAAE,eAAe,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC9D,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC;IAChD,GAAG,CAAC,GAAG,CAAC,eAAe,EAAE,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;IAClE,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;IACjE,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC;QAC9B,WAAW;QACX,YAAY,EAAE,KAAK;QACnB,WAAW;QACX,eAAe;QACf,WAAW;QACX,YAAY;QACZ,YAAY;QACZ,aAAa;QACb,aAAa;QACb,EAAE,EAAE,OAAO;QACX,GAAG;QACH,QAAQ;QACR,IAAI;QACJ,EAAE;KACH,CAAC,CAAC,CAAC;IACJ,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEtB,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;QACjC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACjD,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;YACH,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACnC,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACvC,uBAAuB,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACvD,mEAAmE;YACnE,YAAY,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACxE,OAAO,CAAC,IAAI,CAAC,6CAA6C,OAAO,GAAG,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;YAChG,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACrC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACnC,gBAAgB,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACvC,uBAAuB,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACvD,uEAAuE;YACvE,oEAAoE;YACpE,iBAAiB;YACjB,MAAM,EAAE,GAAwB,IAAI,KAAK,KAAK,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;YACtG,YAAY,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAClE,OAAO,CAAC,IAAI,CAAC,sCAAsC,OAAO,GAAG,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;YACzF,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,0EAA0E;IAC1E,4EAA4E;IAC5E,wEAAwE;IACxE,8EAA8E;IAC9E,aAAa,CAAC,QAAQ,CAAC,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;QACvC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,uBAAuB,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACxD,YAAY,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC9G,OAAO,CAAC,IAAI,CAAC,2CAA2C,OAAO,GAAG,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;YAC9F,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,uBAAuB,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACxD,MAAM,EAAE,GAAwB,IAAI,KAAK,KAAK,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;YACtG,YAAY,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACxG,OAAO,CAAC,IAAI,CAAC,oCAAoC,OAAO,GAAG,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;YACvF,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,KAAK,EAAE,CAAC;IAChB,aAAa,CAAC,KAAK,EAAE,CAAC;IAEtB,cAAc,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACtC,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,GAAG,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACpC,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,GAAG,CAAC,CAAC;IACjE,CAAC,CAAC,CAAC;IAEH,gBAAgB,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACxC,OAAO,CAAC,KAAK,CAAC,+CAA+C,EAAE,GAAG,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,4EAA4E;IAC5E,CAAC,KAAK,IAAI,EAAE;QACV,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC9C,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;gBAC5B,IAAI,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC;oBAAE,SAAS;gBAC3C,MAAM,YAAY,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,qCAAqC,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,+EAA+E;IAC/E,CAAC,KAAK,IAAI,EAAE;QACV,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,iBAAiB,EAAE,CAAC;YACpD,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;gBAC5B,IAAI,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC;oBAAE,SAAS;gBAC3C,MAAM,YAAY,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;YAC1G,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,4CAA4C,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;QACrF,CAAC;QACD,IAAI,CAAC;YACH,MAAM,uBAAuB,CAAC,QAAQ,EAAE,CAAC;QAC3C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,kDAAkD,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;QAC3F,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,WAAW,GAAG,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAExF,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1D,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IACvB,MAAM,GAAG,GAAG,oBAAoB,IAAI,EAAE,CAAC;IAEvC,MAAM,YAAY,GAAG,mBAAmB;QACtC,CAAC,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE;QACjG,CAAC,CAAC,IAAI,CAAC;IAET,OAAO;QACL,GAAG;QACH,IAAI;QACJ,YAAY;QACZ,QAAQ,EAAE,KAAK,IAAI,EAAE;YACnB,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,aAAa,CAAC,KAAK,EAAE,CAAC;YAC5B,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;YACtB,MAAM,WAAW,EAAE,CAAC;YACpB,EAAE,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC1E,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import type { TagsService } from '../services/tags.js';
|
|
|
5
5
|
import type { SectionsService } from '../services/sections.js';
|
|
6
6
|
import type { PlanService } from '../services/plan.js';
|
|
7
7
|
import type { BriefService } from '../services/brief.js';
|
|
8
|
+
import type { PatchService } from '../services/patch.js';
|
|
8
9
|
import type { PageVersionService } from '../services/page-version.js';
|
|
9
10
|
import type { SkillResolver, SkillRegistry } from '../services/skill-registry.js';
|
|
10
11
|
import type { WsGateway } from '../ws/gateway.js';
|
|
@@ -16,6 +17,7 @@ interface ChatRouterDeps {
|
|
|
16
17
|
sectionsService: SectionsService;
|
|
17
18
|
planService: PlanService;
|
|
18
19
|
briefService: BriefService;
|
|
20
|
+
patchService: PatchService;
|
|
19
21
|
pageVersions: PageVersionService;
|
|
20
22
|
skillResolver: SkillResolver;
|
|
21
23
|
skillRegistry: SkillRegistry;
|
|
@@ -129,6 +129,9 @@ export function chatRouter(deps) {
|
|
|
129
129
|
deps.chatService.updateTitle(thread.id, title || '(annotations only)');
|
|
130
130
|
}
|
|
131
131
|
const isBrief = thread.contextType === 'brief';
|
|
132
|
+
// M23: patch threads keep the FULL spec-editing toolset (isBrief stays
|
|
133
|
+
// false) — their job is to edit the spec. Only the system prompt differs.
|
|
134
|
+
const isPatch = thread.contextType === 'patch';
|
|
132
135
|
// M21: dla brief context czytamy aktualny snapshot brief'u (frontmatter+body+hash)
|
|
133
136
|
// i wkladamy do system promptu. Skip kosztownych obliczen pageCount/entityCounts
|
|
134
137
|
// (irrelewantne dla brief author).
|
|
@@ -143,6 +146,16 @@ export function chatRouter(deps) {
|
|
|
143
146
|
console.warn(`[chat] brief read failed for ${thread.briefPath}:`, err.message);
|
|
144
147
|
}
|
|
145
148
|
}
|
|
149
|
+
// M23: dla patch context czytamy snapshot patcha i wkladamy do system promptu.
|
|
150
|
+
let patchSnapshot = null;
|
|
151
|
+
if (isPatch && thread.patchPath) {
|
|
152
|
+
try {
|
|
153
|
+
patchSnapshot = await deps.patchService.getPatch(thread.patchPath);
|
|
154
|
+
}
|
|
155
|
+
catch (err) {
|
|
156
|
+
console.warn(`[chat] patch read failed for ${thread.patchPath}:`, err.message);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
146
159
|
let currentPageBody = null;
|
|
147
160
|
if (!isBrief && currentPage) {
|
|
148
161
|
try {
|
|
@@ -202,6 +215,7 @@ export function chatRouter(deps) {
|
|
|
202
215
|
writingStyle,
|
|
203
216
|
contextType: thread.contextType,
|
|
204
217
|
brief: briefSnapshot,
|
|
218
|
+
patch: patchSnapshot,
|
|
205
219
|
});
|
|
206
220
|
// claude-code CLI po resumeSessionId ignoruje kolejne systemPrompty —
|
|
207
221
|
// wiążący dla audytu jest tylko pierwszy. UPDATE idempotentny (no-op na 2.+ turze).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/server/routes/chat.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../src/server/routes/chat.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,10 @@ const STATUS_FOR_CODE = {
|
|
|
19
19
|
BRIEF_INVALID_FRONTMATTER: 400,
|
|
20
20
|
BRIEF_CONFLICT: 409,
|
|
21
21
|
PAGE_CONFLICT: 409,
|
|
22
|
+
// M23 Patches
|
|
23
|
+
PATCH_CONFLICT: 409,
|
|
24
|
+
PATCH_FRONTMATTER_IMMUTABLE: 400,
|
|
25
|
+
PATCH_INVALID_FRONTMATTER: 400,
|
|
22
26
|
};
|
|
23
27
|
export const errorHandler = (err, _req, res, _next) => {
|
|
24
28
|
if (err instanceof ConflictError) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/server/routes/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,eAAe,GAA2B;IAC9C,SAAS,EAAE,GAAG;IACd,iBAAiB,EAAE,GAAG;IACtB,aAAa,EAAE,GAAG;IAClB,UAAU,EAAE,GAAG;IACf,iBAAiB,EAAE,GAAG;IACtB,iBAAiB,EAAE,GAAG;IACtB,cAAc,EAAE,GAAG;IACnB,MAAM;IACN,qBAAqB,EAAE,GAAG;IAC1B,4BAA4B,EAAE,GAAG;IACjC,cAAc,EAAE,GAAG;IACnB,eAAe,EAAE,GAAG;IACpB,aAAa;IACb,kBAAkB,EAAE,GAAG;IACvB,2BAA2B,EAAE,GAAG;IAChC,yBAAyB,EAAE,GAAG;IAC9B,cAAc,EAAE,GAAG;IACnB,aAAa,EAAE,GAAG;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/server/routes/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,MAAM,eAAe,GAA2B;IAC9C,SAAS,EAAE,GAAG;IACd,iBAAiB,EAAE,GAAG;IACtB,aAAa,EAAE,GAAG;IAClB,UAAU,EAAE,GAAG;IACf,iBAAiB,EAAE,GAAG;IACtB,iBAAiB,EAAE,GAAG;IACtB,cAAc,EAAE,GAAG;IACnB,MAAM;IACN,qBAAqB,EAAE,GAAG;IAC1B,4BAA4B,EAAE,GAAG;IACjC,cAAc,EAAE,GAAG;IACnB,eAAe,EAAE,GAAG;IACpB,aAAa;IACb,kBAAkB,EAAE,GAAG;IACvB,2BAA2B,EAAE,GAAG;IAChC,yBAAyB,EAAE,GAAG;IAC9B,cAAc,EAAE,GAAG;IACnB,aAAa,EAAE,GAAG;IAClB,cAAc;IACd,cAAc,EAAE,GAAG;IACnB,2BAA2B,EAAE,GAAG;IAChC,yBAAyB,EAAE,GAAG;CAC/B,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAwB,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;IACzE,IAAI,GAAG,YAAY,aAAa,EAAE,CAAC;QACjC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE;YAC/C,WAAW,EAAE,GAAG,CAAC,WAAW;SAC7B,CAAC,CAAC;IACL,CAAC;IACD,IAAI,GAAG,YAAY,WAAW,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;QAChD,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAG,GAAa,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AACzF,CAAC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Router } from 'express';
|
|
2
|
+
import type { PatchService } from '../services/patch.js';
|
|
3
|
+
/**
|
|
4
|
+
* M23 REST routes (tag `m23-patches`). Path is splat (`/api/patches/<path>`)
|
|
5
|
+
* so nested filenames are supported, consistent with `/api/pages/*` and
|
|
6
|
+
* `/api/briefs/*`.
|
|
7
|
+
*/
|
|
8
|
+
export declare function patchesRouter(patches: PatchService): Router;
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { Router } from 'express';
|
|
2
|
+
import { DomainError } from '../services/tags.js';
|
|
3
|
+
/**
|
|
4
|
+
* M23 REST routes (tag `m23-patches`). Path is splat (`/api/patches/<path>`)
|
|
5
|
+
* so nested filenames are supported, consistent with `/api/pages/*` and
|
|
6
|
+
* `/api/briefs/*`.
|
|
7
|
+
*/
|
|
8
|
+
export function patchesRouter(patches) {
|
|
9
|
+
const router = Router();
|
|
10
|
+
// GET /api/patches?brief=<path>&status=awaiting|completed
|
|
11
|
+
router.get('/', (req, res, next) => {
|
|
12
|
+
try {
|
|
13
|
+
const brief = typeof req.query.brief === 'string' ? req.query.brief : undefined;
|
|
14
|
+
const status = parseStatusQuery(req.query.status);
|
|
15
|
+
res.json({ data: patches.listPatches({ brief, status }) });
|
|
16
|
+
}
|
|
17
|
+
catch (err) {
|
|
18
|
+
next(err);
|
|
19
|
+
}
|
|
20
|
+
});
|
|
21
|
+
// POST /api/patches/<path>/threads — "Change spec according to patch"
|
|
22
|
+
router.post('/*/threads', async (req, res, next) => {
|
|
23
|
+
try {
|
|
24
|
+
const patchPath = extractPath(req.params);
|
|
25
|
+
const body = (req.body ?? {});
|
|
26
|
+
const result = await patches.createThreadForPatch(patchPath, body.name ?? null);
|
|
27
|
+
res.json({ data: result });
|
|
28
|
+
}
|
|
29
|
+
catch (err) {
|
|
30
|
+
next(err);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
// PUT /api/patches/<path>/content — overwrite, optimistic concurrency
|
|
34
|
+
router.put('/*/content', async (req, res, next) => {
|
|
35
|
+
try {
|
|
36
|
+
const patchPath = extractPath(req.params);
|
|
37
|
+
const body = (req.body ?? {});
|
|
38
|
+
if (typeof body.content !== 'string') {
|
|
39
|
+
throw new DomainError('VALIDATION', 'content is required');
|
|
40
|
+
}
|
|
41
|
+
if (typeof body.expectedHash !== 'string') {
|
|
42
|
+
throw new DomainError('VALIDATION', 'expectedHash is required for patch content updates');
|
|
43
|
+
}
|
|
44
|
+
const out = await patches.updateContent({
|
|
45
|
+
path: patchPath,
|
|
46
|
+
content: body.content,
|
|
47
|
+
expectedHash: body.expectedHash,
|
|
48
|
+
});
|
|
49
|
+
res.json({ data: out });
|
|
50
|
+
}
|
|
51
|
+
catch (err) {
|
|
52
|
+
next(err);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
// PATCH /api/patches/<path>/frontmatter — accepts ONLY `status`.
|
|
56
|
+
router.patch('/*/frontmatter', async (req, res, next) => {
|
|
57
|
+
try {
|
|
58
|
+
const patchPath = extractPath(req.params);
|
|
59
|
+
const body = (req.body ?? {});
|
|
60
|
+
const invalid = Object.keys(body).filter((k) => k !== 'status');
|
|
61
|
+
if (invalid.length > 0) {
|
|
62
|
+
throw new DomainError('PATCH_FRONTMATTER_IMMUTABLE', `cannot mutate immutable frontmatter keys: ${invalid.join(', ')} (only 'status' is mutable via this endpoint)`);
|
|
63
|
+
}
|
|
64
|
+
if (body.status !== 'awaiting' && body.status !== 'completed') {
|
|
65
|
+
throw new DomainError('VALIDATION', "status must be 'awaiting' or 'completed'");
|
|
66
|
+
}
|
|
67
|
+
const out = await patches.updateFrontmatter({ path: patchPath, status: body.status });
|
|
68
|
+
res.json({ data: out });
|
|
69
|
+
}
|
|
70
|
+
catch (err) {
|
|
71
|
+
next(err);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
// GET /api/patches/<path> — detail (must be LAST so the more specific
|
|
75
|
+
// /*/threads, /*/content, /*/frontmatter routes match first).
|
|
76
|
+
router.get('/*', async (req, res, next) => {
|
|
77
|
+
try {
|
|
78
|
+
const patchPath = extractPath(req.params);
|
|
79
|
+
const patch = await patches.getPatch(patchPath);
|
|
80
|
+
const threads = patches.listThreadsForPatch(patchPath);
|
|
81
|
+
res.json({ data: { ...patch, threads } });
|
|
82
|
+
}
|
|
83
|
+
catch (err) {
|
|
84
|
+
next(err);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
return router;
|
|
88
|
+
}
|
|
89
|
+
function parseStatusQuery(raw) {
|
|
90
|
+
if (raw === undefined)
|
|
91
|
+
return undefined;
|
|
92
|
+
if (raw === 'awaiting' || raw === 'completed')
|
|
93
|
+
return raw;
|
|
94
|
+
throw new DomainError('VALIDATION', `?status must be 'awaiting' or 'completed' (omit for all)`);
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Express splat (`/*`) puts ONLY the matched wildcard portion in
|
|
98
|
+
* `req.params[0]`. Literal segments (`/threads`, `/content`, …) are stripped.
|
|
99
|
+
*/
|
|
100
|
+
function extractPath(params) {
|
|
101
|
+
const splat = params[0];
|
|
102
|
+
if (!splat)
|
|
103
|
+
throw new DomainError('VALIDATION', 'missing patch path');
|
|
104
|
+
return splat;
|
|
105
|
+
}
|
|
106
|
+
//# sourceMappingURL=patches.js.map
|