mister-wolf 2.15.1 → 2.16.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/README.md +4 -16
- package/README.ru.md +19 -26
- package/dist/adapters/cli/cli-entry.d.ts.map +1 -1
- package/dist/adapters/cli/cli-entry.js +6 -0
- package/dist/adapters/cli/cli-entry.js.map +1 -1
- package/dist/adapters/cli/commands/memory-add.d.ts.map +1 -1
- package/dist/adapters/cli/commands/memory-add.js +26 -3
- package/dist/adapters/cli/commands/memory-add.js.map +1 -1
- package/dist/adapters/cli/commands/memory-call.d.ts.map +1 -1
- package/dist/adapters/cli/commands/memory-call.js +22 -2
- package/dist/adapters/cli/commands/memory-call.js.map +1 -1
- package/dist/adapters/cli/commands/memory-doctor.d.ts.map +1 -1
- package/dist/adapters/cli/commands/memory-doctor.js +57 -4
- package/dist/adapters/cli/commands/memory-doctor.js.map +1 -1
- package/dist/adapters/cli/commands/memory-init.d.ts +2 -11
- package/dist/adapters/cli/commands/memory-init.d.ts.map +1 -1
- package/dist/adapters/cli/commands/memory-init.js +59 -112
- package/dist/adapters/cli/commands/memory-init.js.map +1 -1
- package/dist/adapters/cli/commands/memory-promote.d.ts +3 -0
- package/dist/adapters/cli/commands/memory-promote.d.ts.map +1 -0
- package/dist/adapters/cli/commands/memory-promote.js +15 -0
- package/dist/adapters/cli/commands/memory-promote.js.map +1 -0
- package/dist/adapters/cli/type-command-generator.d.ts.map +1 -1
- package/dist/adapters/cli/type-command-generator.js +5 -0
- package/dist/adapters/cli/type-command-generator.js.map +1 -1
- package/dist/adapters/fs/fs-project-initializer.d.ts.map +1 -1
- package/dist/adapters/fs/fs-project-initializer.js +9 -6
- package/dist/adapters/fs/fs-project-initializer.js.map +1 -1
- package/dist/adapters/fs/memory-root.d.ts +13 -0
- package/dist/adapters/fs/memory-root.d.ts.map +1 -0
- package/dist/adapters/fs/memory-root.js +34 -0
- package/dist/adapters/fs/memory-root.js.map +1 -0
- package/dist/adapters/render/opencode/opencode-renderer.d.ts.map +1 -1
- package/dist/adapters/render/opencode/opencode-renderer.js +16 -0
- package/dist/adapters/render/opencode/opencode-renderer.js.map +1 -1
- package/dist/app/use-cases/add-memory-object.d.ts +8 -0
- package/dist/app/use-cases/add-memory-object.d.ts.map +1 -1
- package/dist/app/use-cases/add-memory-object.js +21 -1
- package/dist/app/use-cases/add-memory-object.js.map +1 -1
- package/dist/app/use-cases/get-call-injections.d.ts +9 -0
- package/dist/app/use-cases/get-call-injections.d.ts.map +1 -1
- package/dist/app/use-cases/get-call-injections.js +24 -3
- package/dist/app/use-cases/get-call-injections.js.map +1 -1
- package/dist/app/use-cases/gitignore-block.d.ts +11 -0
- package/dist/app/use-cases/gitignore-block.d.ts.map +1 -0
- package/dist/app/use-cases/gitignore-block.js +29 -0
- package/dist/app/use-cases/gitignore-block.js.map +1 -0
- package/dist/app/use-cases/init-project.d.ts +30 -4
- package/dist/app/use-cases/init-project.d.ts.map +1 -1
- package/dist/app/use-cases/init-project.js +77 -11
- package/dist/app/use-cases/init-project.js.map +1 -1
- package/dist/app/use-cases/promote-memory.d.ts +22 -0
- package/dist/app/use-cases/promote-memory.d.ts.map +1 -0
- package/dist/app/use-cases/promote-memory.js +31 -0
- package/dist/app/use-cases/promote-memory.js.map +1 -0
- package/dist/app/use-cases/repair-storage.d.ts +31 -0
- package/dist/app/use-cases/repair-storage.d.ts.map +1 -0
- package/dist/app/use-cases/repair-storage.js +65 -0
- package/dist/app/use-cases/repair-storage.js.map +1 -0
- package/dist/app/use-cases/supersede-memory-object.d.ts.map +1 -1
- package/dist/app/use-cases/supersede-memory-object.js +14 -0
- package/dist/app/use-cases/supersede-memory-object.js.map +1 -1
- package/dist/bootstrap/container.d.ts +2 -0
- package/dist/bootstrap/container.d.ts.map +1 -1
- package/dist/bootstrap/container.js +10 -6
- package/dist/bootstrap/container.js.map +1 -1
- package/dist/domain/governance.d.ts.map +1 -1
- package/dist/domain/governance.js +2 -1
- package/dist/domain/governance.js.map +1 -1
- package/dist/domain/mask-secrets.d.ts +8 -0
- package/dist/domain/mask-secrets.d.ts.map +1 -0
- package/dist/domain/mask-secrets.js +20 -0
- package/dist/domain/mask-secrets.js.map +1 -0
- package/dist/domain/memory-types.d.ts +2 -2
- package/dist/domain/memory-types.d.ts.map +1 -1
- package/dist/domain/memory-types.js +3 -1
- package/dist/domain/memory-types.js.map +1 -1
- package/dist/domain/schemas/memory-event-schema.d.ts +1 -0
- package/dist/domain/schemas/memory-event-schema.d.ts.map +1 -1
- package/dist/domain/schemas/memory-event-schema.js +1 -0
- package/dist/domain/schemas/memory-event-schema.js.map +1 -1
- package/dist/ports/base-set-renderer.port.d.ts +5 -1
- package/dist/ports/base-set-renderer.port.d.ts.map +1 -1
- package/package.json +1 -1
- package/templates/.wolf/router.log +1 -1
- package/templates/base/AGENTS.md +3 -2
- package/templates/base/agents/executor-lead.md +4 -0
- package/templates/base/agents/mr-wolf.md +3 -2
- package/templates/base/agents/steward.md +4 -2
- package/templates/base/agents/worker-implementer.md +5 -2
- package/templates/base/agents/worker-researcher.md +4 -2
- package/templates/base/agents/worker-reviewer.md +9 -7
- package/templates/base/commands/analyze-doc.md +1 -1
- package/templates/base/commands/complain.md +1 -1
- package/templates/base/commands/doc-review.md +1 -1
- package/templates/base/playbooks/executor-lead-playbook.md +10 -5
- package/templates/base/playbooks/steward-nastavnik.md +5 -4
- package/templates/base/playbooks/worker-implementer-playbook.md +17 -7
- package/templates/base/playbooks/worker-researcher-playbook.md +5 -2
- package/templates/base/playbooks/worker-reviewer-playbook.md +21 -8
- package/templates/base/skills/finishing-a-development-branch/SKILL.md +19 -211
- package/templates/base/skills/receiving-code-review/SKILL.md +12 -28
- package/templates/base/skills/requesting-code-review/SKILL.md +11 -110
- package/templates/base/skills/test-driven-development/SKILL.md +18 -396
- package/templates/base/skills/using-git-worktrees/SKILL.md +15 -177
- package/templates/base/skills/using-skills/SKILL.md +38 -123
- package/templates/base/skills/verification-before-completion/SKILL.md +16 -157
- package/templates/base/skills/wolf-brainstorm/SKILL.md +17 -168
- package/templates/base/skills/wolf-debug/SKILL.md +15 -281
- package/templates/base/skills/wolf-design/SKILL.md +16 -35
- package/templates/base/skills/wolf-execute/SKILL.md +13 -101
- package/templates/base/skills/wolf-handoff/SKILL.md +22 -88
- package/templates/base/skills/wolf-plan/SKILL.md +18 -181
- package/templates/base/skills/wolf-review/SKILL.md +25 -64
- package/templates/base/skills/wolf-sdd/SKILL.md +17 -248
- package/templates/base/skills/wolf-skill-intake/SKILL.md +14 -57
- package/templates/base/skills/wolf-testplan/SKILL.md +15 -27
- package/templates/base/skills/writing-skills/SKILL.md +16 -30
- package/templates/opencode/plugins/wolf-router.ts +2 -1
- package/templates/opencode/plugins/wolf-session-start.js +11 -9
|
@@ -4,6 +4,23 @@ import { governanceDefaults } from '../../domain/governance.js';
|
|
|
4
4
|
import { getDeclaration, DEFAULT_CHARACTER_FACETS } from '../../domain/memory-types.js';
|
|
5
5
|
import { buildTypeSchema, applyFacetEnum } from '../../domain/type-schema-builder.js';
|
|
6
6
|
import { UserFacingError } from '../../domain/errors.js';
|
|
7
|
+
import { isAbsolute, normalize, relative, sep } from 'path';
|
|
8
|
+
/** WP3 §6.3: related.files/docs — project-relative posix-пути; абсолют вне root — отказ.
|
|
9
|
+
* Прецедент: tool-librarian.ts:151 (script_path хранится относительным).
|
|
10
|
+
* decisions не трогаем — это id, не пути. */
|
|
11
|
+
export function normalizeRelatedPaths(related, projectRoot) {
|
|
12
|
+
const base = related ?? { files: [], docs: [], decisions: [] };
|
|
13
|
+
if (projectRoot === undefined)
|
|
14
|
+
return base; // legacy-вызовы/фейки без root — как сегодня
|
|
15
|
+
const norm = (p) => {
|
|
16
|
+
const rel = isAbsolute(p) ? relative(projectRoot, p) : normalize(p);
|
|
17
|
+
if (rel.length === 0 || rel.startsWith('..') || isAbsolute(rel)) {
|
|
18
|
+
throw new UserFacingError(`related path escapes the project root: "${p}" (use a project-relative path)`);
|
|
19
|
+
}
|
|
20
|
+
return rel.split(sep).join('/');
|
|
21
|
+
};
|
|
22
|
+
return { files: base.files.map(norm), docs: base.docs.map(norm), decisions: base.decisions };
|
|
23
|
+
}
|
|
7
24
|
export async function addMemoryObject(deps, input) {
|
|
8
25
|
// T030/2.13 §6.1: гвард «rules by user request only» перенесён из create-rule
|
|
9
26
|
// (CLI не всегда TTY — ошибка вместо интерактивного вопроса; пользовательский
|
|
@@ -44,7 +61,7 @@ export async function addMemoryObject(deps, input) {
|
|
|
44
61
|
created_by: input.createdBy,
|
|
45
62
|
schema_version: 1,
|
|
46
63
|
source: input.source ?? { kind: 'manual' },
|
|
47
|
-
related: input.related
|
|
64
|
+
related: normalizeRelatedPaths(input.related, deps.projectRoot),
|
|
48
65
|
tags: input.tags ?? [],
|
|
49
66
|
superseded_by: null,
|
|
50
67
|
memory_class: input.memoryClass ?? defaults.memory_class,
|
|
@@ -52,6 +69,9 @@ export async function addMemoryObject(deps, input) {
|
|
|
52
69
|
lifetime: input.lifetime ?? defaults.lifetime,
|
|
53
70
|
};
|
|
54
71
|
Object.assign(object, input.extra ?? {});
|
|
72
|
+
// WP3 §6.2: явный scope (--scope main / --set scope=...) сильнее дефолта ворктрии
|
|
73
|
+
if (deps.defaultScope !== undefined && object.scope === undefined)
|
|
74
|
+
object.scope = deps.defaultScope;
|
|
55
75
|
if (input.type === 'note' && facet !== undefined)
|
|
56
76
|
object.facet = facet;
|
|
57
77
|
const baseDecl = getDeclaration(object.type, deps.declarations);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add-memory-object.js","sourceRoot":"","sources":["../../../src/app/use-cases/add-memory-object.ts"],"names":[],"mappings":"AAMA,OAAO,EAAgB,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,wBAAwB,EAA8B,MAAM,8BAA8B,CAAC;AACpH,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"add-memory-object.js","sourceRoot":"","sources":["../../../src/app/use-cases/add-memory-object.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,13 @@ export interface CallInjectionResult {
|
|
|
14
14
|
* Стюарда»; null = relations не передан (MCP-канал) или зрелых нет. В blocks
|
|
15
15
|
* не входит — не занимает бюджет доставки. */
|
|
16
16
|
banner: string | null;
|
|
17
|
+
/** WP3 §6.2: активных кандидатов в пуле (после status-фильтра, до scope/topic-фильтров). */
|
|
18
|
+
poolSize: number;
|
|
19
|
+
/** WP3 §6.2: сколько активных скрыто scope-фильтром чужого worktree; null — скрытых нет. */
|
|
20
|
+
hidden: {
|
|
21
|
+
scope: string;
|
|
22
|
+
count: number;
|
|
23
|
+
} | null;
|
|
17
24
|
}
|
|
18
25
|
export declare function getCallInjections(deps: {
|
|
19
26
|
store: MemoryStore;
|
|
@@ -29,5 +36,7 @@ export declare function getCallInjections(deps: {
|
|
|
29
36
|
deliveredRegistry?: Record<string, string>;
|
|
30
37
|
/** P212 (2.13 §5.3в): подсветка фасета (CLI-TTY); false/undefined → плоский текст. */
|
|
31
38
|
colors?: boolean;
|
|
39
|
+
/** WP3 §6.2: текущий scope доставки; undefined/'main' — main. */
|
|
40
|
+
currentScope?: string;
|
|
32
41
|
}): Promise<CallInjectionResult>;
|
|
33
42
|
//# sourceMappingURL=get-call-injections.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-call-injections.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/get-call-injections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAQ/D,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,yFAAyF;IACzF,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;4DACwD;IACxD,YAAY,EAAE,MAAM,CAAC;IACrB;;kDAE8C;IAC9C,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"get-call-injections.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/get-call-injections.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAQ/D,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,yFAAyF;IACzF,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB;4DACwD;IACxD,YAAY,EAAE,MAAM,CAAC;IACrB;;kDAE8C;IAC9C,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,4FAA4F;IAC5F,QAAQ,EAAE,MAAM,CAAC;IACjB,4FAA4F;IAC5F,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CACjD;AAcD,wBAAsB,iBAAiB,CACrC,IAAI,EAAE;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,KAAK,CAAC,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,SAAS,CAAC,EAAE,WAAW,CAAA;CAAE,EACxF,KAAK,EAAE;IACL,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;yFACqF;IACrF,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,sFAAsF;IACtF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iEAAiE;IACjE,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GACA,OAAO,CAAC,mBAAmB,CAAC,CAiL9B"}
|
|
@@ -29,6 +29,19 @@ export async function getCallInjections(deps, input) {
|
|
|
29
29
|
// migrate alias_origin исчезает и пул их не видит — задумано спекой 8.1)
|
|
30
30
|
const injections = memoryObjects.filter((o) => o.status === 'active' &&
|
|
31
31
|
(o.type === 'call-injection' || (o.type === 'note' && o.alias_origin === 'call-injection')));
|
|
32
|
+
// WP3 §6.2 (спека 2.16): worktree-scoped объект виден только в той же ворктрии;
|
|
33
|
+
// весь пайплайн ниже — на visible. scope без префикса worktree: ('main', rule-
|
|
34
|
+
// легаси 'project'/'global') доставляется везде — гейтинг только для ворктрий.
|
|
35
|
+
const current = input.currentScope ?? 'main';
|
|
36
|
+
const scopeOf = (o) => {
|
|
37
|
+
const s = o.scope;
|
|
38
|
+
return typeof s === 'string' && s.startsWith('worktree:') ? s : null;
|
|
39
|
+
};
|
|
40
|
+
const visible = injections.filter((o) => {
|
|
41
|
+
const s = scopeOf(o);
|
|
42
|
+
return s === null || s === current;
|
|
43
|
+
});
|
|
44
|
+
const hiddenCount = injections.length - visible.length;
|
|
32
45
|
// 2. topic matching
|
|
33
46
|
let matched;
|
|
34
47
|
if (input.topic) {
|
|
@@ -45,7 +58,7 @@ export async function getCallInjections(deps, input) {
|
|
|
45
58
|
// ponytail: broken index degrades to keyword-only matching, never crashes wolf call
|
|
46
59
|
}
|
|
47
60
|
}
|
|
48
|
-
matched =
|
|
61
|
+
matched = visible.filter((obj) => {
|
|
49
62
|
const kw = obj.trigger_keywords ?? [];
|
|
50
63
|
if (kw.some((k) => topicTokens.includes(k)))
|
|
51
64
|
return true;
|
|
@@ -74,7 +87,7 @@ export async function getCallInjections(deps, input) {
|
|
|
74
87
|
}
|
|
75
88
|
}
|
|
76
89
|
else {
|
|
77
|
-
matched =
|
|
90
|
+
matched = visible;
|
|
78
91
|
}
|
|
79
92
|
// 4. thread mode: append project rules + open blockers with matching thread
|
|
80
93
|
if (input.thread !== undefined) {
|
|
@@ -151,6 +164,14 @@ export async function getCallInjections(deps, input) {
|
|
|
151
164
|
'вызовите Стюарда: opencode run --agent steward';
|
|
152
165
|
}
|
|
153
166
|
}
|
|
154
|
-
return {
|
|
167
|
+
return {
|
|
168
|
+
blocks,
|
|
169
|
+
truncated,
|
|
170
|
+
deliveredIds,
|
|
171
|
+
deduplicated,
|
|
172
|
+
banner,
|
|
173
|
+
poolSize: injections.length,
|
|
174
|
+
hidden: hiddenCount > 0 ? { scope: current, count: hiddenCount } : null,
|
|
175
|
+
};
|
|
155
176
|
}
|
|
156
177
|
//# sourceMappingURL=get-call-injections.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-call-injections.js","sourceRoot":"","sources":["../../../src/app/use-cases/get-call-injections.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,gDAAgD,CAAC;AAC/E,OAAO,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"get-call-injections.js","sourceRoot":"","sources":["../../../src/app/use-cases/get-call-injections.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const GITIGNORE_MARKER = "# wolf-gitignore:v1";
|
|
2
|
+
/** WP4 (спека §7): игнорировать машинно-локальное, коммитить память —
|
|
3
|
+
* формула переноса 2.14 §8.3 («память коммитится — клонирование переносит»). */
|
|
4
|
+
export declare function buildGitignoreBlock(): string;
|
|
5
|
+
export type GitignoreOutcome = 'created' | 'appended' | 'kept';
|
|
6
|
+
export declare function ensureGitignoreBlock(deps: {
|
|
7
|
+
exists: (p: string) => Promise<boolean>;
|
|
8
|
+
readFile: (p: string) => Promise<string | null>;
|
|
9
|
+
writeFile: (p: string, c: string) => Promise<void>;
|
|
10
|
+
}, baseDir: string): Promise<GitignoreOutcome>;
|
|
11
|
+
//# sourceMappingURL=gitignore-block.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitignore-block.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/gitignore-block.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,wBAAwB,CAAC;AAEtD;gFACgF;AAChF,wBAAgB,mBAAmB,IAAI,MAAM,CAU5C;AAED,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;AAE/D,wBAAsB,oBAAoB,CACxC,IAAI,EAAE;IACJ,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAChD,SAAS,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACpD,EACD,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,gBAAgB,CAAC,CAW3B"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { join } from 'path';
|
|
2
|
+
export const GITIGNORE_MARKER = '# wolf-gitignore:v1';
|
|
3
|
+
/** WP4 (спека §7): игнорировать машинно-локальное, коммитить память —
|
|
4
|
+
* формула переноса 2.14 §8.3 («память коммитится — клонирование переносит»). */
|
|
5
|
+
export function buildGitignoreBlock() {
|
|
6
|
+
return [
|
|
7
|
+
GITIGNORE_MARKER,
|
|
8
|
+
'# wolf: machine-local state; .wolf/memory is portable — commit it',
|
|
9
|
+
'.wolf/cache/',
|
|
10
|
+
'.wolf/memory/.lock',
|
|
11
|
+
'.wolf/backup/',
|
|
12
|
+
'# end wolf-gitignore',
|
|
13
|
+
'',
|
|
14
|
+
].join('\n');
|
|
15
|
+
}
|
|
16
|
+
export async function ensureGitignoreBlock(deps, baseDir) {
|
|
17
|
+
const p = join(baseDir, '.gitignore');
|
|
18
|
+
const current = (await deps.exists(p)) ? await deps.readFile(p) : null;
|
|
19
|
+
if (current === null) {
|
|
20
|
+
await deps.writeFile(p, `${buildGitignoreBlock()}\n`);
|
|
21
|
+
return 'created';
|
|
22
|
+
}
|
|
23
|
+
if (current.includes(GITIGNORE_MARKER))
|
|
24
|
+
return 'kept';
|
|
25
|
+
const gap = current.endsWith('\n\n') ? '' : current.endsWith('\n') ? '\n' : '\n\n';
|
|
26
|
+
await deps.writeFile(p, `${current}${gap}${buildGitignoreBlock()}`);
|
|
27
|
+
return 'appended';
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=gitignore-block.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitignore-block.js","sourceRoot":"","sources":["../../../src/app/use-cases/gitignore-block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,MAAM,CAAC,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;AAEtD;gFACgF;AAChF,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,gBAAgB;QAChB,mEAAmE;QACnE,cAAc;QACd,oBAAoB;QACpB,eAAe;QACf,sBAAsB;QACtB,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAID,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAIC,EACD,OAAe;IAEf,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACvE,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,mBAAmB,EAAE,IAAI,CAAC,CAAC;QACtD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAAE,OAAO,MAAM,CAAC;IACtD,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;IACnF,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,OAAO,GAAG,GAAG,GAAG,mBAAmB,EAAE,EAAE,CAAC,CAAC;IACpE,OAAO,UAAU,CAAC;AACpB,CAAC"}
|
|
@@ -20,7 +20,8 @@ export interface BaseSetOutcome {
|
|
|
20
20
|
}
|
|
21
21
|
export interface BaseSetDeps {
|
|
22
22
|
render: (baseDir: string, opts?: {
|
|
23
|
-
models?: ModelContext;
|
|
23
|
+
models?: ModelContext | 'omit';
|
|
24
|
+
scope?: 'full' | 'agents-md';
|
|
24
25
|
}) => Promise<BaseSetOutcome[]>;
|
|
25
26
|
seed: (baseDir: string) => Promise<BaseSetOutcome[]>;
|
|
26
27
|
}
|
|
@@ -44,16 +45,40 @@ export interface InitProjectDeps {
|
|
|
44
45
|
declarations?: readonly MemoryTypeDeclaration[];
|
|
45
46
|
/** Версия wolf для секции found отчёта (§4.1); нет — строка версий опускается. */
|
|
46
47
|
wolfVersion?: string;
|
|
48
|
+
/** WP4: ensure wolf-блока в .gitignore; не передан — шаг пропускается (юнит-фейки). */
|
|
49
|
+
ensureGitignore?: (baseDir: string) => Promise<'created' | 'appended' | 'kept'>;
|
|
47
50
|
}
|
|
48
|
-
/** Входы init
|
|
51
|
+
/** Входы init: платформы известны до рендера; модели — opt-in (WP2 unpin, спека 2.16 §5). */
|
|
49
52
|
export interface InitProjectInput {
|
|
50
53
|
/** Явный выбор платформ (флаг или TTY-ответ) — авторитетен (§4.4); undefined — дефолт рендера. */
|
|
51
54
|
platformChoice?: string[];
|
|
52
55
|
platformSource?: 'flag' | 'tty' | 'default';
|
|
53
|
-
/**
|
|
54
|
-
|
|
56
|
+
/** 'omit' — дефолт: model-строки вырезаются из fresh-контента (MODEL_LINE_RE);
|
|
57
|
+
* ModelContext — только явный --model (opt-in). */
|
|
58
|
+
models: ModelContext | 'omit';
|
|
55
59
|
modelSource?: 'flag' | 'tty';
|
|
60
|
+
/** true — полный базовый набор + playbook-seed; false/undefined — минимальный набор. */
|
|
61
|
+
full?: boolean;
|
|
62
|
+
/** Ответ TTY-интервью (спека §4): сеется как note+facet context; пусто/не-TTY — не сеется. */
|
|
63
|
+
purpose?: string;
|
|
56
64
|
}
|
|
65
|
+
export interface InitPlanEntry {
|
|
66
|
+
component: 'skeleton' | 'config' | 'agents-md' | 'base-set' | 'platforms' | 'memory-seed' | 'purpose-note' | 'gitignore';
|
|
67
|
+
action: 'create' | 'update' | 'keep' | 'skip';
|
|
68
|
+
detail: string;
|
|
69
|
+
}
|
|
70
|
+
export interface InitPlan {
|
|
71
|
+
/** true — повторный запуск на живом проекте (.wolf/config.yaml существует) — требуется подтверждение. */
|
|
72
|
+
live: boolean;
|
|
73
|
+
entries: InitPlanEntry[];
|
|
74
|
+
}
|
|
75
|
+
export interface PlanInitDeps {
|
|
76
|
+
exists: (p: string) => Promise<boolean>;
|
|
77
|
+
readFile: (p: string) => Promise<string | null>;
|
|
78
|
+
}
|
|
79
|
+
/** K6 (спека 2.16 §4): read-only план init — ничего не пишет; CLI показывает его
|
|
80
|
+
* как diff и требует подтверждения на живом проекте. */
|
|
81
|
+
export declare function planInit(deps: PlanInitDeps, baseDir: string, input: InitProjectInput): Promise<InitPlan>;
|
|
57
82
|
export interface PlatformInitOutcome {
|
|
58
83
|
platform: string;
|
|
59
84
|
action: 'written' | 'replaced' | 'unchanged' | 'skipped' | 'removed';
|
|
@@ -72,6 +97,7 @@ export interface InitProjectResult {
|
|
|
72
97
|
action: 'created' | 'skipped';
|
|
73
98
|
id?: string;
|
|
74
99
|
};
|
|
100
|
+
gitignore: 'created' | 'appended' | 'kept' | 'skipped';
|
|
75
101
|
}
|
|
76
102
|
/** Теги init-отчёта — единственный машинный маркер (D4). */
|
|
77
103
|
export declare const INIT_REPORT_TAGS: readonly ["wolf-init", "onboarding-v2"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-project.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/init-project.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AACxG,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAM5E,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAGnF,uFAAuF;AACvF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AACD,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"init-project.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/init-project.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,57 @@ import { configPath } from '../../adapters/fs/project-paths.js';
|
|
|
8
8
|
import { writeFileAtomic } from '../../adapters/fs/markdown-memory-store.js';
|
|
9
9
|
import { UserFacingError } from '../../domain/errors.js';
|
|
10
10
|
import { addMemoryObject } from './add-memory-object.js';
|
|
11
|
+
const ONBOARDING_MARKER_TEXT = '<!-- wolf:onboarding';
|
|
12
|
+
/** K6 (спека 2.16 §4): read-only план init — ничего не пишет; CLI показывает его
|
|
13
|
+
* как diff и требует подтверждения на живом проекте. */
|
|
14
|
+
export async function planInit(deps, baseDir, input) {
|
|
15
|
+
const cfgPath = configPath(baseDir);
|
|
16
|
+
const cfgRaw = (await deps.exists(cfgPath)) ? await deps.readFile(cfgPath) : null;
|
|
17
|
+
// Краевой случай спеки §4 «пустой/битый конфиг — первый запуск»: пустой после trim
|
|
18
|
+
// конфиг = первый запуск; битый непустой остаётся под гейтом (P3: подтверждение
|
|
19
|
+
// безопаснее молчаливого прохода; ремонт — существующий --recreate).
|
|
20
|
+
const live = cfgRaw !== null && cfgRaw.trim() !== '';
|
|
21
|
+
const agentsRaw = (await deps.readFile(join(baseDir, 'AGENTS.md'))) ?? '';
|
|
22
|
+
const marker = agentsRaw.includes(ONBOARDING_MARKER_TEXT);
|
|
23
|
+
const gitignoreRaw = (await deps.readFile(join(baseDir, '.gitignore'))) ?? '';
|
|
24
|
+
const entries = [
|
|
25
|
+
{
|
|
26
|
+
component: 'skeleton',
|
|
27
|
+
action: live ? 'keep' : 'create',
|
|
28
|
+
detail: '.wolf/{memory,threads,shared,briefs,cache} dirs',
|
|
29
|
+
},
|
|
30
|
+
{ component: 'config', action: live ? 'keep' : 'create', detail: '.wolf/config.yaml (never overwritten)' },
|
|
31
|
+
{
|
|
32
|
+
component: 'agents-md',
|
|
33
|
+
action: marker ? 'keep' : 'create',
|
|
34
|
+
detail: 'AGENTS.md onboarding marker (marker-append if foreign content)',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
component: 'base-set',
|
|
38
|
+
action: input.full ? (live ? 'keep' : 'create') : 'skip',
|
|
39
|
+
detail: input.full
|
|
40
|
+
? 'full base set; existing stamped files are never rewritten (fresh/mutated-skip)'
|
|
41
|
+
: 'minimal set — use --full for agents/skills/commands/plugins',
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
component: 'platforms',
|
|
45
|
+
action: input.platformChoice !== undefined && input.platformChoice.length > 0 ? 'update' : 'skip',
|
|
46
|
+
detail: input.platformChoice !== undefined ? input.platformChoice.join(', ') : 'no --platform given',
|
|
47
|
+
},
|
|
48
|
+
{ component: 'memory-seed', action: live ? 'keep' : 'create', detail: 'init report note (guard by tags)' },
|
|
49
|
+
{
|
|
50
|
+
component: 'purpose-note',
|
|
51
|
+
action: input.purpose ? (live ? 'keep' : 'create') : 'skip',
|
|
52
|
+
detail: input.purpose ? 'interview answer seeded as note' : 'no TTY answer',
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
component: 'gitignore',
|
|
56
|
+
action: gitignoreRaw.includes('# wolf-gitignore:v1') ? 'keep' : 'create',
|
|
57
|
+
detail: 'ignore machine-local (.wolf/cache, lock, backup); memory is committed',
|
|
58
|
+
},
|
|
59
|
+
];
|
|
60
|
+
return { live, entries };
|
|
61
|
+
}
|
|
11
62
|
/** Теги init-отчёта — единственный машинный маркер (D4). */
|
|
12
63
|
export const INIT_REPORT_TAGS = ['wolf-init', 'onboarding-v2'];
|
|
13
64
|
const PROJECT_ROOT_MARKERS = ['package.json', '.git', 'pyproject.toml', 'go.mod', 'Cargo.toml', 'README.md'];
|
|
@@ -54,6 +105,10 @@ export async function initProject(deps, baseDir, input) {
|
|
|
54
105
|
}
|
|
55
106
|
await deps.initializer.initialize(baseDir);
|
|
56
107
|
await deps.markSchemaCurrent(baseDir);
|
|
108
|
+
// WP4 (спека §7): wolf-блок .gitignore — сразу после штампа схемы
|
|
109
|
+
const gitignore = deps.ensureGitignore
|
|
110
|
+
? await deps.ensureGitignore(baseDir)
|
|
111
|
+
: 'skipped';
|
|
57
112
|
const memDeps = {
|
|
58
113
|
store: deps.store,
|
|
59
114
|
log: deps.log,
|
|
@@ -74,8 +129,9 @@ export async function initProject(deps, baseDir, input) {
|
|
|
74
129
|
});
|
|
75
130
|
}
|
|
76
131
|
else {
|
|
77
|
-
baseSetOutcomes.push(...(await deps.baseSet.render(baseDir, { models: input.models })));
|
|
78
|
-
|
|
132
|
+
baseSetOutcomes.push(...(await deps.baseSet.render(baseDir, { models: input.models, scope: input.full ? 'full' : 'agents-md' })));
|
|
133
|
+
if (input.full)
|
|
134
|
+
baseSetOutcomes.push(...(await deps.baseSet.seed(baseDir)));
|
|
79
135
|
}
|
|
80
136
|
}
|
|
81
137
|
// §4 п.6: платформы (D2+D10/F4)
|
|
@@ -102,13 +158,7 @@ export async function initProject(deps, baseDir, input) {
|
|
|
102
158
|
}
|
|
103
159
|
}
|
|
104
160
|
else {
|
|
105
|
-
//
|
|
106
|
-
// (D2: детекция не гейтит; F4); прочие платформы — по маркерам, не зависящим от рендера
|
|
107
|
-
for (const adapter of deps.adapters) {
|
|
108
|
-
if (adapter.id === 'opencode' || adapter.detect(baseDir)) {
|
|
109
|
-
platformOutcomes.push(await writePlatformOutcome(adapter, baseDir, deps.mcpCommand));
|
|
110
|
-
}
|
|
111
|
-
}
|
|
161
|
+
// WP1: без --platform платформенные конфиги не пишутся (минимальный путь, спека §4)
|
|
112
162
|
}
|
|
113
163
|
// §4 п.8: реестр проектов
|
|
114
164
|
await deps.registry.register(baseDir, CURRENT_SCHEMA_VERSION);
|
|
@@ -135,7 +185,18 @@ export async function initProject(deps, baseDir, input) {
|
|
|
135
185
|
initReport = { action: 'created', id: object.id };
|
|
136
186
|
}
|
|
137
187
|
}
|
|
138
|
-
|
|
188
|
+
// WP1 (спека §4): ответ TTY-интервью сеется в память (note), не в governing-инструкцию
|
|
189
|
+
if (!deps.npx && input.purpose !== undefined && input.purpose !== '') {
|
|
190
|
+
await addMemoryObject(memDeps, {
|
|
191
|
+
type: 'note',
|
|
192
|
+
facet: 'context',
|
|
193
|
+
title: 'Project purpose and conventions (init)',
|
|
194
|
+
body: input.purpose,
|
|
195
|
+
createdBy: 'user:init',
|
|
196
|
+
tags: ['onboarding', 'project-purpose'],
|
|
197
|
+
});
|
|
198
|
+
}
|
|
199
|
+
return { npx: deps.npx, platformOutcomes, baseSetOutcomes, initReport, gitignore };
|
|
139
200
|
}
|
|
140
201
|
/** Тело init-отчёта (§4.1): made / found / needs-fix. */
|
|
141
202
|
function renderInitReportBody(deps, input, outcomes) {
|
|
@@ -157,7 +218,12 @@ function renderInitReportBody(deps, input, outcomes) {
|
|
|
157
218
|
if (agentsMd)
|
|
158
219
|
made.push(`- AGENTS.md: ${agentsMd.action}`);
|
|
159
220
|
made.push(`- platforms: ${selectedPlatforms.join(', ') || '—'} (source: ${platformSource})`);
|
|
160
|
-
|
|
221
|
+
if (input.models === 'omit') {
|
|
222
|
+
made.push('- model: not pinned (omit) — platform default applies; pin later: wolf init --model <providerID>/<modelID>');
|
|
223
|
+
}
|
|
224
|
+
else {
|
|
225
|
+
made.push(`- model: primary ${input.models.primary} (source: ${modelSource}) — applied to all agents (worker = primary)`);
|
|
226
|
+
}
|
|
161
227
|
const found = [];
|
|
162
228
|
const skippedFiles = baseSetOutcomes.filter((o) => o.action === 'skipped' && o.file !== '(base set)');
|
|
163
229
|
if (skippedFiles.length > 0)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-project.js","sourceRoot":"","sources":["../../../src/app/use-cases/init-project.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init-project.js","sourceRoot":"","sources":["../../../src/app/use-cases/init-project.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { MemoryStore } from '../../ports/memory-store.port.js';
|
|
2
|
+
import { EventLog } from '../../ports/event-log.port.js';
|
|
3
|
+
import { Clock } from '../../ports/clock.port.js';
|
|
4
|
+
import { IdGenerator } from '../../ports/id-generator.port.js';
|
|
5
|
+
import { SearchIndex } from '../../ports/search-index.port.js';
|
|
6
|
+
import { MemoryLock } from '../../ports/memory-lock.port.js';
|
|
7
|
+
export declare const MAIN_SCOPE = "main";
|
|
8
|
+
export interface PromoteResult {
|
|
9
|
+
promoted: number;
|
|
10
|
+
scopeFrom: string;
|
|
11
|
+
}
|
|
12
|
+
/** WP3 §6.2 (спека 2.16): шаг finishing-a-development-branch — scoped-объекты
|
|
13
|
+
* ворктрии становятся main. Автоудаления нет (P3): только перевод scope. */
|
|
14
|
+
export declare function promoteWorktreeMemory(deps: {
|
|
15
|
+
store: MemoryStore;
|
|
16
|
+
log: EventLog;
|
|
17
|
+
clock: Clock;
|
|
18
|
+
idGen: IdGenerator;
|
|
19
|
+
index?: SearchIndex;
|
|
20
|
+
lock?: MemoryLock;
|
|
21
|
+
}, worktree: string): Promise<PromoteResult>;
|
|
22
|
+
//# sourceMappingURL=promote-memory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promote-memory.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/promote-memory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAI7D,eAAO,MAAM,UAAU,SAAS,CAAC;AAEjC,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;4EAC4E;AAC5E,wBAAsB,qBAAqB,CACzC,IAAI,EAAE;IACJ,KAAK,EAAE,WAAW,CAAC;IACnB,GAAG,EAAE,QAAQ,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB,EACD,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,aAAa,CAAC,CAwBxB"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { UserFacingError } from '../../domain/errors.js';
|
|
2
|
+
export const MAIN_SCOPE = 'main';
|
|
3
|
+
/** WP3 §6.2 (спека 2.16): шаг finishing-a-development-branch — scoped-объекты
|
|
4
|
+
* ворктрии становятся main. Автоудаления нет (P3): только перевод scope. */
|
|
5
|
+
export async function promoteWorktreeMemory(deps, worktree) {
|
|
6
|
+
if (!/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(worktree)) {
|
|
7
|
+
throw new UserFacingError(`Invalid worktree name: "${worktree}" (see: git worktree list)`);
|
|
8
|
+
}
|
|
9
|
+
const scopeFrom = `worktree:${worktree}`;
|
|
10
|
+
const run = async () => {
|
|
11
|
+
const objects = (await deps.store.list()).filter((o) => o.scope === scopeFrom);
|
|
12
|
+
const now = deps.clock.now();
|
|
13
|
+
let promoted = 0;
|
|
14
|
+
for (const o of objects) {
|
|
15
|
+
await deps.store.update(o.id, { scope: MAIN_SCOPE });
|
|
16
|
+
await deps.log.append({
|
|
17
|
+
id: deps.idGen.generateEventId(now),
|
|
18
|
+
type: 'memory.scope_promoted',
|
|
19
|
+
timestamp: now.toISOString(),
|
|
20
|
+
actor: 'system:wolf',
|
|
21
|
+
payload: { memory_id: o.id, from: scopeFrom, to: MAIN_SCOPE },
|
|
22
|
+
});
|
|
23
|
+
if (deps.index)
|
|
24
|
+
await deps.index.indexObject({ ...o, scope: MAIN_SCOPE });
|
|
25
|
+
promoted += 1;
|
|
26
|
+
}
|
|
27
|
+
return { promoted, scopeFrom };
|
|
28
|
+
};
|
|
29
|
+
return deps.lock ? deps.lock.withLock(run) : run();
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=promote-memory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"promote-memory.js","sourceRoot":"","sources":["../../../src/app/use-cases/promote-memory.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC;AAOjC;4EAC4E;AAC5E,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAOC,EACD,QAAgB;IAEhB,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,eAAe,CAAC,2BAA2B,QAAQ,4BAA4B,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,SAAS,GAAG,YAAY,QAAQ,EAAE,CAAC;IACzC,MAAM,GAAG,GAAG,KAAK,IAA4B,EAAE;QAC7C,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAwB,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;QACvG,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,EAAsC,CAAC,CAAC;YACzF,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;gBACpB,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC;gBACnC,IAAI,EAAE,uBAAuB;gBAC7B,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE;gBAC5B,KAAK,EAAE,aAAa;gBACpB,OAAO,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE;aAC9D,CAAC,CAAC;YACH,IAAI,IAAI,CAAC,KAAK;gBAAE,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,UAAU,EAAW,CAAC,CAAC;YACnF,QAAQ,IAAI,CAAC,CAAC;QAChB,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACjC,CAAC,CAAC;IACF,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { MemoryStore } from '../../ports/memory-store.port.js';
|
|
2
|
+
import { EventLog } from '../../ports/event-log.port.js';
|
|
3
|
+
import { Clock } from '../../ports/clock.port.js';
|
|
4
|
+
import { IdGenerator } from '../../ports/id-generator.port.js';
|
|
5
|
+
import { SearchIndex } from '../../ports/search-index.port.js';
|
|
6
|
+
import { MemoryLock } from '../../ports/memory-lock.port.js';
|
|
7
|
+
export interface RepairReport {
|
|
8
|
+
reindexed: number;
|
|
9
|
+
eventsAppended: number;
|
|
10
|
+
danglingEvents: number;
|
|
11
|
+
/** Человекочитаемый план (dry-run) / лог (apply). */
|
|
12
|
+
actions: string[];
|
|
13
|
+
}
|
|
14
|
+
export interface RepairDeps {
|
|
15
|
+
store: MemoryStore;
|
|
16
|
+
log: EventLog;
|
|
17
|
+
clock: Clock;
|
|
18
|
+
idGen: IdGenerator;
|
|
19
|
+
index?: SearchIndex;
|
|
20
|
+
/** Сырые непустые строки events.jsonl; не передан — events-часть пропускается. */
|
|
21
|
+
readEventLines?: () => Promise<string[]>;
|
|
22
|
+
lock?: MemoryLock;
|
|
23
|
+
}
|
|
24
|
+
/** WP4 (спека 2.16 §7). Стратегия источников (фиксация планом волны 2.16):
|
|
25
|
+
* markdown — истина объектов; events.jsonl — истина журнала (append-only,
|
|
26
|
+
* недостающие memory.added дозаписываются из markdown); индекс — производный
|
|
27
|
+
* (rebuild). Восстановление идемпотентно; битые строки журнала пропускаются. */
|
|
28
|
+
export declare function repairStorage(deps: RepairDeps, opts: {
|
|
29
|
+
dryRun: boolean;
|
|
30
|
+
}): Promise<RepairReport>;
|
|
31
|
+
//# sourceMappingURL=repair-storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repair-storage.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/repair-storage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE7D,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,WAAW,CAAC;IACnB,GAAG,EAAE,QAAQ,CAAC;IACd,KAAK,EAAE,KAAK,CAAC;IACb,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,kFAAkF;IAClF,cAAc,CAAC,EAAE,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB;AAOD;;;gFAGgF;AAChF,wBAAsB,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CA0DtG"}
|