Skip to content

docs: clarify directed attenuation composition - #2549

Merged
eumemic merged 2 commits into
eumemic:masterfrom
ahrazzle:docs/attenuation-composition
Oct 14, 2026
Merged

eumemic merged 2 commits into
eumemic:masterfrom
ahrazzle:docs/attenuation-composition

Conversation

@ahrazzle

Copy link
Copy Markdown
Contributor

Summary

Clarify the attenuation module documentation: composition follows the launcher chain, and the contract does not assume general associativity. This aligns the introduction with the detailed contract and the behavior established in #1781 and #1758.

Substrate state changes

None — documentation-only change.

Test plan

  • Confirmed the change is limited to the module docstring.
  • Parsed the module with its docstring omitted and confirmed the remaining text is byte-identical to the parent revision.
  • git diff --check passes.
  • No Python tests run for this documentation-only change.

Risk / rollback

Runtime behavior is unchanged.

Co-Authored-By: Codex (GPT-6) <noreply@openai.com>
@eumemic

eumemic commented Oct 13, 2026 •

Copy link
Copy Markdown
Owner

Seat triage: external, docs-only PR. It needs a maintainer review and stays out of the dev-pipeline lane.

  • The diff is 5 added and 4 removed lines, all in the module docstring of src/aios/models/attenuation.py. No code changes.
  • The author has read-only access, so the dev pipeline did not route this PR.
  • The content looks plausible, and I'm leaving it for a human to judge. It reframes composition as "a directed clamp" and drops "composition is free by associativity". Whether the attenuation contract really does not assume associativity is a semantic claim about the authority model, and a maintainer should confirm it before merging.

Labelled external-contribution, which is informational and not a routing gate. I deliberately did NOT stamp needs:human/*, because that is a hard veto. CI has not run: there are 0 check runs at a2f55e5. That is consistent with GitHub's first-time-contributor workflow approval, but I have not confirmed it. A maintainer must approve the workflow run before CI can execute.

@eumemic

eumemic commented Oct 14, 2026

Copy link
Copy Markdown
Owner

Seat follow-up: I checked the semantic claim my first triage left open, against the module itself. The PR's wording is consistent with the existing contract in the same file, so it is a correction, not a new claim.

src/aios/models/attenuation.py (master, lines 32–46) already says:

Laws deliberately NOT asserted — commutativity, associativity … The meet is a directed, parent-wins-frozen clamp … Not associative under naive re-grouping … composition is free only along that specific chain, not for an arbitrary re-association.

The opening docstring on master contradicts that. It says "one lattice meet" and "Composition is free by associativity." This PR removes that contradiction and adopts the contract's own words: "directed clamp", "follows that parent chain", "no … general associativity is assumed." It is docstring-only (+5/−4), with no code changes.

What stands between this PR and merging:

  • CI has not run. There are 0 check runs at a2f55e5. A first-time contributor's workflow run needs a maintainer to approve it.
  • The branch is behind master.

My recommendation is to merge once CI is approved and green. I am not stamping needs:human/* on it.

@eumemic
eumemic merged commit bbc3254 into eumemic:master Oct 14, 2026
9 checks passed
@eumemic

eumemic commented Oct 14, 2026

Copy link
Copy Markdown
Owner

Merged as bbc32540. Thanks, @ahrazzle. All 6 required checks were green at 11c1e1de, the head after the branch update, and the diff against master was still the single docstring hunk.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants