campaign-state: the repo set in force is the target's repos, else the campaign's
Campaign row names the opening set; target row gains repos; cut_spec row gains reads. Bounds name target repos (16) and campaign repos (8). The cut-spec repo rule becomes the repo-set-in-force rule with how Self adds or removes a repo, and a Repos in force recipe is added. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
0ac55b729f
commit
775d8bcf39
1 changed files with 15 additions and 5 deletions
|
|
@ -78,11 +78,11 @@ mismatch. The root is the campaign slug, or the instance for `instance`,
|
|||
|---|---|---|---|---|
|
||||
| `instance` | `self` | exists (`eureka:instance:self`) | instance, display name, host | |
|
||||
| `stewardship` | `<repo>.n<seq>` | Self | instance, repo, sequence, note | |
|
||||
| `campaign` | `self` | Self | title, repos, working branch, target doc | |
|
||||
| `target` | `r<rev>` | Self | invariants (`label`, `statement`), not in scope, canonical implementations, doc | |
|
||||
| `campaign` | `self` | Self | title, repos (the opening set), working branch, target doc | |
|
||||
| `target` | `r<rev>` | Self | invariants (`label`, `statement`), not in scope, canonical implementations, doc, repos (the whole set from this revision on; empty keeps the previous) | |
|
||||
| `question` | `<label>` | Imagination; Hands or Soul for a fork | title, question, options (≥2), recommended, depends, raised in | `raised_in` |
|
||||
| `ruling` | `<label>` | Self | answers (none for an operator direction), choice, ruling, operator quote, date, authority | `answers` |
|
||||
| `cut_spec` | `cut-<cut>.r<rev>` | Imagination | repo, branch, base, depends on (cut labels, never revision ids; a spec may not depend on its own cut), first, deletes, keeps and moves, adds, file changes, authority map, verification, estimate | `rulings`, `questions` |
|
||||
| `cut_spec` | `cut-<cut>.r<rev>` | Imagination | repo, branch, base, depends on (cut labels, never revision ids; a spec may not depend on its own cut), first, deletes, keeps and moves, adds, file changes, reads (each a location and why; any location may carry a symbol), authority map, verification, estimate | `rulings`, `questions` |
|
||||
| `cut_report` | `cut-<cut>.h<attempt>` (a fix batch is the next attempt) | Hands | commits, range, verification evidence (mutation totals included), mutations (survivors and the ones Soul should rerun), deviations, forks, structural delta, landed names, undone, promises | `cut_spec`, `forks` |
|
||||
| `verdict` | `cut-<cut>.s<pass>` | Soul | range, claims (each with an outcome, evidence, findings, promise, mutations) | `cut_report`, `findings` |
|
||||
| `finding` | `cut-<cut>.s<pass>.<label>` | Soul, in the verdict's batch | confidence, severity, claim, invariants, locations, failure scenario, evidence, origin | `verdict` |
|
||||
|
|
@ -91,7 +91,7 @@ mismatch. The root is the campaign slug, or the instance for `instance`,
|
|||
| `hand_off` | `<to>.<repo>.<date>` | Self (parked: Cut 12) | from, to, repo, documents, reason | `documents` |
|
||||
|
||||
Bounds: `Title` and `Short` are at most 200 bytes, `Line` 1,000, and `Para`
|
||||
4,000. Narrative longer than that goes in the prose map, cited by a `DocRef`
|
||||
4,000. A target's `repos` is at most 16, a campaign's 8. Narrative longer than that goes in the prose map, cited by a `DocRef`
|
||||
(path, start and end line, commit). A `Label` is `[A-Za-z0-9_-]{1,64}`, and a
|
||||
`Date` is `YYYY-MM-DD`. A subject's local key (the part after
|
||||
`<campaign>:<kind>:`) is at most 64 bytes. A resolution's local is derived from
|
||||
|
|
@ -100,7 +100,13 @@ resolved and withdrawn.
|
|||
|
||||
Rules that shape a batch (the rest arrive as refusals):
|
||||
|
||||
- A cut spec's repo must be one of its campaign's repos.
|
||||
- A cut spec's repo must be in the repo set in force when the spec is admitted:
|
||||
the target in force's `repos` when it names any, else the campaign's. Specs
|
||||
already in force on a since-removed repo stay in force and can still be
|
||||
reported, withdrawn or superseded; a new revision of one is refused. Self adds
|
||||
or removes a repo with target `r<n+1>` naming the whole set, plus the
|
||||
superseding resolution. A target revision may not empty a `repos` list its
|
||||
predecessor named (`EmptyRepos`).
|
||||
- A ruling that `answers` a question derives that question's `Answered`
|
||||
resolution in the same commit. Its `choice` must be one of the question's
|
||||
option labels. `operator_quote` is allowed only with `authority: Operator`.
|
||||
|
|
@ -208,6 +214,10 @@ the `selection` value of `huginn query`; the CLI takes the object inside the `se
|
|||
- **`<c>` is not in the list:** the slug is wrong or the campaign is in another
|
||||
mind. Stop and report; never create a campaign to fit a brief.
|
||||
|
||||
**Repos in force:** `huginn target <c>`. Its `repos` when non-empty, else the
|
||||
campaign's `repos` (`huginn campaigns`, the opening set). A cut spec's repo must be
|
||||
in this set.
|
||||
|
||||
**Target in force:** `target`, with `root` = `<c>`, `in_force` = `true` and
|
||||
`projection: document`.
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue