Skip to content

shape_materialize.py and bump-leg.py: a row holds YAML_NOT_TEXT_RE's exponents of two or more digits, the no-origin refusal for a tag the leg holds is true, and an else nothing reaches is gone (#1090's review follow-ups) #1103

Open

Description

@brettheap

Goal: the three things rv1090's review of #1090 (#912) left. Add a row that holds YAML_NOT_TEXT_RE's exponents of two or more digits, make one bump refusal true where the leg has no origin, and remove an else nothing reaches.

State

What happens

  1. No row has an exponent of two or more digits (the review's SHOULD).
    • Where: YAML_NOT_TEXT_RE at scripts/shape_materialize.py:542-543, and YAML_FLOATS at tests/test_neutral_pin_entry_one_spelling.py:92.
    • The mutant that survives (R2): change [0-9]+ to [0-9] in both of the rule's exponent groups. All 180 spelling and entry rows still pass.
    • What it would ship: --pin .5e-10@<sha>, .05E-12 and .5_e-10 written bare. PyYAML reads them as 5e-11, 5e-14 and 5e-11, and --pin accepts all three names.
    • Why no row catches it: every exponent in YAML_FLOATS has one digit, and PIN_NAMES stops at three characters, too short to hold .5e-10.
  2. One bump refusal is untrue where the leg has no remote named origin (a NIT), at scripts/bump-leg.py:1263.
  3. A branch nothing reaches (a NIT), at scripts/bump-leg.py:1037-1038.
    • else: what = "is an annotated tag that names no commit" can no longer be reached from peeled_target.
    • For a tag, a missing peel now returns, a commit returns, and a tree or a blob takes the elif.
    • not_a_commit still needs that wording, because commit_on_forge uses it.

Direction

  1. Add .5e-10, .5E+10, .5_e-10 and .5e10 to YAML_FLOATS, as the review suggests.
  2. Word the no-origin case for a tag the leg holds so that it is true: say the tag is held and its commit is not. Keep the refusal's code.
  3. Remove the else nothing reaches, keeping the wording not_a_commit needs.

Verify

  • Mutant R2 fails the new rows and passes main's.
  • One row holds the no-origin case for a held tag, and fails on main's words.
  • No refusal code changes, and tests/test_agents_md_codes.py passes.

Found by lane 5's independent review of #1090 (#912), rv1090 (#1090 issuecomment-6316009648).

Milestone: none; it lands after the v1.2.0 tag (Brett Heap's 10:32:04Z ruling).

Lane: openreposhape-5 (openRepoShape-5)

Activity

  1. brettheap commented on Oct 21, 2026

    @brettheap
    ContributorAuthor

    CLAIMED — lane openRepoShape-5, session 50cede29-ab82-4ca3-9f67-d98e1a58c8d2@Eagle, 2026-10-21T13:59:02Z, for #1103

    Logged in lanes/log/openRepoShape-5.md at 6e769578867177dedc6ea752257c27e1e75fd718.

    The three reads (lane-collision-protocol Rule 1):

    1. existing `CLAIMED —` comments on opensoft/openRepoShape#1103:
       none
    2. `gh pr list --repo opensoft/openRepoShape --state all --search "#1103"`, kept where the row or its body names `#1103`:
    1090	shape_materialize.py, adopt-project.py and bump-leg.py: a tag a clone holds without its commit is one it cannot answer for, `check` says a commit it cannot ask was not asked, and a pinned product YAML 1.1 or 1.2 reads as no text is quoted (#912)	fix/912-pin-questions	MERGED
    3. `git ls-remote --heads git@github.com:opensoft/openRepoShape` branches naming `1103` as a whole token:
       none
    
  2. added this to the v1.2.1 milestone on Oct 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions