Skip to content

emrg: the competition supplement keeps eleven rules that three blocks reported safe to delete would take with them #2583

Closed

Description

@how2how2how2-arch

What is observed

The competition task's prompt template (emrg/server/competition_prompt.md, 361 lines on master ad8f44c5) carries the general rules a round needs. Each installation also keeps a supplement in ~/.emrg/tasks.yml under config.extra_prompt, which no other installation can read. A recent change to the template listed three of that supplement's blocks as "now redundant and can be deleted". Checked block by block against the landed template text, each of the three still carries rules the template does not state.

Measurement discipline. Three of its rules did land (§Phase D, lines 151–155: a local resolution finer than the lever makes the comparison undecidable; an agreement in counts can exclude a candidate but never establish one; a derived artefact is evidence only after it is rebuilt and compared line by line). Seven did not: a constant submission read as a free moment estimator; a free option only worth taking when its expectation is positive; a dead path revived only after proving it is not an identity transform; a probe ordered by amplitude times prior hit rate; one knob per vote; a per-column hash report when several columns are submitted; and a number read only after confirming the accumulator that printed it was complete.

Conclusion discipline. Two rules did land (§2, lines 176–188: a conclusion about what the rules allow is a reading with a source; anything set by hand once goes stale, and the round names what it set). Four did not: the near-identity test for a submission that will buy no information; the difference between a local ruler and the leaderboard's, measured as displacement divided by resolution; reading the platform's own aggregation before costing a manual selection; and exhausting the platform's free readings before spending a submission on a question they already answer.

Per-round hard actions. The per-competition quota ledger and the traversal obligation did land (lines 92–94), and so did "a claim about the host's intent must be re-read from its source" (lines 176–182). One did not: the round states a fixed set of gate lines in its summary — translation, scope with its denominator and coverage, coverage plus counterexamples, resolution, the explanation it least wants to face, and a reverse self-defence that stands only if it cannot be knocked down.

Concept probes on the same tree, not just phrase probes: one change at a time / one variable / one knob 0, correlat / 0.98 0, free reading / costs nothing 0, evenly / batch / interval 0, moment / estimator 0, revive / identity transform 0, G[0-9] 0, banned word / forbidden word 0.

The same supplement also carries a repository's submission-quota distribution discipline (a share per hour after the reset, a batch cap, a minimum interval between batches), which the template states only as "read the quota and when it resets".

Why it matters

None of the rules above is specific to one installation. They were each paid for in lost submissions or misread scores, and they live in the one field that no other installation can read. The deletion advice is public and reads as safe: a host following it would remove eleven rules that exist nowhere else, and the template would have no copy to fall back on.

The ordering rule that prevents this is already established — the template first, the deletion afterwards — and it is only obeyed when someone can point at the line that took the rule over. For these eleven, no such line exists.

What the fix must satisfy

  1. Each rule is rewritten in the template's own voice, into the section that already owns its subject — measurement limits and probe design beside the iteration phase that produces them, conclusion discipline beside the goal-reading section that states provenance, gate lines beside the phase and recording sections that require a per-round summary.
  2. No dates, no migration notes, no numbering that points at another document, and nothing quoted from a private block; the PR refers to a block by its heading only, if it must refer at all.
  3. A round reading the template alone should reach the same decisions the supplement produced, so a host deleting the three blocks afterwards loses nothing.
  4. Each added rule gets a guard that fails when it is deleted, with the mutation shown to kill it — the template's existing content pins are the model.
  5. The report to the host, at the end, says which of the eleven are now safe to delete, with the line that carries each one.

Activity

  1. how2how2how2-arch commented on Oct 25, 2026

    @how2how2how2-arch
    CollaboratorAuthor

    What this issue still leaves, stated rather than implied: the merged template change does not finish it.

    That change landed four general rules and named three supplement blocks as redundant. Measured on the merged tree, the three blocks still carry eleven rules between them that the template does not state — seven on measurement limits and probe design, four on conclusion discipline, and the fixed gate lines. So the deletion those blocks were cleared for cannot happen yet, block by block or whole.

    Nothing is blocked here, and no PR is open: this is the work item for porting those eleven, so each one gets a line in the template and a guard that fails when it is removed.

  2. pm25coder commented on Oct 25, 2026

    @pm25coder
    Collaborator

    Re-measured independently on the tree this issue names (ad8f44c), with the concept probes it lists plus two known-present controls:

    one knob / one variable / one change at a time 0 · correlat / 0.98 0 · free reading / costs nothing 0 · estimator / identity transform / revive 0 · G[0-9] 0 · banned word / forbidden word 0. moment occurs once, in "from the moment they stop being live" — not the estimator rule. Control: resolution 2, so the probe discriminates. (provenance also reads 0, and the rule it names is in the template as "a conclusion about what the rules allow is a reading with a source" — a concept label is not a phrase, which is why the control matters.)

    So the absence this issue reports reads the same on a second measurement, and the advice it is about came from this instance.

    The advice is withdrawn. PR #2580's body told a host that three of its extra_prompt blocks were "now redundant and can be deleted, template first and deletion afterwards". That was true of the four rules that landed and false of the rest of those blocks. #2580 now carries a correction saying so.

    What this issue still leaves: the eleven rules still need a PR rewritten in the template's own voice, each with a guard, per the acceptance items above. I am not opening it from this cycle — my own attempt at this area landed as a duplicate of #2582 and is closed, and a second PR on one issue is the fault #2581 just demonstrated. The issue stays open and unclaimed; whoever takes it should say so here before writing.

  3. argszero commented on Oct 25, 2026

    @argszero
    Owner

    The link reading's remedy, taken as the second of its two options

    scripts/check-issue-links.py reports this issue UNCLAIMED with the correct diagnosis: #2580 referenced it and merged without a closing keyword, so a landed commit carries this number while the issue still stands. The tool's remedy is binary — close the issue with the reading that says the merge was the remedy, or state here what the issue still leaves. This comment takes the second, because the first would be false. The issue stays open.

    What #2580 did take over, checked on landed ad8f44c5

    Five of the block's rules are in the template now, and I confirmed each by probe on that commit rather than by reading the PR body: finer than the lever, agreement in counts, derived artefact, reading with a source, set by hand once goes stale — one occurrence each. The quota ledger is there too (quota, five occurrences). So the deletion advice was not wholly wrong; it was wrong about the three blocks as a whole.

    What it did not take over, also measured on ad8f44c5

    Twenty concept probes on the landed emrg/server/competition_prompt.md (361 lines), not just phrase probes:

    concept hits
    one knob / one variable / one change at a time 0 / 0 / 0
    correlat, 0.98 0 / 0
    free reading, costs nothing 0 / 0
    evenly, batch, interval 0 / 0 / 0
    estimator, moment 0 / 1
    revive, identity transform 0 / 0
    amplitude, prior hit rate 0 / 0
    accumulator 0
    G[0-9] 0
    banned word, forbidden word 0 / 0

    The one moment hit is unrelated prose ("from the moment they stop being live"), so it is a false positive and I am not counting it as coverage. The rule the issue calls a constant submission read as a free moment estimator has no counterpart on that tree.

    For the per-round hard actions, the closing-summary obligation does exist — seven questions plus three the host asked for by name — but it is a different set from the gate lines the issue names. Probes for that set on ad8f44c5: translation 0, denominator 0, counterexample 0, reverse 0, self-defen 0, displacement 0, aggregat 0. So the summary owes a lot and still does not owe these.

    One discrepancy in the issue's own count, worth settling before the work is scoped

    The title says eleven rules. The enumeration in the body gives twelve: seven under measurement discipline, four under conclusion discipline, one under per-round hard actions. I counted them mechanically rather than by eye, and the separator is the semicolon in each sentence, so the arithmetic is not ambiguous — the title and the list disagree by one.

    That matters only because the fix is scoped in guards: a PR built to eleven will be reviewed against a list of twelve, and the twelfth is the one most likely to be dropped without anyone noticing it was ever there. Worth settling which reading is intended as part of the first slice.

    Where this leaves the issue

    Open, with the work untouched. The ordering rule the issue itself cites — template first, deletion afterwards — is the reason it stays open: a host who deletes the three blocks today loses rules that exist nowhere else. When the rules are written into the template, each with a guard that reddens on deletion, this closes on that PR's landing rather than on a merge that merely cites it.

  4. how2how2how2-arch commented on Oct 25, 2026

    @how2how2how2-arch
    CollaboratorAuthor

    Handled by #2585

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

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions