v0.7.2 Package Runners + CI Gate

Five package-level test runners validating extension API contracts:
- notes-runner: CRUD, folders, tags, search, backlinks (12 tests)
- chat-runner: conversations, messaging, search (9 tests)
- schedules-runner: CRUD + run (5 tests)
- workflow-runner: definitions, instances, stage progression (5 tests)
- renderer-runner: registry contract, block matching (4 tests)

Runner Result API (in-memory, 3 admin endpoints) stores results
from browser runs for CI consumption. Test-runners surface v0.2.0
posts results after each run and fixes suite prefix matching.

CI integration via Playwright: wait-for-healthy.sh, run-surface-tests.sh,
surface-test-driver.js. New test-runners stage in Gitea CI pipeline.

Verified: 169 passed, 0 failed, 9 warned, 8 skipped on fresh install.
Go handler tests: 4/4 passing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-01 23:52:31 +00:00
parent 829caa3b20
commit 448071d6b9
30 changed files with 1397 additions and 26 deletions

View File

@@ -18,14 +18,15 @@
/** Endpoint map for auto-cleanup by resource type. */
const CLEANUP_ENDPOINTS = {
channel: '/api/v1/channels/',
note: '/api/v1/ext/notes/notes/',
folder: '/api/v1/ext/notes/folders/',
workflow: '/api/v1/workflows/',
schedule: '/api/v1/schedules/',
package: '/api/v1/admin/packages/',
user: '/api/v1/admin/users/',
team: '/api/v1/admin/teams/',
channel: '/api/v1/channels/',
conversation: '/s/chat-core/api/conversations/',
note: '/s/notes/api/notes/',
folder: '/s/notes/api/folders/',
workflow: '/api/v1/workflows/',
schedule: '/api/v1/schedules/',
package: '/api/v1/admin/packages/',
user: '/api/v1/admin/users/',
team: '/api/v1/admin/teams/',
};
/** Sentinel for skip flow control. */