← Back to suites
cv-server-unit zero-budget semantic-index

CV server unit

Pin the @cv/server library surface: the actor-id round-trip used by every op envelope, the changes-stream broker that fans out SSE, the compression helper for sub-doc snapshots, the dispatch-fallback adapter shell, job records + jobcache commands and lookup, key entitlements, LLM error classification, the mirror writer, the process-request claim and lease flow, score recompute, stage attempts ledger, workspace ops, and the workspace sub-doc split commit path.

Behaviours 0 Tests 133 Graph 134 nodes · 135 edges Runner - CircleCI - Source qa/suites/cv-server-unit.yaml

Test witnesses

These tests belong to the suite. Missing implementation links stay visible until a code-backed graph claim records them.

TestStatusImplementationOpen
null agentId falls back to the per-class legacy sentinel
@cv/server · vitest · src/actor-id-roundtrip.test.ts
catalogmissing implementation linkTest
pipeline + human + agent ops land for the same workspace and the audit query distinguishes them
@cv/server · vitest · src/actor-id-roundtrip.test.ts
catalogmissing implementation linkTest
protects human-owned job fields from later system job.update writes
@cv/server · vitest · src/actor-id-roundtrip.test.ts
catalogmissing implementation linkTest
accepts canonical formats matching the class
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
accepts legacy bare-token system ids for backwards compatibility
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
accepts the legacy sentinel for the matching class
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
accepts the three canonical classes
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
accepts vendor-namespaced detail strings with one slash
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
actorIdSchemaFor returns matching schemas
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
discriminated envelope rejects class/id mismatches
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
formats agent actor_id as <agent>:<provider>:<model>
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
formats human actor_id as device:<deviceId>
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
formats non-LLM system actor_id with structured provider
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
formats system actor_id as <provider>:<details>
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
keeps vendor-namespaced details intact when parsing
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
legacy token cannot collide with a real provider
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
parses each canonical class round-trip
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
parses legacy sentinels per class
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
rejects bare-token system ids (canonical form is <provider>:<details>)
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
rejects empty / non-string values
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
rejects empty parts
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
rejects malformed agent actor_id
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
rejects malformed human actor_id
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
rejects malformed system actor_id (schema-level enforces <provider>:<details>)
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
rejects mismatched class/id pairs
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
rejects the legacy sentinel for the wrong class
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
rejects values outside the union
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
returns valid:false for malformed strings
@cv/schemas · vitest · src/actor.schema.test.ts
catalogmissing implementation linkTest
accepts a bare numeric ?since= value
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
degrades gracefully when one table is missing
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
does not return events from other workspaces
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
emits an SSE comment with the current timestamp
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
emits an empty result on an empty db
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
emits the SSE wire format with id, event, data, and a blank-line terminator
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
emits the retry directive in ms
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
extracts the numeric prefix from a Last-Event-ID frame
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
floors fractional cursors
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
interleaves the three feeds by ts_ms ascending
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
only emits events strictly after the cursor
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
rejects garbage to 0 rather than NaN
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
respects the per-table row limit
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
returns 0 when no header or query is provided
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
shapes a process-request event correctly
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
shapes a sub-doc event correctly
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
shapes an agent-presence event correctly
@cv/server · vitest · src/changes-stream.test.ts
catalogmissing implementation linkTest
accepts ArrayBuffer input
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
achieves ≥ 10× compression on a 50 KB cv_profile JSON
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
compresses application/json
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
compresses application/octet-stream
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
compresses text/* with params
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
compresses text/markdown
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
compresses text/plain
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
compresses text/plain and sets contentEncoding
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
does NOT compress application/pdf
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
does NOT compress image/png
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
falls back to br when zstd absent
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
falls back to gzip when only gzip offered
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
ignores quality values (q=...)
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
is case-insensitive
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
prefers zstd when present
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
returns identity for null header
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
returns identity when no preferred encoding matches
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
returns null for null/undefined input
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
round-trips a 50 KB cv_profile
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
round-trips a JSON-serialisable value
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
round-trips an ArrayBuffer input for decompressBlob
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
round-trips arbitrary bytes identically
@cv/server · vitest · src/compression.test.ts
catalogmissing implementation linkTest
caps maxRequests at 4 to keep server-side dispatch bounded
@cv/server · vitest · src/dispatch-fallback.test.ts
catalogmissing implementation linkTest
logs but resolves cleanly when the fallback executor returns non-200
@cv/server · vitest · src/dispatch-fallback.test.ts
catalogmissing implementation linkTest
omits requestIds and bypassStaleAge for sweep-style recovery dispatches
@cv/server · vitest · src/dispatch-fallback.test.ts
catalogmissing implementation linkTest
posts to the per-workspace fallback executor with explicit requestIds + bypassStaleAge
@cv/server · vitest · src/dispatch-fallback.test.ts
catalogmissing implementation linkTest
still runs the dispatch when ctx.waitUntil is unavailable (e.g. local dev)
@cv/server · vitest · src/dispatch-fallback.test.ts
catalogmissing implementation linkTest
swallows fetch errors so the originating request is unaffected
@cv/server · vitest · src/dispatch-fallback.test.ts
catalogmissing implementation linkTest
chunks workspace job link reads before D1 numbered placeholders exceed ?100
@cv/server · vitest · src/job-records.test.ts
catalogmissing implementation linkTest
degrades to workspace-only when a visible job has no D1 link
@cv/server · vitest · src/job-records.test.ts
catalogmissing implementation linkTest
does not expose hidden ad or role ids from workspace or jobcache records
@cv/server · vitest · src/job-records.test.ts
catalogmissing implementation linkTest
resolves workspace overrides above ad facts above role facts
@cv/server · vitest · src/job-records.test.ts
catalogmissing implementation linkTest
claims pending commands with a lease and parsed payload
@cv/server · vitest · src/jobcache-commands.test.ts
catalogmissing implementation linkTest
finishes a claimed command as done
@cv/server · vitest · src/jobcache-commands.test.ts
catalogmissing implementation linkTest
reclaims expired running commands and skips live leases
@cv/server · vitest · src/jobcache-commands.test.ts
catalogmissing implementation linkTest
rejects finish attempts with the wrong claim token
@cv/server · vitest · src/jobcache-commands.test.ts
catalogmissing implementation linkTest
returns failed commands to pending when retry delay is provided
@cv/server · vitest · src/jobcache-commands.test.ts
catalogmissing implementation linkTest
builds a server-side reader from resolved ad and role facts
@cv/server · vitest · src/jobcache-lookup.test.ts
catalogmissing implementation linkTest
fetches a workspace-safe shared ad projection
@cv/server · vitest · src/jobcache-lookup.test.ts
catalogmissing implementation linkTest
merges only missing workspace fields and records jobcache origins
@cv/server · vitest · src/jobcache-lookup.test.ts
catalogmissing implementation linkTest
returns null from fact resolve when jobcache is unavailable
@cv/server · vitest · src/jobcache-lookup.test.ts
catalogmissing implementation linkTest
does not split credentials that contain colons
@cv/server · vitest · src/key-entitlements.test.ts
catalogmissing implementation linkTest
fails closed when the settings sub-doc cannot be read
@cv/server · vitest · src/key-entitlements.test.ts
catalogmissing implementation linkTest
grants shared scrape providers to green workspaces
@cv/server · vitest · src/key-entitlements.test.ts
catalogmissing implementation linkTest
returns null for invalid tier values
@cv/server · vitest · src/key-entitlements.test.ts
catalogmissing implementation linkTest
splits comma-separated server key rotation lists
@cv/server · vitest · src/key-entitlements.test.ts
catalogmissing implementation linkTest
splits newline-separated server key rotation lists
@cv/server · vitest · src/key-entitlements.test.ts
catalogmissing implementation linkTest
uses the canonical settings sub-doc only
@cv/server · vitest · src/key-entitlements.test.ts
catalogmissing implementation linkTest
returns 429 with retry metadata for exhausted rate-limit chains
@cv/server · vitest · src/llm-errors.test.ts
catalogmissing implementation linkTest
returns 503 for mixed provider chain exhaustion instead of an opaque 500
@cv/server · vitest · src/llm-errors.test.ts
catalogmissing implementation linkTest
returns null for an unknown ID
@cv/server · vitest · src/mirror.test.ts
catalogmissing implementation linkTest
returns null for unknown IDs
@cv/server · vitest · src/mirror.test.ts
catalogmissing implementation linkTest
returns null when the mirror source no longer exists (orphaned mirror)
@cv/server · vitest · src/mirror.test.ts
catalogmissing implementation linkTest
returns readOnly=false for a real source_id
@cv/server · vitest · src/mirror.test.ts
catalogmissing implementation linkTest
returns readOnly=true for a frozen mirror
@cv/server · vitest · src/mirror.test.ts
catalogmissing implementation linkTest
returns readOnly=true with mirror info for a live mirror_id
@cv/server · vitest · src/mirror.test.ts
catalogmissing implementation linkTest
returns the source_id (not mirror_id) for a mirror
@cv/server · vitest · src/mirror.test.ts
catalogmissing implementation linkTest
returns the source_id for a direct workspace
@cv/server · vitest · src/mirror.test.ts
catalogmissing implementation linkTest
can claim an exact request id after inspecting queue eligibility
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
claims only eligible queued requests and hides tokens from normal reads
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
creates and lists process requests without leaking claim tokens
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
defaults the requester class to system
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
does not store shared ad or role ids in request payloads
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
enforces the server fallback queued-age floor even when callers ask for fresh work
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
keeps terminal process requests immutable after completion
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
lets fallback workers claim only queued requests old enough for fallback
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
lets workerClass=server bypass the staleness floor when bypassStaleFloor is set
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
prevents duplicate claims until the lease expires
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
renews non-terminal leases from owner lifecycle updates
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
requires the claim token for terminal updates
@cv/server · vitest · src/process-requests.test.ts
catalogmissing implementation linkTest
only reacts to settings scoring inputs
@cv/server · vitest · src/score-recompute.test.ts
catalogmissing implementation linkTest
persists score patches through the shared jobs batch commit path
@cv/server · vitest · src/score-recompute.test.ts
catalogmissing implementation linkTest
classifies critic rejection as retryable quality work
@cv/server · vitest · src/stage-attempts.test.ts
catalogmissing implementation linkTest
classifies invalid keys as non-retryable auth issues
@cv/server · vitest · src/stage-attempts.test.ts
catalogmissing implementation linkTest
classifies rate limits as retryable quota issues
@cv/server · vitest · src/stage-attempts.test.ts
catalogmissing implementation linkTest
does not suggest repair for selected attempts
@cv/server · vitest · src/stage-attempts.test.ts
catalogmissing implementation linkTest
deletes jobs through the workspace sub-doc without touching D1 job rows
@cv/server · vitest · src/workspace-ops.test.ts
catalogmissing implementation linkTest
does not re-mirror the relational projection when the workspace commit succeeds
@cv/server · vitest · src/workspace-ops.test.ts
catalogmissing implementation linkTest
keeps raw_scrape out of job.update workspace ops
@cv/server · vitest · src/workspace-ops.test.ts
catalogmissing implementation linkTest
returns unchanged non-job ops by reference
@cv/server · vitest · src/workspace-ops.test.ts
catalogmissing implementation linkTest
throws WorkspaceCommitAfterRelationalWriteError when workspace state is unavailable
@cv/server · vitest · src/workspace-ops.test.ts
catalogmissing implementation linkTest
throws when the workspace commit fails after a relational side-effect batch
@cv/server · vitest · src/workspace-ops.test.ts
catalogmissing implementation linkTest
treats a missing jobs sub-doc as storage corruption
@cv/server · vitest · src/workspace-ops.test.ts
catalogmissing implementation linkTest
validates job ops against the workspace sub-doc before side effects
@cv/server · vitest · src/workspace-ops.test.ts
catalogmissing implementation linkTest
build*DocFromProjection produces a single-root Y.Doc per sub-doc
@cv/server · vitest · src/workspace-subdoc.split.test.ts
catalogmissing implementation linkTest
decomposes a legacy multi-root settings Y.Doc into three single-root docs
@cv/server · vitest · src/workspace-subdoc.split.test.ts
catalogmissing implementation linkTest
handles a legacy doc with empty layout / order_state roots
@cv/server · vitest · src/workspace-subdoc.split.test.ts
catalogmissing implementation linkTest
jsonProjectionFor returns the single relevant root per sub-doc
@cv/server · vitest · src/workspace-subdoc.split.test.ts
catalogmissing implementation linkTest