mister-wolf 2.16.3 → 2.17.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/README.md +24 -11
  2. package/README.ru.md +25 -14
  3. package/dist/adapters/cli/cli-entry.d.ts.map +1 -1
  4. package/dist/adapters/cli/cli-entry.js +25 -0
  5. package/dist/adapters/cli/cli-entry.js.map +1 -1
  6. package/dist/adapters/cli/commands/claim.d.ts +6 -0
  7. package/dist/adapters/cli/commands/claim.d.ts.map +1 -0
  8. package/dist/adapters/cli/commands/claim.js +65 -0
  9. package/dist/adapters/cli/commands/claim.js.map +1 -0
  10. package/dist/adapters/cli/commands/face.d.ts +3 -0
  11. package/dist/adapters/cli/commands/face.d.ts.map +1 -0
  12. package/dist/adapters/cli/commands/face.js +227 -0
  13. package/dist/adapters/cli/commands/face.js.map +1 -0
  14. package/dist/adapters/cli/commands/memory-add.d.ts.map +1 -1
  15. package/dist/adapters/cli/commands/memory-add.js +1 -1
  16. package/dist/adapters/cli/commands/memory-add.js.map +1 -1
  17. package/dist/adapters/cli/commands/memory-doctor.d.ts +20 -0
  18. package/dist/adapters/cli/commands/memory-doctor.d.ts.map +1 -1
  19. package/dist/adapters/cli/commands/memory-doctor.js +123 -7
  20. package/dist/adapters/cli/commands/memory-doctor.js.map +1 -1
  21. package/dist/adapters/cli/commands/memory-edit.d.ts.map +1 -1
  22. package/dist/adapters/cli/commands/memory-edit.js +6 -52
  23. package/dist/adapters/cli/commands/memory-edit.js.map +1 -1
  24. package/dist/adapters/cli/commands/memory-init.d.ts.map +1 -1
  25. package/dist/adapters/cli/commands/memory-init.js +37 -54
  26. package/dist/adapters/cli/commands/memory-init.js.map +1 -1
  27. package/dist/adapters/cli/commands/memory-list.d.ts.map +1 -1
  28. package/dist/adapters/cli/commands/memory-list.js +1 -1
  29. package/dist/adapters/cli/commands/memory-list.js.map +1 -1
  30. package/dist/adapters/cli/commands/memory-scaffold.d.ts.map +1 -1
  31. package/dist/adapters/cli/commands/memory-scaffold.js +2 -1
  32. package/dist/adapters/cli/commands/memory-scaffold.js.map +1 -1
  33. package/dist/adapters/cli/commands/memory-search.d.ts.map +1 -1
  34. package/dist/adapters/cli/commands/memory-search.js +1 -1
  35. package/dist/adapters/cli/commands/memory-search.js.map +1 -1
  36. package/dist/adapters/cli/commands/memory-sync.js +1 -1
  37. package/dist/adapters/cli/commands/memory-sync.js.map +1 -1
  38. package/dist/adapters/cli/commands/propose.d.ts +3 -0
  39. package/dist/adapters/cli/commands/propose.d.ts.map +1 -0
  40. package/dist/adapters/cli/commands/propose.js +94 -0
  41. package/dist/adapters/cli/commands/propose.js.map +1 -0
  42. package/dist/adapters/cli/type-command-generator.d.ts.map +1 -1
  43. package/dist/adapters/cli/type-command-generator.js +2 -0
  44. package/dist/adapters/cli/type-command-generator.js.map +1 -1
  45. package/dist/adapters/fs/claim-registry.d.ts +85 -0
  46. package/dist/adapters/fs/claim-registry.d.ts.map +1 -0
  47. package/dist/adapters/fs/claim-registry.js +276 -0
  48. package/dist/adapters/fs/claim-registry.js.map +1 -0
  49. package/dist/adapters/fs/memory-root.d.ts +26 -1
  50. package/dist/adapters/fs/memory-root.d.ts.map +1 -1
  51. package/dist/adapters/fs/memory-root.js +88 -2
  52. package/dist/adapters/fs/memory-root.js.map +1 -1
  53. package/dist/app/use-cases/add-memory-object.d.ts +5 -0
  54. package/dist/app/use-cases/add-memory-object.d.ts.map +1 -1
  55. package/dist/app/use-cases/add-memory-object.js +24 -5
  56. package/dist/app/use-cases/add-memory-object.js.map +1 -1
  57. package/dist/app/use-cases/claim-artifact.d.ts +31 -0
  58. package/dist/app/use-cases/claim-artifact.d.ts.map +1 -0
  59. package/dist/app/use-cases/claim-artifact.js +38 -0
  60. package/dist/app/use-cases/claim-artifact.js.map +1 -0
  61. package/dist/app/use-cases/create-face-version.d.ts +101 -0
  62. package/dist/app/use-cases/create-face-version.d.ts.map +1 -0
  63. package/dist/app/use-cases/create-face-version.js +100 -0
  64. package/dist/app/use-cases/create-face-version.js.map +1 -0
  65. package/dist/app/use-cases/create-mutation-record.d.ts +55 -0
  66. package/dist/app/use-cases/create-mutation-record.d.ts.map +1 -0
  67. package/dist/app/use-cases/create-mutation-record.js +78 -0
  68. package/dist/app/use-cases/create-mutation-record.js.map +1 -0
  69. package/dist/app/use-cases/deliver-proposal.d.ts +26 -0
  70. package/dist/app/use-cases/deliver-proposal.d.ts.map +1 -0
  71. package/dist/app/use-cases/deliver-proposal.js +35 -0
  72. package/dist/app/use-cases/deliver-proposal.js.map +1 -0
  73. package/dist/app/use-cases/edit-memory-object.d.ts +26 -0
  74. package/dist/app/use-cases/edit-memory-object.d.ts.map +1 -0
  75. package/dist/app/use-cases/edit-memory-object.js +57 -0
  76. package/dist/app/use-cases/edit-memory-object.js.map +1 -0
  77. package/dist/app/use-cases/face-operation.d.ts +81 -0
  78. package/dist/app/use-cases/face-operation.d.ts.map +1 -0
  79. package/dist/app/use-cases/face-operation.js +503 -0
  80. package/dist/app/use-cases/face-operation.js.map +1 -0
  81. package/dist/app/use-cases/get-call-injections.d.ts +12 -1
  82. package/dist/app/use-cases/get-call-injections.d.ts.map +1 -1
  83. package/dist/app/use-cases/get-call-injections.js +73 -12
  84. package/dist/app/use-cases/get-call-injections.js.map +1 -1
  85. package/dist/app/use-cases/migrate-faces.d.ts +81 -0
  86. package/dist/app/use-cases/migrate-faces.d.ts.map +1 -0
  87. package/dist/app/use-cases/migrate-faces.js +267 -0
  88. package/dist/app/use-cases/migrate-faces.js.map +1 -0
  89. package/dist/app/use-cases/promote-memory.d.ts +14 -1
  90. package/dist/app/use-cases/promote-memory.d.ts.map +1 -1
  91. package/dist/app/use-cases/promote-memory.js +36 -5
  92. package/dist/app/use-cases/promote-memory.js.map +1 -1
  93. package/dist/app/use-cases/record-relation.d.ts.map +1 -1
  94. package/dist/app/use-cases/record-relation.js +6 -0
  95. package/dist/app/use-cases/record-relation.js.map +1 -1
  96. package/dist/app/use-cases/save-proposal.d.ts +49 -0
  97. package/dist/app/use-cases/save-proposal.d.ts.map +1 -0
  98. package/dist/app/use-cases/save-proposal.js +32 -0
  99. package/dist/app/use-cases/save-proposal.js.map +1 -0
  100. package/dist/app/use-cases/scaffold-agent.d.ts.map +1 -1
  101. package/dist/app/use-cases/scaffold-agent.js +20 -52
  102. package/dist/app/use-cases/scaffold-agent.js.map +1 -1
  103. package/dist/app/use-cases/scaffold-artifact.d.ts +5 -0
  104. package/dist/app/use-cases/scaffold-artifact.d.ts.map +1 -1
  105. package/dist/app/use-cases/scaffold-artifact.js +2 -0
  106. package/dist/app/use-cases/scaffold-artifact.js.map +1 -1
  107. package/dist/app/use-cases/seed-base-playbooks.d.ts +17 -96
  108. package/dist/app/use-cases/seed-base-playbooks.d.ts.map +1 -1
  109. package/dist/app/use-cases/seed-base-playbooks.js +77 -32
  110. package/dist/app/use-cases/seed-base-playbooks.js.map +1 -1
  111. package/dist/app/use-cases/supersede-memory-object.d.ts +3 -1
  112. package/dist/app/use-cases/supersede-memory-object.d.ts.map +1 -1
  113. package/dist/app/use-cases/supersede-memory-object.js +8 -1
  114. package/dist/app/use-cases/supersede-memory-object.js.map +1 -1
  115. package/dist/app/use-cases/transition-memory-object.d.ts.map +1 -1
  116. package/dist/app/use-cases/transition-memory-object.js +6 -0
  117. package/dist/app/use-cases/transition-memory-object.js.map +1 -1
  118. package/dist/domain/facet-colors.d.ts.map +1 -1
  119. package/dist/domain/facet-colors.js +1 -0
  120. package/dist/domain/facet-colors.js.map +1 -1
  121. package/dist/domain/memory-types.d.ts +36 -1
  122. package/dist/domain/memory-types.d.ts.map +1 -1
  123. package/dist/domain/memory-types.js +36 -2
  124. package/dist/domain/memory-types.js.map +1 -1
  125. package/dist/domain/schemas/memory-event-schema.d.ts +8 -0
  126. package/dist/domain/schemas/memory-event-schema.d.ts.map +1 -1
  127. package/dist/domain/schemas/memory-event-schema.js +42 -1
  128. package/dist/domain/schemas/memory-event-schema.js.map +1 -1
  129. package/dist/domain/schemas/relation-schema.d.ts +6 -2
  130. package/dist/domain/schemas/relation-schema.d.ts.map +1 -1
  131. package/dist/domain/schemas/relation-schema.js +8 -0
  132. package/dist/domain/schemas/relation-schema.js.map +1 -1
  133. package/dist/domain/schemas/session-checkpoint-schema.d.ts +1 -1
  134. package/dist/domain/type-schema-builder.d.ts +4 -2
  135. package/dist/domain/type-schema-builder.d.ts.map +1 -1
  136. package/dist/domain/type-schema-builder.js +32 -1
  137. package/dist/domain/type-schema-builder.js.map +1 -1
  138. package/package.json +1 -1
  139. package/templates/.wolf/router.log +1 -1
  140. package/templates/base/agents/steward.md +9 -6
  141. package/templates/base/playbooks/complaint-protocol.md +1 -1
  142. package/templates/base/playbooks/steward-nastavnik.md +36 -17
  143. package/templates/opencode/plugins/wolf-router.ts +60 -10
@@ -1,14 +1,5 @@
1
- // src/app/use-cases/seed-base-playbooks.ts
2
- import { z } from 'zod';
3
- import { buildTypeSchema } from '../../domain/type-schema-builder.js';
4
- import { getDeclaration } from '../../domain/memory-types.js';
5
- // wave13-a: playbook поглощён note+facet howto (карта §5.4 2.13); спец-поля
6
- // (owner_skill/version/steps) живут в passthrough — как у article/blocker
7
- export const PlaybookNoteSchema = buildTypeSchema(getDeclaration('note'), {
8
- owner_skill: z.string(),
9
- version: z.string().default('1'),
10
- steps: z.array(z.string()).default([]),
11
- });
1
+ import { createFaceVersion } from './create-face-version.js';
2
+ import { activeFace } from './face-operation.js';
12
3
  function parseFrontmatter(raw) {
13
4
  const m = raw.match(/^---\n([\s\S]*?)\n---\n?([\s\S]*)$/);
14
5
  if (!m)
@@ -21,34 +12,88 @@ function parseFrontmatter(raw) {
21
12
  }
22
13
  return { meta, body: m[2] };
23
14
  }
24
- /** Посев (спека §7): скип по owner_skill (MAJ-3/C2), не по пересечению тегов. */
15
+ /** Активный legacy howto-head владельца (прецедент migrate-faces.ts: не
16
+ * superseded, свежий по updated_at); null — активной записи нет. */
17
+ async function activeLegacyHead(store, ownerSkill) {
18
+ const records = (await store.list({ type: 'note', facet: 'howto' })).filter((o) => o.owner_skill === ownerSkill);
19
+ const head = records
20
+ .filter((r) => r.status !== 'superseded')
21
+ .sort((a, b) => b.updated_at.localeCompare(a.updated_at))[0];
22
+ return head ? { id: head.id } : null;
23
+ }
24
+ /** Посев + шаблонное обновление live-лиц (§3.6): одна точка решения о записи
25
+ * для каждого шаблона base-set с owner_skill. */
25
26
  export async function seedBasePlaybooks(deps) {
26
27
  const outcomes = [];
27
- // ponytail: без .sort() — план-тест ожидает порядок вставки Map (added[0]=steward); порядок посева функционально не важен
28
+ const processedOwners = new Set();
29
+ // ponytail: без .sort() — порядок вставки Map функционально не важен
28
30
  for (const [file, raw] of deps.files) {
29
31
  const { meta, body } = parseFrontmatter(raw);
30
32
  const ownerSkill = meta.owner_skill ?? '';
31
- if (deps.isSeeded && (await deps.isSeeded(ownerSkill))) {
32
- outcomes.push({ file, action: 'skipped', reason: `owner_skill=${ownerSkill} already in memory (R2-M3)` });
33
+ if (processedOwners.has(ownerSkill)) {
34
+ outcomes.push({
35
+ file,
36
+ action: 'skipped',
37
+ reason: `owner_skill=${ownerSkill} already seeded from another template in this run`,
38
+ });
39
+ continue;
40
+ }
41
+ processedOwners.add(ownerSkill);
42
+ const active = await activeFace(deps.store, ownerSkill);
43
+ // лица нет: свежий посев, либо популяция 2.16.3 (legacy howto → поглощение)
44
+ if (active === null) {
45
+ const legacyHead = await activeLegacyHead(deps.store, ownerSkill);
46
+ await createFaceVersion(deps, {
47
+ command: 'seed',
48
+ ownerSkill,
49
+ reason: `base-set seed: ${file}`,
50
+ title: meta.title ?? file,
51
+ body,
52
+ tags: (meta.tags ?? '')
53
+ .split(',')
54
+ .map((t) => t.trim())
55
+ .filter(Boolean),
56
+ legacyHeadId: legacyHead?.id,
57
+ });
58
+ outcomes.push(legacyHead !== null
59
+ ? {
60
+ file,
61
+ action: 'created',
62
+ reason: `seeded from template; superseded legacy howto ${legacyHead.id}`,
63
+ }
64
+ : { file, action: 'created' });
33
65
  continue;
34
66
  }
35
- const steps = (meta.steps ?? '')
36
- .split('|')
37
- .map((s) => s.trim())
38
- .filter(Boolean);
39
- await deps.add({
40
- type: 'note', // wave13-a: playbook → note+facet howto
41
- facet: 'howto',
42
- title: meta.title ?? file,
43
- body,
44
- createdBy: 'wolf-init',
45
- tags: (meta.tags ?? '')
46
- .split(',')
47
- .map((t) => t.trim())
48
- .filter(Boolean),
49
- extra: { owner_skill: ownerSkill, version: meta.version ?? '1', steps },
50
- });
51
- outcomes.push({ file, action: 'created' });
67
+ // лицо есть: идемпотентный skip либо решение о шаблонном обновлении
68
+ if (active.body === body) {
69
+ outcomes.push({ file, action: 'skipped', reason: `active face v${active.version} matches template` });
70
+ continue;
71
+ }
72
+ if (active.initiator === 'seed' || active.initiator === 'migration') {
73
+ await createFaceVersion(deps, {
74
+ command: 'seed',
75
+ ownerSkill,
76
+ reason: `template update: ${file} (2.17.1)`,
77
+ title: meta.title ?? file,
78
+ body,
79
+ tags: (meta.tags ?? '')
80
+ .split(',')
81
+ .map((t) => t.trim())
82
+ .filter(Boolean),
83
+ });
84
+ outcomes.push({
85
+ file,
86
+ action: 'updated',
87
+ reason: `template update from v${active.version} (initiator ${active.initiator})`,
88
+ });
89
+ }
90
+ else {
91
+ outcomes.push({
92
+ file,
93
+ action: 'diverged',
94
+ reason: `diverged: face v${active.version} initiator=${active.initiator} — left untouched (steward zone, D4)`,
95
+ });
96
+ }
52
97
  }
53
98
  return outcomes;
54
99
  }
@@ -1 +1 @@
1
- {"version":3,"file":"seed-base-playbooks.js","sourceRoot":"","sources":["../../../src/app/use-cases/seed-base-playbooks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seed-base-playbooks.js","sourceRoot":"","sources":["../../../src/app/use-cases/seed-base-playbooks.ts"],"names":[],"mappings":"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"}
@@ -11,5 +11,7 @@ export declare function supersedeMemoryObject(deps: {
11
11
  idGen: IdGenerator;
12
12
  index?: SearchIndex;
13
13
  lock?: MemoryLock;
14
- }, oldId: string, newId: string): Promise<void>;
14
+ }, oldId: string, newId: string, opts?: {
15
+ internalFacePath?: boolean;
16
+ }): Promise<void>;
15
17
  //# sourceMappingURL=supersede-memory-object.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"supersede-memory-object.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/supersede-memory-object.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;AAQ7D,wBAAsB,qBAAqB,CACzC,IAAI,EAAE;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,WAAW,CAAC;IAAC,KAAK,CAAC,EAAE,WAAW,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAAE,EACrH,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CA+Cf"}
1
+ {"version":3,"file":"supersede-memory-object.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/supersede-memory-object.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;AAQ7D,wBAAsB,qBAAqB,CACzC,IAAI,EAAE;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,GAAG,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,WAAW,CAAC;IAAC,KAAK,CAAC,EAAE,WAAW,CAAC;IAAC,IAAI,CAAC,EAAE,UAAU,CAAA;CAAE,EACrH,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,IAAI,CAAC,EAAE;IAAE,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAE,GACpC,OAAO,CAAC,IAAI,CAAC,CAwDf"}
@@ -3,7 +3,7 @@ import { UserFacingError } from '../../domain/errors.js';
3
3
  // ponytail: slug optional — legacy ids from cyrillic titles have empty slug
4
4
  // (mem_YYYYMMDD__<hash>); hash is still mandatory, so 'mem_20260824__' stays invalid
5
5
  const MEMORY_ID_RE = /^mem_\d{8}[a-z0-9_]*_[0-9a-f]{6}$/;
6
- export async function supersedeMemoryObject(deps, oldId, newId) {
6
+ export async function supersedeMemoryObject(deps, oldId, newId, opts) {
7
7
  const run = async () => {
8
8
  if (oldId === newId) {
9
9
  throw new UserFacingError(`Cannot supersede: old and new ids are the same: ${oldId}`);
@@ -20,6 +20,13 @@ export async function supersedeMemoryObject(deps, oldId, newId) {
20
20
  const oldObject = await deps.store.get(oldId);
21
21
  if (!oldObject)
22
22
  throw new UserFacingError(`Memory object not found: ${oldId}`);
23
+ // 2.17.1 REQ-04 (R05, design §7): generic supersede на face запрещён —
24
+ // лицо гасится только шагом face-операции §3.3; внутренний вызов
25
+ // (supersede_prev/supersede_legacy) помечен internalFacePath — прецедент
26
+ // add-memory-object.ts. Legacy-head миграции есть note — идёт мимо guard.
27
+ if (oldObject.type === 'face' && opts?.internalFacePath !== true) {
28
+ throw new UserFacingError('type "face" cannot be superseded generically: faces are versioned, use "wolf face" commands (new | restore | breakglass | recover)');
29
+ }
23
30
  const newObject = await deps.store.get(newId);
24
31
  if (!newObject)
25
32
  throw new UserFacingError(`Replacement memory object not found: ${newId}`);
@@ -1 +1 @@
1
- {"version":3,"file":"supersede-memory-object.js","sourceRoot":"","sources":["../../../src/app/use-cases/supersede-memory-object.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,4EAA4E;AAC5E,qFAAqF;AACrF,MAAM,YAAY,GAAG,mCAAmC,CAAC;AAEzD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAAqH,EACrH,KAAa,EACb,KAAa;IAEb,MAAM,GAAG,GAAG,KAAK,IAAmB,EAAE;QACpC,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YACpB,MAAM,IAAI,eAAe,CAAC,mDAAmD,KAAK,EAAE,CAAC,CAAC;QACxF,CAAC;QACD,KAAK,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI;YACxB,CAAC,KAAK,EAAE,KAAK,CAAC;YACd,CAAC,aAAa,EAAE,KAAK,CAAC;SACd,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC3B,MAAM,IAAI,eAAe,CAAC,wBAAwB,KAAK,OAAO,EAAE,yCAAyC,CAAC,CAAC;YAC7G,CAAC;QACH,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,eAAe,CAAC,4BAA4B,KAAK,EAAE,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,eAAe,CAAC,wCAAwC,KAAK,EAAE,CAAC,CAAC;QAC3F,yEAAyE;QACzE,6EAA6E;QAC7E,MAAM,IAAI,GAAG,IAAI,GAAG,CAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;QAC7C,IAAI,MAAM,GAAkB,SAAS,CAAC,aAAa,IAAI,IAAI,CAAC;QAC5D,OAAO,MAAM,KAAK,IAAI,EAAE,CAAC;YACvB,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;gBACrB,MAAM,IAAI,eAAe,CAAC,mCAAmC,KAAK,OAAO,KAAK,OAAO,KAAK,EAAE,CAAC,CAAC;YAChG,CAAC;YACD,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,MAAM,CAAC,8CAA8C;YAC3E,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACjB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACzC,MAAM,GAAG,GAAG,EAAE,aAAa,IAAI,IAAI,CAAC;QACtC,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/F,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;YACpB,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC;YACnC,IAAI,EAAE,mBAAmB;YACzB,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE;YAC5B,KAAK,EAAE,aAAa;YACpB,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;SAC1C,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QACD,MAAM,gBAAgB,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAC/F,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,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"}
1
+ {"version":3,"file":"supersede-memory-object.js","sourceRoot":"","sources":["../../../src/app/use-cases/supersede-memory-object.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"transition-memory-object.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/transition-memory-object.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;AAC7D,OAAO,EAAE,YAAY,EAAkB,KAAK,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAOxG,wBAAsB,sBAAsB,CAC1C,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;IAClB,YAAY,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACjD,EACD,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,YAAY,EACvB,KAAK,GAAE,MAAsB,GAC5B,OAAO,CAAC,IAAI,CAAC,CAmCf"}
1
+ {"version":3,"file":"transition-memory-object.d.ts","sourceRoot":"","sources":["../../../src/app/use-cases/transition-memory-object.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;AAC7D,OAAO,EAAE,YAAY,EAAkB,KAAK,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAOxG,wBAAsB,sBAAsB,CAC1C,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;IAClB,YAAY,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;CACjD,EACD,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,YAAY,EACvB,KAAK,GAAE,MAAsB,GAC5B,OAAO,CAAC,IAAI,CAAC,CA2Cf"}
@@ -8,6 +8,12 @@ export async function transitionMemoryObject(deps, id, newStatus, actor = 'syste
8
8
  const existing = await deps.store.get(id);
9
9
  if (!existing)
10
10
  throw new UserFacingError(`Memory object not found: ${id}`);
11
+ // 2.17.1 REQ-04 (R05, design §7): generic transition на face запрещён —
12
+ // лицо меняется только версионирующим путём (wolf face …/recover); guard
13
+ // в use-case (не только CLI): сюда же приходит MCP transition и archive.
14
+ if (existing.type === 'face') {
15
+ throw new UserFacingError('type "face" cannot be transitioned generically: faces are versioned, use "wolf face" commands (new | restore | breakglass | recover)');
16
+ }
11
17
  const decl = getDeclaration(existing.type, deps.declarations);
12
18
  if (!decl.lifecycle.includes(newStatus)) {
13
19
  throw new UserFacingError(`Status "${newStatus}" is not in lifecycle of type "${existing.type}" (allowed: ${decl.lifecycle.join(', ')})`);
@@ -1 +1 @@
1
- {"version":3,"file":"transition-memory-object.js","sourceRoot":"","sources":["../../../src/app/use-cases/transition-memory-object.ts"],"names":[],"mappings":"AAMA,OAAO,EAAgB,cAAc,EAA8B,MAAM,8BAA8B,CAAC;AACxG,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,MAAM,iBAAiB,GAAG,CAAC,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AAEpG,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAQC,EACD,EAAU,EACV,SAAuB,EACvB,QAAgB,aAAa;IAE7B,MAAM,GAAG,GAAG,KAAK,IAAmB,EAAE;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,eAAe,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;QAE3E,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAC9D,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,eAAe,CACvB,WAAW,SAAS,kCAAkC,QAAQ,CAAC,IAAI,eAAe,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAC/G,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,eAAe,CAAC,2BAA2B,QAAQ,CAAC,MAAM,OAAO,SAAS,EAAE,CAAC,CAAC;QAC1F,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QACnE,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;YACpB,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC;YACnC,IAAI,EAAE,qBAAqB;YAC3B,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE;YAC5B,KAAK;YACL,OAAO,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE;SACjE,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,iBAAiB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1C,MAAM,gBAAgB,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACvF,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;YAChD,CAAC,CAAC,CAAC;QACL,CAAC;IACH,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"}
1
+ {"version":3,"file":"transition-memory-object.js","sourceRoot":"","sources":["../../../src/app/use-cases/transition-memory-object.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"facet-colors.d.ts","sourceRoot":"","sources":["../../src/domain/facet-colors.ts"],"names":[],"mappings":"AAiBA,yFAAyF;AACzF,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE1D;AAED,gFAAgF;AAChF,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAGtE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,OAAO,CAG3G"}
1
+ {"version":3,"file":"facet-colors.d.ts","sourceRoot":"","sources":["../../src/domain/facet-colors.ts"],"names":[],"mappings":"AAkBA,yFAAyF;AACzF,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE1D;AAED,gFAAgF;AAChF,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAGtE;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,EAAE,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,OAAO,CAG3G"}
@@ -12,6 +12,7 @@ const FACET_COLORS = {
12
12
  history: '\x1b[35m', // magenta
13
13
  legacy: '\x1b[2m', // gray/dim
14
14
  constraint: '\x1b[36m', // cyan
15
+ proposal: '\x1b[37m', // white (2.17: сигнал-фасет предложения)
15
16
  };
16
17
  /** ANSI-код фасета или null для неизвестного значения (в т.ч. кастомного из конфига). */
17
18
  export function colorForFacet(facet) {
@@ -1 +1 @@
1
- {"version":3,"file":"facet-colors.js","sourceRoot":"","sources":["../../src/domain/facet-colors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,KAAK,GAAG,SAAS,CAAC;AAExB,MAAM,YAAY,GAAqC;IACrD,KAAK,EAAE,UAAU,EAAE,QAAQ;IAC3B,OAAO,EAAE,UAAU,EAAE,MAAM;IAC3B,OAAO,EAAE,UAAU,EAAE,OAAO;IAC5B,MAAM,EAAE,UAAU,EAAE,SAAS;IAC7B,OAAO,EAAE,UAAU,EAAE,UAAU;IAC/B,MAAM,EAAE,SAAS,EAAE,WAAW;IAC9B,UAAU,EAAE,UAAU,EAAE,OAAO;CAChC,CAAC;AAEF,yFAAyF;AACzF,MAAM,UAAU,aAAa,CAAC,KAAa;IACzC,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;AACrC,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,OAAgB;IAC5D,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AAClD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,MAA2B,EAAE,GAAuC;IAChG,MAAM,IAAI,GAAG,CAAC,CAAqB,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE,CAAC;IACpE,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;AACpF,CAAC"}
1
+ {"version":3,"file":"facet-colors.js","sourceRoot":"","sources":["../../src/domain/facet-colors.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,KAAK,GAAG,SAAS,CAAC;AAExB,MAAM,YAAY,GAAqC;IACrD,KAAK,EAAE,UAAU,EAAE,QAAQ;IAC3B,OAAO,EAAE,UAAU,EAAE,MAAM;IAC3B,OAAO,EAAE,UAAU,EAAE,OAAO;IAC5B,MAAM,EAAE,UAAU,EAAE,SAAS;IAC7B,OAAO,EAAE,UAAU,EAAE,UAAU;IAC/B,MAAM,EAAE,SAAS,EAAE,WAAW;IAC9B,UAAU,EAAE,UAAU,EAAE,OAAO;IAC/B,QAAQ,EAAE,UAAU,EAAE,yCAAyC;CAChE,CAAC;AAEF,yFAAyF;AACzF,MAAM,UAAU,aAAa,CAAC,KAAa;IACzC,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;AACrC,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,cAAc,CAAC,KAAa,EAAE,OAAgB;IAC5D,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACnD,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AAClD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,MAA2B,EAAE,GAAuC;IAChG,MAAM,IAAI,GAAG,CAAC,CAAqB,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE,CAAC;IACpE,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;AACpF,CAAC"}
@@ -49,6 +49,7 @@ export interface MemoryTypeDeclaration {
49
49
  deprecated?: boolean;
50
50
  }
51
51
  export declare const DEFAULT_CHARACTER_FACETS: readonly string[];
52
+ export declare const SIGNAL_FACETS: readonly string[];
52
53
  declare const CORE_TAXONOMY_DECLS: readonly [{
53
54
  readonly name: "rule";
54
55
  readonly lifecycle: readonly ["active", "superseded", "obsolete", "proposed", "accepted", "rejected", "archived"];
@@ -234,9 +235,43 @@ declare const CORE_TAXONOMY_DECLS: readonly [{
234
235
  readonly values: readonly string[];
235
236
  };
236
237
  };
238
+ }, {
239
+ readonly name: "face";
240
+ readonly lifecycle: readonly ["active", "superseded", "archived", "candidate"];
241
+ readonly subdirThread: null;
242
+ readonly subdirShared: "faces";
243
+ readonly fields: {
244
+ readonly owner_skill: {
245
+ readonly kind: "string";
246
+ readonly required: true;
247
+ readonly min: 1;
248
+ };
249
+ readonly version: {
250
+ readonly kind: "string";
251
+ readonly required: true;
252
+ readonly min: 1;
253
+ };
254
+ readonly based_on: {
255
+ readonly kind: "string";
256
+ readonly optional: true;
257
+ };
258
+ readonly reason: {
259
+ readonly kind: "string";
260
+ readonly required: true;
261
+ readonly min: 1;
262
+ };
263
+ readonly initiator: {
264
+ readonly kind: "enum";
265
+ readonly values: readonly ["steward", "owner", "breakglass", "migration", "seed"];
266
+ };
267
+ readonly op_id: {
268
+ readonly kind: "string";
269
+ readonly optional: true;
270
+ };
271
+ };
237
272
  }];
238
273
  export type MemoryType = (typeof CORE_TAXONOMY_DECLS)[number]['name'];
239
- export declare const MEMORY_TYPES: ("rule" | "lesson" | "decision" | "thread" | "complaint" | "tool" | "note")[];
274
+ export declare const MEMORY_TYPES: ("rule" | "lesson" | "decision" | "thread" | "complaint" | "tool" | "note" | "face")[];
240
275
  /**
241
276
  * Волна 2.13 §5.4: карта миграции старых типов (alias-чтение P211 + migrate P213).
242
277
  * Identity-строки (rule→rule и т.п.) и task-brief (project-тип dogfood) НЕ входят —
@@ -1 +1 @@
1
- {"version":3,"file":"memory-types.d.ts","sourceRoot":"","sources":["../../src/domain/memory-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-types.d.ts","sourceRoot":"","sources":["../../src/domain/memory-types.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,8 @@ const FULL = [
17
17
  ];
18
18
  // Волна 2.13 §5.3: закрытый словарь фасетов «характер записи» для типа note.
19
19
  // Диапазон длины словаря 7–10 (config-file); кастомизация — facets.character в config.yaml.
20
+ // Волна 2.17 (ADR-3, REQ-08): +proposal (8/10) — сигнал-фасет предложения
21
+ // входит в character-словарь note; прочие core-типы — SIGNAL_FACETS ниже.
20
22
  export const DEFAULT_CHARACTER_FACETS = [
21
23
  'howto',
22
24
  'pitfall',
@@ -25,11 +27,17 @@ export const DEFAULT_CHARACTER_FACETS = [
25
27
  'history',
26
28
  'legacy',
27
29
  'constraint',
30
+ 'proposal',
28
31
  ];
32
+ // Волна 2.17 ADR-3 (REQ-08): сигнал-словарь facet для не-note core-типов —
33
+ // единственное значение proposal, отдельно от character-словаря note (новый
34
+ // тег-словарь не вводится). Инжектится в per-type схемы type-schema-builder'ом,
35
+ // а не декларацией fields — чтобы не попадать в генерацию CLI-флагов.
36
+ export const SIGNAL_FACETS = ['proposal'];
29
37
  // Единственный источник истины: типы (MemoryType, MEMORY_TYPES) выводятся
30
38
  // отсюда — новый core-тип добавляется ТОЛЬКО в этот массив.
31
- // Волна 2.13 §5.1: 7 выживших типов (дословно Т1); старые типы — карта
32
- // DEPRECATED_TYPE_ALIASES ниже (alias-чтение P211) и migrate taxonomy (P213).
39
+ // Волна 2.13 §5.1: 7 выживших типов (дословно Т1); волна 2.17: +face (REQ-01).
40
+ // Старые типы — карта DEPRECATED_TYPE_ALIASES ниже (alias-чтение P211) и migrate taxonomy (P213).
33
41
  const CORE_TAXONOMY_DECLS = [
34
42
  {
35
43
  name: 'rule',
@@ -134,6 +142,32 @@ const CORE_TAXONOMY_DECLS = [
134
142
  facet: { kind: 'enum', values: DEFAULT_CHARACTER_FACETS },
135
143
  },
136
144
  },
145
+ {
146
+ // Волна 2.17 REQ-01 (design §Контракты «Тип face»): лицо агента —
147
+ // канонический playbook как самостоятельный core-тип; история = цепочка
148
+ // записей-версий через существующий supersede (ADR-1). Создание — только
149
+ // версионирующим путём (guard в use-case, T-02/T-07).
150
+ name: 'face',
151
+ // T18: только существующие статусы; 2.17.1 REQ-03 (ADR-3): +candidate —
152
+ // staging-статус до activation (точка commit операции, design §3.3)
153
+ lifecycle: ['active', 'superseded', 'archived', 'candidate'],
154
+ subdirThread: null,
155
+ subdirShared: 'faces',
156
+ fields: {
157
+ owner_skill: { kind: 'string', required: true, min: 1 },
158
+ // '1','2',… — номер версии назначает версионирующая команда (T-02)
159
+ version: { kind: 'string', required: true, min: 1 },
160
+ // id версии-основы; отсутствует у первой версии
161
+ based_on: { kind: 'string', optional: true },
162
+ // REQ-04 AC2: причина обязательна
163
+ reason: { kind: 'string', required: true, min: 1 },
164
+ // ADR-6: seed — посев первых версий (wolf init)
165
+ initiator: { kind: 'enum', values: ['steward', 'owner', 'breakglass', 'migration', 'seed'] },
166
+ // 2.17.1 REQ-03 (design §3.3): привязка объект↔операция независимо от
167
+ // журнала — правило усыновления candidate по совпадающему op_id
168
+ op_id: { kind: 'string', optional: true },
169
+ },
170
+ },
137
171
  ];
138
172
  export const MEMORY_TYPES = CORE_TAXONOMY_DECLS.map((d) => d.name);
139
173
  export const DEPRECATED_TYPE_ALIASES = {
@@ -1 +1 @@
1
- {"version":3,"file":"memory-types.js","sourceRoot":"","sources":["../../src/domain/memory-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-types.js","sourceRoot":"","sources":["../../src/domain/memory-types.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,14 @@ import { z } from 'zod';
2
2
  export declare const MemoryEventSchema: z.ZodObject<{
3
3
  id: z.ZodString;
4
4
  type: z.ZodEnum<{
5
+ "memory.face.versioned": "memory.face.versioned";
6
+ "memory.face.breakglass": "memory.face.breakglass";
7
+ "memory.face.denied": "memory.face.denied";
8
+ "memory.proposal.delivered": "memory.proposal.delivered";
9
+ "memory.face.op_started": "memory.face.op_started";
10
+ "memory.face.op_step": "memory.face.op_step";
11
+ "memory.face.op_committed": "memory.face.op_committed";
12
+ "memory.face.op_aborted": "memory.face.op_aborted";
5
13
  "memory.added": "memory.added";
6
14
  "memory.edited": "memory.edited";
7
15
  "memory.updated": "memory.updated";
@@ -1 +1 @@
1
- {"version":3,"file":"memory-event-schema.d.ts","sourceRoot":"","sources":["../../../src/domain/schemas/memory-event-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;iBAiB5B,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"memory-event-schema.d.ts","sourceRoot":"","sources":["../../../src/domain/schemas/memory-event-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAmBxB,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;iBAyC1B,CAAC;AAEL,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -1,5 +1,22 @@
1
1
  import { z } from 'zod';
2
- export const MemoryEventSchema = z.object({
2
+ // Волна 2.17 (design §События журнала): обязательные ключи payload новых
3
+ // face/proposal-событий. breakglass зеркалит versioned (также создаёт версию);
4
+ // from может быть null (первая версия) — проверяется наличие ключа, не тип.
5
+ const EVENT_PAYLOAD_KEYS = {
6
+ 'memory.face.versioned': ['owner_skill', 'from', 'new', 'initiator', 'reason'],
7
+ 'memory.face.breakglass': ['owner_skill', 'from', 'new', 'initiator', 'reason'],
8
+ 'memory.face.denied': ['owner_skill', 'actor', 'command'],
9
+ 'memory.proposal.delivered': ['id', 'addressee'],
10
+ // 2.17.1 REQ-03 (R04, design §3.3): журнал операции лица. op_started несёт
11
+ // полный план шагов и полный набор аргументов (resume детерминирован из него);
12
+ // op_step detail (id созданных объектов) — необязателен; op_aborted — by+reason.
13
+ 'memory.face.op_started': ['opId', 'command', 'owner_skill', 'plan', 'input'],
14
+ 'memory.face.op_step': ['opId', 'step'],
15
+ 'memory.face.op_committed': ['opId'],
16
+ 'memory.face.op_aborted': ['opId', 'by', 'reason'],
17
+ };
18
+ export const MemoryEventSchema = z
19
+ .object({
3
20
  id: z.string().min(1),
4
21
  type: z.enum([
5
22
  'memory.added',
@@ -12,9 +29,33 @@ export const MemoryEventSchema = z.object({
12
29
  'memory.overwritten',
13
30
  'memory.aggregated',
14
31
  'memory.scope_promoted',
32
+ // волна 2.17: face-операции и доставка предложений
33
+ 'memory.face.versioned',
34
+ 'memory.face.breakglass',
35
+ 'memory.face.denied',
36
+ 'memory.proposal.delivered',
37
+ // 2.17.1 REQ-03 (R04): журналируемая цепочка шагов мутации лица (design §3.3)
38
+ 'memory.face.op_started',
39
+ 'memory.face.op_step',
40
+ 'memory.face.op_committed',
41
+ 'memory.face.op_aborted',
15
42
  ]),
16
43
  timestamp: z.string().datetime(),
17
44
  actor: z.string().min(1),
18
45
  payload: z.record(z.string(), z.unknown()).default({}),
46
+ })
47
+ .superRefine((ev, ctx) => {
48
+ const required = EVENT_PAYLOAD_KEYS[ev.type];
49
+ if (!required)
50
+ return;
51
+ for (const key of required) {
52
+ if (ev.payload[key] === undefined) {
53
+ ctx.addIssue({
54
+ code: z.ZodIssueCode.custom,
55
+ path: ['payload', key],
56
+ message: `event "${ev.type}" requires payload key "${key}"`,
57
+ });
58
+ }
59
+ }
19
60
  });
20
61
  //# sourceMappingURL=memory-event-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"memory-event-schema.js","sourceRoot":"","sources":["../../../src/domain/schemas/memory-event-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;QACX,cAAc;QACd,eAAe;QACf,gBAAgB;QAChB,qBAAqB;QACrB,mBAAmB;QACnB,iBAAiB;QACjB,qBAAqB;QACrB,oBAAoB;QACpB,mBAAmB;QACnB,uBAAuB;KACxB,CAAC;IACF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CACvD,CAAC,CAAC"}
1
+ {"version":3,"file":"memory-event-schema.js","sourceRoot":"","sources":["../../../src/domain/schemas/memory-event-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,yEAAyE;AACzE,+EAA+E;AAC/E,4EAA4E;AAC5E,MAAM,kBAAkB,GAAgD;IACtE,uBAAuB,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC;IAC9E,wBAAwB,EAAE,CAAC,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,QAAQ,CAAC;IAC/E,oBAAoB,EAAE,CAAC,aAAa,EAAE,OAAO,EAAE,SAAS,CAAC;IACzD,2BAA2B,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC;IAChD,2EAA2E;IAC3E,+EAA+E;IAC/E,iFAAiF;IACjF,wBAAwB,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC;IAC7E,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;IACvC,0BAA0B,EAAE,CAAC,MAAM,CAAC;IACpC,wBAAwB,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC;CACnD,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;QACX,cAAc;QACd,eAAe;QACf,gBAAgB;QAChB,qBAAqB;QACrB,mBAAmB;QACnB,iBAAiB;QACjB,qBAAqB;QACrB,oBAAoB;QACpB,mBAAmB;QACnB,uBAAuB;QACvB,mDAAmD;QACnD,uBAAuB;QACvB,wBAAwB;QACxB,oBAAoB;QACpB,2BAA2B;QAC3B,8EAA8E;QAC9E,wBAAwB;QACxB,qBAAqB;QACrB,0BAA0B;QAC1B,wBAAwB;KACzB,CAAC;IACF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CACvD,CAAC;KACD,WAAW,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE;IACvB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;YAClC,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;gBAC3B,IAAI,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC;gBACtB,OAAO,EAAE,UAAU,EAAE,CAAC,IAAI,2BAA2B,GAAG,GAAG;aAC5D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC"}
@@ -1,16 +1,16 @@
1
1
  import { z } from 'zod';
2
- export declare const RELATION_PREDICATES: readonly ["answers", "answered_by", "supports", "supported_by", "based_on", "basis_for", "updates", "updated_by", "supersedes", "superseded_by", "blocks", "blocked_by", "resolves", "resolved_by", "related_to", "produced_by", "owner_skill", "skill_of", "complain", "complained_by", "outcome", "outcome_of", "aggregates", "aggregated_in"];
2
+ export declare const RELATION_PREDICATES: readonly ["answers", "answered_by", "supports", "supported_by", "based_on", "basis_for", "updates", "updated_by", "supersedes", "superseded_by", "blocks", "blocked_by", "resolves", "resolved_by", "related_to", "produced_by", "owner_skill", "skill_of", "complain", "complained_by", "outcome", "outcome_of", "aggregates", "aggregated_in", "mutates", "mutated_by", "proposes", "proposed_by"];
3
3
  export declare const RelationSchema: z.ZodObject<{
4
4
  id: z.ZodString;
5
5
  subject: z.ZodString;
6
6
  predicate: z.ZodEnum<{
7
7
  owner_skill: "owner_skill";
8
+ based_on: "based_on";
8
9
  superseded_by: "superseded_by";
9
10
  answers: "answers";
10
11
  answered_by: "answered_by";
11
12
  supports: "supports";
12
13
  supported_by: "supported_by";
13
- based_on: "based_on";
14
14
  basis_for: "basis_for";
15
15
  updates: "updates";
16
16
  updated_by: "updated_by";
@@ -28,6 +28,10 @@ export declare const RelationSchema: z.ZodObject<{
28
28
  outcome_of: "outcome_of";
29
29
  aggregates: "aggregates";
30
30
  aggregated_in: "aggregated_in";
31
+ mutates: "mutates";
32
+ mutated_by: "mutated_by";
33
+ proposes: "proposes";
34
+ proposed_by: "proposed_by";
31
35
  }>;
32
36
  object: z.ZodString;
33
37
  created_at: z.ZodString;
@@ -1 +1 @@
1
- {"version":3,"file":"relation-schema.d.ts","sourceRoot":"","sources":["../../../src/domain/schemas/relation-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB,kVA6BtB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAYzB,CAAC;AAEH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"relation-schema.d.ts","sourceRoot":"","sources":["../../../src/domain/schemas/relation-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB,sYAqCtB,CAAC;AAEX,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAYzB,CAAC;AAEH,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -28,6 +28,14 @@ export const RELATION_PREDICATES = [
28
28
  // инверсия — aggregated_in от исходника к агрегату)
29
29
  'aggregates',
30
30
  'aggregated_in',
31
+ // 2.17 REQ-06 (design §«Запись мутации Стюарда»): G17-запись -mutates->
32
+ // версия лица (пара, прецедент complain/complained_by)
33
+ 'mutates',
34
+ 'mutated_by',
35
+ // 2.17 T-09 (design §«Механика версий», строка 88): --from-proposal:
36
+ // proposal -proposes-> face-версия (пара, прецедент mutates/mutated_by)
37
+ 'proposes',
38
+ 'proposed_by',
31
39
  ];
32
40
  export const RelationSchema = z.object({
33
41
  id: z.string().min(1),
@@ -1 +1 @@
1
- {"version":3,"file":"relation-schema.js","sourceRoot":"","sources":["../../../src/domain/schemas/relation-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,SAAS;IACT,aAAa;IACb,UAAU;IACV,cAAc;IACd,UAAU;IACV,WAAW;IACX,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,QAAQ;IACR,YAAY;IACZ,UAAU;IACV,aAAa;IACb,YAAY;IACZ,aAAa;IACb,aAAa;IACb,UAAU;IACV,UAAU;IACV,eAAe;IACf,oEAAoE;IACpE,8EAA8E;IAC9E,SAAS;IACT,YAAY;IACZ,yEAAyE;IACzE,oDAAoD;IACpD,YAAY;IACZ,eAAe;CACP,CAAC;AAEX,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC7C,wEAAwE;IACxE,4DAA4D;IAC5D,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC"}
1
+ {"version":3,"file":"relation-schema.js","sourceRoot":"","sources":["../../../src/domain/schemas/relation-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,SAAS;IACT,aAAa;IACb,UAAU;IACV,cAAc;IACd,UAAU;IACV,WAAW;IACX,SAAS;IACT,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,QAAQ;IACR,YAAY;IACZ,UAAU;IACV,aAAa;IACb,YAAY;IACZ,aAAa;IACb,aAAa;IACb,UAAU;IACV,UAAU;IACV,eAAe;IACf,oEAAoE;IACpE,8EAA8E;IAC9E,SAAS;IACT,YAAY;IACZ,yEAAyE;IACzE,oDAAoD;IACpD,YAAY;IACZ,eAAe;IACf,wEAAwE;IACxE,uDAAuD;IACvD,SAAS;IACT,YAAY;IACZ,qEAAqE;IACrE,wEAAwE;IACxE,UAAU;IACV,aAAa;CACL,CAAC;AAEX,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC;IACtC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC7C,UAAU,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC7C,wEAAwE;IACxE,4DAA4D;IAC5D,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC/B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC7C,CAAC,CAAC"}
@@ -50,7 +50,7 @@ export declare const SessionCheckpointSchema: z.ZodObject<{
50
50
  long_term: "long_term";
51
51
  short_term: "short_term";
52
52
  }>>;
53
- type: z.ZodLiteral<"rule" | "lesson" | "decision" | "thread" | "complaint" | "tool" | "note">;
53
+ type: z.ZodLiteral<"rule" | "lesson" | "decision" | "thread" | "complaint" | "tool" | "note" | "face">;
54
54
  status: z.ZodEnum<{
55
55
  active: "active";
56
56
  open: "open";