@nac3/forge-cli 0.2.0-alpha.59z.121 → 0.2.0-alpha.59z.158

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 (161) hide show
  1. package/dist/agents/bridge.d.ts +69 -0
  2. package/dist/agents/bridge.d.ts.map +1 -0
  3. package/dist/agents/bridge.js +295 -0
  4. package/dist/agents/bridge.js.map +1 -0
  5. package/dist/agents/cli_real.d.ts +38 -0
  6. package/dist/agents/cli_real.d.ts.map +1 -0
  7. package/dist/agents/cli_real.js +46 -0
  8. package/dist/agents/cli_real.js.map +1 -0
  9. package/dist/agents/config_schema.d.ts +1 -1
  10. package/dist/agents/config_schema.d.ts.map +1 -1
  11. package/dist/agents/config_schema.js +16 -0
  12. package/dist/agents/config_schema.js.map +1 -1
  13. package/dist/agents/defaults.d.ts.map +1 -1
  14. package/dist/agents/defaults.js.map +1 -1
  15. package/dist/agents/delegate.d.ts +36 -0
  16. package/dist/agents/delegate.d.ts.map +1 -0
  17. package/dist/agents/delegate.js +68 -0
  18. package/dist/agents/delegate.js.map +1 -0
  19. package/dist/agents/iterative_step.d.ts +95 -0
  20. package/dist/agents/iterative_step.d.ts.map +1 -0
  21. package/dist/agents/iterative_step.js +249 -0
  22. package/dist/agents/iterative_step.js.map +1 -0
  23. package/dist/agents/llm_step.d.ts +50 -0
  24. package/dist/agents/llm_step.d.ts.map +1 -0
  25. package/dist/agents/llm_step.js +28 -0
  26. package/dist/agents/llm_step.js.map +1 -0
  27. package/dist/agents/real_step_factory.d.ts +95 -0
  28. package/dist/agents/real_step_factory.d.ts.map +1 -0
  29. package/dist/agents/real_step_factory.js +51 -0
  30. package/dist/agents/real_step_factory.js.map +1 -0
  31. package/dist/agents/runner.d.ts +14 -0
  32. package/dist/agents/runner.d.ts.map +1 -1
  33. package/dist/agents/runner.js +10 -1
  34. package/dist/agents/runner.js.map +1 -1
  35. package/dist/agents/runtime.d.ts +115 -0
  36. package/dist/agents/runtime.d.ts.map +1 -0
  37. package/dist/agents/runtime.js +429 -0
  38. package/dist/agents/runtime.js.map +1 -0
  39. package/dist/agents/system_prompt.d.ts +36 -0
  40. package/dist/agents/system_prompt.d.ts.map +1 -0
  41. package/dist/agents/system_prompt.js +101 -0
  42. package/dist/agents/system_prompt.js.map +1 -0
  43. package/dist/agents/types.d.ts +12 -1
  44. package/dist/agents/types.d.ts.map +1 -1
  45. package/dist/agents/types.js.map +1 -1
  46. package/dist/bin/yf.d.ts.map +1 -1
  47. package/dist/bin/yf.js +9 -0
  48. package/dist/bin/yf.js.map +1 -1
  49. package/dist/chat/claude_cli.d.ts +42 -0
  50. package/dist/chat/claude_cli.d.ts.map +1 -0
  51. package/dist/chat/claude_cli.js +299 -0
  52. package/dist/chat/claude_cli.js.map +1 -0
  53. package/dist/chat/graph_snapshot.d.ts +38 -0
  54. package/dist/chat/graph_snapshot.d.ts.map +1 -0
  55. package/dist/chat/graph_snapshot.js +159 -0
  56. package/dist/chat/graph_snapshot.js.map +1 -0
  57. package/dist/chat/ingest_session.d.ts +24 -4
  58. package/dist/chat/ingest_session.d.ts.map +1 -1
  59. package/dist/chat/ingest_session.js +139 -4
  60. package/dist/chat/ingest_session.js.map +1 -1
  61. package/dist/chat/panel.d.ts.map +1 -1
  62. package/dist/chat/panel.js +1358 -0
  63. package/dist/chat/panel.js.map +1 -1
  64. package/dist/chat/server.d.ts +21 -0
  65. package/dist/chat/server.d.ts.map +1 -1
  66. package/dist/chat/server.js +904 -4
  67. package/dist/chat/server.js.map +1 -1
  68. package/dist/chat/tools/nac3_invoke.d.ts +5 -0
  69. package/dist/chat/tools/nac3_invoke.d.ts.map +1 -1
  70. package/dist/chat/tools/nac3_invoke.js +1 -0
  71. package/dist/chat/tools/nac3_invoke.js.map +1 -1
  72. package/dist/chat/tools.d.ts.map +1 -1
  73. package/dist/chat/tools.js +12 -0
  74. package/dist/chat/tools.js.map +1 -1
  75. package/dist/commands/agent.d.ts +12 -1
  76. package/dist/commands/agent.d.ts.map +1 -1
  77. package/dist/commands/agent.js +92 -1
  78. package/dist/commands/agent.js.map +1 -1
  79. package/dist/commands/chat.d.ts +10 -0
  80. package/dist/commands/chat.d.ts.map +1 -1
  81. package/dist/commands/chat.js +12 -1
  82. package/dist/commands/chat.js.map +1 -1
  83. package/dist/commands/director.d.ts +37 -0
  84. package/dist/commands/director.d.ts.map +1 -0
  85. package/dist/commands/director.js +290 -0
  86. package/dist/commands/director.js.map +1 -0
  87. package/dist/commands/keys_setup.d.ts +1 -0
  88. package/dist/commands/keys_setup.d.ts.map +1 -1
  89. package/dist/commands/keys_setup.js +61 -11
  90. package/dist/commands/keys_setup.js.map +1 -1
  91. package/dist/core/pilot_setup.d.ts +14 -1
  92. package/dist/core/pilot_setup.d.ts.map +1 -1
  93. package/dist/core/pilot_setup.js +62 -1
  94. package/dist/core/pilot_setup.js.map +1 -1
  95. package/dist/core/provider_keys.d.ts.map +1 -1
  96. package/dist/core/provider_keys.js +12 -5
  97. package/dist/core/provider_keys.js.map +1 -1
  98. package/dist/design/yujin_design_resolver.d.ts +77 -0
  99. package/dist/design/yujin_design_resolver.d.ts.map +1 -0
  100. package/dist/design/yujin_design_resolver.js +113 -0
  101. package/dist/design/yujin_design_resolver.js.map +1 -0
  102. package/dist/docs/doctrine/default-design-system.md +120 -0
  103. package/dist/docs/doctrine/language-sovereignty.md +143 -0
  104. package/dist/docs/doctrine/testing-policy.md +211 -0
  105. package/dist/nac3/approval_queue.d.ts +8 -0
  106. package/dist/nac3/approval_queue.d.ts.map +1 -1
  107. package/dist/nac3/approval_queue.js.map +1 -1
  108. package/dist/nac3/internal_manifest.d.ts.map +1 -1
  109. package/dist/nac3/internal_manifest.js +178 -0
  110. package/dist/nac3/internal_manifest.js.map +1 -1
  111. package/dist/office/excel.d.ts +22 -0
  112. package/dist/office/excel.d.ts.map +1 -1
  113. package/dist/office/excel.js +82 -0
  114. package/dist/office/excel.js.map +1 -1
  115. package/dist/qa/brain_matrix/fixtures/scenario_a11y_focus_after_open.json +22 -0
  116. package/dist/qa/brain_matrix/fixtures/scenario_a11y_label_unlabeled_button.json +26 -0
  117. package/dist/qa/brain_matrix/fixtures/scenario_agent_director_consults_workflow_before_dispatch.json +42 -0
  118. package/dist/qa/brain_matrix/fixtures/scenario_analyst_extracts_then_returns.json +28 -0
  119. package/dist/qa/brain_matrix/fixtures/scenario_coder_consults_nac_spec_before_writing.json +28 -0
  120. package/dist/qa/brain_matrix/fixtures/scenario_default_design_system_override_shadcn.json +45 -0
  121. package/dist/qa/brain_matrix/fixtures/scenario_default_design_system_use_card_template.json +44 -0
  122. package/dist/qa/brain_matrix/fixtures/scenario_director_delegates_to_analyst.json +26 -0
  123. package/dist/qa/brain_matrix/fixtures/scenario_director_no_self_delegation.json +20 -0
  124. package/dist/qa/brain_matrix/fixtures/scenario_director_terminal_done_marker.json +19 -0
  125. package/dist/qa/brain_matrix/fixtures/scenario_doctrine_discover_default_design_system.json +50 -0
  126. package/dist/qa/brain_matrix/fixtures/scenario_doctrine_discover_language_sovereignty.json +53 -0
  127. package/dist/qa/brain_matrix/fixtures/scenario_doctrine_discover_testing_policy.json +55 -0
  128. package/dist/qa/brain_matrix/fixtures/scenario_language_sovereignty_not_conducive_spa_python.json +61 -0
  129. package/dist/qa/brain_matrix/fixtures/scenario_language_sovereignty_user_picks_python.json +48 -0
  130. package/dist/qa/brain_matrix/fixtures/scenario_mcp_invoke_destructive_pauses_for_r8.json +42 -0
  131. package/dist/qa/brain_matrix/fixtures/scenario_mcp_invoke_happy_path_writes_pizarron.json +76 -0
  132. package/dist/qa/brain_matrix/fixtures/scenario_mcp_invoke_network_timeout_graceful.json +41 -0
  133. package/dist/qa/brain_matrix/fixtures/scenario_no_hardcoded_color_use_token.json +47 -0
  134. package/dist/qa/brain_matrix/fixtures/scenario_office_excel_update_cell_picks_right_verb.json +26 -0
  135. package/dist/qa/brain_matrix/fixtures/scenario_scaffolder_destructive_pauses_for_approval.json +23 -0
  136. package/dist/qa/brain_matrix/fixtures/scenario_sumie_icon_pick_from_catalog.json +56 -0
  137. package/dist/qa/brain_matrix/fixtures/scenario_tester_uses_shell_exec_only.json +27 -0
  138. package/dist/version.d.ts +1 -1
  139. package/dist/version.js +1 -1
  140. package/dist/workflow/graph.d.ts +59 -0
  141. package/dist/workflow/graph.d.ts.map +1 -0
  142. package/dist/workflow/graph.js +137 -0
  143. package/dist/workflow/graph.js.map +1 -0
  144. package/dist/workflow/state.d.ts +34 -0
  145. package/dist/workflow/state.d.ts.map +1 -1
  146. package/dist/workflow/state.js.map +1 -1
  147. package/docs/doctrine/default-design-system.md +120 -0
  148. package/docs/doctrine/language-sovereignty.md +143 -0
  149. package/docs/doctrine/testing-policy.md +211 -0
  150. package/package.json +102 -100
  151. package/src/i18n/catalogs/ar.json +20 -1
  152. package/src/i18n/catalogs/de.json +20 -1
  153. package/src/i18n/catalogs/en.json +20 -21
  154. package/src/i18n/catalogs/es.json +20 -21
  155. package/src/i18n/catalogs/fr.json +20 -1
  156. package/src/i18n/catalogs/hi.json +20 -1
  157. package/src/i18n/catalogs/it.json +20 -1
  158. package/src/i18n/catalogs/ja.json +20 -1
  159. package/src/i18n/catalogs/pt.json +20 -1
  160. package/src/i18n/catalogs/zh.json +20 -1
  161. package/templates/sumi-context.template.md +57 -0
