Skip to content

Train 26: #596, #581 - #602

Merged
rmorozov merged 13 commits into
masterfrom
claude/project-thread-53pwid
Oct 19, 2026
Merged

rmorozov merged 13 commits into
masterfrom
claude/project-thread-53pwid

Conversation

@rmorozov

Copy link
Copy Markdown
Member

Integration train, one CI run (master 3985100, after train 25).

Stacked: #596 (0269 public BigInt, head 65cec3e), #581 (0233 C++-only filters, head 267fb39).

Resolved here: #596 against the Markup alternatives from train 25 (BigInt is appended after WMarkup in Value::ValueData, includes for fwd.h and big_int.h both kept, docs row). Regenerated the task index and the parity table (1939 templates), set 0269 to done. No task number duplicates. ctest 3/3 locally.

Codex: both have a result and no unanswered P0/P1 (#596: P2 fixed in 65cec3e, re-review clean; #581: P1 fixed, P2 declined with reason). @codex security review never started on #596. Owners' own CI was green on both heads.

Roles: steward only.


Generated by Claude Code

claude added 13 commits October 18, 2026 11:27
…ve toxml (0233)

The five C++-only filters were registered but rendered an empty string.
Per docs/release-2.0.md D16, camelize(upper_first=true), underscorize,
escapecpp and toyaml now render the output docs/cpp-only-filters.md
describes; toxml is removed and is an unknown filter, as in Jinja2.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017KNXpdwgCcK4gqUkYrVXzK
…t long keys (0233)

Found by the verifier: a lead byte followed by 32 or more continuation
bytes shifted 0x7F past 31 bits in toyaml and tojson. Keys over 255
bytes are written as explicit '? key' entries, since YAML limits an
implicit key to 1024 characters. The doc now says undefined values
raise, as they do.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017KNXpdwgCcK4gqUkYrVXzK
Value can now hold an integer outside int64: jinja2::BigInt keeps its
canonical decimal text (TryParse, Sign, ToInt64/ToUInt64, comparisons
by value). The integral constructor, Reflect and the three JSON
bindings store a BigInt for a value above INT64_MAX instead of throwing
std::overflow_error (0172). sizeof(Value) is unchanged (40 B).

Value gains IsBigInt, AsBigInt and the pointer form; ToString, ToChars
and std::formatter print the digits. Until 0270 a BigInt that enters a
template fails the render with std::overflow_error.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLuNcuiZnzXVsxhZ3MzE9V
…til 0270

Addresses the verifier's MSVC risk (C4244/C4296 on narrow integral types
under /W4 /WX) and documents that ToString prints a BigInt only at top
level until templates hold big integers.
…ad-7n5o77

# Conflicts:
#	docs/tasks/0233-cpp-only-filter-stubs.md
A defaulted move could leave the string empty, and Sign() then read
front() of an empty string. The move operations now leave the source
"0", so every BigInt holds a canonical number.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VLuNcuiZnzXVsxhZ3MzE9V
Found by Codex: a host generator with no end grew the serialized text
without bound. Both writers now check the text against MaxSequenceSize
per item.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017KNXpdwgCcK4gqUkYrVXzK
Regenerate the task index and parity table.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DTQTriEsFrrBgcYNKDUUF4
@chatgpt-codex-connector

Copy link
Copy Markdown

To use Codex here, create an environment for this repo.

@rmorozov
rmorozov marked this pull request as ready for review October 19, 2026 02:34
@rmorozov
rmorozov merged commit 941c91c into master Oct 19, 2026
42 checks passed
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.

2 participants