Repository navigation
feat: an edit on what the session itself brought into the house is not asked about (greenhouse decisions/0596) - #745
Merged
rodrigoteamx merged 2 commits intoOct 8, 2026
Conversation
rodrigoteamx
force-pushed
the
hp/greenhouse/t-0104-edit-on-what-the-session-brought
branch
2 times, most recently
from
October 8, 2026 00:03
daec8f9 to
b072b19
Compare
…t asked about (greenhouse decisions/0596) The intent contract asks a person before an operation touches a target the request does not name, and no mode exempts it. For edit the line was drawn by the verb: implement creates its target and is not asked, edit selects one that exists and is. The record of the lab's houses drew it elsewhere: of 34 times a house asked a person to confirm an edit, 28 were about a class that same session had brought into the house a moment before, and not one about a class the record shows in the house from before the session. Each of those questions ended a leg. For an operation that declares it amends the target it names, the target is now named when this session's own record says where it came from: - the session brought it: the first thing a trial of this session that reached the house said of the file is that it added it, and the file is still, byte for byte, what the last such trial left; or - the call repairs a proposal of this session that the recorded door binds, which is what decisions/0571 left pending. It is read from facts the house wrote, with no model in the circuit, and it fails closed. A class that was in the house before the session, a file that changed since the session left it, a class another session brought, a class the session overwrote instead of adding, a trial that never reached the house, a record that keeps no digest, a link, an operation that does not declare it, and a grave operation whatever it declares, are all asked about as before. The declaration is Operation::amendsNamedTarget, born in a later milpa/command than the one this package requires. It is read defensively: over a contract that cannot carry it nothing declares it, and the gate asks exactly as it did.
…nd the edit that makes it, and the rule's tests run milpa/command >=0.29 carries Operation::amendsNamedTarget and milpa/devtools >=0.44 declares it on edit: a house that has the rule has an edit that declares. The tests of the rule no longer skip over a contract that cannot carry it, and one of them asks the gate with the edit milpa/devtools installs.
rodrigoteamx
force-pushed
the
hp/greenhouse/t-0104-edit-on-what-the-session-brought
branch
from
October 8, 2026 00:20
b072b19 to
41ebb5a
Compare
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.
An
editon a class the session itself brought into the house is not asked about (greenhouse decisions/0596, decided by Rod on 2026-10-07).Why
The intent contract asks a person before an operation touches a target the request does not name, and no mode exempts it. For
editthe line was drawn by the verb (decisions/0187):implementcreates its target and is not asked,editselects one that exists and is.The record of the lab's houses drew it elsewhere. Across 417 ledgers, a house asked a person to confirm an
edit34 times: 28 were about a class that same session had brought into the house a moment before, and not one about a class the record shows in the house from before the session. Each question ended a leg — it stopped two runs of three in the thesis run (evidence/1137), and it is what both long runs of evidence/1128 hit, one of them the only run of sixteen that did not close.The rule
For an operation that declares it amends its named target —
edit, in milpa/devtools — the target is named when this session's own record says where it came from:Anything else is asked, as before. It goes where the other sources of «it is named» go, in the intent contract and before the policy.
It is read from facts the house wrote, with no model in the circuit.
addedis computed by the house when a trial ends, against what the house held at the instant of the copy: a file that was there is reportedmodifiedwhatever the trial did to it, so nothing a seat can call turns a class that existed into one it brought. Whether a trial reached the house is the answer the closure and the claims already share (LandedCalls), taken in the order the trials landed.What still asks
Each of these is a test, and the first four were also run on fresh cattle (evidence/1143):
makewith force), or rewrote withimplement;What it touches
SessionBornFiles(new): what a session's landed trials said of each file.LandedCalls::carriedAt(): when a trial reached the house — the one reading the closure uses, asked one more question.RecordedEdit::repairsItsOwnProposal(): the recorded door, asked whether it binds a source of this session.SessionToolGate: the rule, in the intent contract.>=0.29, which carries the declaration, and milpa/devtools>=0.44, whoseeditmakes it — so a house that has this rule has aneditthat declares.The gate still reads the declaration defensively, as it reads every contract that was born after the first release of this package.
The contract view (
operation:contract) does not show the declaration yet: that is a change of its own.How it was checked
AnEditOnWhatTheSessionBroughtIsNotAskedTest(26, one of them with theeditmilpa/devtools installs),ARepairOfTheSessionsOwnProposalIsNotAskedTest(9), and two inRecordedEditTest.scripts/lab/edit-1143/mutants.py app-runtime).What it does not do
implementover a class that was not born in the session still lands a whole body unasked. It is the reverse of this rule, it would add questions, and it is a decision of its own.