Skip to content

[Vulcan] Clarify custom nickname comma shielding limit - #22

Merged
iliaal merged 1 commit into
masterfrom
docs/clarify-custom-delimiter-limit
Oct 15, 2026
Merged

iliaal merged 1 commit into
masterfrom
docs/clarify-custom-delimiter-limit

Conversation

@iliaal

@iliaal iliaal commented Oct 13, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Document the existing 4,096-byte cutoff for nickname-comma shielding when any valid configured opener or closer is longer than one byte, including ASCII multi-character pairs.
  • Explain that an unused longer pair still selects this path, and that exclusively single-byte pairs (including defaults) avoid this particular cutoff.
  • Correct the historical changelog claim that implied all delimiter configurations continued shielding above 4 KB.
  • Clarify source and existing test comments. No executable code or test expectations changed.

Changed parser outputs: none. This documents a current limitation; it does not fix parsing of long custom-delimiter rows.

Evidence and scope

Thirty exact BASE/HEAD probes cover 4,095 / 4,096 / 4,097 bytes, with and without nickname commas:

  • Default single-byte pairs preserve nickname commas at all three lengths.
  • ASCII << / >> and Unicode « / » preserve them through 4,096 bytes, but treat them as structural above that point.
  • Adding an unused valid longer pair also exposes the cutoff for ordinary parentheses.
  • An invalid over-64-byte pair is sanitized away and does not select the longer-delimiter path.
  • No-comma neighbours retain their nicknames across the boundary.

Reviewed normalization, sanitization, both delimiter endpoints, shared structural splitting/masking, parser and confidence callers, and existing boundary coverage. Long custom-delimiter inputs remain subject to the documented limitation; nesting/comma caps and overall input limits are unchanged. Executable PHP tokens are identical to BASE in both changed PHP files. No runtime regression test was added to endorse the existing field loss.

Patch hunks are disjoint from open #20 and #21, including their README and changelog edits.

Verification

  • Full PHPUnit on PHP 8.4.26: 1,242 tests, 3,271 assertions, no skips.
  • PHPStan level 9 and PHP 8.5 compatibility configuration pass.
  • PHP CS Fixer dry run, empty-baseline guard, PHP 8.5 deprecation grep, README punctuation guard, and git diff --check pass.
  • Independent read-only review approved exact tree; all 30 probes reproduced and 70 focused tests / 265 assertions passed.
  • All 86 remote blob contents, paths, and modes match the tested checkout before PR creation.
  • Local subprocess extension configuration was corrected before the final successful runs.
  • Exact-head CI run 38438657559 passed all five jobs: PHP 8.3/8.4/8.5 tests, Static Analysis, and Code Style. Each PHP lane ran 1,242 tests / 3,271 assertions with no skips; Composer audit reported no advisories.
  • All run/job/check pages were inspected through empty pages: one run, five successful jobs/checks, no legacy statuses, and no skipped/build-only lanes. Workflow security scan was not triggered because no workflow paths changed.
  • No performance claim.

Base: e93f6afa3d25baa7b0a8de74c7488aacfb03408e
Head: f865657c3a167bde71753a92c4e016a477b9b4f1
Tree: edddf78678aebb8d80bcc4f858c039821f0b3120

@iliaal iliaal changed the title Clarify custom nickname comma shielding limit [Vulcan] Clarify custom nickname comma shielding limit Oct 15, 2026
@iliaal
iliaal merged commit 0940584 into master Oct 15, 2026
5 checks passed
@iliaal
iliaal deleted the docs/clarify-custom-delimiter-limit branch October 15, 2026 12:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant