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

lsm / neokai / 25671263236
82%

Build:
DEFAULT BRANCH: dev
Ran 11 May 2026 12:52PM UTC
Jobs 28
Files 522
Run time 1min
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

11 May 2026 12:51PM UTC coverage: 82.517%. First build
25671263236

push

github

web-flow
feat: add workflow handle as alternative identifier (#1841)

* feat: add workflow handle as alternative identifier

Add a short human-readable handle (e.g. 'coding-with-qa') as an alternative
identifier for workflows within a space, alongside the existing UUID.

- Migration 124: adds handle column + partial unique index on (space_id, handle)
- Shared types: handle field on SpaceWorkflow, CreateSpaceWorkflowParams,
  UpdateSpaceWorkflowParams
- Repository: handle CRUD, getWorkflowByHandle, getHandlesForSpace
- Manager: auto-generate handle from name via slugify with collision resolution
  (-2, -3, etc.), validate uniqueness, regenerate on rename
- RPC handlers: spaceWorkflow.get accepts id or handle+spaceId
- MCP tools: change_plan, get_workflow_detail, create_standalone_task accept
  workflow_handle as alternative to workflow_id

* fix: address review feedback on workflow handle feature

- P1: Add handle field to SpaceWorkflowSummary type, repo SELECT/mapping,
  and workflowToSummary in space-store.ts
- P1: Call validateSlug() in validateHandle to reject invalid formats
- P2: Use getHandlesForSpace() instead of listWorkflows() in validateHandle
  and generateUniqueHandle for lightweight queries
- P3: Better error message when handle provided without spaceId in RPC get
- P3: Update create_standalone_task workflow_id description to mention handles
- Only regenerate handle on update when name actually changes (not on every
  save with same name)
- Validate explicit handles during workflow creation (format + uniqueness)
- Migration 124: create index even when column already exists

* fix: guard handle inputs, validate generated handles, backfill existing workflows

- createWorkflow: guard against null and non-string handle inputs
- updateWorkflow: reject non-string handles with WorkflowValidationError
- generateUniqueHandle: validate slug after collision suffixing, truncate
  with fallback if over-length
- Migration 124: backfill handles for existing work... (continued)

8346 of 11648 branches covered (71.65%)

Branch coverage included in aggregate %.

358 of 391 new or added lines in 13 files covered. (91.56%)

65977 of 78422 relevant lines covered (84.13%)

289.64 hits per line

Uncovered Changes

Lines Coverage ∆ File
20
74.55
packages/daemon/src/lib/space/tools/space-agent-tools.ts
9
89.97
packages/daemon/src/storage/schema/migrations.ts
2
93.96
packages/daemon/src/lib/rpc-handlers/space-export-import-handlers.ts
2
92.18
packages/daemon/src/lib/rpc-handlers/space-workflow-handlers.ts
Jobs
ID Job ID Ran Files Coverage
1 daemon-4-space-storage - 25671263236.1 11 May 2026 12:53PM UTC 133
55.91
GitHub Action Run
2 daemon-online-mcp - 25671263236.2 11 May 2026 12:52PM UTC 287
18.15
GitHub Action Run
3 daemon-5-space-workflow - 25671263236.3 11 May 2026 12:52PM UTC 107
31.67
GitHub Action Run
4 daemon-online-agent-sdk - 25671263236.4 11 May 2026 12:53PM UTC 287
22.27
GitHub Action Run
5 daemon-online-features-2 - 25671263236.5 11 May 2026 12:53PM UTC 287
22.67
GitHub Action Run
6 daemon-2-handlers - 25671263236.6 11 May 2026 12:52PM UTC 130
56.87
GitHub Action Run
7 daemon-online-features-1 - 25671263236.7 11 May 2026 12:53PM UTC 287
23.01
GitHub Action Run
8 daemon-online-sdk - 25671263236.8 11 May 2026 12:53PM UTC 287
22.15
GitHub Action Run
9 daemon-5-space-other - 25671263236.9 11 May 2026 12:53PM UTC 126
30.92
GitHub Action Run
10 daemon-5-space-runtime - 25671263236.10 11 May 2026 12:53PM UTC 148
40.59
GitHub Action Run
11 daemon-online-lifecycle - 25671263236.11 11 May 2026 12:53PM UTC 287
22.7
GitHub Action Run
12 daemon-online-coordinator - 25671263236.12 11 May 2026 12:52PM UTC 287
7.42
GitHub Action Run
13 daemon-online-components - 25671263236.13 11 May 2026 12:52PM UTC 287
17.71
GitHub Action Run
14 daemon-online-rpc-3 - 25671263236.14 11 May 2026 12:53PM UTC 287
19.92
GitHub Action Run
15 daemon-online-rpc-4 - 25671263236.15 11 May 2026 12:54PM UTC 287
23.53
GitHub Action Run
16 daemon-0-shared - 25671263236.16 11 May 2026 12:52PM UTC 29
84.15
GitHub Action Run
17 daemon-online-space-1 - 25671263236.17 11 May 2026 12:53PM UTC 287
32.24
GitHub Action Run
18 daemon-online-space-2 - 25671263236.18 11 May 2026 12:54PM UTC 287
32.16
GitHub Action Run
19 daemon-online-rewind-1 - 25671263236.19 11 May 2026 12:54PM UTC 287
22.46
GitHub Action Run
20 daemon-5-space-agent - 25671263236.20 11 May 2026 12:53PM UTC 170
28.25
GitHub Action Run
21 daemon-online-git - 25671263236.21 11 May 2026 12:53PM UTC 287
18.83
GitHub Action Run
22 daemon-1-core - 25671263236.22 11 May 2026 12:53PM UTC 292
37.95
GitHub Action Run
23 daemon-online-rewind-2 - 25671263236.23 11 May 2026 12:53PM UTC 287
22.99
GitHub Action Run
24 daemon-online-websocket - 25671263236.24 11 May 2026 12:53PM UTC 287
17.83
GitHub Action Run
25 daemon-online-convo - 25671263236.25 11 May 2026 12:54PM UTC 287
22.14
GitHub Action Run
26 web - 25671263236.26 11 May 2026 12:53PM UTC 222
76.54
GitHub Action Run
27 daemon-online-rpc-2 - 25671263236.27 11 May 2026 12:53PM UTC 287
23.63
GitHub Action Run
28 daemon-online-rpc-1 - 25671263236.28 11 May 2026 12:53PM UTC 287
19.19
GitHub Action Run
Source Files on build 25671263236
  • Tree
  • List 522
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #25671263236
  • 6c9e79df on github
  • Prev Build on dev (#25648398043)
  • Next Build on dev (#25671571090)
  • 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