Skip to content

The assumptions approval confirms gathered after the opening, and a blueprint understood where each passage stands - #123

Merged
PierreMardon merged 2 commits into
mainfrom
feat/assumptions-to-confirm
Oct 21, 2026
Merged

PierreMardon merged 2 commits into
mainfrom
feat/assumptions-to-confirm

Conversation

@PierreMardon

@PierreMardon PierreMardon commented Oct 14, 2026 •

Copy link
Copy Markdown
Contributor

On a blueprint drawn in a host, the developer found the page hard to read in three ways, and each came from the plan it is drawn from.

  • Assumptions. The rules the plan settled on its own were marked in the middle of a criterion or a paragraph, five times in one sentence of the same form. The two that were the developer's to judge went by among three premises of fact, and none said what to judge it by.
  • Copies. Enumerations chained their items with semicolons, and a notice the feature writes was copied onto the page: its sections, its inventory, its calls and its commands.
  • References. The page worked by reference, as the plan does: 53 labels of steps taken from the plan, and references that stood in for what a sentence said ("Check: the one of criterion 3", "undone by step R5"). The rule against repeats had asked for them.

The developer decided on 2026-10-14 and on 2026-10-16. The rules hold for any blueprint, not for that page.

What changes

The assumptions

  • A section after the opening, "Assumptions that approval confirms", written only when the plan marks such a rule. It opens on one callout, then one item per rule: the rule in a few words and where the page states it, what left it open, and the alternative set aside with what it would change. The mark where the rule is stated stays.
  • Its title says what approving does, not "to confirm": the page is frozen at approval, and an agent that reads "to confirm" on it may take the rule for one still open. It is the reason the mark is already worded so, and a test holds it.
  • Only the developer's rules. The plan's other assumptions, a matter of implementation or a premise of fact, are not shown as assumptions. One that touches the developer's control, work or time is said in the sensitive zones, as what the plan does.
  • The plan gives for each such rule what leaves it open and the alternative it set aside, since the extractor reads only the plan. A premise of fact it could not check is no such assumption: the plan checks it in the slice that rests on it, or says what that slice does when it proves false.

Reading the page

  • Each passage is understood where it stands. The plan is written for agents, which work by reference, and the page is read once by a person: the extractor translates the plan instead of copying its apparatus.
  • A name, not a code. A step, a phase or an item is called by a short name in the words of the feature. Numbers stay on the criteria, which the review cites, and where they give an order.
  • A reference adds to a sentence, never stands in for it: taken away, the sentence still says what it means. A fact stated elsewhere is named in a few words, and no sentence needs a file the developer does not read. The sensitive zones name the rule of a zone the same way.
  • What follows from a rule is not written again. A symmetry, a procedure and its undoing for instance, is stated once, then what departs from it. An omission is what the developer cannot tell from the page.
  • Lists. An enumeration of more than three items, or of items that each carry a clause, is a list, never a sentence that parts them with semicolons.
  • A document the feature writes for a person is shown by what it does: what it is for, who reads it, what it makes its reader do and what that changes, in what order, under whose rights, and what it forbids. Its text stays in the plan. Nor is an inventory of what already exists copied: the page says what it covers and where it is taken from.

Elsewhere

  • The evaluations read the section of the assumptions as part of the frame, not of the body, so the measures of the cut do not count it.
  • The guide tells the developer where the assumptions are, why a premise of fact is not among them, and where the text of a document the feature writes is read.

ARCHITECTURE.md is left alone: its sentences on the frame and on the assumptions stay true, and the form of a document an agent writes is not its subject (AGENTS.md).

Tried

A fresh agent drew the blueprint of the host's plan again from the same plan folder, with the extractor and the template of each commit of this branch. The plan had been drafted under the old template of the plan.

Before First commit Both commits
Size 20,498 bytes 21,265 bytes 16,263 bytes
Labels of steps, a letter and a number 41 53 0
References by the number of a criterion 11 10 5, each beside a sentence complete without it
References to a section, or to a file the developer does not read 1 13 0
Calls of an API written out 7 12 5, four of them in criteria copied from the plan
Paragraphs that chain items with semicolons 3 0 0
Rules shown as confirmed by approval 5, scattered 2, gathered 2, gathered

The undoing of the procedure is now said once, each step undone in the reverse order, followed by what it adds: the checks of what the sleep may have worn out, and a manual refresh.

Still there:

Checked

  • scripts/gate.sh, green locally: 1,902 tests on 3.11 and on the newest Python.

Not measured: no campaign of the evaluations was run. The judge's method still gives a pointer as the way not to repeat, and does not know the section of the assumptions: #124, to land before the next campaign.

…lueprint, and an enumeration written as a list

On a blueprint drawn in a host, the rules the plan settled on its own were marked in the
middle of a criterion or a paragraph, five times in one sentence of the same form, on a
page of 20 KB. The two that were the developer's to judge went by among three premises of
fact, one of which the developer had nothing to decide in, and none said what to judge it
by. Another section of the page chained its items with semicolons. The developer decided
on 2026-10-14: one section with a callout, the premises left to the plan, the
enumerations as lists, and no inventory copied, with rules that hold for any blueprint
and not for that one.

- skills/surface-plan/templates/blueprint.md and agents/surface-extractor.md: when the
  plan marks a rule as an assumption of its own, a section follows the opening,
  "Assumptions that approval confirms", under one callout, with one item per rule: the
  rule in a few words and where the page states it, what left it open, and the
  alternative set aside with what it would change. The mark where the rule is stated
  stays. The title says what approving does, not "to confirm", for the reason the mark is
  worded so: the page is frozen at approval, and an agent that reads "to confirm" on it
  may take the rule for one still open.
- The plan's other assumptions, a matter of implementation or a premise of fact, are not
  shown as assumptions: one that touches the developer's control, work or time is said in
  the sensitive zones, as what the plan does.
- skills/surface-plan/templates/plan.md: the plan gives for each such rule what leaves it
  open and the alternative it set aside. A premise of fact it could not check is no such
  assumption: the plan checks it in the slice that rests on it, or says what that slice
  does when it proves false.
- The extractor writes an enumeration of more than three items, or of items that each
  carry a clause, as a list, never with semicolons, and does not copy an inventory of
  what already exists: the developer decides nothing in it, and the review checks it
  against its source.
- evals/surface_evals/blueprint.py reads the section as part of the frame, not of the
  body. docs/guide.md tells the developer.

ARCHITECTURE.md is left alone: its sentences on the frame and on the assumptions stay
true, and the form of a document an agent writes is not its subject.
…he feature shown by what it does

On the blueprint drawn again for this branch, the developer found the page hard to read for
reasons the plan brought: 53 labels of steps taken from the plan, and references that stood in
for what a sentence said ("Check: the one of criterion 3", "undone by step R5"). The rule
against repeats had asked for them, since the extractor named a criterion instead of saying a
fact again. A notice the feature writes was copied onto the page as well: its sections, its
inventory, its calls and its commands, with each step and its undoing in two lists.

- agents/surface-extractor.md: the plan is written for agents, which work by reference, and
  the page is read once by a person, so the extractor translates it. A thing is called by a
  name, never by a code, and numbers stay on the criteria and where they give an order. A
  reference adds to a sentence and never stands in for it: taken away, the sentence still
  says what it means, and a fact stated elsewhere is named in a few words. What follows from
  a rule the page states is not written again: a symmetry is stated once, then what departs
  from it. An omission is what the developer cannot tell from the page.
- A document the feature writes for a person is shown by what it does: what it is for, who
  reads it, what it makes its reader do and what that changes, in what order, under whose
  rights, and what it forbids. Its text stays in the plan.
- The sensitive zones, and the sentence on how far the plan goes into a zone, name the rule in
  a few words instead of pointing to it.
- skills/surface-plan/templates/blueprint.md says the same in its opening, and docs/guide.md
  tells the developer where the text of such a document is read.

The judge still gives a pointer as the way not to repeat, and does not know the section of the
assumptions: #124, before the next campaign. A criterion that carries how the plan proves it
is #125.
@PierreMardon PierreMardon changed the title The assumptions approval confirms gathered after the opening of the blueprint, and an enumeration written as a list The assumptions approval confirms gathered after the opening, and a blueprint understood where each passage stands Oct 16, 2026
@PierreMardon
PierreMardon merged commit ac7a84b into main Oct 21, 2026
3 checks passed
@PierreMardon
PierreMardon deleted the feat/assumptions-to-confirm branch October 21, 2026 19:28
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.

1 participant