actionagent 1.9.3 → 1.9.5

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 (39) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +9 -1
  3. data/app/assets/builds/action_agent.css +1 -1
  4. data/app/assets/builds/action_agent.js +61 -61
  5. data/app/controllers/action_agent/api/agents_controller.rb +1 -17
  6. data/app/controllers/action_agent/api/evaluation_reports_controller.rb +11 -7
  7. data/app/controllers/action_agent/api/github_app_webhooks_controller.rb +98 -0
  8. data/app/controllers/action_agent/api/github_installations_controller.rb +9 -1
  9. data/app/controllers/action_agent/api/mcp_controller.rb +5 -2
  10. data/app/controllers/action_agent/api/projects_controller.rb +119 -40
  11. data/app/controllers/action_agent/dashboard_controller.rb +27 -0
  12. data/app/controllers/action_agent/traces_controller.rb +6 -0
  13. data/app/controllers/concerns/action_agent/api/mcp_dashboard_tools.rb +199 -24
  14. data/app/jobs/action_agent/github_webhook_job.rb +102 -0
  15. data/app/models/action_agent/github_connection.rb +21 -0
  16. data/app/models/action_agent/github_installation.rb +28 -1
  17. data/app/models/action_agent/github_webhook_delivery.rb +45 -0
  18. data/app/models/action_agent/provider_key.rb +8 -1
  19. data/app/models/action_agent/scenario_catalog.rb +8 -2
  20. data/app/serializers/action_agent/agent_version_serializer.rb +29 -0
  21. data/app/serializers/action_agent/evaluation_serializer.rb +9 -0
  22. data/app/services/action_agent/evaluation_report_import.rb +112 -19
  23. data/app/services/action_agent/github_client.rb +11 -2
  24. data/app/services/action_agent/local_sandbox_claude_login.rb +1 -1
  25. data/app/services/action_agent/project_capabilities.rb +6 -3
  26. data/app/views/action_agent/traces/_styles.html.erb +45 -0
  27. data/app/views/action_agent/traces/_summary.html.erb +8 -0
  28. data/app/views/action_agent/traces/_trace_detail.html.erb +33 -96
  29. data/app/views/action_agent/traces/index.html.erb +25 -134
  30. data/app/views/action_agent/traces/metrics.html.erb +22 -140
  31. data/app/views/action_agent/traces/show.html.erb +7 -36
  32. data/app/views/layouts/action_agent/application.html.erb +26 -86
  33. data/config/routes.rb +15 -0
  34. data/lib/action_agent/claude_login_process.rb +1 -1
  35. data/lib/action_agent/version.rb +1 -1
  36. data/lib/action_agent.rb +47 -0
  37. data/lib/generators/action_agent/templates/action_agent.rb.erb +10 -3
  38. data/lib/generators/action_agent/templates/migrations/029_create_active_agent_github_webhook_deliveries.rb.erb +23 -0
  39. metadata +9 -2
@@ -215,6 +215,12 @@ ActionAgent.configure do |config|
215
215
  # config.github_app_client_secret = Rails.application.credentials.dig(:github_app, :client_secret)
216
216
  # config.github_app_private_key = Rails.application.credentials.dig(:github_app, :private_key)
217
217
  #
218
+ # With the App's webhook pointed at <mount>/api/github_app/webhooks, the
219
+ # secret its deliveries are signed with (GITHUB_APP_WEBHOOK_SECRET when
220
+ # unset). Settings then learns of an uninstall or suspension when it happens.
221
+ #
222
+ # config.github_app_webhook_secret = Rails.application.credentials.dig(:github_app, :webhook_secret)
223
+ #
218
224
  # Or an OAuth App, connected per owner with the callback URL
219
225
  # <mount>/api/github_connection/callback (GITHUB_CLIENT_ID and
220
226
  # GITHUB_CLIENT_SECRET when unset).
@@ -315,9 +321,10 @@ ActionAgent.configure do |config|
315
321
  # UI
316
322
  # ==========================================================================
317
323
  #
318
- # Custom layout for dashboard views (the default layout loads Tailwind,
319
- # Turbo and Stimulus from CDNs — override for CSP-strict or air-gapped
320
- # environments).
324
+ # Custom layout for dashboard views. The default layouts load nothing
325
+ # from external hosts, so this is only needed to wrap the dashboard in
326
+ # your application's own chrome. A custom layout replaces the trace
327
+ # console's built-in styles and refresh controls.
321
328
  #
322
329
  # config.layout = "application"
323
330
  end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ # The GitHub App webhook deliveries the dashboard accepted, kept briefly so a
4
+ # redelivery of the same X-GitHub-Delivery is a no-op (see
5
+ # ActionAgent::GithubWebhookDelivery). Nothing here is a credential or a
6
+ # payload.
7
+ class CreateActiveAgentGithubWebhookDeliveries < ActiveRecord::Migration<%= migration_version %>
8
+ def change
9
+ prefix = ActionAgent.table_name_prefix
10
+
11
+ create_table "#{prefix}github_webhook_deliveries" do |t|
12
+ # GitHub's X-GitHub-Delivery, a GUID. Unique: a second insert of the
13
+ # same delivery is how a redelivery is recognized.
14
+ t.string :delivery_id, null: false, limit: 64
15
+ t.string :event, null: false, limit: 64
16
+ t.string :event_action, limit: 64
17
+ t.bigint :installation_id
18
+ t.datetime :created_at, null: false
19
+ t.index :delivery_id, unique: true, name: "index_#{prefix}webhook_deliveries_on_delivery"
20
+ t.index :created_at, name: "index_#{prefix}webhook_deliveries_on_created_at"
21
+ end
22
+ end
23
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: actionagent
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.9.3
4
+ version: 1.9.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Bowen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-10-21 00:00:00.000000000 Z
11
+ date: 2026-10-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activeagent
@@ -142,6 +142,7 @@ files:
142
142
  - app/controllers/action_agent/api/feedback_ingest_controller.rb
143
143
  - app/controllers/action_agent/api/feedbacks_controller.rb
144
144
  - app/controllers/action_agent/api/github_app_manifests_controller.rb
145
+ - app/controllers/action_agent/api/github_app_webhooks_controller.rb
145
146
  - app/controllers/action_agent/api/github_connections_controller.rb
146
147
  - app/controllers/action_agent/api/github_installations_controller.rb
147
148
  - app/controllers/action_agent/api/input_requests_controller.rb
@@ -194,6 +195,7 @@ files:
194
195
  - app/jobs/action_agent/evaluation_replay_job.rb
195
196
  - app/jobs/action_agent/evaluation_run_job.rb
196
197
  - app/jobs/action_agent/exploration_job.rb
198
+ - app/jobs/action_agent/github_webhook_job.rb
197
199
  - app/jobs/action_agent/input_request_expiry_job.rb
198
200
  - app/jobs/action_agent/process_telemetry_traces_job.rb
199
201
  - app/jobs/action_agent/project_evaluation_job.rb
@@ -224,6 +226,7 @@ files:
224
226
  - app/models/action_agent/exploration.rb
225
227
  - app/models/action_agent/github_connection.rb
226
228
  - app/models/action_agent/github_installation.rb
229
+ - app/models/action_agent/github_webhook_delivery.rb
227
230
  - app/models/action_agent/input_request.rb
228
231
  - app/models/action_agent/interaction_feedback.rb
229
232
  - app/models/action_agent/model_pricing.rb
@@ -248,6 +251,7 @@ files:
248
251
  - app/queries/action_agent/metrics_report.rb
249
252
  - app/queries/action_agent/trace_window_report.rb
250
253
  - app/serializers/action_agent/agent_message_serializer.rb
254
+ - app/serializers/action_agent/agent_version_serializer.rb
251
255
  - app/serializers/action_agent/code_conversation_serializer.rb
252
256
  - app/serializers/action_agent/evaluation_serializer.rb
253
257
  - app/serializers/action_agent/input_request_serializer.rb
@@ -329,6 +333,8 @@ files:
329
333
  - app/views/action_agent/dashboard/index.html.erb
330
334
  - app/views/action_agent/github_app_manifests/created.html.erb
331
335
  - app/views/action_agent/session_player/show.html.erb
336
+ - app/views/action_agent/traces/_styles.html.erb
337
+ - app/views/action_agent/traces/_summary.html.erb
332
338
  - app/views/action_agent/traces/_trace_detail.html.erb
333
339
  - app/views/action_agent/traces/index.html.erb
334
340
  - app/views/action_agent/traces/metrics.html.erb
@@ -370,6 +376,7 @@ files:
370
376
  - lib/generators/action_agent/templates/migrations/026_add_evaluation_fixes_to_code_sessions.rb.erb
371
377
  - lib/generators/action_agent/templates/migrations/027_create_active_agent_interaction_feedbacks.rb.erb
372
378
  - lib/generators/action_agent/templates/migrations/028_add_conversations_to_code_sessions.rb.erb
379
+ - lib/generators/action_agent/templates/migrations/029_create_active_agent_github_webhook_deliveries.rb.erb
373
380
  - lib/tasks/action_agent.rake
374
381
  - lib/tasks/browser.rake
375
382
  - lib/tasks/claude_code.rake