Repository navigation
RFC 3986 percent-coding as its own extdeps model (re-derives #13390) - #13699
Closed
gunbai-bot[bot] wants to merge 4 commits into
Closed
gunbai-bot[bot] wants to merge 4 commits into
gunbai-bot[bot] wants to merge 4 commits into
Conversation
…n main) Splits extdeps.uri into the scheme/Uri value (extdeps.uri) and the RFC 3986 section 2.1 percent-coding model (extdeps.uri.percent_encoding), which cites the RFC through an ExternalAuthority anchor and uses the one UTF-8 encoder/decoder (std.bytes, std.encoding) instead of a local fold. Importers repointed; stage0 mirror regenerated; std.os.invocation gains its missing imports (census-mode UnresolvedType exposed by the larger closure). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
… encoder (std.bytes utf8_encode_bytes), not a parallel lead/continuation fold (review 78528) Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Contributor
Author
|
Review 78528: fixed in 25633e3. Reserved-scalar encode now takes its octets from std.bytes utf8_encode_bytes (bytes_octets fold into %HH via uri_percent_encode_octet_step); the lead/continuation math and the two/three/four-octet helpers are gone, so UTF-8 has one authority on both halves. Claims: encode 13/13, decode 8/8, citation_cit1 all PASS; self-host rc=0, v2-native-cli rc=0 on that head; required-regen drifts only in the pre-existing ietf mirror. |
This was referenced Oct 11, 2026
Contributor
Author
gunbai-bot Bot
added a commit
that referenced
this pull request
Oct 11, 2026
…supersedes #13699) (#13730) * RFC 3986 percent-coding as its own extdeps model (re-derives #13390 on main) Splits extdeps.uri into the scheme/Uri value (extdeps.uri) and the RFC 3986 section 2.1 percent-coding model (extdeps.uri.percent_encoding), which cites the RFC through an ExternalAuthority anchor and uses the one UTF-8 encoder/decoder (std.bytes, std.encoding) instead of a local fold. Importers repointed; stage0 mirror regenerated; std.os.invocation gains its missing imports (census-mode UnresolvedType exposed by the larger closure). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> * percent-encode: reserved scalars take their octets from the one UTF-8 encoder (std.bytes utf8_encode_bytes), not a parallel lead/continuation fold (review 78528) Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> * Regenerate docs/design-rung-drops.md projection (drift gate named it) Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> --------- Co-authored-by: Brian Searls <briansearls1@gmail.com> Co-authored-by: Claude Sonnet 5.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.
Re-derives gunbc#13390 (history only; its head is not a base) on current main.
What changed
extdeps.urikeeps what it always was: the scheme/Urivalue. RFC 3986 section 2.1 percent-coding is now its own model,extdeps.uri.percent_encoding, which cites the RFC through anExternalAuthorityanchor (DESIGN 3: cite the real upstream, model what it specifies). It owns the encode and decode folds,UriValidatedScalar(sole_constructor) and the typed refusals.std.bytesutf8_encode_bytes,std.encodingutf8_decode_octets) instead of the local foldextdeps.uricarried (single authority, DESIGN 2/3). The old comment thatstd.encodingsits aboveextdeps.uriis no longer true of the split.extdeps.uriUriValidatedScalarnow name the new module.std.os.invocation(root cause, section 6b): it usedNonEmptyStr,List,CallingConventionwith no imports. The larger closure the split pulls in (throughstd.encoding->architecture_profile) made the census harness (type_ref_hit_ne_bind_measure, census-only) report a blockingUnresolvedType, which broke the sole_constructor probe claims. Added the three imports; no widening.extdeps_uri.rsregenerated withclaim_executor --required-regen(only that surface drifted; planned=executed=adjudicated=169).Receipts
bare_none_generic_parameter_field_is_outside_the_wall_boundary, two sole_constructor green controls,dark_suite_dispositions_cover_migrated_v1_probes) fail identically on a clean main checkout with the same binary (pre-existing, unrelated to this change).gunbc test //gunbc/instruments:self-hostexit 0 and//gunbc/instruments:v2-native-cliexit 0 at head 24c6400. srv1 was not reachable by ssh from this container (no identity), so both ran in this container, whose cgroup memory.max is 24 GiB (no systemd-run available here).Not carried over
The Unicode
from_code_pointand git-fixture companions (#13378, #13392) are out of scope, per the brief.🤖 Generated with Claude Code
Handoff (successor can continue from origin alone)
State: green on its head; landing packet is owed once #13711 lands. Next: on the parent's go, merge main ONCE by merge commit (no rebase), regen stage0 mirrors to the fixed point (claim_executor --source-root dag --source-root src/v2 --required-regen, RC 0; take conflicted mirrors from main), run the drift gate (generated_artifact_gate main_wet; revert unrelated sudoers drift), rerun claims and both instruments on srv1 (systemd-run --user --scope -p MemoryMax=22G -p MemorySwapMax=0), wait for witnesses + fresh review, send packet. Traps: delete gitignored roster.dag files (recurring_failure_mode, rung_drop) before each run; StaleBinary means rebuild after the last edit; do not merge main unless GitHub says DIRTY. Follow-up: half 2 of the from_code_point row (git fixture over percent-coding) on branch royal-owl-365/from-code-point after this lands. Notes: docs/handoff/royal-owl-365-from-code-point.md on that branch.