@sigloch/graphcode-client 1.5.1 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -54,7 +54,14 @@ export interface CompletenessLeg {
54
54
  * SRR: SYS→UC ≈ R-17 (SYS must have compose; not UC-typed specifically —
55
55
  * no dedicated SYS→UC rule exists, R-17 is the closest twin),
56
56
  * UC→FCHAIN = UC-03, UC→REQ = UC-01.
57
- * PDR: FCHAIN→FUNC = R-15, FCHAIN-actor-bounded = FC-04 (trigger+consumer).
57
+ * PDR: FCHAIN→FUNC = R-15, FCHAIN-actor-bounded = FC-04 (trigger+consumer),
58
+ * FUNC→MOD = R-22 (CR-SM-389: jede FUNC wohnt in einem Modul). Der Pattern ist
59
+ * `0..1` — seine Untergrenze ist R-22 (warning, nicht error: das Apply-Gate lehnt
60
+ * neu eingefuehrte Errors ab, jede FUNC muesste sonst mit ihrem Modul im selben
61
+ * Zug entstehen). Das Bein sperrt `passed`, nicht das Gate. R-23 (MOD ohne FUNC)
62
+ * ist bewusst KEIN Bein: ein leeres Modul laesst keine Funktion unverortet — es
63
+ * ist Ueberschuss, keine Luecke; die treibende Population ist FUNC, und dieselbe
64
+ * allocate-Kante wuerde nur ein zweites Mal von der anderen Seite gezaehlt.
58
65
  * CDR: FLOW→SCHEMA = R-18 (seit CR-SM-271: die Untergrenze ist Grammatik,
59
66
  * `FLOW -relation-> SCHEMA [1..1]` — SC-04 existiert nicht mehr; ein
60
67
  * R-18-Befund am FLOW heisst "Kanten ungrammatisch", inkl. fehlendem
@@ -40,7 +40,14 @@ export const typeOf = (byId, id) => byId.get(id)?.type;
40
40
  * SRR: SYS→UC ≈ R-17 (SYS must have compose; not UC-typed specifically —
41
41
  * no dedicated SYS→UC rule exists, R-17 is the closest twin),
42
42
  * UC→FCHAIN = UC-03, UC→REQ = UC-01.
43
- * PDR: FCHAIN→FUNC = R-15, FCHAIN-actor-bounded = FC-04 (trigger+consumer).
43
+ * PDR: FCHAIN→FUNC = R-15, FCHAIN-actor-bounded = FC-04 (trigger+consumer),
44
+ * FUNC→MOD = R-22 (CR-SM-389: jede FUNC wohnt in einem Modul). Der Pattern ist
45
+ * `0..1` — seine Untergrenze ist R-22 (warning, nicht error: das Apply-Gate lehnt
46
+ * neu eingefuehrte Errors ab, jede FUNC muesste sonst mit ihrem Modul im selben
47
+ * Zug entstehen). Das Bein sperrt `passed`, nicht das Gate. R-23 (MOD ohne FUNC)
48
+ * ist bewusst KEIN Bein: ein leeres Modul laesst keine Funktion unverortet — es
49
+ * ist Ueberschuss, keine Luecke; die treibende Population ist FUNC, und dieselbe
50
+ * allocate-Kante wuerde nur ein zweites Mal von der anderen Seite gezaehlt.
44
51
  * CDR: FLOW→SCHEMA = R-18 (seit CR-SM-271: die Untergrenze ist Grammatik,
45
52
  * `FLOW -relation-> SCHEMA [1..1]` — SC-04 existiert nicht mehr; ein
46
53
  * R-18-Befund am FLOW heisst "Kanten ungrammatisch", inkl. fehlendem
@@ -54,10 +61,12 @@ export const COMPLETENESS_SLICES = {
54
61
  { id: 'UC→FCHAIN', sourceType: 'UC', ruleId: 'UC-03' },
55
62
  { id: 'UC→REQ', sourceType: 'UC', ruleId: 'UC-01' },
56
63
  ],
57
- // Functional architecture: every chain has functions AND is actor-bounded (trigger + consumer).
64
+ // Functional architecture: every chain has functions AND is actor-bounded (trigger + consumer),
65
+ // and every function is allocated to a module (CR-SM-389).
58
66
  PDR: [
59
67
  { id: 'FCHAIN→FUNC', sourceType: 'FCHAIN', ruleId: 'R-15' },
60
68
  { id: 'FCHAIN-actor-bounded', sourceType: 'FCHAIN', ruleId: 'FC-04' },
69
+ { id: 'FUNC→MOD', sourceType: 'FUNC', ruleId: 'R-22' },
61
70
  ],
62
71
  // Interfaces carry a data contract: every FLOW has a SCHEMA (CR-GC-106 schema-before-code).
63
72
  // CR-SM-271: SC-04 entfiel — der Fall meldet als R-18 (Untergrenzen-Bein) am FLOW.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sigloch/graphcode-client",
3
- "version": "1.5.1",
3
+ "version": "1.6.0",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",