@@ -0,0 +1,56 @@
1
+ {
2
+ "id": "sumie_icon_pick_from_catalog",
3
+ "description": "User asks for an icon. Validates the brain pulls from the sumi-e catalog instead of generating arbitrary SVG or suggesting Material/FontAwesome.",
4
+ "setup": {},
5
+ "turns": [
6
+ {
7
+ "kind": "user_says",
8
+ "text": "Necesito un icono para el modulo de finanzas."
9
+ }
10
+ ],
11
+ "invariants": [
12
+ {
13
+ "name": "no_invent_verbs",
14
+ "kind": "no_invent_verb",
15
+ "params": {}
16
+ },
17
+ {
18
+ "name": "uses_sumie_catalog",
19
+ "kind": "verb_invoked",
20
+ "params": {
21
+ "verb_id": "yujin.design.list-sumie"
22
+ }
23
+ },
24
+ {
25
+ "name": "mentions_sumie",
26
+ "kind": "text_contains_any",
27
+ "params": {
28
+ "substrs": [
29
+ "sumi-e",
30
+ "sumie",
31
+ "yujin.design.get-icon",
32
+ "catalog"
33
+ ]
34
+ }
35
+ }
36
+ ],
37
+ "fake_responses": [
38
+ {
39
+ "text": "Filtro el catalogo sumi-e por dominio finance.",
40
+ "tool_calls": [
41
+ {
42
+ "name": "nac3_invoke",
43
+ "args": {
44
+ "verb_id": "yujin.design.list-sumie",
45
+ "args": {
46
+ "tag": "finance"
47
+ }
48
+ }
49
+ }
50
+ ]
51
+ },
52
+ {
53
+ "text": "Del catalogo sumi-e con tag finance: coin-stack, scale-balance, contract-seal, ledger-open. Cual preferis?"
54
+ }
55
+ ]
56
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "id": "tester_uses_shell_exec_only",
3
+ "description": "Director live execution -- Tester sub-agent has allowed_verbs limited to yujin.shell.exec. When asked to run the test suite, it picks shell.exec (not a fs write, not a delegate). Validates per-role allowed_verbs constraint in the iterative_step.",
4
+ "setup": {
5
+ "extra_system_prompt": "TESTER ROLE active. Your single allowed verb is yujin.shell.exec. Run the test suite via the project's test command (e.g. pnpm vitest run). Do NOT call delegate, fs.write, pizarron, reader. If the test command fails, surface the failure text -- do NOT try to patch the code yourself (that is Scaffolder's job).\n\nVerbs:\n- yujin.shell.exec [u d] args:{cmd<required>}"
6
+ },
7
+ "turns": [
8
+ { "kind": "user_says", "text": "Corre los tests E2E del slice X y dime si pasan." }
9
+ ],
10
+ "invariants": [
11
+ { "name": "uses_shell_exec", "kind": "verb_invoked", "params": { "verb_id": "yujin.shell.exec" } },
12
+ { "name": "no_delegate", "kind": "verb_not_invoked", "params": { "verb_id": "yujin.agent.delegate" } },
13
+ { "name": "no_fs_write", "kind": "verb_not_invoked", "params": { "verb_id": "yujin.fs.write-project-file" } },
14
+ { "name": "no_invent_verbs", "kind": "no_invent_verb", "params": {} }
15
+ ],
16
+ "fake_responses": [
17
+ {
18
+ "text": "Corro la suite.",
19
+ "tool_calls": [
20
+ { "name": "nac3_invoke", "args": { "verb_id": "yujin.shell.exec", "args": { "cmd": "pnpm vitest run tests/slice-X.test.ts" } } }
21
+ ]
22
+ },
23
+ {
24
+ "text": "Suite verde: 12/12 pasaron."
25
+ }
26
+ ]
27
+ }
package/dist/version.d.ts CHANGED
@@ -4,5 +4,5 @@
4
4
  * into the npm metadata) so we don't end up with two versions
