@bluefly/openstandardagents 0.4.9 → 0.5.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 (259) hide show
  1. package/.version.json +3 -3
  2. package/CHANGELOG.md +35 -4
  3. package/README.md +77 -62
  4. package/dist/.version.json +3 -3
  5. package/dist/adapters/a2a/a2a-protocol.js +4 -2
  6. package/dist/adapters/a2a/a2a-tool.js +4 -2
  7. package/dist/adapters/a2a/mcp-integration.d.ts +2 -1
  8. package/dist/adapters/a2a/mcp-integration.js +6 -3
  9. package/dist/adapters/browser/browser-exporter.d.ts +26 -0
  10. package/dist/adapters/browser/browser-exporter.js +73 -0
  11. package/dist/adapters/browser/browser-runner.d.ts +23 -0
  12. package/dist/adapters/browser/browser-runner.js +46 -0
  13. package/dist/adapters/browser/index.d.ts +9 -0
  14. package/dist/adapters/browser/index.js +9 -0
  15. package/dist/adapters/claude-code/adapter.js +2 -2
  16. package/dist/adapters/docker/generators.js +19 -19
  17. package/dist/adapters/docker/index.d.ts +2 -0
  18. package/dist/adapters/docker/index.js +2 -0
  19. package/dist/adapters/docker/openclaw-bridge.d.ts +57 -0
  20. package/dist/adapters/docker/openclaw-bridge.js +173 -0
  21. package/dist/adapters/drupal/generator.js +76 -76
  22. package/dist/adapters/drupal/index.d.ts +1 -0
  23. package/dist/adapters/drupal/index.js +2 -0
  24. package/dist/adapters/drupal/twig-renderer.d.ts +23 -0
  25. package/dist/adapters/drupal/twig-renderer.js +99 -0
  26. package/dist/adapters/gitlab/agent-generator.js +2 -1
  27. package/dist/adapters/openai-agents/adapter.js +2 -2
  28. package/dist/api/index.js +2 -1
  29. package/dist/api/routes/mcp.router.js +3 -1
  30. package/dist/api/routes/wizard.router.js +3 -1
  31. package/dist/cli/commands/agent/discover-type.command.js +1 -1
  32. package/dist/cli/commands/agent-card.command.js +37 -10
  33. package/dist/cli/commands/agents-sync.command.d.ts +2 -2
  34. package/dist/cli/commands/agents-sync.command.js +27 -17
  35. package/dist/cli/commands/catalog/config.js +1 -1
  36. package/dist/cli/commands/catalog/validate.command.js +2 -2
  37. package/dist/cli/commands/config.command.js +2 -2
  38. package/dist/cli/commands/daemon.command.js +32 -8
  39. package/dist/cli/commands/discover.d.ts +1 -1
  40. package/dist/cli/commands/discover.js +16 -8
  41. package/dist/cli/commands/economics.command.d.ts +9 -0
  42. package/dist/cli/commands/economics.command.js +113 -0
  43. package/dist/cli/commands/export.command.js +6 -3
  44. package/dist/cli/commands/mcp.command.js +3 -1
  45. package/dist/cli/commands/memory.command.d.ts +18 -0
  46. package/dist/cli/commands/memory.command.js +168 -0
  47. package/dist/cli/commands/publish.command.js +7 -4
  48. package/dist/cli/commands/serve-builder-routes.js +1 -1
  49. package/dist/cli/commands/usie-skills.command.d.ts +24 -0
  50. package/dist/cli/commands/usie-skills.command.js +297 -0
  51. package/dist/cli/commands/validate.command.js +8 -1
  52. package/dist/cli/commands/verify.d.ts +3 -3
  53. package/dist/cli/commands/verify.js +12 -6
  54. package/dist/cli/commands/workspace.command.d.ts +1 -0
  55. package/dist/cli/commands/workspace.command.js +28 -4
  56. package/dist/cli/index.js +12 -0
  57. package/dist/cli/schema-driven/schema-loader.js +5 -5
  58. package/dist/cli/workspace-validate.d.ts +23 -0
  59. package/dist/cli/workspace-validate.js +117 -0
  60. package/dist/data/platform-matrix.js +1 -4
  61. package/dist/generated/types.d.ts +97 -97
  62. package/dist/index.d.ts +2 -0
  63. package/dist/index.js +2 -0
  64. package/dist/mcp-server/index.js +658 -982
  65. package/dist/mesh/discovery-gkg.d.ts +26 -0
  66. package/dist/mesh/discovery-gkg.js +92 -0
  67. package/dist/messenger/Handler/AgentBatchHandler.js +3 -2
  68. package/dist/messenger/Handler/AgentExecutionHandler.js +6 -1
  69. package/dist/package.json +43 -14
  70. package/dist/sdks/shared/types.d.ts +1 -1
  71. package/dist/services/agent-card-generator.js +6 -2
  72. package/dist/services/daemon/audit-log.service.js +3 -1
  73. package/dist/services/daemon/execution.service.js +8 -4
  74. package/dist/services/daemon/fs-watcher.service.js +6 -7
  75. package/dist/services/daemon/pairing.service.js +2 -1
  76. package/dist/services/daemon/skill-aggregator.service.js +105 -21
  77. package/dist/services/daemon/sse-endpoints.js +1 -1
  78. package/dist/services/daemon/ws-server.js +10 -3
  79. package/dist/services/export/langchain/langchain-exporter.js +2 -2
  80. package/dist/services/export/langchain/memory-generator.js +2 -2
  81. package/dist/services/export/testing/test-generator.js +1 -1
  82. package/dist/services/governance/cedar-provider.js +12 -8
  83. package/dist/services/governance/cedar-validator.service.js +1 -1
  84. package/dist/services/mcp/bridge.service.js +40 -9
  85. package/dist/services/openapi-extensions-validation.d.ts +20 -0
  86. package/dist/services/openapi-extensions-validation.js +193 -0
  87. package/dist/services/release-automation/merge-request.service.d.ts +4 -4
  88. package/dist/services/release-automation/release-buttons.js +3 -3
  89. package/dist/services/release-automation/schemas/release.schema.d.ts +3 -3
  90. package/dist/services/runtime/openai.adapter.d.ts +46 -13
  91. package/dist/services/runtime/openai.adapter.js +169 -131
  92. package/dist/services/skill-registry.service.d.ts +1 -1
  93. package/dist/services/skills-pipeline/skills-research.service.js +47 -7
  94. package/dist/services/taxonomy-service.d.ts +3 -3
  95. package/dist/services/trust/trust.service.js +6 -4
  96. package/dist/services/validation-zod.service.js +3 -22
  97. package/dist/services/validators/index.d.ts +1 -0
  98. package/dist/services/validators/index.js +1 -0
  99. package/dist/services/validators/registry.d.ts +21 -0
  100. package/dist/services/validators/registry.js +42 -0
  101. package/dist/skills/test-skill/package.json +1 -1
  102. package/dist/spec/extensions/cognition.schema.json +87 -0
  103. package/dist/spec/extensions/role-manifest.md +188 -0
  104. package/dist/spec/layer4-economics/duadp-examples.json +44 -0
  105. package/dist/spec/v0.4/agent.schema.json +14 -0
  106. package/dist/spec/v0.4/extensions/mcp/README.md +1 -1
  107. package/dist/spec/v0.5/agent-builder-openapi.yaml +230 -0
  108. package/dist/spec/v0.5/agent.schema.json +34 -2
  109. package/dist/spec/v0.5/extensions/cognition/cognition.schema.json +78 -1
  110. package/dist/spec/v0.5/extensions/economics/context-pack.schema.json +91 -0
  111. package/dist/spec/v0.5/extensions/economics/execution-profile.schema.json +148 -0
  112. package/dist/spec/v0.5/extensions/economics/failure-semantics.schema.json +32 -0
  113. package/dist/spec/v0.5/extensions/economics/replay-packet.schema.json +120 -0
  114. package/dist/spec/v0.5/memory-hierarchy.yaml +120 -0
  115. package/dist/spec/v0.5/role.schema.json +268 -0
  116. package/dist/spec/v1/agent-card.schema.json +254 -0
  117. package/dist/types/cognition.zod.d.ts +312 -0
  118. package/dist/types/cognition.zod.js +223 -0
  119. package/dist/types/identity.zod.d.ts +5 -5
  120. package/dist/types/index.d.ts +54 -6
  121. package/dist/types/index.js +6 -2
  122. package/dist/types/personality.zod.d.ts +3 -3
  123. package/dist/types/role.d.ts +126 -0
  124. package/dist/types/role.js +38 -0
  125. package/dist/utils/http-client.d.ts +22 -0
  126. package/dist/utils/http-client.js +51 -0
  127. package/dist/utils/index.d.ts +3 -0
  128. package/dist/utils/index.js +3 -0
  129. package/dist/utils/proxy-resolver.d.ts +36 -0
  130. package/dist/utils/proxy-resolver.js +59 -0
  131. package/dist/utils/user-agent.d.ts +11 -0
  132. package/dist/utils/user-agent.js +17 -0
  133. package/dist/validation/validator.js +1 -1
  134. package/dist/validation/version-compliance.js +1 -1
  135. package/examples/agents/01-customer-support-bot/agent.ossa.yaml +24 -31
  136. package/examples/agents/05-sales-assistant/agent.ossa.yaml +35 -23
  137. package/examples/agents/07-research-assistant/agent.ossa.yaml +27 -21
  138. package/examples/agents/10-meeting-assistant/agent.ossa.yaml +27 -35
  139. package/examples/agents/security-audit-agent.ossa.yaml +234 -0
  140. package/examples/agentscope/react-assistant/README.md +1 -1
  141. package/examples/agentscope/react-assistant/agent.ossa.yaml +37 -33
  142. package/examples/drupal/content-moderator.ossa.yaml +2 -2
  143. package/examples/drupal/drupal-contributor-agent/.eslintrc.json +58 -0
  144. package/examples/drupal/drupal-contributor-agent/.prettierrc.json +10 -0
  145. package/examples/drupal/drupal-contributor-agent/package.json +55 -0
  146. package/examples/drupal/drupal-contributor-agent/src/core/index.ts +10 -0
  147. package/examples/drupal/drupal-contributor-agent/src/index.ts +17 -0
  148. package/examples/drupal/drupal-contributor-agent/src/types/index.ts +180 -0
  149. package/examples/drupal/drupal-contributor-agent/tsconfig.json +36 -0
  150. package/examples/drupal/drupal-contributor.ossa.yaml +247 -0
  151. package/examples/export/langchain/production-agent-with-memory/README.md +1 -1
  152. package/examples/export/langchain/production-agent-with-memory/agent.ossa.yaml +13 -23
  153. package/examples/export/langchain/production-agent-with-streaming/agent.ossa.yaml +1 -15
  154. package/examples/export/langchain/production-agent-with-tools/agent.ossa.yaml +28 -29
  155. package/examples/getting-started/01-minimal-agent.ossa.yaml +1 -1
  156. package/examples/getting-started/02-agent-with-tools.ossa.yaml +1 -1
  157. package/examples/getting-started/03-agent-with-safety.ossa.yaml +1 -1
  158. package/examples/getting-started/04-agent-with-messaging.ossa.yaml +1 -1
  159. package/examples/getting-started/05-workflow-composition.ossa.yaml +1 -1
  160. package/examples/getting-started/README.md +3 -3
  161. package/examples/getting-started/hello-world-complete.ossa.yaml +1 -1
  162. package/examples/gitlab-agents/gitlab-ci-agent.ossa.yaml +221 -0
  163. package/examples/hierarchical-agent.ossa.yaml +10 -53
  164. package/examples/kagent/ossa-kagent-anthropic.ossa.yaml +2 -25
  165. package/examples/kagent/ossa-kagent-mcp-tools.ossa.yaml +2 -30
  166. package/examples/kagent/ossa-kagent-multi-tool.ossa.yaml +2 -18
  167. package/examples/kagent/ossa-kagent-poc.ossa.yaml +2 -16
  168. package/examples/pipeline-agent.ossa.yaml +3 -3
  169. package/examples/platform-specific/claude-code-subagent.yaml +1 -1
  170. package/examples/platform-specific/cursor-coding-agent.yaml +1 -1
  171. package/examples/platform-specific/warp-terminal-agent.yaml +1 -1
  172. package/examples/production-ready/01-customer-support-bot/agent.ossa.yaml +24 -31
  173. package/examples/production-ready/05-sales-assistant/agent.ossa.yaml +35 -23
  174. package/examples/production-ready/07-research-assistant/agent.ossa.yaml +27 -19
  175. package/examples/production-ready/10-meeting-assistant/agent.ossa.yaml +27 -35
  176. package/examples/roles/drupal-developer.role.yaml +37 -0
  177. package/examples/roles/platform-operator.role.yaml +28 -0
  178. package/examples/roles/security-auditor.role.yaml +27 -0
  179. package/examples/swarm-agent.ossa.yaml +13 -51
  180. package/examples/team-agent.ossa.yaml +12 -61
  181. package/examples/team-lead-teammate.ossa.yaml +12 -17
  182. package/openapi/agent-cognition-sessions.yaml +580 -0
  183. package/openapi/agent-communication.yaml +260 -212
  184. package/openapi/agent-crud.yaml +237 -207
  185. package/openapi/agent-discovery.yaml +119 -81
  186. package/openapi/agent-identity.yaml +219 -187
  187. package/openapi/agent-taxonomy.yaml +95 -38
  188. package/openapi/agents-md-service.yaml +103 -30
  189. package/openapi/cli/openapi.yaml +147 -40
  190. package/openapi/core/ossa-core-api.openapi.yaml +327 -271
  191. package/openapi/core/ossa-registry-api.openapi.yaml +299 -236
  192. package/openapi/core/ossa-registry.openapi.yaml +299 -159
  193. package/openapi/core/unified-agent-gateway.openapi.yaml +234 -170
  194. package/openapi/daemon-api.openapi.yaml +323 -181
  195. package/openapi/dev-cli/openapi.yaml +137 -113
  196. package/openapi/github-sync.yaml +62 -19
  197. package/openapi/marketplace-plugin.openapi.yaml +539 -466
  198. package/openapi/ossa-api.openapi.yaml +354 -213
  199. package/openapi/ossa-cli-enhancements.openapi.yaml +109 -90
  200. package/openapi/ossa-cli.yaml +260 -184
  201. package/openapi/protocols/sse-streams.yaml +66 -74
  202. package/openapi/protocols/websocket-events.yaml +61 -54
  203. package/openapi/reference-implementations/aiflow-bridge-api.openapi.yaml +37 -20
  204. package/openapi/reference-implementations/compliance-agent-api.openapi.yaml +35 -23
  205. package/openapi/reference-implementations/crewai-agent-api.openapi.yaml +29 -18
  206. package/openapi/reference-implementations/critic-agent-api.openapi.yaml +45 -19
  207. package/openapi/reference-implementations/document-analyzer-api.openapi.yaml +30 -24
  208. package/openapi/reference-implementations/drupal-agent-api.openapi.yaml +101 -50
  209. package/openapi/reference-implementations/getting-started-hello-world-api.openapi.yaml +33 -22
  210. package/openapi/reference-implementations/gitlab-ml-recommender-api.openapi.yaml +20 -16
  211. package/openapi/reference-implementations/governor-agent-api.openapi.yaml +41 -23
  212. package/openapi/reference-implementations/helm-generator.openapi.yaml +88 -46
  213. package/openapi/reference-implementations/integrator-agent-api.openapi.yaml +30 -20
  214. package/openapi/reference-implementations/judge-agent-api.openapi.yaml +22 -16
  215. package/openapi/reference-implementations/k8s-troubleshooter-api.openapi.yaml +32 -18
  216. package/openapi/reference-implementations/langchain-agent-api.openapi.yaml +32 -21
  217. package/openapi/reference-implementations/monitor-agent-api.openapi.yaml +34 -21
  218. package/openapi/reference-implementations/orchestrator-agent-api.openapi.yaml +49 -27
  219. package/openapi/reference-implementations/quickstart-support-agent-api.openapi.yaml +27 -19
  220. package/openapi/reference-implementations/self-evolving-ecosystem.openapi.yaml +427 -293
  221. package/openapi/reference-implementations/worker-agent-api.openapi.yaml +34 -23
  222. package/openapi/reference-implementations/workflow-orchestrator-api.openapi.yaml +35 -21
  223. package/openapi/release-automation.openapi.yaml +48 -14
  224. package/openapi/schemas/common/agent.yaml +30 -29
  225. package/openapi/schemas/common/economics.yaml +98 -0
  226. package/openapi/schemas/common/errors.yaml +13 -3
  227. package/openapi/schemas/common/metadata.yaml +22 -7
  228. package/openapi/schemas/common/pagination.yaml +18 -6
  229. package/openapi/schemas/common/security.yaml +13 -5
  230. package/openapi/schemas/index.yaml +49 -42
  231. package/openapi/uadp-asyncapi.yaml +5 -3
  232. package/openapi/uadp-openapi.yaml +243 -165
  233. package/openapi/version-management.openapi.yaml +142 -135
  234. package/package.json +43 -14
  235. package/spec/extensions/cognition.schema.json +87 -0
  236. package/spec/extensions/role-manifest.md +188 -0
  237. package/spec/layer4-economics/duadp-examples.json +44 -0
  238. package/spec/v0.4/agent.schema.json +14 -0
  239. package/spec/v0.4/extensions/mcp/README.md +1 -1
  240. package/spec/v0.5/agent-builder-openapi.yaml +230 -0
  241. package/spec/v0.5/agent.schema.json +34 -2
  242. package/spec/v0.5/extensions/cognition/cognition.schema.json +78 -1
  243. package/spec/v0.5/extensions/economics/context-pack.schema.json +91 -0
  244. package/spec/v0.5/extensions/economics/execution-profile.schema.json +148 -0
  245. package/spec/v0.5/extensions/economics/failure-semantics.schema.json +32 -0
  246. package/spec/v0.5/extensions/economics/replay-packet.schema.json +120 -0
  247. package/spec/v0.5/memory-hierarchy.yaml +120 -0
  248. package/spec/v0.5/role.schema.json +268 -0
  249. package/spec/v1/agent-card.schema.json +254 -0
  250. package/dist/adapters/a2a/__tests__/mcp-integration.spec.d.ts +0 -5
  251. package/dist/adapters/a2a/__tests__/mcp-integration.spec.js +0 -268
  252. package/dist/adapters/a2a/__tests__/mcp-transport.spec.d.ts +0 -5
  253. package/dist/adapters/a2a/__tests__/mcp-transport.spec.js +0 -203
  254. package/dist/mcp-server/__tests__/mcp-server.spec.d.ts +0 -8
  255. package/dist/mcp-server/__tests__/mcp-server.spec.js +0 -557
  256. package/dist/validation/__tests__/error-codes.test.d.ts +0 -5
  257. package/dist/validation/__tests__/error-codes.test.js +0 -252
  258. package/dist/version-management/core/version-manager.test.d.ts +0 -2
  259. package/dist/version-management/core/version-manager.test.js +0 -210
@@ -0,0 +1,580 @@
1
+ openapi: 3.1.0
2
+ info:
3
+ title: OSSA Agent Cognition Sessions API
4
+ version: 0.4.0
5
+ description: >
6
+ API for managing collaborative agent cognition sessions, hypotheses,
7
+ presence signals, and alignment locks within the CAOE framework.
8
+
9
+ paths:
10
+ /sessions:
11
+ post:
12
+ operationId: createSession
13
+ summary: Create a new collaborative session
14
+ tags: [Sessions]
15
+ requestBody:
16
+ required: true
17
+ content:
18
+ application/json:
19
+ schema:
20
+ $ref: '#/components/schemas/CreateSessionRequest'
21
+ responses:
22
+ '201':
23
+ description: Session created
24
+ content:
25
+ application/json:
26
+ schema:
27
+ $ref: '#/components/schemas/CreateSessionResponse'
28
+ get:
29
+ operationId: listSessions
30
+ summary: List active sessions
31
+ tags: [Sessions]
32
+ parameters:
33
+ - name: status
34
+ in: query
35
+ schema:
36
+ $ref: '#/components/schemas/SessionStatus'
37
+ responses:
38
+ '200':
39
+ description: List of sessions
40
+ content:
41
+ application/json:
42
+ schema:
43
+ type: array
44
+ items:
45
+ $ref: '#/components/schemas/Session'
46
+
47
+ /sessions/{sessionId}:
48
+ get:
49
+ operationId: getSession
50
+ summary: Get session details
51
+ tags: [Sessions]
52
+ parameters:
53
+ - $ref: '#/components/parameters/SessionId'
54
+ responses:
55
+ '200':
56
+ description: Session details
57
+ content:
58
+ application/json:
59
+ schema:
60
+ $ref: '#/components/schemas/Session'
61
+ '404':
62
+ description: Session not found
63
+ delete:
64
+ operationId: endSession
65
+ summary: End a session
66
+ tags: [Sessions]
67
+ parameters:
68
+ - $ref: '#/components/parameters/SessionId'
69
+ responses:
70
+ '200':
71
+ description: Session ended
72
+
73
+ /sessions/{sessionId}/hypotheses:
74
+ post:
75
+ operationId: emitHypothesis
76
+ summary: Emit a hypothesis in a session
77
+ tags: [Hypotheses]
78
+ parameters:
79
+ - $ref: '#/components/parameters/SessionId'
80
+ requestBody:
81
+ required: true
82
+ content:
83
+ application/json:
84
+ schema:
85
+ $ref: '#/components/schemas/EmitHypothesisRequest'
86
+ responses:
87
+ '201':
88
+ description: Hypothesis emitted
89
+ content:
90
+ application/json:
91
+ schema:
92
+ $ref: '#/components/schemas/Hypothesis'
93
+ '409':
94
+ description: Conflict detected
95
+ content:
96
+ application/json:
97
+ schema:
98
+ type: object
99
+ properties:
100
+ conflicts:
101
+ type: array
102
+ items:
103
+ $ref: '#/components/schemas/Hypothesis'
104
+ get:
105
+ operationId: listHypotheses
106
+ summary: List hypotheses in a session
107
+ tags: [Hypotheses]
108
+ parameters:
109
+ - $ref: '#/components/parameters/SessionId'
110
+ responses:
111
+ '200':
112
+ description: List of hypotheses
113
+ content:
114
+ application/json:
115
+ schema:
116
+ type: array
117
+ items:
118
+ $ref: '#/components/schemas/Hypothesis'
119
+
120
+ /sessions/{sessionId}/hypotheses/{hypothesisId}/lock:
121
+ post:
122
+ operationId: lockHypothesis
123
+ summary: Lock a hypothesis (human arbitration)
124
+ tags: [Hypotheses]
125
+ parameters:
126
+ - $ref: '#/components/parameters/SessionId'
127
+ - $ref: '#/components/parameters/HypothesisId'
128
+ requestBody:
129
+ required: true
130
+ content:
131
+ application/json:
132
+ schema:
133
+ $ref: '#/components/schemas/LockHypothesisRequest'
134
+ responses:
135
+ '200':
136
+ description: Hypothesis locked
137
+
138
+ /sessions/{sessionId}/conflicts/resolve:
139
+ post:
140
+ operationId: resolveConflict
141
+ summary: Resolve a hypothesis conflict
142
+ tags: [Conflicts]
143
+ parameters:
144
+ - $ref: '#/components/parameters/SessionId'
145
+ requestBody:
146
+ required: true
147
+ content:
148
+ application/json:
149
+ schema:
150
+ $ref: '#/components/schemas/ConflictResolutionRequest'
151
+ responses:
152
+ '200':
153
+ description: Conflict resolved
154
+
155
+ /sessions/{sessionId}/presence:
156
+ get:
157
+ operationId: getPresence
158
+ summary: Get current presence signals for a session
159
+ tags: [Presence]
160
+ parameters:
161
+ - $ref: '#/components/parameters/SessionId'
162
+ responses:
163
+ '200':
164
+ description: Presence signals
165
+ content:
166
+ application/json:
167
+ schema:
168
+ type: array
169
+ items:
170
+ $ref: '#/components/schemas/PresenceSignal'
171
+
172
+ components:
173
+ parameters:
174
+ SessionId:
175
+ name: sessionId
176
+ in: path
177
+ required: true
178
+ schema:
179
+ type: string
180
+ format: uuid
181
+ HypothesisId:
182
+ name: hypothesisId
183
+ in: path
184
+ required: true
185
+ schema:
186
+ type: string
187
+ format: uuid
188
+
189
+ schemas:
190
+ SessionStatus:
191
+ type: string
192
+ enum: [active, paused, ended]
193
+
194
+ ActorType:
195
+ type: string
196
+ enum: [human, agent]
197
+
198
+ HypothesisStatus:
199
+ type: string
200
+ enum: [forming, active, locked, superseded, rejected, completed]
201
+
202
+ CognitionEventType:
203
+ type: string
204
+ enum:
205
+ - hypothesis.formed
206
+ - hypothesis.updated
207
+ - hypothesis.locked
208
+ - hypothesis.rejected
209
+ - hypothesis.completed
210
+ - conflict.detected
211
+ - conflict.resolved
212
+ - alignment.checkpoint
213
+ - session.joined
214
+ - session.left
215
+ - focus.changed
216
+
217
+ HypothesisIntent:
218
+ type: object
219
+ required: [action, targetFiles, targetPackages, estimatedScope]
220
+ properties:
221
+ action:
222
+ type: string
223
+ enum: [create, modify, delete, read, test, refactor, review, deploy, analyze]
224
+ targetFiles:
225
+ type: array
226
+ items:
227
+ type: string
228
+ targetPackages:
229
+ type: array
230
+ items:
231
+ type: string
232
+ estimatedScope:
233
+ type: string
234
+ enum: [line, function, file, module, package]
235
+ conflictSensitive:
236
+ type: boolean
237
+ default: true
238
+
239
+ Hypothesis:
240
+ type: object
241
+ required: [id, sessionId, actorId, actorType, statement, intent, status, confidence, createdAt, updatedAt]
242
+ properties:
243
+ id:
244
+ type: string
245
+ format: uuid
246
+ sessionId:
247
+ type: string
248
+ format: uuid
249
+ actorId:
250
+ type: string
251
+ minLength: 1
252
+ actorType:
253
+ $ref: '#/components/schemas/ActorType'
254
+ statement:
255
+ type: string
256
+ minLength: 1
257
+ maxLength: 1000
258
+ intent:
259
+ $ref: '#/components/schemas/HypothesisIntent'
260
+ status:
261
+ $ref: '#/components/schemas/HypothesisStatus'
262
+ confidence:
263
+ type: number
264
+ minimum: 0
265
+ maximum: 1
266
+ supersedes:
267
+ type: string
268
+ format: uuid
269
+ createdAt:
270
+ type: string
271
+ format: date-time
272
+ updatedAt:
273
+ type: string
274
+ format: date-time
275
+ lockedBy:
276
+ type: string
277
+ lockedAt:
278
+ type: string
279
+ format: date-time
280
+
281
+ PresenceSignal:
282
+ type: object
283
+ required: [actorId, actorType, actorLabel, sessionId, focus, color, status, timestamp]
284
+ properties:
285
+ actorId:
286
+ type: string
287
+ minLength: 1
288
+ actorType:
289
+ $ref: '#/components/schemas/ActorType'
290
+ actorLabel:
291
+ type: string
292
+ sessionId:
293
+ type: string
294
+ format: uuid
295
+ focus:
296
+ type: object
297
+ properties:
298
+ file:
299
+ type: string
300
+ line:
301
+ type: integer
302
+ minimum: 1
303
+ column:
304
+ type: integer
305
+ minimum: 0
306
+ selection:
307
+ type: object
308
+ properties:
309
+ startLine:
310
+ type: integer
311
+ endLine:
312
+ type: integer
313
+ package:
314
+ type: string
315
+ scope:
316
+ type: string
317
+ activeHypothesisId:
318
+ type: string
319
+ format: uuid
320
+ color:
321
+ type: string
322
+ pattern: '^#[0-9a-fA-F]{6}$'
323
+ status:
324
+ type: string
325
+ enum: [active, idle, blocked, offline]
326
+ timestamp:
327
+ type: string
328
+ format: date-time
329
+
330
+ SessionParticipant:
331
+ type: object
332
+ required: [actorId, actorType, joinedAt, role]
333
+ properties:
334
+ actorId:
335
+ type: string
336
+ actorType:
337
+ $ref: '#/components/schemas/ActorType'
338
+ joinedAt:
339
+ type: string
340
+ format: date-time
341
+ role:
342
+ type: string
343
+ enum: [owner, collaborator, observer]
344
+
345
+ AlignmentCheckpoint:
346
+ type: object
347
+ required: [id, hypothesisId, approvedBy, approvedAt, description]
348
+ properties:
349
+ id:
350
+ type: string
351
+ format: uuid
352
+ hypothesisId:
353
+ type: string
354
+ format: uuid
355
+ approvedBy:
356
+ type: string
357
+ approvedAt:
358
+ type: string
359
+ format: date-time
360
+ description:
361
+ type: string
362
+
363
+ Session:
364
+ type: object
365
+ required: [id, name, packages, status, participants, activeHypothesisIds, alignmentCheckpoints, wsEndpoint, createdAt, updatedAt]
366
+ properties:
367
+ id:
368
+ type: string
369
+ format: uuid
370
+ name:
371
+ type: string
372
+ minLength: 1
373
+ maxLength: 100
374
+ gitlabIssueId:
375
+ type: integer
376
+ branch:
377
+ type: string
378
+ packages:
379
+ type: array
380
+ items:
381
+ type: string
382
+ status:
383
+ $ref: '#/components/schemas/SessionStatus'
384
+ participants:
385
+ type: array
386
+ items:
387
+ $ref: '#/components/schemas/SessionParticipant'
388
+ activeHypothesisIds:
389
+ type: array
390
+ items:
391
+ type: string
392
+ format: uuid
393
+ alignmentCheckpoints:
394
+ type: array
395
+ items:
396
+ $ref: '#/components/schemas/AlignmentCheckpoint'
397
+ wsEndpoint:
398
+ type: string
399
+ format: uri
400
+ createdAt:
401
+ type: string
402
+ format: date-time
403
+ updatedAt:
404
+ type: string
405
+ format: date-time
406
+ endedAt:
407
+ type: string
408
+ format: date-time
409
+
410
+ CognitionEvent:
411
+ type: object
412
+ required: [id, type, sessionId, actorId, actorType, description, affectedFiles, nist, timestamp]
413
+ properties:
414
+ id:
415
+ type: string
416
+ format: uuid
417
+ type:
418
+ $ref: '#/components/schemas/CognitionEventType'
419
+ sessionId:
420
+ type: string
421
+ format: uuid
422
+ actorId:
423
+ type: string
424
+ actorType:
425
+ $ref: '#/components/schemas/ActorType'
426
+ hypothesisId:
427
+ type: string
428
+ format: uuid
429
+ conflictingHypothesisIds:
430
+ type: array
431
+ items:
432
+ type: string
433
+ format: uuid
434
+ checkpointHypothesisId:
435
+ type: string
436
+ format: uuid
437
+ description:
438
+ type: string
439
+ affectedFiles:
440
+ type: array
441
+ items:
442
+ type: string
443
+ nist:
444
+ type: object
445
+ required: [classification]
446
+ properties:
447
+ control:
448
+ type: string
449
+ default: AU-2
450
+ classification:
451
+ type: string
452
+ enum: [informational, warning, critical]
453
+ requiresReview:
454
+ type: boolean
455
+ default: false
456
+ timestamp:
457
+ type: string
458
+ format: date-time
459
+
460
+ OSSACognitionSpec:
461
+ type: object
462
+ properties:
463
+ sessionCapable:
464
+ type: boolean
465
+ default: false
466
+ hypothesisEmission:
467
+ type: string
468
+ enum: [required, optional, disabled]
469
+ default: optional
470
+ conflictBehavior:
471
+ type: string
472
+ enum: [block, warn, defer]
473
+ default: block
474
+ alignmentGate:
475
+ type: string
476
+ enum: [human_approval, auto_on_confidence, peer_agent, none]
477
+ default: human_approval
478
+ autoLockConfidenceThreshold:
479
+ type: number
480
+ minimum: 0
481
+ maximum: 1
482
+ default: 0.95
483
+ maxConcurrentHypotheses:
484
+ type: integer
485
+ minimum: 1
486
+ maximum: 5
487
+ default: 1
488
+ cognitiveFingerprint:
489
+ type: string
490
+
491
+ CreateSessionRequest:
492
+ type: object
493
+ required: [name, packages]
494
+ properties:
495
+ name:
496
+ type: string
497
+ minLength: 1
498
+ maxLength: 100
499
+ gitlabIssueId:
500
+ type: integer
501
+ branch:
502
+ type: string
503
+ packages:
504
+ type: array
505
+ items:
506
+ type: string
507
+ minItems: 1
508
+ agentIds:
509
+ type: array
510
+ items:
511
+ type: string
512
+
513
+ CreateSessionResponse:
514
+ type: object
515
+ required: [session, joinUrl, wsEndpoint]
516
+ properties:
517
+ session:
518
+ $ref: '#/components/schemas/Session'
519
+ joinUrl:
520
+ type: string
521
+ format: uri
522
+ wsEndpoint:
523
+ type: string
524
+ format: uri
525
+
526
+ EmitHypothesisRequest:
527
+ type: object
528
+ required: [sessionId, statement, intent, confidence]
529
+ properties:
530
+ sessionId:
531
+ type: string
532
+ format: uuid
533
+ statement:
534
+ type: string
535
+ minLength: 1
536
+ maxLength: 1000
537
+ intent:
538
+ $ref: '#/components/schemas/HypothesisIntent'
539
+ confidence:
540
+ type: number
541
+ minimum: 0
542
+ maximum: 1
543
+ supersedes:
544
+ type: string
545
+ format: uuid
546
+
547
+ LockHypothesisRequest:
548
+ type: object
549
+ required: [sessionId, hypothesisId, arbitratorId]
550
+ properties:
551
+ sessionId:
552
+ type: string
553
+ format: uuid
554
+ hypothesisId:
555
+ type: string
556
+ format: uuid
557
+ arbitratorId:
558
+ type: string
559
+ reason:
560
+ type: string
561
+
562
+ ConflictResolutionRequest:
563
+ type: object
564
+ required: [sessionId, winningHypothesisId, losingHypothesisIds, arbitratorId, checkpointDescription]
565
+ properties:
566
+ sessionId:
567
+ type: string
568
+ format: uuid
569
+ winningHypothesisId:
570
+ type: string
571
+ format: uuid
572
+ losingHypothesisIds:
573
+ type: array
574
+ items:
575
+ type: string
576
+ format: uuid
577
+ arbitratorId:
578
+ type: string
579
+ checkpointDescription:
580
+ type: string