Skip to content

feat(diagnostics): resolve revision-scoped text selectors - #254

Draft
seonghobae wants to merge 31 commits into
feat/writing-diagnostics-contractfrom
feat/writing-diagnostics-projection
Draft

feat(diagnostics): resolve revision-scoped text selectors#254
seonghobae wants to merge 31 commits into
feat/writing-diagnostics-contractfrom
feat/writing-diagnostics-projection

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Scope

Stacked Task 2 implementation lane for PR #248's writing-diagnostics plan. This Draft targets feat/writing-diagnostics-contract; PR #249 and the governing #248 ADR/design branch remain explicit dependencies.

Current exact stack authority

  • parent: feat/writing-diagnostics-contract@e80545e6a85b628d624f43d60259f16c6b2244d6;
  • exact head: 760021c053fca1eb14fe1a344f10ccbf2d484ed5;
  • inherited architecture: ADR 0028 host-owned revision-bound diagnostics + ADR 0029 strict invalidation / semantic-neutral accessibility.

The branch was synchronized non-destructively to the exact current Task 1 parent. During that reconciliation, the stale child delta that deleted 21 lines from src/adrQualityContract.test.ts was identified as an unrelated parent-gate regression and was not carried forward. Fresh comparison resolves merge base exactly to the current parent, reports behind_by=0, and now contains 13 Task 2 paths rather than the prior 14-file delta. No gate was weakened, no force push was used, and no destructive rebase occurred.

Test-first behavior

The inverse resolver was built from failing production-boundary tests before implementation. This lane provides exact text-projection parity, Unicode-code-point to ProseMirror structural resolution, one grapheme-boundary classifier shared with forward evidence, stable redacted failures, multilingual/astral/combining/bidirectional/repeated/cross-block round trips, lists/tables/hard-breaks/atoms/empty-block/document-boundary coverage, hostile-reflection validation, and root plus React-free selector-subpath exports.

It has no nearest-text, substring, keyword, semantic, network/model/provider/persistence fallback. Under ADR 0029 it does not preserve diagnostics across any document-changing transaction.

Exact-current-head evidence

Current exact head 760021c053fca1eb14fe1a344f10ccbf2d484ed5 has no qualifying current-head PR workflow runs returned by the live workflow-run query yet. Predecessor focused projection TDD evidence is historical only. Formal submitted reviews and unresolved inline review threads are currently zero. Current-head CI/security/SAST/coverage/package/browser evidence therefore remains non-passing until freshly produced.

Remaining gates

Do not reintroduce the removed ADR-gate regression, transfer predecessor evidence, self-approve, weaken gates or bypass dependency order.

seonghobae and others added 25 commits August 12, 2026 11:16
@coderabbitai

coderabbitai Bot commented Aug 12, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

priority: medium Normal-priority or P2 work status: draft Draft pull request type: feature New or expanded product capability

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant