ask-app-server 0.1.1 → 0.1.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 693454465fec087f099f90687d154e16b5584fbb23c23526027cdbeee93d2ecc
4
- data.tar.gz: a6a4a6dac55dc03440d0eb9df781ce1b5882dedaf2ef7b1ca934c3fc10d0246d
3
+ metadata.gz: 147a968eaddfd9ebce8ef4d0f04cb64c34e76a95e859a676ff79c75b270f6931
4
+ data.tar.gz: ce70ee81dfe2a5a0dcb4d1bd922b97d90f6aae5675c764df11bf99d1a585c7ae
5
5
  SHA512:
6
- metadata.gz: d763607422ded1958ca3f5aae8f018951857b4bfc887e9472380dd521e9746049fe90c06bafbca5a9379cc557a2e3bdce4c74b21a60d1b77998eceb2c3851556
7
- data.tar.gz: e8c1ac89c881071f2652338e491f49d8f396455e11a6ecf192466b8d1c97f134a2179d37d507b18db820887047fd1831c8b8114ed01ed5d52781597f5f7ec68f
6
+ metadata.gz: 68a1c0af900543c31aedc96625c1df396507c44cc584267ad27e8ec9253d31029a79139537f3db0967b48ef6fee6cc33ace6ab1723b4b5741f6b436f40bdea0d
7
+ data.tar.gz: a4e0fa7e7a3004dbe8a7ca935254cb879d6a8125ee4e480520a28d5397653ed71fe40f896eacd3b0b98429bea3e8af88727684da590def6eb7d0d3b313aeb36d
@@ -274,6 +274,39 @@ module Ask
274
274
  { aborted: true, sessionId: session_id }
275
275
  end
276
276
 
277
+ # Artifacts: list the session's tool deliverables
278
+ handler("session/artifacts") do |params, _id|
279
+ session_id = params["sessionId"] || params[:sessionId]
280
+ raise InvalidRequest, "sessionId is required" unless session_id
281
+
282
+ adapter = @session_manager.get(session_id)
283
+ raise Ask::AppServer::SessionNotFound, "Session #{session_id} not found" unless adapter
284
+
285
+ agent = adapter.session
286
+ raise InvalidRequest, "session has no artifact store (artifacts: not enabled)" unless agent.artifact_store
287
+
288
+ { artifacts: agent.artifacts }
289
+ end
290
+
291
+ # Artifact: fetch one (content for inline artifacts, uri for
292
+ # external binaries)
293
+ handler("session/artifact/get") do |params, _id|
294
+ session_id = params["sessionId"] || params[:sessionId]
295
+ artifact_id = params["artifactId"] || params[:artifactId]
296
+ raise InvalidRequest, "sessionId and artifactId are required" unless session_id && artifact_id
297
+
298
+ adapter = @session_manager.get(session_id)
299
+ raise Ask::AppServer::SessionNotFound, "Session #{session_id} not found" unless adapter
300
+
301
+ agent = adapter.session
302
+ raise InvalidRequest, "session has no artifact store (artifacts: not enabled)" unless agent.artifact_store
303
+
304
+ record = agent.fetch_artifact(artifact_id)
305
+ raise InvalidRequest, "Artifact #{artifact_id} not found" unless record
306
+
307
+ { artifact: record }
308
+ end
309
+
277
310
  # Workspace: read state
278
311
  handler("workspace/readState") do |params, _id|
279
312
  @session_manager.read_workspace_state
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ask
4
4
  module AppServer
5
- VERSION = "0.1.1"
5
+ VERSION = "0.1.2"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ask-app-server
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kaka Ruto