• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

lsm / neokai / 27893201234 / 27
82%
dev: 82%

Build:
DEFAULT BRANCH: dev
Ran 21 Jun 2026 04:17AM UTC
Files 356
Run time 15s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

21 Jun 2026 04:14AM UTC coverage: 21.737% (-0.1%) from 21.851%
27893201234.27

push

github

web-flow
feat(space): event-driven gate evaluation for blocked runs (#2141)

* feat(space): event-driven gate evaluation for blocked runs

Auto-subscribe workflow runs to GitHub PR events when a gate blocks with a
resolvable PR URL, and re-evaluate gates immediately when a matching event
arrives instead of waiting for the next 5-minute poll cycle.

Pieces:
- parsePrUrl() util shared between pr-ready-validator and SpaceRuntime
- SpaceRuntime.registerPrEventSubscriptionForRun / clearPrEventSubscriptionsForRun
  wrap registerSubscription with the github/<owner>/<repo>/pull_request/<n>.*
  topic pattern; cleared automatically on run termination via clearRunInterests
- SpaceRuntimeConfig.onBlockedRunExternalEvent hook fires once per (run, event)
  when handleExternalEvent delivers to a workflow_run currently in 'blocked'
  status
- SpaceRuntimeService.notifyGateDataChanged now syncs the auto-subscription:
  subscribes when the gate stays blocked and prUrl is resolvable, clears when
  any gate for the run opens
- SpaceRuntimeService.handleBlockedRunExternalEvent re-evaluates every gate of
  the run's workflow on external-event arrival; when a gate opens it clears
  the subscription and injects a courtesy notification into the active agent
  session via taskAgentManager.injectRuntimeRecoveryMessage

Tests:
- parse-pr-url unit tests (canonical, GHE, suffix, malformed)
- runtime-level integration tests for register/clear/idempotency/blocked-hook
- service-level integration tests covering auto-subscribe, event-driven gate
  open, session notification, and non-blocked / no-prUrl no-op paths
- space-test-db helper gains the gate_open_state table (migration 130) so
  service-level tests can exercise the real ChannelRouter path

* fix(space): address #2141 review — auto-kind, write_gate sync, blocked→in_progress, 120s poll

Review feedback (4 P2/P3 comments) + 1 follow-up:

- Auto-subscriptions now use subscriptionKind='auto' instead of 'dynamic' so
  clearPrEventSubscripti... (continued)

23566 of 108413 relevant lines covered (21.74%)

11.61 hits per line

Source Files on job daemon-online-sdk - 27893201234.27
  • Tree
  • List 356
  • Changed 10
  • Source Changed 10
  • Coverage Changed 10
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 27893201234
  • 1156c730 on github
  • Prev Job for on dev (#27880581903.22)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc