Current authoritative state
This public collaboration contrast-color contract is repaired on canonical single-writer Draft PR #167 / fix/collaboration-awareness-bounds-20260811. Protected shipped truth remains exact main@3b38ead2d00f44eb578d0689087b9293b3dabe1e; current exact Draft head is d8407c5fc65027233c880cae2d1f2d14d5261d91. Fresh exact comparison reports the branch diverged 54 ahead / 29 behind, merge base 50ac98cfa0ad9e8dd75f93ca437a5679fed4d804, across 19 awareness/docs/test paths. This is active-PR truth only.
Current contrastingTextColor() validates runtime input before channel slicing/parsing: only exact #[0-9a-fA-F]{6} strings are accepted. Non-string, shorthand, non-hex, alpha, color-name and other malformed values fail closed with stable payload-redacted RangeError('collaboration contrast color must be a six-digit hexadecimal color'). Accepted lowercase/uppercase six-digit tokens retain the existing WCAG relative-luminance computation and threshold. Remote cursor rendering remains separate: untrusted awareness colors are descriptor-read and restricted to the same grammar, otherwise the existing safe fallback is used.
The same canonical lane now additionally contains host-awareness capability/count failures, scoped-provider disposal failures, and direct listener registration/removal failures. Current head redacts host callback errors and preserves retry/cleanup state; those reliability repairs do not change this public color grammar or luminance calculation. Remote awareness remains untrusted presentation data and no transport, persistence, auth, tenancy, credentials, network, model/provider, migration, retention, deployment or durable-audit authority moved into Inkspan.
Exact-current-head evidence
For unchanged exact head d8407c5fc65027233c880cae2d1f2d14d5261d91:
- CI
32221759117: completed / success, including exact 100% root coverage, package consumers, demo build, Office Python 3.11–3.14 and Playwright 1.62.0 cross-engine evidence;
- Security Scan
32221759122: completed / success;
- SAST Semgrep
32221759109: completed / success;
- formal submitted reviews: 0;
- unresolved review threads: 0;
- GitHub reports the Draft mechanically mergeable.
Repository technical success is not qualifying independent approval. Predecessor, pending, queued, in-progress, skipped, cancelled, absent, stale, status-only or model-only evidence remains non-passing.
Integration boundary
The defect is active-PR repaired behavior only and is not protected-main shipped truth. Keep this issue open until #167 integrates under then-live governance. Keep #167 Draft/unmerged while #118 owns protected v0.6.0 publication/provenance/digest acceptance. Before lifecycle action refetch exact head/live base, ancestry, formal reviews/threads, live governance and every applicable workflow. Do not create a competing collaboration writer, self-approve, transfer predecessor evidence, weaken gates, move protected main, destructively reconcile the diverged branch, or fabricate release identity.
Current authoritative state
This public collaboration contrast-color contract is repaired on canonical single-writer Draft PR #167 /
fix/collaboration-awareness-bounds-20260811. Protected shipped truth remains exactmain@3b38ead2d00f44eb578d0689087b9293b3dabe1e; current exact Draft head isd8407c5fc65027233c880cae2d1f2d14d5261d91. Fresh exact comparison reports the branch diverged 54 ahead / 29 behind, merge base50ac98cfa0ad9e8dd75f93ca437a5679fed4d804, across 19 awareness/docs/test paths. This is active-PR truth only.Current
contrastingTextColor()validates runtime input before channel slicing/parsing: only exact#[0-9a-fA-F]{6}strings are accepted. Non-string, shorthand, non-hex, alpha, color-name and other malformed values fail closed with stable payload-redactedRangeError('collaboration contrast color must be a six-digit hexadecimal color'). Accepted lowercase/uppercase six-digit tokens retain the existing WCAG relative-luminance computation and threshold. Remote cursor rendering remains separate: untrusted awareness colors are descriptor-read and restricted to the same grammar, otherwise the existing safe fallback is used.The same canonical lane now additionally contains host-awareness capability/count failures, scoped-provider disposal failures, and direct listener registration/removal failures. Current head redacts host callback errors and preserves retry/cleanup state; those reliability repairs do not change this public color grammar or luminance calculation. Remote awareness remains untrusted presentation data and no transport, persistence, auth, tenancy, credentials, network, model/provider, migration, retention, deployment or durable-audit authority moved into Inkspan.
Exact-current-head evidence
For unchanged exact head
d8407c5fc65027233c880cae2d1f2d14d5261d91:32221759117: completed / success, including exact 100% root coverage, package consumers, demo build, Office Python 3.11–3.14 and Playwright 1.62.0 cross-engine evidence;32221759122: completed / success;32221759109: completed / success;Repository technical success is not qualifying independent approval. Predecessor, pending, queued, in-progress, skipped, cancelled, absent, stale, status-only or model-only evidence remains non-passing.
Integration boundary
The defect is active-PR repaired behavior only and is not protected-main shipped truth. Keep this issue open until #167 integrates under then-live governance. Keep #167 Draft/unmerged while #118 owns protected
v0.6.0publication/provenance/digest acceptance. Before lifecycle action refetch exact head/live base, ancestry, formal reviews/threads, live governance and every applicable workflow. Do not create a competing collaboration writer, self-approve, transfer predecessor evidence, weaken gates, move protected main, destructively reconcile the diverged branch, or fabricate release identity.