Skip to content

fix: SDD consistency rejects the Unicode C1 designation in prose as a shorthand case ID (#845) - #874

Merged
efraespada merged 1 commit into
developfrom
bugfix/845-sdd-consistency-rejects-the-unicode-c1-designation-in-prose-as-a-shorthand-case-id
Nov 3, 2026
Merged

efraespada merged 1 commit into
developfrom
bugfix/845-sdd-consistency-rejects-the-unicode-c1-designation-in-prose-as-a-shorthand-case-id

Conversation

@efraespada

@efraespada efraespada commented Nov 3, 2026 •

Copy link
Copy Markdown
Member

Fixes #845.

The SDD validator rejected ordinary Unicode/control and connector designations because it scanned all visible prose for short case-ID spellings. Writers can now keep terminology such as DEL/C1 without changing literal acceptance rows or reciprocal requirement mappings.

A pure classifier reuses the existing CommonMark projection to identify case-reference roles, inline labels and table columns. Explicit case references and contiguous case-ID lists remain strict; technical scenario/behavior cells and URI destinations do not acquire a shorthand role just from their spelling. Token boundaries also keep compound designators intact. Canonical identity fields, unknown qualified references, legacy owner reservations/ranges, exact budgets, reciprocal links, immutable paths, repair limits and publication/replay checks retain their existing validation.

The owning SDD, a dedicated companion with 40 literal acceptance cases, generation guidance, catalog and user documentation are updated. A controlled before/after proof invokes the actual approved SDK source with 48 independently authored fixture rows, preserving the rows and reverse links across wording variants. The reference consumer document was read immutably and its Git blob verified; this is not a reconstruction of its historical checkpoint or a claim of consumer implementation execution.

Local validation: 879 Jest suites / 17,148 tests pass (35 existing skips), including 77 distinct new regressions. Extension tests remain 267/267 with every coverage metric at 100%. Full-suite LCOV covers 83/83 modified lines, zero misses or partials against 16bf97f. The classifier measures 100% lines/statements/functions/branches (59 lines / 39 branches), enforced by an exhaustive budget. Regressions exercise real local Git publication/rejection/replay, unchanged owner bytes, bounded draft repair and safe English/Spanish recovery. No settings, permissions, limits or stored-state migration are introduced.

Remote acceptance verified for cd6a4da2e39c against 16bf97fff426: CI, Commit, Branch Sync and all three native platforms pass. Linux/macOS pass 879 suites / 17,148 tests; Windows passes 878 suites / 17,044 tests with its existing platform skips. All three test the exact base/head merge and candidate tree, and complete deferred cleanup. Linux Firefox ESR records 19 assertions with the extension actually loaded.

The explicit recheck completes 2/2 partitions with all context retained and no omissions/truncations. Its sole earlier finding was disproved using the real validator plus GitHub GFM rendering and explicitly resolved as obsolete; there are zero open/reopened/unverified/unknown findings and no open native threads. Finding verification. Official Codecov confirms 83/83 changed coverable lines, zero misses and zero partials (100%), with both compare SHAs verified.

Types, lint, documentation/SDD/catalog/workflow contracts and Graphify pass. Build and package validation (96 files), CLI/typed API/isolated setup-web smoke and normal commit hooks pass. The hooks reran all 879 suites / 17,148 tests; all 19 prepared input hashes remain unchanged.

…e-as-a-shorthand-case-id: distinguish case references from technical prose
@docs-page

docs-page Bot commented Nov 3, 2026

Copy link
Copy Markdown

To preview the documentation for this pull request, visit the following URL:

docs.page/vypdev/copilot~874

Documentation is deployed and generated using docs.page

@vypbot vypbot added size: XXL Indicates an extremely large task or issue that requires significant time and effort to complete. state:ai-processing labels Nov 3, 2026
@vypbot vypbot changed the title Fix SDD technical designators mistaken for shorthand case references fix: SDD consistency rejects the Unicode C1 designation in prose as a shorthand case ID (#845) Nov 3, 2026
@vypbot
vypbot self-requested a review November 3, 2026 16:04
@vypbot vypbot added the 75% Progress: 75% label Nov 3, 2026
@vypbot vypbot added this to vypdev Nov 3, 2026
@vypbot vypbot moved this to In Progress in vypdev Nov 3, 2026
@vypbot
vypbot changed the base branch from develop to master November 3, 2026 16:04
@vypbot
vypbot changed the base branch from master to develop November 3, 2026 16:04

@vypbot vypbot left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Current status: All findings originating in this review are resolved.
Last reconciled on cd6a4da. See aggregate Bugbot status.

🤖 Bugbot review snapshot

Bugbot reported 1 potential problem when commit cd6a4da was analyzed. This snapshot is historical; use the status block above for current state. 1 finding is linked to changed code.

Findings

  • medium: Pipes inside code spans split case-reference cells — src/domain/sdd_case_reference.ts:23

Comment thread src/domain/sdd_case_reference.ts Resolved
@vypbot

vypbot commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

Bugbot: review complete

Current status: No active findings on cd6a4da.

Pull request · Verified commit · Workflow run

@vypbot

vypbot commented Nov 3, 2026 •

Copy link
Copy Markdown
Contributor

Copilot approval · Human review needed

Status: A protected workflow, policy, or trust-boundary file changed.
Completed: 1/1 observed checks succeeded; Bugbot complete.
Action required: Ask a human reviewer to decide.
Impact: No new approval is confirmed for this revision.
See checks

Technical evidence

Revision: cd6a4da2e39c; base: 16bf97fff426; reason: protected-path.

@efraespada

Copy link
Copy Markdown
Member Author

/copilot recheck

@codecov-commenter

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 95.40%. Comparing base (16bf97f) to head (cd6a4da).

Additional details and impacted files
@@           Coverage Diff            @@
##           develop     #874   +/-   ##
========================================
  Coverage    95.39%   95.40%           
========================================
  Files         1146     1147    +1     
  Lines        37904    37985   +81     
  Branches     11297    11309   +12     
========================================
+ Hits         36158    36239   +81     
  Misses         672      672           
  Partials      1074     1074           
Files with missing lines Coverage Δ
src/domain/sdd_case_reference.ts 100.00% <100.00%> (ø)
src/domain/sdd_draft_consistency.ts 100.00% <100.00%> (ø)
src/domain/sdd_visible_references.ts 100.00% <100.00%> (ø)
src/testing/sdd_consistency_fixture.ts 100.00% <100.00%> (ø)
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@efraespada
efraespada merged commit 2b4a3e7 into develop Nov 3, 2026
20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

75% Progress: 75% size: XXL Indicates an extremely large task or issue that requires significant time and effort to complete. state:verified

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

🐛🧑‍💻 - SDD consistency rejects the Unicode C1 designation in prose as a shorthand case ID

3 participants