@nac3/forge-cli 1.0.57 → 1.0.59
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/dist/chat/doctrine_digest.d.ts.map +1 -1
- package/dist/chat/doctrine_digest.js +12 -0
- package/dist/chat/doctrine_digest.js.map +1 -1
- package/dist/chat/flow_bpmn.d.ts +57 -38
- package/dist/chat/flow_bpmn.d.ts.map +1 -1
- package/dist/chat/flow_bpmn.js +170 -53
- package/dist/chat/flow_bpmn.js.map +1 -1
- package/dist/chat/panel.d.ts.map +1 -1
- package/dist/chat/panel.js +171 -76
- package/dist/chat/panel.js.map +1 -1
- package/dist/chat/server.d.ts.map +1 -1
- package/dist/chat/server.js +23 -9
- package/dist/chat/server.js.map +1 -1
- package/dist/chat/tools/pizarron.d.ts.map +1 -1
- package/dist/chat/tools/pizarron.js +17 -8
- package/dist/chat/tools/pizarron.js.map +1 -1
- package/dist/docs/doctrine/concurrency-scale.md +54 -0
- package/dist/docs/doctrine/pizarron.md +20 -10
- package/dist/semantic_graph/last_change.d.ts +9 -0
- package/dist/semantic_graph/last_change.d.ts.map +1 -0
- package/dist/semantic_graph/last_change.js +93 -0
- package/dist/semantic_graph/last_change.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/docs/doctrine/concurrency-scale.md +54 -0
- package/docs/doctrine/pizarron.md +20 -10
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctrine_digest.d.ts","sourceRoot":"","sources":["../../src/chat/doctrine_digest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,WAAW,mBAAmB;IAClC,sDAAsD;IACtD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,eAAe,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"doctrine_digest.d.ts","sourceRoot":"","sources":["../../src/chat/doctrine_digest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,WAAW,mBAAmB;IAClC,sDAAsD;IACtD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,eAAe,EAAE,mBAAmB,EAkGhD,CAAC;AAEF,6DAA6D;AAC7D,wBAAgB,WAAW,IAAI,MAAM,EAAE,CAEtC;AAED,MAAM,WAAW,qBAAqB;IACpC;4EACwE;IACxE,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;uEACuE;AACvE,wBAAgB,wBAAwB,CAAC,IAAI,GAAE,qBAA0B,GAAG,MAAM,EAAE,CAiBnF"}
|
|
@@ -71,6 +71,18 @@ export const DOCTRINE_DIGEST = [
|
|
|
71
71
|
slugs: ['default-design-system'],
|
|
72
72
|
rule: 'use the Yujin Design System (sumi-e tokens) by default before any custom styling.',
|
|
73
73
|
},
|
|
74
|
+
{
|
|
75
|
+
slugs: ['concurrency-scale'],
|
|
76
|
+
rule: 'size every app to its expected CONCURRENCY from the start: during '
|
|
77
|
+
+ 'relevamiento ASK peak simultaneous users / read-vs-write / latency '
|
|
78
|
+
+ 'budget / growth (if unknown, assume a default and WRITE it in the '
|
|
79
|
+
+ 'spec), then choose a multi-layer design that has no bottleneck at any '
|
|
80
|
+
+ 'tier -- stateless app nodes (scale out), connection pools + queues / '
|
|
81
|
+
+ 'backpressure for spikes, cache hot reads, read replicas / async jobs '
|
|
82
|
+
+ 'for the data tier, broker fan-out for realtime -- PROPORTIONAL to the '
|
|
83
|
+
+ 'number (a 20-user tool stays single-tier; neither a bottleneck nor '
|
|
84
|
+
+ 'gold-plating).',
|
|
85
|
+
},
|
|
74
86
|
{
|
|
75
87
|
slugs: ['verb-composition'],
|
|
76
88
|
rule: 'compose native verbs in dependency order; prefer a yujin.* verb over shell. Long-running commands (dev server/watcher/tunnel) MUST use yujin.task.run, never shell.exec (which refuses them).',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctrine_digest.js","sourceRoot":"","sources":["../../src/chat/doctrine_digest.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctrine_digest.js","sourceRoot":"","sources":["../../src/chat/doctrine_digest.ts"],"names":[],"mappings":"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"}
|
package/dist/chat/flow_bpmn.d.ts
CHANGED
|
@@ -1,54 +1,73 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* flow_bpmn.ts --
|
|
3
|
-
*
|
|
2
|
+
* flow_bpmn.ts -- server-side enforcement of the pizarron KIND SELECTION rule
|
|
3
|
+
* for process/flow diagrams.
|
|
4
4
|
*
|
|
5
5
|
* Problem (Pablo, 2026-07-04): even though the always-on doctrine digest AND
|
|
6
|
-
* the create-tab verb description AND the pizarron doctrine all say "a
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* server-side: when the brain creates a `graph` whose TITLE reads like a
|
|
12
|
-
* process/flow, we convert the {nodes,edges} into a BPMN {nodes,flows} model
|
|
13
|
-
* and let the proper BPMN renderer draw it.
|
|
6
|
+
* the create-tab verb description AND the pizarron doctrine all say "a FLUJO /
|
|
7
|
+
* proceso / flowchart -> kind=bpmn, NEVER kind=graph", some brains keep
|
|
8
|
+
* creating a process as kind='graph' -- a force-directed node web that looks
|
|
9
|
+
* awful for an ordered flow. The instruction is already there and the model
|
|
10
|
+
* ignores it, so more prompt text will not fix it. We enforce it server-side.
|
|
14
11
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
12
|
+
* TWO layers (the "combo"):
|
|
13
|
+
* B (nudge) -- the FIRST time a graph-for-a-flow arrives, we REJECT the tab
|
|
14
|
+
* with a precise tool-result telling the brain to re-create it
|
|
15
|
+
* as kind='bpmn' (native BPMN: proper events / gateways /
|
|
16
|
+
* lanes). Most brains comply in the same tool-calling loop.
|
|
17
|
+
* A (safety) -- if the brain RESENDS the same graph (reincidence) instead of
|
|
18
|
+
* obeying, we deterministically convert {nodes,edges} into a
|
|
19
|
+
* BPMN {nodes,flows} model and render it. No LLM round-trip,
|
|
20
|
+
* so the user NEVER ends up with an ugly flow, whatever the
|
|
21
|
+
* brain does.
|
|
22
|
+
*
|
|
23
|
+
* Detection does NOT rely only on flow-words in the title: a broadened title
|
|
24
|
+
* lexicon PLUS a structural test (a graph that is an acyclic, sparse, ordered
|
|
25
|
+
* sequence -- or has labelled decision branches -- reads as a flow even when
|
|
26
|
+
* the title has no flow-word, e.g. "Alta de cliente"). Real relationship /
|
|
27
|
+
* dependency graphs (title says grafo / relaciones / dependencias / organigrama
|
|
28
|
+
* / entidad-relacion, or the structure is a dense web) are left untouched.
|
|
19
29
|
*
|
|
20
30
|
* ASCII-only.
|
|
21
31
|
*/
|
|
22
32
|
/** Does the tab title read like a process/flow request? */
|
|
23
33
|
export declare function looksLikeFlowTitle(title: string): boolean;
|
|
34
|
+
/** True when the graph STRUCTURE reads like an ordered flow even if the title
|
|
35
|
+
* is neutral: acyclic + sparse + (a simple chain OR a labelled decision OR at
|
|
36
|
+
* least one labelled edge). A dense or cyclic web returns false. */
|
|
37
|
+
export declare function graphLooksLikeFlow(content: string): boolean;
|
|
38
|
+
/** Combined decision: is this graph tab actually a process/flow? Title veto
|
|
39
|
+
* (relationship words) wins; then flow-words; then structure. */
|
|
40
|
+
export declare function isFlowContext(title: string, content: string): boolean;
|
|
24
41
|
/**
|
|
25
|
-
* Convert a graph `{nodes
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
30
|
-
* Heuristics:
|
|
31
|
-
* - node with no incoming edge -> preceded by a synthetic startEvent;
|
|
32
|
-
* - node with no outgoing edge -> followed by a synthetic endEvent;
|
|
33
|
-
* - node with 2+ outgoing edges AND at least one labelled -> exclusive
|
|
34
|
-
* gateway (a decision); the node label becomes the diamond label;
|
|
35
|
-
* - every other node -> task.
|
|
42
|
+
* Convert a graph `{nodes,edges}` JSON string into a BPMN `{nodes,flows}` JSON
|
|
43
|
+
* string. Returns null when the content is not a parseable, connected graph.
|
|
44
|
+
* Heuristics: source node -> preceded by a synthetic startEvent; sink -> a
|
|
45
|
+
* synthetic endEvent; node with 2+ outgoing AND a labelled branch -> exclusive
|
|
46
|
+
* gateway; everything else -> task.
|
|
36
47
|
*/
|
|
37
48
|
export declare function graphToBpmn(content: string): string | null;
|
|
38
|
-
|
|
39
|
-
|
|
49
|
+
/** The nudge shown to the brain when it draws a flow as a graph. */
|
|
50
|
+
export declare const FLOW_NUDGE_MESSAGE: string;
|
|
51
|
+
/** For tests: forget every remembered nudge. */
|
|
52
|
+
export declare function _resetFlowNudges(): void;
|
|
53
|
+
export type FlowDecision = {
|
|
54
|
+
action: 'passthrough';
|
|
55
|
+
} | {
|
|
56
|
+
action: 'reject';
|
|
57
|
+
message: string;
|
|
58
|
+
} | {
|
|
59
|
+
action: 'convert';
|
|
60
|
+
kind: 'bpmn';
|
|
40
61
|
content: string;
|
|
41
|
-
|
|
42
|
-
}
|
|
43
|
-
export interface PromoteResult {
|
|
44
|
-
kind: string;
|
|
45
|
-
content: string;
|
|
46
|
-
promoted: boolean;
|
|
47
|
-
}
|
|
62
|
+
};
|
|
48
63
|
/**
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
64
|
+
* Decide what to do with a create-tab. Passthrough for anything that is not a
|
|
65
|
+
* graph-drawn flow. For a graph-drawn flow: nudge the brain to redo it as BPMN
|
|
66
|
+
* the first time (B); on reincidence, convert it deterministically (A).
|
|
52
67
|
*/
|
|
53
|
-
export declare function
|
|
68
|
+
export declare function decideFlowTab(input: {
|
|
69
|
+
kind: string;
|
|
70
|
+
content: string;
|
|
71
|
+
title?: string;
|
|
72
|
+
}): FlowDecision;
|
|
54
73
|
//# sourceMappingURL=flow_bpmn.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow_bpmn.d.ts","sourceRoot":"","sources":["../../src/chat/flow_bpmn.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"flow_bpmn.d.ts","sourceRoot":"","sources":["../../src/chat/flow_bpmn.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAiCH,2DAA2D;AAC3D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAIzD;AA+BD;;qEAEqE;AACrE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAqB3D;AAoBD;kEACkE;AAClE,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAKrE;AAOD;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiC1D;AAID,oEAAoE;AACpE,eAAO,MAAM,kBAAkB,QAM6E,CAAC;AAgB7G,gDAAgD;AAChD,wBAAgB,gBAAgB,IAAI,IAAI,CAAoB;AAE5D,MAAM,MAAM,YAAY,GACpB;IAAE,MAAM,EAAE,aAAa,CAAA;CAAE,GACzB;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACrC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,YAAY,CAUpG"}
|
package/dist/chat/flow_bpmn.js
CHANGED
|
@@ -1,45 +1,64 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* flow_bpmn.ts --
|
|
3
|
-
*
|
|
2
|
+
* flow_bpmn.ts -- server-side enforcement of the pizarron KIND SELECTION rule
|
|
3
|
+
* for process/flow diagrams.
|
|
4
4
|
*
|
|
5
5
|
* Problem (Pablo, 2026-07-04): even though the always-on doctrine digest AND
|
|
6
|
-
* the create-tab verb description AND the pizarron doctrine all say "a
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* server-side: when the brain creates a `graph` whose TITLE reads like a
|
|
12
|
-
* process/flow, we convert the {nodes,edges} into a BPMN {nodes,flows} model
|
|
13
|
-
* and let the proper BPMN renderer draw it.
|
|
6
|
+
* the create-tab verb description AND the pizarron doctrine all say "a FLUJO /
|
|
7
|
+
* proceso / flowchart -> kind=bpmn, NEVER kind=graph", some brains keep
|
|
8
|
+
* creating a process as kind='graph' -- a force-directed node web that looks
|
|
9
|
+
* awful for an ordered flow. The instruction is already there and the model
|
|
10
|
+
* ignores it, so more prompt text will not fix it. We enforce it server-side.
|
|
14
11
|
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
12
|
+
* TWO layers (the "combo"):
|
|
13
|
+
* B (nudge) -- the FIRST time a graph-for-a-flow arrives, we REJECT the tab
|
|
14
|
+
* with a precise tool-result telling the brain to re-create it
|
|
15
|
+
* as kind='bpmn' (native BPMN: proper events / gateways /
|
|
16
|
+
* lanes). Most brains comply in the same tool-calling loop.
|
|
17
|
+
* A (safety) -- if the brain RESENDS the same graph (reincidence) instead of
|
|
18
|
+
* obeying, we deterministically convert {nodes,edges} into a
|
|
19
|
+
* BPMN {nodes,flows} model and render it. No LLM round-trip,
|
|
20
|
+
* so the user NEVER ends up with an ugly flow, whatever the
|
|
21
|
+
* brain does.
|
|
22
|
+
*
|
|
23
|
+
* Detection does NOT rely only on flow-words in the title: a broadened title
|
|
24
|
+
* lexicon PLUS a structural test (a graph that is an acyclic, sparse, ordered
|
|
25
|
+
* sequence -- or has labelled decision branches -- reads as a flow even when
|
|
26
|
+
* the title has no flow-word, e.g. "Alta de cliente"). Real relationship /
|
|
27
|
+
* dependency graphs (title says grafo / relaciones / dependencias / organigrama
|
|
28
|
+
* / entidad-relacion, or the structure is a dense web) are left untouched.
|
|
19
29
|
*
|
|
20
30
|
* ASCII-only.
|
|
21
31
|
*/
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
32
|
+
/* ------------------------------- detection ------------------------------- */
|
|
33
|
+
/** Title reads like an ordered process/flow. Broad on purpose (Pablo asked to
|
|
34
|
+
* catch "flow / chart / grafico de procesos / etc"). */
|
|
35
|
+
const FLOW_TITLE_RE = new RegExp('\\b(' + [
|
|
36
|
+
'flujo', 'flujos', 'flujograma', 'flow', 'flow\\s*chart', 'flowchart',
|
|
37
|
+
'cursograma', 'chart', 'proceso', 'procesos', 'process', 'procedimiento',
|
|
38
|
+
'procedimientos', 'workflow', 'work\\s*flow', 'circuito', 'pipeline',
|
|
39
|
+
'secuencia', 'sequence', 'paso', 'pasos', 'steps', 'etapa', 'etapas',
|
|
40
|
+
'fase', 'fases', 'ciclo', 'tramite', 'bpmn', 'journey', 'recorrido',
|
|
41
|
+
'itinerario', 'ruta', 'diagrama de (flujo|proceso|procesos)',
|
|
42
|
+
'grafico de (proceso|procesos)', 'mapa de (proceso|procesos)',
|
|
43
|
+
].join('|') + ')\\b', 'i');
|
|
44
|
+
/** Title clearly names a relationship / dependency / hierarchy graph -- these
|
|
45
|
+
* are NOT flows and must never be promoted. Checked BEFORE FLOW_TITLE_RE. */
|
|
46
|
+
const RELATION_TITLE_RE = new RegExp('\\b(' + [
|
|
47
|
+
'grafo', 'relaciones', 'relacion', 'relación', 'dependencias', 'dependencia',
|
|
48
|
+
'dependency', 'dependencies', 'relationship', 'network', 'red de',
|
|
49
|
+
'topologia', 'topología', 'topology', 'entidad[- ]relacion',
|
|
50
|
+
'entity[- ]relationship', 'er\\s*diagram', 'organigrama', 'org\\s*chart',
|
|
51
|
+
'organization\\s*chart', 'jerarquia', 'jerarquía', 'hierarchy',
|
|
52
|
+
'mapa mental', 'mind\\s*map', 'que usa (que|a que)',
|
|
53
|
+
].join('|') + ')\\b', 'i');
|
|
25
54
|
/** Does the tab title read like a process/flow request? */
|
|
26
55
|
export function looksLikeFlowTitle(title) {
|
|
27
|
-
|
|
56
|
+
const t = String(title || '');
|
|
57
|
+
if (RELATION_TITLE_RE.test(t))
|
|
58
|
+
return false;
|
|
59
|
+
return FLOW_TITLE_RE.test(t);
|
|
28
60
|
}
|
|
29
|
-
|
|
30
|
-
* Convert a graph `{nodes:[{id,label}], edges:[{from,to,label?}]}` JSON string
|
|
31
|
-
* into a BPMN `{nodes:[{id,type,label,gateway?}], flows:[{from,to,label?}]}`
|
|
32
|
-
* JSON string. Returns null when the content is not a parseable, connected
|
|
33
|
-
* graph (nothing to promote).
|
|
34
|
-
*
|
|
35
|
-
* Heuristics:
|
|
36
|
-
* - node with no incoming edge -> preceded by a synthetic startEvent;
|
|
37
|
-
* - node with no outgoing edge -> followed by a synthetic endEvent;
|
|
38
|
-
* - node with 2+ outgoing edges AND at least one labelled -> exclusive
|
|
39
|
-
* gateway (a decision); the node label becomes the diamond label;
|
|
40
|
-
* - every other node -> task.
|
|
41
|
-
*/
|
|
42
|
-
export function graphToBpmn(content) {
|
|
61
|
+
function parseGraph(content) {
|
|
43
62
|
let g;
|
|
44
63
|
try {
|
|
45
64
|
g = JSON.parse(content);
|
|
@@ -63,50 +82,148 @@ export function graphToBpmn(content) {
|
|
|
63
82
|
label: e.label != null && String(e.label).trim() ? String(e.label) : undefined,
|
|
64
83
|
}))
|
|
65
84
|
.filter((e) => ids.has(e.from) && ids.has(e.to));
|
|
66
|
-
|
|
67
|
-
|
|
85
|
+
return { nodes, edges };
|
|
86
|
+
}
|
|
87
|
+
/** True when the graph STRUCTURE reads like an ordered flow even if the title
|
|
88
|
+
* is neutral: acyclic + sparse + (a simple chain OR a labelled decision OR at
|
|
89
|
+
* least one labelled edge). A dense or cyclic web returns false. */
|
|
90
|
+
export function graphLooksLikeFlow(content) {
|
|
91
|
+
const g = parseGraph(content);
|
|
92
|
+
if (!g || g.nodes.length < 2 || g.edges.length < 1)
|
|
93
|
+
return false;
|
|
94
|
+
const outDeg = {};
|
|
95
|
+
const inDeg = {};
|
|
96
|
+
const outLabeled = {};
|
|
97
|
+
g.nodes.forEach((n) => { outDeg[n.id] = 0; inDeg[n.id] = 0; outLabeled[n.id] = 0; });
|
|
98
|
+
g.edges.forEach((e) => {
|
|
99
|
+
outDeg[e.from] = (outDeg[e.from] ?? 0) + 1;
|
|
100
|
+
inDeg[e.to] = (inDeg[e.to] ?? 0) + 1;
|
|
101
|
+
if (e.label)
|
|
102
|
+
outLabeled[e.from] = (outLabeled[e.from] ?? 0) + 1;
|
|
103
|
+
});
|
|
104
|
+
const sources = g.nodes.filter((n) => (inDeg[n.id] ?? 0) === 0).length;
|
|
105
|
+
const sinks = g.nodes.filter((n) => (outDeg[n.id] ?? 0) === 0).length;
|
|
106
|
+
if (sources === 0 || sinks === 0)
|
|
107
|
+
return false; // no clean start/end
|
|
108
|
+
if (g.edges.length > g.nodes.length * 1.4)
|
|
109
|
+
return false; // dense web, not a flow
|
|
110
|
+
if (!isAcyclic(g))
|
|
111
|
+
return false;
|
|
112
|
+
const isChain = g.nodes.every((n) => (outDeg[n.id] ?? 0) <= 1);
|
|
113
|
+
const hasDecision = g.nodes.some((n) => (outDeg[n.id] ?? 0) >= 2 && (outLabeled[n.id] ?? 0) >= 1);
|
|
114
|
+
const anyLabeled = g.edges.some((e) => e.label);
|
|
115
|
+
return isChain || hasDecision || anyLabeled;
|
|
116
|
+
}
|
|
117
|
+
function isAcyclic(g) {
|
|
118
|
+
const inDeg = {};
|
|
119
|
+
const adj = {};
|
|
120
|
+
g.nodes.forEach((n) => { inDeg[n.id] = 0; adj[n.id] = []; });
|
|
121
|
+
g.edges.forEach((e) => { (adj[e.from] ??= []).push(e.to); inDeg[e.to] = (inDeg[e.to] ?? 0) + 1; });
|
|
122
|
+
const queue = g.nodes.filter((n) => (inDeg[n.id] ?? 0) === 0).map((n) => n.id);
|
|
123
|
+
let seen = 0;
|
|
124
|
+
while (queue.length) {
|
|
125
|
+
const id = queue.shift();
|
|
126
|
+
seen++;
|
|
127
|
+
for (const to of (adj[id] ?? [])) {
|
|
128
|
+
inDeg[to] = (inDeg[to] ?? 0) - 1;
|
|
129
|
+
if ((inDeg[to] ?? 0) === 0)
|
|
130
|
+
queue.push(to);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
return seen === g.nodes.length;
|
|
134
|
+
}
|
|
135
|
+
/** Combined decision: is this graph tab actually a process/flow? Title veto
|
|
136
|
+
* (relationship words) wins; then flow-words; then structure. */
|
|
137
|
+
export function isFlowContext(title, content) {
|
|
138
|
+
const t = String(title || '');
|
|
139
|
+
if (RELATION_TITLE_RE.test(t))
|
|
140
|
+
return false;
|
|
141
|
+
if (FLOW_TITLE_RE.test(t))
|
|
142
|
+
return true;
|
|
143
|
+
return graphLooksLikeFlow(content);
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Convert a graph `{nodes,edges}` JSON string into a BPMN `{nodes,flows}` JSON
|
|
147
|
+
* string. Returns null when the content is not a parseable, connected graph.
|
|
148
|
+
* Heuristics: source node -> preceded by a synthetic startEvent; sink -> a
|
|
149
|
+
* synthetic endEvent; node with 2+ outgoing AND a labelled branch -> exclusive
|
|
150
|
+
* gateway; everything else -> task.
|
|
151
|
+
*/
|
|
152
|
+
export function graphToBpmn(content) {
|
|
153
|
+
const g = parseGraph(content);
|
|
154
|
+
if (!g || g.nodes.length === 0 || g.edges.length === 0)
|
|
155
|
+
return null;
|
|
68
156
|
const outDeg = {};
|
|
69
157
|
const inDeg = {};
|
|
70
158
|
const outLabeled = {};
|
|
71
|
-
nodes.forEach((n) => { outDeg[n.id] = 0; inDeg[n.id] = 0; outLabeled[n.id] = 0; });
|
|
72
|
-
edges.forEach((e) => {
|
|
159
|
+
g.nodes.forEach((n) => { outDeg[n.id] = 0; inDeg[n.id] = 0; outLabeled[n.id] = 0; });
|
|
160
|
+
g.edges.forEach((e) => {
|
|
73
161
|
outDeg[e.from] = (outDeg[e.from] ?? 0) + 1;
|
|
74
162
|
inDeg[e.to] = (inDeg[e.to] ?? 0) + 1;
|
|
75
163
|
if (e.label)
|
|
76
164
|
outLabeled[e.from] = (outLabeled[e.from] ?? 0) + 1;
|
|
77
165
|
});
|
|
78
|
-
const bpmnNodes = nodes.map((n) => ((outDeg[n.id] ?? 0) >= 2 && (outLabeled[n.id] ?? 0) >= 1)
|
|
166
|
+
const bpmnNodes = g.nodes.map((n) => ((outDeg[n.id] ?? 0) >= 2 && (outLabeled[n.id] ?? 0) >= 1)
|
|
79
167
|
? { id: n.id, type: 'gateway', gateway: 'exclusive', label: n.label }
|
|
80
168
|
: { id: n.id, type: 'task', label: n.label });
|
|
81
|
-
const flows = edges.map((e) => (e.label ? { from: e.from, to: e.to, label: e.label } : { from: e.from, to: e.to }));
|
|
82
|
-
const starts = nodes.filter((n) => (inDeg[n.id] ?? 0) === 0).map((n) => n.id);
|
|
83
|
-
const ends = nodes.filter((n) => (outDeg[n.id] ?? 0) === 0).map((n) => n.id);
|
|
84
|
-
|
|
85
|
-
// "all sources" means a disconnected set, which we already rejected above.
|
|
86
|
-
if (starts.length >= 1 && starts.length < nodes.length) {
|
|
169
|
+
const flows = g.edges.map((e) => (e.label ? { from: e.from, to: e.to, label: e.label } : { from: e.from, to: e.to }));
|
|
170
|
+
const starts = g.nodes.filter((n) => (inDeg[n.id] ?? 0) === 0).map((n) => n.id);
|
|
171
|
+
const ends = g.nodes.filter((n) => (outDeg[n.id] ?? 0) === 0).map((n) => n.id);
|
|
172
|
+
if (starts.length >= 1 && starts.length < g.nodes.length) {
|
|
87
173
|
bpmnNodes.unshift({ id: '_start', type: 'startEvent', label: 'Inicio' });
|
|
88
174
|
starts.forEach((s) => flows.unshift({ from: '_start', to: s }));
|
|
89
175
|
}
|
|
90
|
-
if (ends.length >= 1 && ends.length < nodes.length) {
|
|
176
|
+
if (ends.length >= 1 && ends.length < g.nodes.length) {
|
|
91
177
|
bpmnNodes.push({ id: '_end', type: 'endEvent', label: 'Fin' });
|
|
92
178
|
ends.forEach((e) => flows.push({ from: e, to: '_end' }));
|
|
93
179
|
}
|
|
94
180
|
return JSON.stringify({ nodes: bpmnNodes, flows });
|
|
95
181
|
}
|
|
182
|
+
/* --------------------------- decision (A + B) ---------------------------- */
|
|
183
|
+
/** The nudge shown to the brain when it draws a flow as a graph. */
|
|
184
|
+
export const FLOW_NUDGE_MESSAGE = 'El pizarron NO renderiza un flujo/proceso como grafo de nodos (kind="graph"): '
|
|
185
|
+
+ 'queda ilegible. Volve a crear ESTE tab con kind="bpmn" y content JSON: '
|
|
186
|
+
+ '{"nodes":[{"id","type","label","lane"?,"gateway"?}],"flows":[{"from","to","label"?}],"lanes"?:[{"id","label"}]}. '
|
|
187
|
+
+ 'type en startEvent|endEvent|task|userTask|serviceTask|scriptTask|sendTask|receiveTask|gateway; '
|
|
188
|
+
+ 'para una decision usa type="gateway" + gateway="exclusive" (o "parallel"). '
|
|
189
|
+
+ 'Empeza con un startEvent y termina con endEvent. Hacelo AHORA en esta misma respuesta -- no lo narres.';
|
|
190
|
+
/* Bounded memory of graph contents we already nudged, so a reincidence (the
|
|
191
|
+
* brain re-sends the same graph instead of obeying) falls back to the
|
|
192
|
+
* deterministic conversion instead of nudging forever. */
|
|
193
|
+
const nudged = new Set();
|
|
194
|
+
function rememberNudge(hash) {
|
|
195
|
+
if (nudged.size > 512)
|
|
196
|
+
nudged.clear();
|
|
197
|
+
nudged.add(hash);
|
|
198
|
+
}
|
|
199
|
+
function hashContent(s) {
|
|
200
|
+
let h = 5381;
|
|
201
|
+
for (let i = 0; i < s.length; i++)
|
|
202
|
+
h = ((h << 5) + h + s.charCodeAt(i)) | 0;
|
|
203
|
+
return String(h >>> 0) + ':' + s.length;
|
|
204
|
+
}
|
|
205
|
+
/** For tests: forget every remembered nudge. */
|
|
206
|
+
export function _resetFlowNudges() { nudged.clear(); }
|
|
96
207
|
/**
|
|
97
|
-
*
|
|
98
|
-
*
|
|
99
|
-
*
|
|
208
|
+
* Decide what to do with a create-tab. Passthrough for anything that is not a
|
|
209
|
+
* graph-drawn flow. For a graph-drawn flow: nudge the brain to redo it as BPMN
|
|
210
|
+
* the first time (B); on reincidence, convert it deterministically (A).
|
|
100
211
|
*/
|
|
101
|
-
export function
|
|
212
|
+
export function decideFlowTab(input) {
|
|
102
213
|
const kind = String(input.kind || '').trim().toLowerCase();
|
|
103
214
|
if (kind !== 'graph')
|
|
104
|
-
return {
|
|
105
|
-
if (!
|
|
106
|
-
return {
|
|
215
|
+
return { action: 'passthrough' };
|
|
216
|
+
if (!isFlowContext(input.title || '', input.content))
|
|
217
|
+
return { action: 'passthrough' };
|
|
107
218
|
const bpmn = graphToBpmn(input.content);
|
|
108
219
|
if (!bpmn)
|
|
109
|
-
return {
|
|
110
|
-
|
|
220
|
+
return { action: 'passthrough' }; // not convertible -> leave as-is
|
|
221
|
+
const h = hashContent(input.content);
|
|
222
|
+
if (nudged.has(h)) {
|
|
223
|
+
nudged.delete(h);
|
|
224
|
+
return { action: 'convert', kind: 'bpmn', content: bpmn };
|
|
225
|
+
}
|
|
226
|
+
rememberNudge(h);
|
|
227
|
+
return { action: 'reject', message: FLOW_NUDGE_MESSAGE };
|
|
111
228
|
}
|
|
112
229
|
//# sourceMappingURL=flow_bpmn.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flow_bpmn.js","sourceRoot":"","sources":["../../src/chat/flow_bpmn.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"flow_bpmn.js","sourceRoot":"","sources":["../../src/chat/flow_bpmn.ts"],"names":[],"mappings":"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"}
|
package/dist/chat/panel.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../src/chat/panel.ts"],"names":[],"mappings":"AAmBA,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb;;;;;2BAKuB;IACvB,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"panel.d.ts","sourceRoot":"","sources":["../../src/chat/panel.ts"],"names":[],"mappings":"AAmBA,OAAO,EAEL,KAAK,iBAAiB,EAEvB,MAAM,kBAAkB,CAAC;AAG1B,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb;;;;;2BAKuB;IACvB,IAAI,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,MAAM,CA+wXxD"}
|