fix(ts): cancel the D-22 label-default flip — mirror Python 34-06#127
Open
helloiamvu wants to merge 4 commits into
Open
fix(ts): cancel the D-22 label-default flip — mirror Python 34-06#127helloiamvu wants to merge 4 commits into
helloiamvu wants to merge 4 commits into
Conversation
Cross-SDK divergence found during the 1.17 docs refresh: Python 1.17.0
cancelled the D-22 flip (bare dataset() keeps label='cli' silently, no
FutureWarning, NO default change at 2.0), but TS dataset() still fired the
one-time warning and its TSDoc promised 'default flips to label=null at
2.0' — if TS had followed through, cross-SDK byte-parity would break at
2.0.
- research.ts: remove the _defaultLabelWarned latch, _D22_BRIDGE_WARNING,
fireDefaultLabelWarningOnce, the _resetDefaultLabelWarning test hook, and
the internal warnOnDefaultLabel flag — the alias-split wrappers stay
DISTINCT callables (pinned by tests) but no longer diverge behaviorally;
omitted label resolves to the explicit, contractually-stable 'cli'
default silently. TSDoc rewritten to the cancelled-flip semantics.
- panels.ts: drop the FIX-5 once-per-panel warning call.
- index.ts: drop the _resetDefaultLabelWarning export (underscore test
hook, removed with the machinery it reset).
- labels.ts: comment sweep ('D-22 2.0 default' -> stable implicit default).
- tests: label-axis + panels warning assertions inverted to
never-warns + a new omitted==explicit byte-identity check.
meta suite 289 passed; typecheck clean; size budgets green (meta
42.21/44 kB — 0.2 kB smaller). PT-3401 reconciliation log updated in the
planning repo.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
✅ Docs-required check: PASS API-surface change includes docs updates — no reminder needed. API-surface files changed: Docs files changed: |
|
Parity ticket gate: PASSED See |
… no-op through 1.x codex + TypeScript Architect converged: dropping a shipped root-barrel export in a MINOR breaks downstream compile-time imports. The hook is now a @deprecated no-op stub (the latch it reset no longer exists), re-exported from the barrel, pinned by an importability test; removed at 2.0. Also fixes the stale FIRES-ONCE header comment in label-axis.test.ts (Architect below-gate note). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…below-gate nit) Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Member
Author
|
Review loop complete (REVIEW-DISCIPLINE, codex gpt-5.5 + TypeScript Architect):
Gates: meta suite 289 passed · typecheck clean (all four strict flags) · size budgets green (meta 42.21/44 kB, −0.2 kB). |
Also re-fires the parity-ticket gate so it reads the updated PR body (typescript_only marker) — the workflow only triggers on opened/synchronize and reruns replay the stale event payload. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Cross-SDK divergence found during the 1.17 docs refresh: Python 1.17.0 cancelled the D-22 label-default flip (bare
dataset()keepslabel="cli"silently — an explicit, contractually-stable default; nothing flips at 2.0), but the TS SDK still emitted the one-timeFutureWarningand its TSDoc still promisedlabel=nullat 2.0. If TS had followed through, cross-SDK byte-parity would break at 2.0.This ports the cancellation (mirrors
packages/core34-06 semantics exactly):research.ts: warning latch,_D22_BRIDGE_WARNING,fireDefaultLabelWarningOnce, the_resetDefaultLabelWarningtest hook, and the internalwarnOnDefaultLabelflag removed. The alias-split wrappers stay distinct callables (pinned by tests) but no longer diverge behaviorally; theLABEL_OMITTEDsentinel path (omitted ≠ explicitnull) is untouched, so output bytes are unchanged.panels.ts: the once-per-panel warning call removed.index.ts:_resetDefaultLabelWarningexport dropped (an underscore test hook, removed with the machinery it reset).label="cli"byte-identity check;labels.ts/TSDoc comment sweep..planningPT-3401 parity ticket gains a reconciliation log entry.Gates
🤖 Generated with Claude Code
typescript_only: true — this PR is itself the parity action: it ports the already-landed Python 34-06 flip-cancellation to TS (reconciliation recorded in
.planning/parity-tickets/PT-3401-ts-async-align.md); there is no Python-side change to mirror.