@objectstack/spec 2.0.5 → 2.0.7

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 (293) hide show
  1. package/dist/ai/index.d.mts +1 -1
  2. package/dist/ai/index.d.ts +1 -1
  3. package/dist/ai/index.js +230 -3
  4. package/dist/ai/index.js.map +1 -1
  5. package/dist/ai/index.mjs +218 -3
  6. package/dist/ai/index.mjs.map +1 -1
  7. package/dist/api/index.d.mts +2 -2
  8. package/dist/api/index.d.ts +2 -2
  9. package/dist/api/index.js +3409 -2841
  10. package/dist/api/index.js.map +1 -1
  11. package/dist/api/index.mjs +3386 -2841
  12. package/dist/api/index.mjs.map +1 -1
  13. package/dist/automation/index.d.mts +1 -1
  14. package/dist/automation/index.d.ts +1 -1
  15. package/dist/contracts/index.d.mts +2 -2
  16. package/dist/contracts/index.d.ts +2 -2
  17. package/dist/contracts/index.js.map +1 -1
  18. package/dist/data/index.d.mts +2 -2
  19. package/dist/data/index.d.ts +2 -2
  20. package/dist/data/index.js +58 -1
  21. package/dist/data/index.js.map +1 -1
  22. package/dist/data/index.mjs +58 -1
  23. package/dist/data/index.mjs.map +1 -1
  24. package/dist/{driver.zod-E3C6n0W-.d.ts → driver.zod-B3Q0oLlF.d.ts} +1 -1
  25. package/dist/{driver.zod-DnOPgUGi.d.mts → driver.zod-Bf2z72WQ.d.mts} +1 -1
  26. package/dist/{index-DyawwLFZ.d.ts → index-B3C8s_DZ.d.ts} +307 -29
  27. package/dist/{index-DTCkpGMm.d.mts → index-BliYpI46.d.mts} +879 -52
  28. package/dist/{index-BbtSaxHm.d.ts → index-BpE_xfkc.d.ts} +3289 -229
  29. package/dist/{index-E1mP_eoE.d.mts → index-C3cFLYII.d.mts} +307 -29
  30. package/dist/{index-BpP0MwlW.d.ts → index-CXtgLAue.d.ts} +879 -52
  31. package/dist/{index-D-tf4nDV.d.mts → index-CYbdd-mL.d.mts} +27 -1
  32. package/dist/index-CeUUI-ym.d.mts +2102 -0
  33. package/dist/{index-BPhGHW32.d.ts → index-CfvdYFyf.d.ts} +27 -1
  34. package/dist/{index-CDN6TRx9.d.mts → index-ClHj1Tbo.d.mts} +71 -2
  35. package/dist/{index-CDN6TRx9.d.ts → index-ClHj1Tbo.d.ts} +71 -2
  36. package/dist/index-CmY8tgpL.d.ts +2102 -0
  37. package/dist/{index-DRCh2NTZ.d.mts → index-CqDMk0T6.d.mts} +3289 -229
  38. package/dist/{index-d9wYlv-g.d.ts → index-DNKiU_-x.d.mts} +684 -18
  39. package/dist/{index-d9wYlv-g.d.mts → index-DNKiU_-x.d.ts} +684 -18
  40. package/dist/{index-CisfSmuF.d.ts → index-Dm4UfDKG.d.ts} +451 -19
  41. package/dist/index-KhvhiesR.d.mts +6902 -0
  42. package/dist/{index-BV0xBoer.d.mts → index-Onf8hbkX.d.mts} +451 -19
  43. package/dist/index-OqCqQSaH.d.ts +6902 -0
  44. package/dist/index.d.mts +2519 -222
  45. package/dist/index.d.ts +2519 -222
  46. package/dist/index.js +9957 -8069
  47. package/dist/index.js.map +1 -1
  48. package/dist/index.mjs +9957 -8069
  49. package/dist/index.mjs.map +1 -1
  50. package/dist/integration/index.d.mts +1 -1
  51. package/dist/integration/index.d.ts +1 -1
  52. package/dist/integration/index.js +67 -0
  53. package/dist/integration/index.js.map +1 -1
  54. package/dist/integration/index.mjs +61 -0
  55. package/dist/integration/index.mjs.map +1 -1
  56. package/dist/kernel/index.d.mts +2 -2
  57. package/dist/kernel/index.d.ts +2 -2
  58. package/dist/kernel/index.js +1698 -1474
  59. package/dist/kernel/index.js.map +1 -1
  60. package/dist/kernel/index.mjs +1690 -1474
  61. package/dist/kernel/index.mjs.map +1 -1
  62. package/dist/{package-registry.zod-CbS9FKeH.d.mts → package-registry.zod-BJQSiICj.d.mts} +78 -43
  63. package/dist/{package-registry.zod-CbS9FKeH.d.ts → package-registry.zod-BJQSiICj.d.ts} +78 -43
  64. package/dist/security/index.d.mts +1 -1
  65. package/dist/security/index.d.ts +1 -1
  66. package/dist/security/index.js +47 -1
  67. package/dist/security/index.js.map +1 -1
  68. package/dist/security/index.mjs +45 -1
  69. package/dist/security/index.mjs.map +1 -1
  70. package/dist/system/index.d.mts +1 -1
  71. package/dist/system/index.d.ts +1 -1
  72. package/dist/system/index.js +2189 -1821
  73. package/dist/system/index.js.map +1 -1
  74. package/dist/system/index.mjs +2168 -1821
  75. package/dist/system/index.mjs.map +1 -1
  76. package/dist/ui/index.d.mts +1 -1
  77. package/dist/ui/index.d.ts +1 -1
  78. package/dist/ui/index.js +1414 -767
  79. package/dist/ui/index.js.map +1 -1
  80. package/dist/ui/index.mjs +1354 -767
  81. package/dist/ui/index.mjs.map +1 -1
  82. package/json-schema/ai/Agent.json +203 -0
  83. package/json-schema/ai/AgentCommunicationProtocol.json +9 -0
  84. package/json-schema/ai/AgentGroupMember.json +45 -0
  85. package/json-schema/ai/AgentGroupRole.json +10 -0
  86. package/json-schema/ai/DevOpsAgent.json +203 -0
  87. package/json-schema/ai/MCPClientConfig.json +168 -0
  88. package/json-schema/ai/MCPRootEntry.json +23 -0
  89. package/json-schema/ai/MCPRootsConfig.json +49 -0
  90. package/json-schema/ai/MCPSamplingConfig.json +46 -0
  91. package/json-schema/ai/MCPServerConfig.json +120 -0
  92. package/json-schema/ai/MCPStreamingConfig.json +38 -0
  93. package/json-schema/ai/MCPToolApproval.json +39 -0
  94. package/json-schema/ai/MultiAgentGroup.json +137 -0
  95. package/json-schema/ai/StructuredOutputConfig.json +75 -0
  96. package/json-schema/ai/StructuredOutputFormat.json +12 -0
  97. package/json-schema/ai/TransformPipelineStep.json +11 -0
  98. package/json-schema/api/AppDefinitionResponse.json +285 -7
  99. package/json-schema/api/BasePresence.json +40 -0
  100. package/json-schema/api/BatchLoadingStrategy.json +40 -0
  101. package/json-schema/api/Callback.json +39 -0
  102. package/json-schema/api/DataLoaderConfig.json +55 -0
  103. package/json-schema/api/DisablePackageResponse.json +26 -0
  104. package/json-schema/api/Discovery.json +4 -62
  105. package/json-schema/api/EnablePackageResponse.json +26 -0
  106. package/json-schema/api/FederationEntity.json +110 -0
  107. package/json-schema/api/FederationEntityKey.json +20 -0
  108. package/json-schema/api/FederationExternalField.json +18 -0
  109. package/json-schema/api/FederationGateway.json +327 -0
  110. package/json-schema/api/FederationProvides.json +19 -0
  111. package/json-schema/api/FederationRequires.json +19 -0
  112. package/json-schema/api/GetDiscoveryResponse.json +1 -60
  113. package/json-schema/api/GetPackageResponse.json +26 -0
  114. package/json-schema/api/GraphQLConfig.json +327 -0
  115. package/json-schema/api/GraphQLQueryAdapter.json +84 -0
  116. package/json-schema/api/InstallPackageRequest.json +26 -0
  117. package/json-schema/api/InstallPackageResponse.json +26 -0
  118. package/json-schema/api/ListPackagesResponse.json +26 -0
  119. package/json-schema/api/ODataQueryAdapter.json +66 -0
  120. package/json-schema/api/OpenApi31Extensions.json +139 -0
  121. package/json-schema/api/OperatorMapping.json +26 -0
  122. package/json-schema/api/PresenceStatus.json +10 -0
  123. package/json-schema/api/QueryAdapterConfig.json +272 -0
  124. package/json-schema/api/QueryAdapterTarget.json +9 -0
  125. package/json-schema/api/QueryOptimizationConfig.json +126 -0
  126. package/json-schema/api/RealtimeRecordAction.json +9 -0
  127. package/json-schema/api/RestQueryAdapter.json +86 -0
  128. package/json-schema/api/RestServerConfig.json +139 -0
  129. package/json-schema/api/SubgraphConfig.json +183 -0
  130. package/json-schema/api/WebhookConfig.json +129 -0
  131. package/json-schema/api/WebhookEvent.json +64 -0
  132. package/json-schema/data/ExternalLookup.json +128 -0
  133. package/json-schema/identity/SCIMBulkOperation.json +41 -0
  134. package/json-schema/identity/SCIMBulkRequest.json +73 -0
  135. package/json-schema/identity/SCIMBulkResponse.json +61 -0
  136. package/json-schema/identity/SCIMBulkResponseOperation.json +36 -0
  137. package/json-schema/integration/CircuitBreakerConfig.json +49 -0
  138. package/json-schema/integration/Connector.json +223 -0
  139. package/json-schema/integration/ConnectorHealth.json +113 -0
  140. package/json-schema/integration/DatabaseConnector.json +223 -0
  141. package/json-schema/integration/ErrorCategory.json +15 -0
  142. package/json-schema/integration/ErrorMappingConfig.json +112 -0
  143. package/json-schema/integration/ErrorMappingRule.json +66 -0
  144. package/json-schema/integration/FileStorageConnector.json +223 -0
  145. package/json-schema/integration/GitHubConnector.json +223 -0
  146. package/json-schema/integration/HealthCheckConfig.json +58 -0
  147. package/json-schema/integration/MessageQueueConnector.json +223 -0
  148. package/json-schema/integration/SaasConnector.json +223 -0
  149. package/json-schema/integration/VercelConnector.json +223 -0
  150. package/json-schema/kernel/CLICommandContribution.json +23 -0
  151. package/json-schema/kernel/CLIExtensionExport.json +22 -0
  152. package/json-schema/kernel/DevFixtureConfig.json +35 -0
  153. package/json-schema/kernel/DevPluginConfig.json +170 -0
  154. package/json-schema/kernel/DevPluginPreset.json +10 -0
  155. package/json-schema/kernel/DevServiceOverride.json +41 -0
  156. package/json-schema/kernel/DevToolsConfig.json +45 -0
  157. package/json-schema/kernel/DisablePackageResponse.json +26 -0
  158. package/json-schema/kernel/EnablePackageResponse.json +26 -0
  159. package/json-schema/kernel/GetPackageResponse.json +26 -0
  160. package/json-schema/kernel/InstallPackageRequest.json +26 -0
  161. package/json-schema/kernel/InstallPackageResponse.json +26 -0
  162. package/json-schema/kernel/InstalledPackage.json +26 -0
  163. package/json-schema/kernel/ListPackagesResponse.json +26 -0
  164. package/json-schema/kernel/Manifest.json +26 -0
  165. package/json-schema/kernel/MetadataFallbackStrategy.json +9 -0
  166. package/json-schema/kernel/MetadataLoaderContract.json +7 -0
  167. package/json-schema/kernel/MetadataManagerConfig.json +21 -0
  168. package/json-schema/security/RLSAuditConfig.json +62 -0
  169. package/json-schema/security/RLSAuditEvent.json +66 -0
  170. package/json-schema/security/RLSConfig.json +62 -0
  171. package/json-schema/system/AuthConfig.json +83 -0
  172. package/json-schema/system/BackupConfig.json +148 -0
  173. package/json-schema/system/BackupRetention.json +27 -0
  174. package/json-schema/system/BackupStrategy.json +10 -0
  175. package/json-schema/system/CacheAvalanchePrevention.json +77 -0
  176. package/json-schema/system/CacheConsistency.json +11 -0
  177. package/json-schema/system/CacheWarmup.json +44 -0
  178. package/json-schema/system/ComplianceAuditRequirement.json +43 -0
  179. package/json-schema/system/ComplianceEncryptionRequirement.json +58 -0
  180. package/json-schema/system/DataClassificationPolicy.json +46 -0
  181. package/json-schema/system/DisasterRecoveryPlan.json +414 -0
  182. package/json-schema/system/DistributedCacheConfig.json +269 -0
  183. package/json-schema/system/FailoverConfig.json +102 -0
  184. package/json-schema/system/FailoverMode.json +11 -0
  185. package/json-schema/system/MaskingVisibilityRule.json +56 -0
  186. package/json-schema/system/MetadataFallbackStrategy.json +9 -0
  187. package/json-schema/system/MetadataLoaderContract.json +9 -1
  188. package/json-schema/system/MetadataManagerConfig.json +52 -11
  189. package/json-schema/system/MetadataRecord.json +32 -1
  190. package/json-schema/system/MetadataSource.json +10 -0
  191. package/json-schema/system/MutualTLSConfig.json +83 -0
  192. package/json-schema/system/RPO.json +27 -0
  193. package/json-schema/system/RTO.json +27 -0
  194. package/json-schema/system/SecurityContextConfig.json +288 -0
  195. package/json-schema/system/SecurityEventCorrelation.json +40 -0
  196. package/json-schema/ui/Action.json +200 -5
  197. package/json-schema/ui/ActionParam.json +62 -2
  198. package/json-schema/ui/AnimationTrigger.json +14 -0
  199. package/json-schema/ui/App.json +285 -7
  200. package/json-schema/ui/AriaProps.json +49 -0
  201. package/json-schema/ui/BreakpointColumnMap.json +38 -0
  202. package/json-schema/ui/BreakpointName.json +12 -0
  203. package/json-schema/ui/BreakpointOrderMap.json +26 -0
  204. package/json-schema/ui/ChartAnnotation.json +31 -1
  205. package/json-schema/ui/ChartAxis.json +30 -1
  206. package/json-schema/ui/ChartConfig.json +259 -7
  207. package/json-schema/ui/ChartSeries.json +30 -1
  208. package/json-schema/ui/ColumnSummary.json +18 -0
  209. package/json-schema/ui/ComponentAnimation.json +246 -0
  210. package/json-schema/ui/ConflictResolution.json +11 -0
  211. package/json-schema/ui/Dashboard.json +627 -11
  212. package/json-schema/ui/DashboardNavItem.json +30 -1
  213. package/json-schema/ui/DashboardWidget.json +433 -8
  214. package/json-schema/ui/DateFormat.json +36 -0
  215. package/json-schema/ui/DensityMode.json +9 -0
  216. package/json-schema/ui/DndConfig.json +306 -0
  217. package/json-schema/ui/DragConstraint.json +44 -0
  218. package/json-schema/ui/DragHandle.json +10 -0
  219. package/json-schema/ui/DragItem.json +160 -0
  220. package/json-schema/ui/DropEffect.json +11 -0
  221. package/json-schema/ui/DropZone.json +114 -0
  222. package/json-schema/ui/EasingFunction.json +13 -0
  223. package/json-schema/ui/EvictionPolicy.json +10 -0
  224. package/json-schema/ui/FocusManagement.json +69 -0
  225. package/json-schema/ui/FocusTrapConfig.json +32 -0
  226. package/json-schema/ui/FormField.json +90 -3
  227. package/json-schema/ui/GalleryConfig.json +46 -0
  228. package/json-schema/ui/GestureConfig.json +128 -0
  229. package/json-schema/ui/GestureType.json +14 -0
  230. package/json-schema/ui/GroupNavItem.json +30 -1
  231. package/json-schema/ui/GroupingConfig.json +45 -0
  232. package/json-schema/ui/GroupingField.json +30 -0
  233. package/json-schema/ui/I18nLabel.json +34 -0
  234. package/json-schema/ui/I18nObject.json +26 -0
  235. package/json-schema/ui/KeyboardNavigationConfig.json +194 -0
  236. package/json-schema/ui/KeyboardShortcut.json +66 -0
  237. package/json-schema/ui/ListColumn.json +55 -1
  238. package/json-schema/ui/ListView.json +435 -4
  239. package/json-schema/ui/LocaleConfig.json +108 -0
  240. package/json-schema/ui/LongPressGestureConfig.json +20 -0
  241. package/json-schema/ui/MotionConfig.json +405 -0
  242. package/json-schema/ui/NavigationItem.json +150 -5
  243. package/json-schema/ui/Notification.json +232 -0
  244. package/json-schema/ui/NotificationAction.json +60 -0
  245. package/json-schema/ui/NotificationConfig.json +52 -0
  246. package/json-schema/ui/NotificationPosition.json +13 -0
  247. package/json-schema/ui/NotificationSeverity.json +11 -0
  248. package/json-schema/ui/NotificationType.json +12 -0
  249. package/json-schema/ui/NumberFormat.json +42 -0
  250. package/json-schema/ui/ObjectNavItem.json +30 -1
  251. package/json-schema/ui/OfflineCacheConfig.json +40 -0
  252. package/json-schema/ui/OfflineConfig.json +157 -0
  253. package/json-schema/ui/OfflineStrategy.json +12 -0
  254. package/json-schema/ui/Page.json +285 -3
  255. package/json-schema/ui/PageCardProps.json +79 -1
  256. package/json-schema/ui/PageComponent.json +175 -1
  257. package/json-schema/ui/PageHeaderProps.json +108 -2
  258. package/json-schema/ui/PageNavItem.json +30 -1
  259. package/json-schema/ui/PageRegion.json +175 -1
  260. package/json-schema/ui/PageTabsProps.json +79 -1
  261. package/json-schema/ui/PageTransition.json +53 -0
  262. package/json-schema/ui/PerformanceConfig.json +57 -0
  263. package/json-schema/ui/PersistStorage.json +10 -0
  264. package/json-schema/ui/PinchGestureConfig.json +16 -0
  265. package/json-schema/ui/PluralRule.json +40 -0
  266. package/json-schema/ui/Report.json +490 -8
  267. package/json-schema/ui/ReportChart.json +199 -5
  268. package/json-schema/ui/ReportColumn.json +126 -1
  269. package/json-schema/ui/ResponsiveConfig.json +97 -0
  270. package/json-schema/ui/RowColorConfig.json +25 -0
  271. package/json-schema/ui/RowHeight.json +12 -0
  272. package/json-schema/ui/SwipeDirection.json +10 -0
  273. package/json-schema/ui/SwipeGestureConfig.json +32 -0
  274. package/json-schema/ui/SyncConfig.json +47 -0
  275. package/json-schema/ui/Theme.json +137 -0
  276. package/json-schema/ui/TimelineConfig.json +46 -0
  277. package/json-schema/ui/TouchInteraction.json +232 -0
  278. package/json-schema/ui/TouchTargetConfig.json +49 -0
  279. package/json-schema/ui/TransitionConfig.json +47 -0
  280. package/json-schema/ui/TransitionPreset.json +16 -0
  281. package/json-schema/ui/UrlNavItem.json +30 -1
  282. package/json-schema/ui/ViewSharing.json +24 -0
  283. package/json-schema/ui/WcagContrastLevel.json +8 -0
  284. package/json-schema/ui/WidgetEvent.json +60 -2
  285. package/json-schema/ui/WidgetManifest.json +284 -6
  286. package/json-schema/ui/WidgetProperty.json +60 -2
  287. package/package.json +1 -1
  288. package/dist/index-C6p-2KXV.d.ts +0 -767
  289. package/dist/index-CVnGe2b8.d.mts +0 -767
  290. package/dist/index-CZjkpp75.d.mts +0 -3867
  291. package/dist/index-CgkjUheS.d.ts +0 -3867
  292. package/dist/{index-B08s7rEU.d.mts → index-DmhxH5jy.d.mts} +8 -8
  293. package/dist/{index-DqnBqATx.d.ts → index-y5JJvyML.d.ts} +8 -8
@@ -0,0 +1,27 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "value": {
6
+ "type": "number",
7
+ "minimum": 0,
8
+ "description": "RPO value"
9
+ },
10
+ "unit": {
11
+ "default": "minutes",
12
+ "description": "RPO time unit",
13
+ "type": "string",
14
+ "enum": [
15
+ "seconds",
16
+ "minutes",
17
+ "hours"
18
+ ]
19
+ }
20
+ },
21
+ "required": [
22
+ "value",
23
+ "unit"
24
+ ],
25
+ "additionalProperties": false,
26
+ "description": "Recovery Point Objective (maximum acceptable data loss)"
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "value": {
6
+ "type": "number",
7
+ "minimum": 0,
8
+ "description": "RTO value"
9
+ },
10
+ "unit": {
11
+ "default": "minutes",
12
+ "description": "RTO time unit",
13
+ "type": "string",
14
+ "enum": [
15
+ "seconds",
16
+ "minutes",
17
+ "hours"
18
+ ]
19
+ }
20
+ },
21
+ "required": [
22
+ "value",
23
+ "unit"
24
+ ],
25
+ "additionalProperties": false,
26
+ "description": "Recovery Time Objective (maximum acceptable downtime)"
27
+ }
@@ -0,0 +1,288 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "enabled": {
6
+ "default": true,
7
+ "description": "Enable unified security context governance",
8
+ "type": "boolean"
9
+ },
10
+ "complianceAuditRequirements": {
11
+ "description": "Compliance-driven audit event requirements",
12
+ "type": "array",
13
+ "items": {
14
+ "type": "object",
15
+ "properties": {
16
+ "framework": {
17
+ "type": "string",
18
+ "enum": [
19
+ "gdpr",
20
+ "hipaa",
21
+ "sox",
22
+ "pci_dss",
23
+ "ccpa",
24
+ "iso27001"
25
+ ],
26
+ "description": "Compliance framework identifier"
27
+ },
28
+ "requiredEvents": {
29
+ "type": "array",
30
+ "items": {
31
+ "type": "string"
32
+ },
33
+ "description": "Audit event types required by this framework (e.g., \"data.delete\", \"auth.login\")"
34
+ },
35
+ "retentionDays": {
36
+ "type": "number",
37
+ "minimum": 1,
38
+ "description": "Minimum audit log retention period required by this framework (in days)"
39
+ },
40
+ "alertOnMissing": {
41
+ "default": true,
42
+ "description": "Raise alert if a required audit event is not being captured",
43
+ "type": "boolean"
44
+ }
45
+ },
46
+ "required": [
47
+ "framework",
48
+ "requiredEvents",
49
+ "retentionDays",
50
+ "alertOnMissing"
51
+ ],
52
+ "additionalProperties": false,
53
+ "description": "Compliance framework audit event requirements"
54
+ }
55
+ },
56
+ "complianceEncryptionRequirements": {
57
+ "description": "Compliance-driven encryption requirements by data classification",
58
+ "type": "array",
59
+ "items": {
60
+ "type": "object",
61
+ "properties": {
62
+ "framework": {
63
+ "type": "string",
64
+ "enum": [
65
+ "gdpr",
66
+ "hipaa",
67
+ "sox",
68
+ "pci_dss",
69
+ "ccpa",
70
+ "iso27001"
71
+ ],
72
+ "description": "Compliance framework identifier"
73
+ },
74
+ "dataClassifications": {
75
+ "type": "array",
76
+ "items": {
77
+ "type": "string",
78
+ "enum": [
79
+ "pii",
80
+ "phi",
81
+ "pci",
82
+ "financial",
83
+ "confidential",
84
+ "internal",
85
+ "public"
86
+ ]
87
+ },
88
+ "description": "Data classifications that must be encrypted under this framework"
89
+ },
90
+ "minimumAlgorithm": {
91
+ "default": "aes-256-gcm",
92
+ "description": "Minimum encryption algorithm strength required",
93
+ "type": "string",
94
+ "enum": [
95
+ "aes-256-gcm",
96
+ "aes-256-cbc",
97
+ "chacha20-poly1305"
98
+ ]
99
+ },
100
+ "keyRotationMaxDays": {
101
+ "default": 90,
102
+ "description": "Maximum key rotation interval required (in days)",
103
+ "type": "number",
104
+ "minimum": 1
105
+ }
106
+ },
107
+ "required": [
108
+ "framework",
109
+ "dataClassifications",
110
+ "minimumAlgorithm",
111
+ "keyRotationMaxDays"
112
+ ],
113
+ "additionalProperties": false,
114
+ "description": "Compliance framework encryption requirements"
115
+ }
116
+ },
117
+ "maskingVisibility": {
118
+ "description": "Masking visibility rules per data classification",
119
+ "type": "array",
120
+ "items": {
121
+ "type": "object",
122
+ "properties": {
123
+ "dataClassification": {
124
+ "type": "string",
125
+ "enum": [
126
+ "pii",
127
+ "phi",
128
+ "pci",
129
+ "financial",
130
+ "confidential",
131
+ "internal",
132
+ "public"
133
+ ],
134
+ "description": "Data classification this rule applies to"
135
+ },
136
+ "defaultMasked": {
137
+ "default": true,
138
+ "description": "Whether data is masked by default",
139
+ "type": "boolean"
140
+ },
141
+ "unmaskRoles": {
142
+ "description": "Roles allowed to view unmasked data",
143
+ "type": "array",
144
+ "items": {
145
+ "type": "string"
146
+ }
147
+ },
148
+ "auditUnmask": {
149
+ "default": true,
150
+ "description": "Log an audit event when data is unmasked",
151
+ "type": "boolean"
152
+ },
153
+ "requireApproval": {
154
+ "default": false,
155
+ "description": "Require explicit approval before unmasking",
156
+ "type": "boolean"
157
+ },
158
+ "approvalRoles": {
159
+ "description": "Roles that can approve unmasking requests",
160
+ "type": "array",
161
+ "items": {
162
+ "type": "string"
163
+ }
164
+ }
165
+ },
166
+ "required": [
167
+ "dataClassification",
168
+ "defaultMasked",
169
+ "auditUnmask",
170
+ "requireApproval"
171
+ ],
172
+ "additionalProperties": false,
173
+ "description": "Masking visibility and audit rule per data classification"
174
+ }
175
+ },
176
+ "dataClassifications": {
177
+ "description": "Data classification policies for unified security enforcement",
178
+ "type": "array",
179
+ "items": {
180
+ "type": "object",
181
+ "properties": {
182
+ "classification": {
183
+ "type": "string",
184
+ "enum": [
185
+ "pii",
186
+ "phi",
187
+ "pci",
188
+ "financial",
189
+ "confidential",
190
+ "internal",
191
+ "public"
192
+ ],
193
+ "description": "Data classification level"
194
+ },
195
+ "requireEncryption": {
196
+ "default": false,
197
+ "description": "Encryption required for this classification",
198
+ "type": "boolean"
199
+ },
200
+ "requireMasking": {
201
+ "default": false,
202
+ "description": "Masking required for this classification",
203
+ "type": "boolean"
204
+ },
205
+ "requireAudit": {
206
+ "default": false,
207
+ "description": "Audit trail required for access to this classification",
208
+ "type": "boolean"
209
+ },
210
+ "retentionDays": {
211
+ "description": "Data retention limit in days (for compliance)",
212
+ "type": "number"
213
+ }
214
+ },
215
+ "required": [
216
+ "classification",
217
+ "requireEncryption",
218
+ "requireMasking",
219
+ "requireAudit"
220
+ ],
221
+ "additionalProperties": false,
222
+ "description": "Security policy for a specific data classification level"
223
+ }
224
+ },
225
+ "eventCorrelation": {
226
+ "description": "Cross-subsystem security event correlation settings",
227
+ "type": "object",
228
+ "properties": {
229
+ "enabled": {
230
+ "default": true,
231
+ "description": "Enable cross-subsystem security event correlation",
232
+ "type": "boolean"
233
+ },
234
+ "correlationId": {
235
+ "default": true,
236
+ "description": "Inject a shared correlation ID into audit, encryption, and masking events",
237
+ "type": "boolean"
238
+ },
239
+ "linkAuthToAudit": {
240
+ "default": true,
241
+ "description": "Link authentication events to subsequent data operation audit trails",
242
+ "type": "boolean"
243
+ },
244
+ "linkEncryptionToAudit": {
245
+ "default": true,
246
+ "description": "Log encryption/decryption operations in the audit trail",
247
+ "type": "boolean"
248
+ },
249
+ "linkMaskingToAudit": {
250
+ "default": true,
251
+ "description": "Log masking/unmasking operations in the audit trail",
252
+ "type": "boolean"
253
+ }
254
+ },
255
+ "required": [
256
+ "enabled",
257
+ "correlationId",
258
+ "linkAuthToAudit",
259
+ "linkEncryptionToAudit",
260
+ "linkMaskingToAudit"
261
+ ],
262
+ "additionalProperties": false
263
+ },
264
+ "enforceOnWrite": {
265
+ "default": true,
266
+ "description": "Enforce encryption and masking requirements on data write operations",
267
+ "type": "boolean"
268
+ },
269
+ "enforceOnRead": {
270
+ "default": true,
271
+ "description": "Enforce masking and audit requirements on data read operations",
272
+ "type": "boolean"
273
+ },
274
+ "failOpen": {
275
+ "default": false,
276
+ "description": "When false (default), deny access if security context cannot be evaluated",
277
+ "type": "boolean"
278
+ }
279
+ },
280
+ "required": [
281
+ "enabled",
282
+ "enforceOnWrite",
283
+ "enforceOnRead",
284
+ "failOpen"
285
+ ],
286
+ "additionalProperties": false,
287
+ "description": "Unified security context governance configuration"
288
+ }
@@ -0,0 +1,40 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "type": "object",
4
+ "properties": {
5
+ "enabled": {
6
+ "default": true,
7
+ "description": "Enable cross-subsystem security event correlation",
8
+ "type": "boolean"
9
+ },
10
+ "correlationId": {
11
+ "default": true,
12
+ "description": "Inject a shared correlation ID into audit, encryption, and masking events",
13
+ "type": "boolean"
14
+ },
15
+ "linkAuthToAudit": {
16
+ "default": true,
17
+ "description": "Link authentication events to subsequent data operation audit trails",
18
+ "type": "boolean"
19
+ },
20
+ "linkEncryptionToAudit": {
21
+ "default": true,
22
+ "description": "Log encryption/decryption operations in the audit trail",
23
+ "type": "boolean"
24
+ },
25
+ "linkMaskingToAudit": {
26
+ "default": true,
27
+ "description": "Log masking/unmasking operations in the audit trail",
28
+ "type": "boolean"
29
+ }
30
+ },
31
+ "required": [
32
+ "enabled",
33
+ "correlationId",
34
+ "linkAuthToAudit",
35
+ "linkEncryptionToAudit",
36
+ "linkMaskingToAudit"
37
+ ],
38
+ "additionalProperties": false,
39
+ "description": "Cross-subsystem security event correlation configuration"
40
+ }
@@ -9,7 +9,36 @@
9
9
  "description": "Machine name (lowercase snake_case)"
10
10
  },
11
11
  "label": {
12
- "type": "string",
12
+ "anyOf": [
13
+ {
14
+ "type": "string"
15
+ },
16
+ {
17
+ "type": "object",
18
+ "properties": {
19
+ "key": {
20
+ "type": "string",
21
+ "description": "Translation key (e.g., \"views.task_list.label\")"
22
+ },
23
+ "defaultValue": {
24
+ "description": "Fallback value when translation key is not found",
25
+ "type": "string"
26
+ },
27
+ "params": {
28
+ "description": "Interpolation parameters (e.g., { count: 5 })",
29
+ "type": "object",
30
+ "propertyNames": {
31
+ "type": "string"
32
+ },
33
+ "additionalProperties": {}
34
+ }
35
+ },
36
+ "required": [
37
+ "key"
38
+ ],
39
+ "additionalProperties": false
40
+ }
41
+ ],
13
42
  "description": "Display label"
14
43
  },
15
44
  "icon": {
@@ -74,7 +103,37 @@
74
103
  "type": "string"
75
104
  },
76
105
  "label": {
77
- "type": "string"
106
+ "anyOf": [
107
+ {
108
+ "type": "string"
109
+ },
110
+ {
111
+ "type": "object",
112
+ "properties": {
113
+ "key": {
114
+ "type": "string",
115
+ "description": "Translation key (e.g., \"views.task_list.label\")"
116
+ },
117
+ "defaultValue": {
118
+ "description": "Fallback value when translation key is not found",
119
+ "type": "string"
120
+ },
121
+ "params": {
122
+ "description": "Interpolation parameters (e.g., { count: 5 })",
123
+ "type": "object",
124
+ "propertyNames": {
125
+ "type": "string"
126
+ },
127
+ "additionalProperties": {}
128
+ }
129
+ },
130
+ "required": [
131
+ "key"
132
+ ],
133
+ "additionalProperties": false
134
+ }
135
+ ],
136
+ "description": "Display label: plain string or i18n translation object"
78
137
  },
79
138
  "type": {
80
139
  "type": "string",
@@ -135,7 +194,37 @@
135
194
  "type": "object",
136
195
  "properties": {
137
196
  "label": {
138
- "type": "string"
197
+ "anyOf": [
198
+ {
199
+ "type": "string"
200
+ },
201
+ {
202
+ "type": "object",
203
+ "properties": {
204
+ "key": {
205
+ "type": "string",
206
+ "description": "Translation key (e.g., \"views.task_list.label\")"
207
+ },
208
+ "defaultValue": {
209
+ "description": "Fallback value when translation key is not found",
210
+ "type": "string"
211
+ },
212
+ "params": {
213
+ "description": "Interpolation parameters (e.g., { count: 5 })",
214
+ "type": "object",
215
+ "propertyNames": {
216
+ "type": "string"
217
+ },
218
+ "additionalProperties": {}
219
+ }
220
+ },
221
+ "required": [
222
+ "key"
223
+ ],
224
+ "additionalProperties": false
225
+ }
226
+ ],
227
+ "description": "Display label: plain string or i18n translation object"
139
228
  },
140
229
  "value": {
141
230
  "type": "string"
@@ -160,11 +249,69 @@
160
249
  },
161
250
  "confirmText": {
162
251
  "description": "Confirmation message before execution",
163
- "type": "string"
252
+ "anyOf": [
253
+ {
254
+ "type": "string"
255
+ },
256
+ {
257
+ "type": "object",
258
+ "properties": {
259
+ "key": {
260
+ "type": "string",
261
+ "description": "Translation key (e.g., \"views.task_list.label\")"
262
+ },
263
+ "defaultValue": {
264
+ "description": "Fallback value when translation key is not found",
265
+ "type": "string"
266
+ },
267
+ "params": {
268
+ "description": "Interpolation parameters (e.g., { count: 5 })",
269
+ "type": "object",
270
+ "propertyNames": {
271
+ "type": "string"
272
+ },
273
+ "additionalProperties": {}
274
+ }
275
+ },
276
+ "required": [
277
+ "key"
278
+ ],
279
+ "additionalProperties": false
280
+ }
281
+ ]
164
282
  },
165
283
  "successMessage": {
166
284
  "description": "Success message to show after execution",
167
- "type": "string"
285
+ "anyOf": [
286
+ {
287
+ "type": "string"
288
+ },
289
+ {
290
+ "type": "object",
291
+ "properties": {
292
+ "key": {
293
+ "type": "string",
294
+ "description": "Translation key (e.g., \"views.task_list.label\")"
295
+ },
296
+ "defaultValue": {
297
+ "description": "Fallback value when translation key is not found",
298
+ "type": "string"
299
+ },
300
+ "params": {
301
+ "description": "Interpolation parameters (e.g., { count: 5 })",
302
+ "type": "object",
303
+ "propertyNames": {
304
+ "type": "string"
305
+ },
306
+ "additionalProperties": {}
307
+ }
308
+ },
309
+ "required": [
310
+ "key"
311
+ ],
312
+ "additionalProperties": false
313
+ }
314
+ ]
168
315
  },
169
316
  "refreshAfter": {
170
317
  "default": false,
@@ -197,6 +344,54 @@
197
344
  "timeout": {
198
345
  "description": "Maximum execution time in milliseconds for the action",
199
346
  "type": "number"
347
+ },
348
+ "aria": {
349
+ "description": "ARIA accessibility attributes",
350
+ "type": "object",
351
+ "properties": {
352
+ "ariaLabel": {
353
+ "description": "Accessible label for screen readers (WAI-ARIA aria-label)",
354
+ "anyOf": [
355
+ {
356
+ "type": "string"
357
+ },
358
+ {
359
+ "type": "object",
360
+ "properties": {
361
+ "key": {
362
+ "type": "string",
363
+ "description": "Translation key (e.g., \"views.task_list.label\")"
364
+ },
365
+ "defaultValue": {
366
+ "description": "Fallback value when translation key is not found",
367
+ "type": "string"
368
+ },
369
+ "params": {
370
+ "description": "Interpolation parameters (e.g., { count: 5 })",
371
+ "type": "object",
372
+ "propertyNames": {
373
+ "type": "string"
374
+ },
375
+ "additionalProperties": {}
376
+ }
377
+ },
378
+ "required": [
379
+ "key"
380
+ ],
381
+ "additionalProperties": false
382
+ }
383
+ ]
384
+ },
385
+ "ariaDescribedBy": {
386
+ "description": "ID of element providing additional description (WAI-ARIA aria-describedby)",
387
+ "type": "string"
388
+ },
389
+ "role": {
390
+ "description": "WAI-ARIA role attribute (e.g., \"dialog\", \"navigation\", \"alert\")",
391
+ "type": "string"
392
+ }
393
+ },
394
+ "additionalProperties": false
200
395
  }
201
396
  },
202
397
  "required": [