@company-semantics/contracts 0.9.0 → 0.10.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.9.0",
3
+ "version": "0.10.0",
4
4
  "private": false,
5
5
  "repository": {
6
6
  "type": "git",
@@ -126,6 +126,36 @@ export type GuardCheckFactory = (
126
126
  overrides?: Partial<GuardConfig>
127
127
  ) => GuardCheck;
128
128
 
129
+ // =============================================================================
130
+ // Guard Registry (Phase 3 Orchestration)
131
+ // =============================================================================
132
+
133
+ /**
134
+ * A check that can be run synchronously or asynchronously.
135
+ * Simpler signature for registry - no config injection (already bound).
136
+ */
137
+ export type BoundGuardCheck = () => Promise<CheckResult> | CheckResult;
138
+
139
+ /**
140
+ * Registry of checks grouped by tier.
141
+ * Each repo exports this from guard-entries.ts for universal orchestration.
142
+ *
143
+ * Design: Checks are already bound to their config at export time.
144
+ * The orchestrator just runs them and aggregates results.
145
+ */
146
+ export interface GuardCheckRegistry {
147
+ /** Tool name for JSON output and logging */
148
+ toolName: string;
149
+
150
+ /** Checks grouped by tier */
151
+ checks: {
152
+ structural?: BoundGuardCheck[];
153
+ behavioral?: BoundGuardCheck[];
154
+ invariants?: BoundGuardCheck[];
155
+ evolution?: BoundGuardCheck[];
156
+ };
157
+ }
158
+
129
159
  // =============================================================================
130
160
  // Default Values
131
161
  // =============================================================================
@@ -27,6 +27,8 @@ export type {
27
27
  GuardConfig,
28
28
  GuardCheck,
29
29
  GuardCheckFactory,
30
+ BoundGuardCheck,
31
+ GuardCheckRegistry,
30
32
  } from './config.js';
31
33
 
32
34
  // Config constants (type-level defaults)
package/src/index.ts CHANGED
@@ -53,6 +53,8 @@ export type {
53
53
  GuardConfig,
54
54
  GuardCheck,
55
55
  GuardCheckFactory,
56
+ BoundGuardCheck,
57
+ GuardCheckRegistry,
56
58
  } from './guards/index.js'
57
59
 
58
60
  export {