@intutic/shared-types 1.0.1

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 (131) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +56 -0
  3. package/dist/agentPool.d.ts +40 -0
  4. package/dist/agentPool.d.ts.map +1 -0
  5. package/dist/agentPool.js +3 -0
  6. package/dist/agentPool.js.map +1 -0
  7. package/dist/annotation.d.ts +150 -0
  8. package/dist/annotation.d.ts.map +1 -0
  9. package/dist/annotation.js +6 -0
  10. package/dist/annotation.js.map +1 -0
  11. package/dist/anomaly.d.ts +227 -0
  12. package/dist/anomaly.d.ts.map +1 -0
  13. package/dist/anomaly.js +35 -0
  14. package/dist/anomaly.js.map +1 -0
  15. package/dist/api-contracts.d.ts +176 -0
  16. package/dist/api-contracts.d.ts.map +1 -0
  17. package/dist/api-contracts.js +110 -0
  18. package/dist/api-contracts.js.map +1 -0
  19. package/dist/attenuation.d.ts +115 -0
  20. package/dist/attenuation.d.ts.map +1 -0
  21. package/dist/attenuation.js +26 -0
  22. package/dist/attenuation.js.map +1 -0
  23. package/dist/auth.d.ts +340 -0
  24. package/dist/auth.d.ts.map +1 -0
  25. package/dist/auth.js +87 -0
  26. package/dist/auth.js.map +1 -0
  27. package/dist/benchmark.d.ts +76 -0
  28. package/dist/benchmark.d.ts.map +1 -0
  29. package/dist/benchmark.js +8 -0
  30. package/dist/benchmark.js.map +1 -0
  31. package/dist/billing.d.ts +173 -0
  32. package/dist/billing.d.ts.map +1 -0
  33. package/dist/billing.js +28 -0
  34. package/dist/billing.js.map +1 -0
  35. package/dist/cdc.d.ts +73 -0
  36. package/dist/cdc.d.ts.map +1 -0
  37. package/dist/cdc.js +13 -0
  38. package/dist/cdc.js.map +1 -0
  39. package/dist/cfo.d.ts +66 -0
  40. package/dist/cfo.d.ts.map +1 -0
  41. package/dist/cfo.js +3 -0
  42. package/dist/cfo.js.map +1 -0
  43. package/dist/connectors.d.ts +23 -0
  44. package/dist/connectors.d.ts.map +1 -0
  45. package/dist/connectors.js +6 -0
  46. package/dist/connectors.js.map +1 -0
  47. package/dist/enums.d.ts +238 -0
  48. package/dist/enums.d.ts.map +1 -0
  49. package/dist/enums.js +243 -0
  50. package/dist/enums.js.map +1 -0
  51. package/dist/errors.d.ts +122 -0
  52. package/dist/errors.d.ts.map +1 -0
  53. package/dist/errors.js +135 -0
  54. package/dist/errors.js.map +1 -0
  55. package/dist/evaluator.d.ts +70 -0
  56. package/dist/evaluator.d.ts.map +1 -0
  57. package/dist/evaluator.js +8 -0
  58. package/dist/evaluator.js.map +1 -0
  59. package/dist/finops.d.ts +185 -0
  60. package/dist/finops.d.ts.map +1 -0
  61. package/dist/finops.js +14 -0
  62. package/dist/finops.js.map +1 -0
  63. package/dist/hindsight.d.ts +49 -0
  64. package/dist/hindsight.d.ts.map +1 -0
  65. package/dist/hindsight.js +3 -0
  66. package/dist/hindsight.js.map +1 -0
  67. package/dist/identity.d.ts +101 -0
  68. package/dist/identity.d.ts.map +1 -0
  69. package/dist/identity.js +29 -0
  70. package/dist/identity.js.map +1 -0
  71. package/dist/index.d.ts +40 -0
  72. package/dist/index.d.ts.map +1 -0
  73. package/dist/index.js +120 -0
  74. package/dist/index.js.map +1 -0
  75. package/dist/intelligence.d.ts +325 -0
  76. package/dist/intelligence.d.ts.map +1 -0
  77. package/dist/intelligence.js +28 -0
  78. package/dist/intelligence.js.map +1 -0
  79. package/dist/marketplace.d.ts +76 -0
  80. package/dist/marketplace.d.ts.map +1 -0
  81. package/dist/marketplace.js +16 -0
  82. package/dist/marketplace.js.map +1 -0
  83. package/dist/notifications.d.ts +206 -0
  84. package/dist/notifications.d.ts.map +1 -0
  85. package/dist/notifications.js +6 -0
  86. package/dist/notifications.js.map +1 -0
  87. package/dist/observability.d.ts +45 -0
  88. package/dist/observability.d.ts.map +1 -0
  89. package/dist/observability.js +10 -0
  90. package/dist/observability.js.map +1 -0
  91. package/dist/policy.d.ts +104 -0
  92. package/dist/policy.d.ts.map +1 -0
  93. package/dist/policy.js +14 -0
  94. package/dist/policy.js.map +1 -0
  95. package/dist/prompt.d.ts +99 -0
  96. package/dist/prompt.d.ts.map +1 -0
  97. package/dist/prompt.js +3 -0
  98. package/dist/prompt.js.map +1 -0
  99. package/dist/session.d.ts +62 -0
  100. package/dist/session.d.ts.map +1 -0
  101. package/dist/session.js +14 -0
  102. package/dist/session.js.map +1 -0
  103. package/dist/sop.d.ts +387 -0
  104. package/dist/sop.d.ts.map +1 -0
  105. package/dist/sop.js +44 -0
  106. package/dist/sop.js.map +1 -0
  107. package/dist/sync.d.ts +374 -0
  108. package/dist/sync.d.ts.map +1 -0
  109. package/dist/sync.js +56 -0
  110. package/dist/sync.js.map +1 -0
  111. package/dist/taskManagement.d.ts +141 -0
  112. package/dist/taskManagement.d.ts.map +1 -0
  113. package/dist/taskManagement.js +14 -0
  114. package/dist/taskManagement.js.map +1 -0
  115. package/dist/trial.d.ts +34 -0
  116. package/dist/trial.d.ts.map +1 -0
  117. package/dist/trial.js +6 -0
  118. package/dist/trial.js.map +1 -0
  119. package/dist/usage.d.ts +34 -0
  120. package/dist/usage.d.ts.map +1 -0
  121. package/dist/usage.js +6 -0
  122. package/dist/usage.js.map +1 -0
  123. package/dist/warehouse.d.ts +49 -0
  124. package/dist/warehouse.d.ts.map +1 -0
  125. package/dist/warehouse.js +8 -0
  126. package/dist/warehouse.js.map +1 -0
  127. package/dist/workspaceSettings.d.ts +116 -0
  128. package/dist/workspaceSettings.d.ts.map +1 -0
  129. package/dist/workspaceSettings.js +50 -0
  130. package/dist/workspaceSettings.js.map +1 -0
  131. package/package.json +24 -0
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Usage and Token Metrics Types — Token usage breakdown and event logs.
3
+ */
4
+ export interface UsageSummary {
5
+ workspaceId: string;
6
+ period: 'daily' | 'weekly' | 'monthly';
7
+ startDate: string;
8
+ endDate: string;
9
+ totalCostUsd: number;
10
+ totalRawCostUsd: number;
11
+ totalSavingsUsd: number;
12
+ totalInputTokens: number;
13
+ totalOutputTokens: number;
14
+ traceCount: number;
15
+ }
16
+ export interface UsageEvent {
17
+ trace_id: string;
18
+ timestamp: string | null;
19
+ model: string;
20
+ input_tokens: number;
21
+ output_tokens: number;
22
+ cost_usd: number;
23
+ enforcement_action: string;
24
+ token_utility: 'USEFUL' | 'WASTED' | null;
25
+ }
26
+ export interface ModelBreakdown {
27
+ requestedModel: string;
28
+ totalCostUsd: number;
29
+ totalRawCostUsd: number;
30
+ totalInputTokens: number;
31
+ totalOutputTokens: number;
32
+ traceCount: number;
33
+ }
34
+ //# sourceMappingURL=usage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage.d.ts","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAA;IACtC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,iBAAiB,EAAE,MAAM,CAAA;IACzB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,aAAa,EAAE,QAAQ,GAAG,QAAQ,GAAG,IAAI,CAAA;CAC1C;AAED,MAAM,WAAW,cAAc;IAC7B,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,iBAAiB,EAAE,MAAM,CAAA;IACzB,UAAU,EAAE,MAAM,CAAA;CACnB"}
package/dist/usage.js ADDED
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Usage and Token Metrics Types — Token usage breakdown and event logs.
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=usage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage.js","sourceRoot":"","sources":["../src/usage.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Data Warehouse Export Types
3
+ *
4
+ * WS-4E / E4 Data Warehouse Export
5
+ */
6
+ export interface CreateTargetInput {
7
+ provider: 'gcs' | 's3';
8
+ bucketName: string;
9
+ pathPrefix?: string;
10
+ credentials: string;
11
+ s3Region?: string;
12
+ defaultFormat?: 'csv' | 'parquet' | 'ndjson';
13
+ }
14
+ export interface WarehouseTarget {
15
+ targetId: string;
16
+ provider: 'gcs' | 's3';
17
+ bucketName: string;
18
+ pathPrefix: string;
19
+ s3Region?: string | null;
20
+ defaultFormat: 'csv' | 'parquet' | 'ndjson';
21
+ isActive: boolean;
22
+ createdAt: string;
23
+ }
24
+ export interface TriggerExportInput {
25
+ targetId: string;
26
+ format?: 'csv' | 'parquet' | 'ndjson';
27
+ rangeFrom?: string;
28
+ rangeTo?: string;
29
+ }
30
+ export interface WarehouseJob {
31
+ jobId: string;
32
+ workspaceId: string;
33
+ targetId: string;
34
+ status: 'pending' | 'running' | 'completed' | 'failed';
35
+ format: 'csv' | 'parquet' | 'ndjson';
36
+ triggeredBy: string;
37
+ triggeredByUser?: string | null;
38
+ rangeFrom?: string | null;
39
+ rangeTo?: string | null;
40
+ startedAt?: string | null;
41
+ completedAt?: string | null;
42
+ errorMessage?: string | null;
43
+ recordsExported?: number | null;
44
+ bytesExported?: string | null;
45
+ destinationPath?: string | null;
46
+ createdAt: string;
47
+ updatedAt: string;
48
+ }
49
+ //# sourceMappingURL=warehouse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warehouse.d.ts","sourceRoot":"","sources":["../src/warehouse.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,aAAa,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,QAAQ,CAAA;CAC7C;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,aAAa,EAAE,KAAK,GAAG,SAAS,GAAG,QAAQ,CAAA;IAC3C,QAAQ,EAAE,OAAO,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,KAAK,GAAG,SAAS,GAAG,QAAQ,CAAA;IACrC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAA;IACtD,MAAM,EAAE,KAAK,GAAG,SAAS,GAAG,QAAQ,CAAA;IACpC,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;CAClB"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ /**
3
+ * Data Warehouse Export Types
4
+ *
5
+ * WS-4E / E4 Data Warehouse Export
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ //# sourceMappingURL=warehouse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warehouse.js","sourceRoot":"","sources":["../src/warehouse.ts"],"names":[],"mappings":";AAAA;;;;GAIG"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * workspaceSettings.ts — Per-workspace MCP governance configuration.
3
+ *
4
+ * Stored as a JSONB column in `workspaces.settings`. Read by the sync-daemon
5
+ * on every poll cycle and propagated to `~/.intutic/env/runtime.env` so that
6
+ * proxy processes and hook scripts pick up changes without restarting.
7
+ *
8
+ * WS-5 — Q1 (fail behavior), Q2 (proxy mode), Q3 (bypass enforcement)
9
+ * TD-151, TD-153, TD-154
10
+ *
11
+ * @module
12
+ */
13
+ import type { McpProxyFailBehavior, McpProxyMode, BypassEnforcementTier } from './enums.js';
14
+ export type { McpProxyFailBehavior, McpProxyMode, BypassEnforcementTier };
15
+ /**
16
+ * Per-workspace MCP governance settings.
17
+ *
18
+ * All fields are optional on the wire — missing fields are filled in from
19
+ * DEFAULT_WORKSPACE_SETTINGS by the control-plane GET handler and the
20
+ * sync-daemon before writing runtime.env.
21
+ */
22
+ export interface WorkspaceSettings {
23
+ /**
24
+ * What the MCP governance proxy does when the Intutic control plane is
25
+ * unreachable during a tool call interception attempt.
26
+ *
27
+ * - `'open'` (default): pass the tool call through + emit a warning event
28
+ * - `'closed'`: block the tool call with a user-visible MCP error message:
29
+ * "Governance check failed — Intutic control plane unreachable.
30
+ * Tool call blocked by workspace policy."
31
+ *
32
+ * Applies to 13/17 harnesses (those with MCP proxy injection).
33
+ * See TD-151 for the 4 harnesses this does not reach.
34
+ */
35
+ mcpProxyFailBehavior: McpProxyFailBehavior;
36
+ /**
37
+ * MCP proxy deployment model.
38
+ *
39
+ * - `'per-session'` (default, Phase 4): a new proxy process is spawned per
40
+ * MCP connection. Policy is fetched from control plane at startup with a
41
+ * 60s in-process TTL.
42
+ * - `'daemon'` (Phase 5, stored but not yet active): a long-lived proxy
43
+ * daemon shares policy cache across all MCP sessions. Requires macOS
44
+ * notarization. See TD-153.
45
+ *
46
+ * In Phase 4, setting this to `'daemon'` is accepted and stored but the
47
+ * sync-daemon will log a warning and continue in per-session mode.
48
+ */
49
+ mcpProxyMode: McpProxyMode;
50
+ /**
51
+ * How aggressively the sync-daemon defends harness config files against
52
+ * manual edits (bypass attempts).
53
+ *
54
+ * - `'rewrite'` (default): chokidar drift watcher detects edits within ~1s
55
+ * and immediately rewrites the config. Also fires a `config_tamper`
56
+ * governance incident.
57
+ * - `'immutable'` (opt-in, macOS only): after writing, sets `chflags uchg`
58
+ * on the config file. Direct edits fail immediately. The flag is cleared
59
+ * before the next sync write. See TD-154 for UX risk.
60
+ * - `'alert-only'`: drift triggers a governance incident but does NOT rewrite
61
+ * the config. For teams that want audit logs without enforced reversion.
62
+ */
63
+ bypassEnforcementTier: BypassEnforcementTier;
64
+ /** Feature flags for platform capabilities (Phase 5+) */
65
+ featureFlags?: {
66
+ ff_bandit_routing?: boolean;
67
+ ff_response_cache_exact?: boolean;
68
+ ff_response_cache_semantic?: boolean;
69
+ /** Phase 5 — MetaClaw prompt evolution engine (Enterprise only) */
70
+ ff_metaclaw_evolution?: boolean;
71
+ /** Phase 6 — Network controls MDM enforcement */
72
+ ff_network_controls?: boolean;
73
+ /** Phase 6 — Multi-region residency enforcement */
74
+ ff_multi_region?: boolean;
75
+ };
76
+ /**
77
+ * TD-126 — Autonomous Skill Transfer
78
+ *
79
+ * When `true`, this workspace participates in the cross-workspace SOP
80
+ * propagation system:
81
+ * - High-performing validated SOPs (Gödel score ≥ 0.85) from this workspace
82
+ * may be cloned to other opt-in workspaces as DRAFT SOPs.
83
+ * - This workspace will receive propagated SOPs from other opt-in workspaces
84
+ * provided no structurally similar SOP already exists (Jaccard ≥ 0.70).
85
+ *
86
+ * Defaults to `false` (opt-in only).
87
+ */
88
+ enableAutonomousSkillTransfer?: boolean;
89
+ /**
90
+ * Whether to automatically delete local skills/rules segments that fail
91
+ * security audits (leakage of secrets or unsafe wildcard command patterns).
92
+ * Defaults to `false`.
93
+ */
94
+ enableLocalSkillAuditDelete?: boolean;
95
+ /**
96
+ * Configurable trigger keywords for classifying bandit task types.
97
+ */
98
+ banditKeywords?: {
99
+ testing?: string[];
100
+ deployment?: string[];
101
+ review?: string[];
102
+ debugging?: string[];
103
+ };
104
+ }
105
+ /**
106
+ * Default workspace settings.
107
+ * Applied when a workspace has no explicit settings (new workspaces)
108
+ * or when a setting key is missing from the stored JSONB.
109
+ */
110
+ export declare const DEFAULT_WORKSPACE_SETTINGS: WorkspaceSettings;
111
+ /**
112
+ * Merge partial stored settings with defaults.
113
+ * Ensures callers always receive a complete WorkspaceSettings object.
114
+ */
115
+ export declare function resolveWorkspaceSettings(stored: Partial<WorkspaceSettings> | null | undefined): WorkspaceSettings;
116
+ //# sourceMappingURL=workspaceSettings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspaceSettings.d.ts","sourceRoot":"","sources":["../src/workspaceSettings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAG3F,YAAY,EAAE,oBAAoB,EAAE,YAAY,EAAE,qBAAqB,EAAE,CAAA;AAEzE;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;;;;;;;OAWG;IACH,oBAAoB,EAAE,oBAAoB,CAAA;IAE1C;;;;;;;;;;;;OAYG;IACH,YAAY,EAAE,YAAY,CAAA;IAE1B;;;;;;;;;;;;OAYG;IACH,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,yDAAyD;IACzD,YAAY,CAAC,EAAE;QACb,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,uBAAuB,CAAC,EAAE,OAAO,CAAA;QACjC,0BAA0B,CAAC,EAAE,OAAO,CAAA;QACpC,mEAAmE;QACnE,qBAAqB,CAAC,EAAE,OAAO,CAAA;QAC/B,iDAAiD;QACjD,mBAAmB,CAAC,EAAE,OAAO,CAAA;QAC7B,mDAAmD;QACnD,eAAe,CAAC,EAAE,OAAO,CAAA;KAC1B,CAAA;IAED;;;;;;;;;;;OAWG;IACH,6BAA6B,CAAC,EAAE,OAAO,CAAA;IAEvC;;;;OAIG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAA;IAErC;;OAEG;IACH,cAAc,CAAC,EAAE;QACf,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;QAClB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;QACrB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;QACjB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;KACrB,CAAA;CACF;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,EAAE,iBAiBxC,CAAA;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,IAAI,GAAG,SAAS,GACpD,iBAAiB,CAKnB"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ /**
3
+ * workspaceSettings.ts — Per-workspace MCP governance configuration.
4
+ *
5
+ * Stored as a JSONB column in `workspaces.settings`. Read by the sync-daemon
6
+ * on every poll cycle and propagated to `~/.intutic/env/runtime.env` so that
7
+ * proxy processes and hook scripts pick up changes without restarting.
8
+ *
9
+ * WS-5 — Q1 (fail behavior), Q2 (proxy mode), Q3 (bypass enforcement)
10
+ * TD-151, TD-153, TD-154
11
+ *
12
+ * @module
13
+ */
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.DEFAULT_WORKSPACE_SETTINGS = void 0;
16
+ exports.resolveWorkspaceSettings = resolveWorkspaceSettings;
17
+ /**
18
+ * Default workspace settings.
19
+ * Applied when a workspace has no explicit settings (new workspaces)
20
+ * or when a setting key is missing from the stored JSONB.
21
+ */
22
+ exports.DEFAULT_WORKSPACE_SETTINGS = {
23
+ mcpProxyFailBehavior: 'open',
24
+ mcpProxyMode: 'per-session',
25
+ bypassEnforcementTier: 'rewrite',
26
+ featureFlags: {
27
+ ff_bandit_routing: false,
28
+ ff_response_cache_exact: false,
29
+ ff_response_cache_semantic: false,
30
+ },
31
+ enableAutonomousSkillTransfer: false,
32
+ enableLocalSkillAuditDelete: false,
33
+ banditKeywords: {
34
+ testing: ['test', 'spec', 'assert', 'vitest', 'jest', 'unittest'],
35
+ deployment: ['deploy', 'release', 'kubernetes', 'docker', 'gke', 'pipeline', 'ci/cd'],
36
+ review: ['review', 'audit', 'lint', 'eslint', 'pr'],
37
+ debugging: ['fix', 'bug', 'issue', 'error', 'crash', 'debug'],
38
+ },
39
+ };
40
+ /**
41
+ * Merge partial stored settings with defaults.
42
+ * Ensures callers always receive a complete WorkspaceSettings object.
43
+ */
44
+ function resolveWorkspaceSettings(stored) {
45
+ return {
46
+ ...exports.DEFAULT_WORKSPACE_SETTINGS,
47
+ ...(stored ?? {}),
48
+ };
49
+ }
50
+ //# sourceMappingURL=workspaceSettings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspaceSettings.js","sourceRoot":"","sources":["../src/workspaceSettings.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;AAmIH,4DAOC;AAnCD;;;;GAIG;AACU,QAAA,0BAA0B,GAAsB;IAC3D,oBAAoB,EAAE,MAAM;IAC5B,YAAY,EAAU,aAAa;IACnC,qBAAqB,EAAE,SAAS;IAChC,YAAY,EAAE;QACZ,iBAAiB,EAAE,KAAK;QACxB,uBAAuB,EAAE,KAAK;QAC9B,0BAA0B,EAAE,KAAK;KAClC;IACD,6BAA6B,EAAE,KAAK;IACpC,2BAA2B,EAAE,KAAK;IAClC,cAAc,EAAE;QACd,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC;QACjE,UAAU,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC;QACrF,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC;QACnD,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;KAC9D;CACF,CAAA;AAED;;;GAGG;AACH,SAAgB,wBAAwB,CACtC,MAAqD;IAErD,OAAO;QACL,GAAG,kCAA0B;QAC7B,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;KAClB,CAAA;AACH,CAAC"}
package/package.json ADDED
@@ -0,0 +1,24 @@
1
+ {
2
+ "name": "@intutic/shared-types",
3
+ "version": "1.0.1",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
7
+ "main": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "files": [
10
+ "./dist"
11
+ ],
12
+ "dependencies": {
13
+ "zod": "^3.23"
14
+ },
15
+ "devDependencies": {
16
+ "typescript": "^5.5",
17
+ "vitest": "^3"
18
+ },
19
+ "scripts": {
20
+ "build": "tsc",
21
+ "test": "vitest run --passWithNoTests",
22
+ "typecheck": "tsc --noEmit"
23
+ }
24
+ }