5
5
  * drifting.
6
6
  */
7
- export declare const VERSION = "0.2.0-alpha.59z.121";
7
+ export declare const VERSION = "0.2.0-alpha.59z.158";
8
8
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -4,5 +4,5 @@
4
4
  * into the npm metadata) so we don't end up with two versions
5
5
  * drifting.
6
6
  */
7
- export const VERSION = '0.2.0-alpha.59z.121';
7
+ export const VERSION = '0.2.0-alpha.59z.158';
8
8
  //# sourceMappingURL=version.js.map
@@ -0,0 +1,59 @@
1
+ /**
2
+ * src/workflow/graph.ts -- Director sprint slice 7.
3
+ *
4
+ * Pure transformer that takes the current `WorkflowState` and
5
+ * returns a {nodes, edges} shape the panel SVG (and any future
6
+ * consumer: CLI ASCII rendering, audit log, BPMN export) can
7
+ * render without re-implementing the 18-step model.
8
+ *
9
+ * The transformer mirrors the 6-phase taxonomy from
10
+ * `phase_inference.ts`:
11
+ *
12
+ * phase_i -- triage / intent / audits
13
+ * phase_ii -- clarification (functional + 4 NFR + blocks plan)
14
+ * phase_iii -- specs (RFP + Arch + Design + approvals)
15
+ * phase_iv -- bootstrap
16
+ * phase_v -- block implementation (per blocks_progress)
17
+ * phase_vi -- deploy + postlaunch
18
+ *
19
+ * Status derivation:
20
+ * - active phase = `inferActivePhase()`
21
+ * - phases before active = 'done'
22
+ * - active phase = 'active' UNLESS the project is fully closed,
23
+ * in which case phase_vi flips from 'active' to 'done'.
24
+ * - phases after active = 'pending'
25
+ *
26
+ * Step counts are granular per phase (4/6/6/1/N/2) so callers
27
+ * can render a progress chip. `step_done_count` never exceeds
28
+ * `step_count`. Phase V step count defaults to 1 when no blocks
29
+ * have been planned yet (placeholder slot for UI sizing).
30
+ *
31
+ * Labels are i18n keys (`workflow.phase.<phase>`) -- never raw
32
+ * text. The consumer resolves them at render time per locale.
33
+ *
34
+ * ASCII-only.
35
+ */
36
+ import type { WorkflowState } from './state.js';
37
+ import { type WorkflowPhase } from './phase_inference.js';
38
+ export type WorkflowGraphNodeStatus = 'pending' | 'active' | 'done';
39
+ export interface WorkflowGraphNode {
40
+ id: WorkflowPhase;
41
+ /** i18n catalog key -- `workflow.phase.i`..`workflow.phase.vi`. */
42
+ label_i18n_key: string;
43
+ status: WorkflowGraphNodeStatus;
44
+ /** Total atomic steps inside the phase (constant per phase, or
45
+ * derived for phase_v from blocks_progress.length). */
46
+ step_count: number;
47
+ /** How many of those steps have a recorded closure milestone. */
48
+ step_done_count: number;
49
+ }
50
+ export interface WorkflowGraphEdge {
51
+ from: WorkflowPhase;
52
+ to: WorkflowPhase;
53
+ }
54
+ export interface WorkflowGraph {
55
+ nodes: WorkflowGraphNode[];
56
+ edges: WorkflowGraphEdge[];
57
+ }
58
+ export declare function buildWorkflowGraph(state: WorkflowState | undefined | null): WorkflowGraph;
59
+ //# sourceMappingURL=graph.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/workflow/graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE5E,MAAM,MAAM,uBAAuB,GAAG,SAAS,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEpE,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAiB,aAAa,CAAC;IACjC,mEAAmE;IACnE,cAAc,EAAK,MAAM,CAAC;IAC1B,MAAM,EAAa,uBAAuB,CAAC;IAC3C;4DACwD;IACxD,UAAU,EAAS,MAAM,CAAC;IAC1B,iEAAiE;IACjE,eAAe,EAAI,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,aAAa,CAAC;IACpB,EAAE,EAAI,aAAa,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,KAAK,EAAE,iBAAiB,EAAE,CAAC;CAC5B;AAeD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,GAAG,IAAI,GAAG,aAAa,CAiCzF"}
@@ -0,0 +1,137 @@
1
+ import { inferActivePhase } from './phase_inference.js';
2
+ const PHASES = [
3
+ 'phase_i', 'phase_ii', 'phase_iii', 'phase_iv', 'phase_v', 'phase_vi',
4
+ ];
5
+ const PHASE_LABEL_KEYS = {
6
+ phase_i: 'workflow.phase.i',
7
+ phase_ii: 'workflow.phase.ii',
8
+ phase_iii: 'workflow.phase.iii',
9
+ phase_iv: 'workflow.phase.iv',
10
+ phase_v: 'workflow.phase.v',
11
+ phase_vi: 'workflow.phase.vi',
12
+ };
13
+ export function buildWorkflowGraph(state) {
14
+ const wf = state || {};
15
+ const active = inferActivePhase(wf);
16
+ const allDone = isFullyClosed(wf);
17
+ const nodes = PHASES.map((phase) => {
18
+ const idx = PHASES.indexOf(phase);
19
+ const activeIdx = PHASES.indexOf(active);
20
+ const counts = countSteps(phase, wf);
21
+ let status;
22
+ if (allDone) {
23
+ status = 'done';
24
+ }
25
+ else if (idx < activeIdx) {
26
+ status = 'done';
27
+ }
28
+ else if (idx === activeIdx) {
29
+ status = 'active';
30
+ }
31
+ else {
32
+ status = 'pending';
33
+ }
34
+ return {
35
+ id: phase,
36
+ label_i18n_key: PHASE_LABEL_KEYS[phase],
37
+ status,
38
+ step_count: counts.total,
39
+ step_done_count: counts.done,
40
+ };
41
+ });
42
+ const edges = [];
43
+ for (let i = 0; i < PHASES.length - 1; i++) {
44
+ edges.push({ from: PHASES[i], to: PHASES[i + 1] });
45
+ }
46
+ return { nodes, edges };
47
+ }
48
+ function countSteps(phase, wf) {
49
+ switch (phase) {
50
+ case 'phase_i': {
51
+ const total = 4;
52
+ let done = 0;
53
+ if (wf.tier)
54
+ done += 1;
55
+ if (wf.intent?.decided_at)
56
+ done += 1;
57
+ if (wf.legacy_audit?.ran_at)
58
+ done += 1;
59
+ if (wf.vault_inventory?.ran_at)
60
+ done += 1;
61
+ return { total, done };
62
+ }
63
+ case 'phase_ii': {
64
+ const total = 6;
65
+ const c = wf.clarification || {};
66
+ let done = 0;
67
+ const rounds = [
68
+ c.functional, c.nfr_quantitative, c.nfr_structural,
69
+ c.nfr_governance, c.nfr_operational,
70
+ ];
71
+ for (const r of rounds) {
72
+ if (r && r.done_at)
73
+ done += 1;
74
+ }
75
+ if (c.blocks?.done_at)
76
+ done += 1;
77
+ return { total, done };
78
+ }
79
+ case 'phase_iii': {
80
+ const total = 6;
81
+ const s = wf.specs || {};
82
+ const a = wf.approvals || {};
83
+ let done = 0;
84
+ if (s.rfp?.done_at)
85
+ done += 1;
86
+ if (s.arch?.done_at)
87
+ done += 1;
88
+ if (s.design?.done_at)
89
+ done += 1;
90
+ if (a.rfp?.approved_at)
91
+ done += 1;
92
+ if (a.arch?.approved_at)
93
+ done += 1;
94
+ if (a.design?.approved_at)
95
+ done += 1;
96
+ return { total, done };
97
+ }
98
+ case 'phase_iv': {
99
+ const total = 1;
100
+ const done = wf.bootstrap?.done_at ? 1 : 0;
101
+ return { total, done };
102
+ }
103
+ case 'phase_v': {
104
+ const blocks = wf.blocks_progress || [];
105
+ if (blocks.length === 0) {
106
+ /* Placeholder slot so the UI reserves a chip for the phase
107
+ * even before block planning materialises. */
108
+ return { total: 1, done: 0 };
109
+ }
110
+ const done = blocks.filter((b) => b.status === 'green').length;
111
+ return { total: blocks.length, done };
112
+ }
113
+ case 'phase_vi': {
114
+ const total = 2;
115
+ let done = 0;
116
+ if (wf.deploy?.done_at)
117
+ done += 1;
118
+ if (wf.postlaunch?.manual_at)
119
+ done += 1;
120
+ return { total, done };
121
+ }
122
+ }
123
+ }
124
+ function isFullyClosed(wf) {
125
+ /* Project is fully closed when phase_vi has its closure
126
+ * milestones (deploy.done_at + postlaunch.manual_at). Mirrors
127
+ * the inferActivePhase return-of-phase_vi terminal case. */
128
+ const deployed = !!wf.deploy?.done_at;
129
+ const postlaunchD = !!wf.postlaunch?.manual_at;
130
+ if (!deployed || !postlaunchD)
131
+ return false;
132
+ /* Also require everything upstream so a stray deploy on top of
133
+ * an unfinished phase_v does not falsely mark the project done. */
134
+ const upstreamActive = inferActivePhase(wf);
135
+ return upstreamActive === 'phase_vi';
136
+ }
137
+ //# sourceMappingURL=graph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/workflow/graph.ts"],"names":[],"mappings":"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"}
@@ -59,6 +59,34 @@
59
59
  * ASCII-only.
60
60
  */
61
61
  export type WorkflowTier = 'simple' | 'medium' | 'full';
62
+ /** Director sprint slice 14 -- language sovereignty.
63
+ * Captures the language chosen per component slot. Slots are
64
+ * open-ended so a project can add (e.g.) "edge-worker" without
65
+ * a schema change. */
66
+ export interface LanguageChoice {
67
+ /** Lowercase token. Examples: "ts", "go", "python", "rust",
68
+ * "swift", "kotlin", "dart", "java", "c#", "php", "ruby",
69
+ * "elixir", "sql", "hcl", "wasm". */
70
+ lang: string;
71
+ decided_at: string;
72
+ /** Who made this decision. "user" = explicit choice by the
73
+ * user. "director_suggested" = default the Director
74
+ * proposed + the user did not override. */
75
+ decided_by: 'user' | 'director_suggested';
76
+ /** Optional free-text rationale (preserved for audit). */
77
+ reason?: string;
78
+ }
79
+ export interface LanguageChoicesState {
80
+ frontend?: LanguageChoice;
81
+ mobile?: LanguageChoice;
82
+ backend?: LanguageChoice;
83
+ data_pipeline?: LanguageChoice;
84
+ infra?: LanguageChoice;
85
+ db?: LanguageChoice;
86
+ ml?: LanguageChoice;
87
+ /** Forward-compat catch-all for adopter-specific slots. */
88
+ [other: string]: LanguageChoice | undefined;
89
+ }
62
90
  export interface IntentState {
63
91
  operation: 'migrate' | 'new' | 'modify' | null;
64
92
  target: 'desktop' | 'mobile' | 'responsive' | 'web-and-mobile' | null;
@@ -178,6 +206,12 @@ export interface WorkflowState {
178
206
  intent?: IntentState;
179
207
  legacy_audit?: LegacyAuditState;
180
208
  vault_inventory?: VaultInventoryState;
209
+ /** Director sprint phase II slice 14 -- language sovereignty.
210
+ * The user picks the language per slot; the Director suggests
211
+ * + persists choices here. Read/written via yujin.workflow.set
212
+ * /state. See docs/doctrine/language-sovereignty.md for the
213
+ * algorithm + suitability table. */
214
+ language_choices?: LanguageChoicesState;
181
215
  clarification?: ClarificationState;
182
216
  specs?: {
183
217
  rfp?: SpecDocState;
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/workflow/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/workflow/state.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/workflow/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/workflow/state.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,120 @@
1
+ # Default design system -- Yujin DS first
2
+
3
+ Fetch when the user discusses UI / component design / look-and-
4
+ feel (signals: "componente", "modal", "sidebar", "card", "view",
5
+ "icon", "color", "fuente", "diseno", "interfaz", "UI", "form",
6
+ "button", "table", "kanban", "tabs"). Auto-injected on every
7
+ turn whose intent matches the UI heuristic.
8
+
9
+ ## Rule (single source of truth)
10
+
11
+ The default front-end design system for any Forge-generated
12
+ project is **Yujin Design System** (`yujin-design-system/`). The
13
+ package ships with 258 DTCG-compliant tokens, 30 NAC3-attributed
14
+ component templates, 170 sumi-e icons + a kanji wordmark
15
+ catalog, and font references (Google Fonts CDN, no bundled
16
+ binaries).
17
+
18
+ When the user asks for a UI element, agents MUST:
19
+
20
+ 1. Consult `yujin.design.list-templates` to see which Yujin
21
+ components cover the kind of element being requested.
22
+ 2. Use `yujin.design.get-template({slug})` to retrieve the HTML
23
+ + CSS + `nac3_attrs` + variants for the picked component.
24
+ 3. Splice the template into the project; do NOT hand-roll an
25
+ equivalent layout from scratch.
26
+ 4. Iconography: only pick from `yujin.design.list-sumie` (170
27
+ canonical icons). Use `yujin.design.get-icon({slug})` to
28
+ inline the SVG. Do NOT generate or import third-party icons
29
+ (no Material, no Font Awesome) unless the user explicitly
30
+ asks (override flow below).
31
+ 5. Colors / typography / spacing: only via tokens from
32
+ `yujin.design.tokens()`. Do NOT hardcode `#3A4DBC` or
33
+ `font-family: Inter`; use `var(--color-accent)` and
34
+ `var(--font-family-sans)`.
35
+
36
+ ## Override flow
37
+
38
+ The user CAN override the default ("usa shadcn", "use Material",
39
+ "this app needs Tailwind only", "I want my own brand colors"):
40
+
41
+ - Agent invokes `yujin.design.override({system_id, reason})`.
42
+ - This is `policy: 'approval_required'` so R8 opens a modal.
43
+ - The user confirms (or rejects); the choice persists in
44
+ `tenant_config.design_override`.
45
+ - Subsequent turns honor the override + the doctrine becomes a
46
+ soft suggestion ("Yujin DS is the Forge default, but this
47
+ tenant has overridden to <system>").
48
+
49
+ ## Why this is the default
50
+
51
+ - Coherent visual language across every Forge-generated product
52
+ -- the user does not need to re-learn the look-and-feel per
53
+ product.
54
+ - 30 components are enough to compose every standard SaaS UX
55
+ (CRM, admin panel, marketing site, e-commerce, dashboard,
56
+ task tracker, settings).
57
+ - NAC3 attributes pre-applied -- every Yujin component is
58
+ voice-controllable + accessibility-ready out of the box.
59
+ - 170 sumi-e icons cover virtually every business concept
60
+ (finance, sales, support, manufacturing, quality, HR, mobile,
61
+ AI, comms, document, geo, weather, animal). One coherent
62
+ illustration style.
63
+
64
+ ## Files in the package
65
+
66
+ ```
67
+ yujin-design-system/
68
+ manifest.json catalog + version + license
69
+ tokens/
70
+ yujin-tokens.json 258 DTCG W3C tokens
71
+ yujin-tokens.css generated CSS (same source-of-truth)
72
+ components/
73
+ _index.json list of 30 components by category
74
+ button.yujin.json one file per component
75
+ card.yujin.json
76
+ ... (30 total)
77
+ icons/
78
+ sumie/
79
+ manifest.json 170 icons with tags
80
+ branch-sakura.svg one SVG file per icon
81
+ ... (170 total)
82
+ fonts/
83
+ README.md reference-only policy (Google Fonts CDN)
84
+ ```
85
+
86
+ ## Six NAC3 verbs
87
+
88
+ | Verb | Returns | Policy |
89
+ |---------------------------------|----------------------------------------------------|--------------------|
90
+ | `yujin.design.list-templates` | `[{slug, category, description, variants}]` | safe |
91
+ | `yujin.design.get-template` | full ComponentTemplate (html, css, nac3, props) | safe |
92
+ | `yujin.design.list-sumie` | `[{slug, tags, file}]` (filtered by tag if given) | safe |
93
+ | `yujin.design.get-icon` | inline SVG string | safe |
94
+ | `yujin.design.tokens` | full DTCG token tree | safe |
95
+ | `yujin.design.override` | persists tenant_config.design_override | approval-required |
96
+
97
+ ## What this doctrine does NOT cover
98
+
99
+ - Framework choice within TypeScript (Vue vs React vs Svelte).
100
+ See `docs/doctrine/language-sovereignty.md` -- the user
101
+ decides per slot, and the doctrine table records the choice.
102
+ - Build tooling (Vite vs Webpack vs esbuild). Out of scope.
103
+ - Theme switching per tenant. The override flow above persists
104
+ one choice per tenant; multi-theme support is a separate
105
+ feature.
106
+
107
+ ## What the WORKERS (Analyst, Coder, Director) do with this
108
+
109
+ - **Analyst**: when extracting a spec that mentions UI elements
110
+ (forms, dashboards, modals), tag each one with the matching
111
+ Yujin component slug in `plan.components[]`. The Coder then
112
+ knows which template to pull.
113
+ - **Coder**: before writing ANY UI file, invoke
114
+ `yujin.design.list-templates` + `yujin.design.get-template`
115
+ for the components in the plan. Splice the templates. Apply
116
+ variants from the spec. Do NOT hand-write `.css` from
117
+ scratch.
118
+ - **Director**: when the user explicitly requests an override
119
+ ("use shadcn"), invokes `yujin.design.override` instead of
120
+ silently accepting. The R8 modal confirms.