@company-semantics/contracts 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@company-semantics/contracts",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "private": false,
5
5
  "repository": {
6
6
  "type": "git",
package/system/diagram.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Diagram Specification Types (v0.4.0)
2
+ * Diagram Specification Types (v0.6.0)
3
3
  *
4
4
  * Tree-based semantic model for system diagrams.
5
5
  * These types define MEANING, not presentation.
@@ -8,6 +8,14 @@
8
8
  * - No render hints — renderers decide presentation independently
9
9
  * - parentId creates hierarchy (tree structure), not edges
10
10
  * - Graphs can be rendered as ASCII, SVG, canvas, or any future format
11
+ * - meta is opaque — engine interprets, contracts stay neutral
12
+ *
13
+ * v0.6.0 changes:
14
+ * - meta is now Record<string, unknown> (opaque, engine-interpreted)
15
+ * - Removed DiagramMeta and DiagramTiming (moved to engine)
16
+ *
17
+ * v0.5.0 changes:
18
+ * - Added 'feedback' and 'async' edge relations
11
19
  *
12
20
  * v0.4.0 changes:
13
21
  * - 'layer' kind renamed to 'group'
@@ -29,8 +37,10 @@ export type DiagramNodeKind = 'group' | 'feature' | 'artifact'
29
37
  /**
30
38
  * The semantic relationship between nodes.
31
39
  * Note: 'contains' removed in v0.4.0 — hierarchy now via parentId
40
+ *
41
+ * v0.5.0: Added 'feedback' and 'async' for richer flow semantics
32
42
  */
33
- export type DiagramEdgeRelation = 'flows_to' | 'depends_on'
43
+ export type DiagramEdgeRelation = 'flows_to' | 'depends_on' | 'feedback' | 'async'
34
44
 
35
45
  /**
36
46
  * A node in the diagram graph.
@@ -51,6 +61,8 @@ export interface DiagramNode {
51
61
  focusable?: boolean
52
62
  /** Feature maturity status (only for 'feature' nodes) */
53
63
  status?: FeatureStatus
64
+ /** Opaque metadata — engine interprets, contracts stay neutral */
65
+ meta?: Record<string, unknown>
54
66
  }
55
67
 
56
68
  /**
package/system/index.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * System Diagram Types (v0.4.0)
2
+ * System Diagram Types (v0.6.0)
3
3
  *
4
4
  * Schema for the Living ASCII System Diagram feature.
5
5
  * These types define the contract between:
@@ -11,6 +11,8 @@
11
11
  * - Client displays pre-rendered ASCII
12
12
  * - Snapshots pushed via CI automation
13
13
  *
14
+ * v0.6.0: meta is now opaque (Record<string, unknown>), engine interprets
15
+ *
14
16
  * @see docs/LIVING_ASCII_DIAGRAM_SPEC.md
15
17
  */
16
18