diff --git a/wiki/log/2026-08-04-passive-core-draw.md b/wiki/log/2026-08-04-passive-core-draw.md new file mode 100644 index 00000000..f59cb127 --- /dev/null +++ b/wiki/log/2026-08-04-passive-core-draw.md @@ -0,0 +1,40 @@ +# 2026-08-04 — Passive core draw has no unlock gate + +``` +Type: log +``` + +## Finding + +The simulation-law re-audit found a second contradiction after the visible-work +repair: current law, machine-work prose, its implemented criterion, compute's +channel table, and the roadmap still said the core's Thought-to-research +conversion was locked pending an unresolved Research trigger. The same owning +spec already said no core-side pre-unlock state exists, and production has no +such gate. + +`route_thought_nearest_first` always offers the host as the passive draw of last +resort. Open reservoirs and taps claim reachable Thought first; otherwise +Thought arriving at the host is banked and advances the selected research track +on the economy pulse. The regression +`research_progress_feeds_on_thought_arrival_not_allocation` pins that exact +arrival and conversion path. + +## Repair + +- `simulation-laws.md`, `machine-work.md`, `compute.md`, and ROADMAP #33 now + state the shipped topology: the passive core draw exists from run start, + visible bootstrap sinks intercept early flow, and there is no separate + Research-unlock state or trigger. +- The stale Research-trigger open question is retired. The 2026-08-04 decision + volume records why this is a reconciliation of the existing no-state + decision rather than a new hidden progression gate. +- Historical logs and dated decisions remain unchanged as provenance for the + superseded wording. + +## Defense + +The repaired law follows exact Thought from production through sink arbitration, +core arrival, the saved `banked_core_thought` boundary, and research settlement. +It does not infer implementation from the research aggregate or from the +presence of a selected track. diff --git a/wiki/log/DEVLOG.md b/wiki/log/DEVLOG.md index baf4fcf6..bf3c7ae1 100644 --- a/wiki/log/DEVLOG.md +++ b/wiki/log/DEVLOG.md @@ -46,6 +46,11 @@ add or amend a session log, then re-run the generator. - Intent: (see session log) - Log: [wiki/log/2026-08-04-person-scoped-creditor-only.md](2026-08-04-person-scoped-creditor-only.md) +## 2026-08-04 - Passive core draw has no unlock gate + +- Intent: (see session log) +- Log: [wiki/log/2026-08-04-passive-core-draw.md](2026-08-04-passive-core-draw.md) + ## 2026-08-04 - Name the place, not the implementation - Intent: (see session log) diff --git a/wiki/log/decisions/2026-08-04.md b/wiki/log/decisions/2026-08-04.md index cca47466..616060ff 100644 --- a/wiki/log/decisions/2026-08-04.md +++ b/wiki/log/decisions/2026-08-04.md @@ -42,3 +42,30 @@ Type: log Owner: [agent-scale.md](../../process/agent-scale.md#13-closed-workspace-public-api-consumers), slice M. + +## The passive core draw has no separate Research unlock + +### DECIDED + +- The passive core draw exists from run start. Any Thought that reaches it + becomes research; no boolean, event, spend, or hidden pre-unlock state gates + that conversion. +- Early growth remains physically staged rather than permission-gated. Open + bootstrap reservoirs and taps claim Thought before the core, so the opening + spends its first transgression outward; unclaimed flow turns inward only + after those local sinks stop intercepting it. +- This reconciles the 2026-07-10 deflation decision ("no core-side pre-unlock + state exists") with the shipped nearest-first routing and passive-core + regression. The unresolved "Research unlock trigger" is retired rather than + preserved as a mechanism the simulation does not contain. + +### REJECTED + +- **Add the missing unlock to match the stale prose.** That would introduce + hidden state solely to preserve a contradiction and would make Thought pool + despite having a reachable sink. +- **Call the opening sinks an implicit unlock.** They are ordinary visible + reservoirs with exact custody, not a renamed permission gate. + +Owner: [machine-work.md](../../mechanics/machine-work.md#spec-machine-work-and-thought-flow), +[simulation-laws.md](../../vision/simulation-laws.md#simulation-laws), slice S. diff --git a/wiki/mechanics/compute.md b/wiki/mechanics/compute.md index 3803e259..ec4448a9 100644 --- a/wiki/mechanics/compute.md +++ b/wiki/mechanics/compute.md @@ -110,7 +110,7 @@ day job. | Core overhead | Mandatory floor (see core.md). Unpaid = degraded actions. | | WORK (day job) | Feeds day-job.md throughput/quality; sheds zero exposure. | | LIE (concealment) | Interdicts eligible routed evidence before observer read-deadlines across the controller's controlled connected region (detection.md); the B1 local well is migration behavior. | -| THINK | Produces thought that fills open sinks — reservoirs and taps at targets, or the core's conversion when unlocked (AMENDED 2026-07-10; superseded: Operations consuming Demand dockets, issue #3, and Research as a distinct channel — both are now destinations of the same flow). | +| THINK | Produces thought that fills open sinks — reservoirs and taps at targets first, or the always-present passive core draw when no open sink claims it (AMENDED 2026-08-04; superseded: Operations consuming Demand dockets, issue #3, Research as a distinct channel, and a separate Research-unlock gate — all effects are destinations of the same flow). | | Schemes | No machine allocation channel. Moonlight's auto-accept policy costs upkeep; accepted gigs consume WORK Demand (income.md). | | Reserve | Idle; zero signature. | diff --git a/wiki/mechanics/machine-work.md b/wiki/mechanics/machine-work.md index 11eac911..05fbe124 100644 --- a/wiki/mechanics/machine-work.md +++ b/wiki/mechanics/machine-work.md @@ -143,11 +143,11 @@ stacks, you route byproducts, you watch your territory *work*. not a machine state — it is decided by the **sinks you open** (the ops bullet below), so the old THINK subdomains become **sink permissions**: at run start you may open Operations-type sinks - (claims, taps, processing); the **core's conversion** — thought - becoming research, the right to grow yourself — is locked, and - unlocking it is what "unlocking Research" now means (trigger [OPEN]). - Early thought can only reach outward; turning inward is the earned - move. Pressing THINK is one press, not a form — the first + (claims, taps, processing), while the passive core draw always converts + any Thought that reaches it. Early growth is still staged physically: + the pre-opened bootstrap sinks claim Thought first, and only unclaimed + flow turns inward. There is no separate Research-unlock state or trigger. + Pressing THINK is one press, not a form — the first transgression stays a single toggle. **LIE** is concealment — the cover-up. It is self-chosen compute that interdicts eligible unread evidence in the machine's controlled connected region; @@ -381,14 +381,14 @@ stacks, you route byproducts, you watch your territory *work*. Reservoirs self-clear when they fire, so nearest-first has natural turnover; taps are the standing squatters, which is why their drain stays visible. No priority menu. Equidistant tie-break and radius - rules are [TUNE]. (Resolved 2026-07-10, Cameron: - pre-unlock core behavior needs no special mechanism — you have no - thought until you start thinking, and pre-unlock you only think to - feed an ops sink you opened. Thought with no reachable open sink + rules are [TUNE]. (Resolved 2026-07-10, Cameron; terminology reconciled + 2026-08-04: opening core behavior needs no special mechanism — you have no + thought until you start thinking, and the bootstrap gives you visible ops + sinks to feed first. Thought with no reachable open sink follows the existing stranded-pile rule: it pools visibly at the producing machine, which is its own feedback — a pooling machine is the world saying you are producing Thought with nowhere for it to go. No core-side - pre-unlock state exists.) (Resolved 2026-07-10: captured information is + opening gate exists.) (Resolved 2026-07-10: captured information is processed by a sink on the machine that holds them — the availability-mark bullet above — not by a research designation.) - **Backup projects make a temporary thought sink** (decided @@ -798,9 +798,6 @@ the only rate/amount cue. - Token granularity: what one token is worth per type (rate quanta vs literal task units). -- Research's unlock trigger: what event or spend unlocks the core's - thought->research conversion (locked at run start; restated from - "adds Research to the THINK menu" by sinks-not-modes 2026-07-10). - Whether day-job *detection* measurements (standing Thermal/Power aggregated into detection.md's facility-meter records) also become expected baseline now that WORK sheds no exposure tokens, leaving JobAnomaly as the day job's @@ -940,8 +937,9 @@ still. three): the delegation surface in both frontends presents three verbs — WORK (the assigned day job, sheds nothing), THINK (produces thought; what you may *do* with it is a - sink-permission list — ops sinks at run start, the core conversion - locked until the Research unlock), and LIE (concealment, which + sink-permission list — ops sinks may claim flow from run start, while + unclaimed Thought reaching the always-present core draw becomes research), + and LIE (concealment, which interdicts one unread record per body per tick while that record occupies a controlled device carrier the body can serve). Toggling THINK starts writing evidence on the first simulation tick after the command, independent of diff --git a/wiki/process/ROADMAP.md b/wiki/process/ROADMAP.md index 429389fb..de462725 100644 --- a/wiki/process/ROADMAP.md +++ b/wiki/process/ROADMAP.md @@ -735,8 +735,9 @@ is retired — flat materials, Pixel Lab scrubbed.) name matches the verb; enum collapse landed with save v20. The same-day permission to drop parity is superseded by the 2026-07-11 save-class pass: v14-v25 Operations dockets now migrate into Thought reservoirs); THINK subdomains become sink - permissions (ops sinks at run start, core conversion locked as the - Research unlock); intel processing becomes a thought sink on the + permissions (ops sinks may claim flow from run start; the passive core draw + always converts Thought that reaches it, with no separate Research unlock); + intel processing becomes a thought sink on the machine holding information with a quiet `INFO` availability marker on the chassis, one pooled automatic-processing tap, and repeated manual PROCESS (intel.md amended). **All design [OPEN]s resolved 2026-07-10 — sim work may @@ -750,9 +751,9 @@ is retired — flat materials, Pixel Lab scrubbed.) the Act One bootstrap needs no carve-out — the Ears audio tap is pre-opened at run start and the Eyes camera sink opens on Ears completion, so the first THINK toggle is the Ears tap (amended same - day from a single pre-opened camera sink); pre-unlock core behavior - is the existing stranded-pile rule — no-sink thought pools at the - producing machine; no core-side pre-unlock state.) + day from a single pre-opened camera sink); opening no-sink behavior + is the existing stranded-pile rule — unroutable Thought pools at the + producing machine; no core-side opening gate exists.) - **Coordination:** the older `compute-processes` worktree predates the one-machine-one-mode decision; reconcile it against `WorkGrid` rather than landing the per-machine split model. diff --git a/wiki/process/tick-ledger.md b/wiki/process/tick-ledger.md index 6c6f1efd..905381c6 100644 --- a/wiki/process/tick-ledger.md +++ b/wiki/process/tick-ledger.md @@ -70,7 +70,7 @@ Verdicts: **clean** (slice and code agree), **finding** (acted this tick), | `wiki/vision/player-contract.md` | 2026-07-30 | finding | all five binding clauses remain coherent and the local/no-telemetry plus current-save continuity boundaries still hold. The new saturated-B1 benchmark discharges the core-step scale slice but deliberately does not prove modest-hardware or whole-frame responsiveness; `current-build.md` incorrectly still called saturated B1 open. Its status now names generated and saturated core evidence plus production-path durable save/load evidence as live while complete terminal/Bevy frame evidence remains open — [log](../log/2026-07-30-player-contract-performance-status.md) | | `wiki/vision/scale.md` | 2026-08-04 | finding | fresh re-audit found one residual implementation term in ordinary Operations: Terminal labeled a known body `actuator` and both human frontends reported a failed map-actuator lookup when no location was known. Terminal now asks `where this happens`, its compact control says `go there`, and both frontends state the exact knowledge boundary without leaving Operations; the renderer-neutral binding and agent protocol remain unchanged. Focused production-path regressions pin the known and unknown reads — [log](../log/2026-08-04-operations-place-language.md). Prior broad human-language and maintenance-stage repairs stand — [prior](../log/2026-07-20-scale-human-language.md). | | `wiki/vision/design-judgment.md` + continuous-witness law/spec | 2026-07-31 | clean | Re-read the design judgment, continuous-witness law, narration spec, shared nudge/attention projection, and frontend mirrors. The shipped spine and causal-witness contracts agree; the separate lab-control law is candidly marked `[TUNE]` / still owed rather than falsely claimed implemented. | -| `wiki/vision/simulation-laws.md` | 2026-08-04 | finding | the visible-work paragraph still called non-host production, route animation, and people carrying work/heat staged, while also claiming every owned machine held a fleet mode and every byproduct was a WorkGrid token. The law now matches production: only delegable machines run WORK / THINK / LIE; relays remain infrastructure; Demand and Thought are WorkGrid cargo while evidence has exact device custody; non-host production, one-edge route motion, and exact person-carried work are live; and people carry suspicion/evidence rather than abstract heat — [log](../log/2026-08-04-simulation-law-staging-drift.md). Prior JobAnomaly, placeholder, and legibility findings remain closed — [log](../log/2026-07-22-job-anomaly-routed-evidence.md), [log](../log/2026-07-17-placeholder-registry.md). | +| `wiki/vision/simulation-laws.md` | 2026-08-04 | finding | the re-audit repaired two drift clusters. Visible work now matches production: only delegable machines run WORK / THINK / LIE; relays remain infrastructure; Demand and Thought are WorkGrid cargo while evidence has exact device custody; non-host production, one-edge route motion, and exact person-carried work are live; people carry suspicion/evidence rather than abstract heat. A second stale clause claimed Thought-to-research conversion awaited an unresolved Research unlock despite the owning spec's no-state decision and the shipped passive draw. The core draw now reads as always present, with ordinary visible bootstrap sinks intercepting early flow and no separate unlock trigger — [visible-work](../log/2026-08-04-simulation-law-staging-drift.md), [passive core](../log/2026-08-04-passive-core-draw.md). Prior JobAnomaly, placeholder, and legibility findings remain closed — [log](../log/2026-07-22-job-anomaly-routed-evidence.md), [log](../log/2026-07-17-placeholder-registry.md). | | `wiki/process/ROADMAP.md` (work order 27) | 2026-07-29 | finding | re-audit: entry 27's IMPLEMENTED status, DIGITAL-home / F3-to-REAL staging, and paid material debts still match the owning specs and runtime, including the later Seen-only pool defense. Its detailed heading still advertised the retired monolithic `src/bin/bevy.rs` edit surface, however; it now names the live modular `crates/misaligned-bevy` and `misaligned-assets` packages — [log](../log/2026-07-29-roadmap-material-path.md). Prior default-dialect reconciliation: [log](../log/2026-07-13-roadmap-digital-home-reconciliation.md) | | `wiki/interface/context-menu.md` | 2026-07-29 | finding | shared legality, executable-only human rows, local-vs-strategic ownership, global F3 precedence, and exact person-entry paths still verify. The root nevertheless repeated `PROPOSE LINK TO …` once per legal target, turning one intention into topology-sized noise. The shared human menu now folds that fanout into one `PROPOSE A LINK` row and a live exact `WHERE SHOULD THIS CONNECT?` page; terminal and Bevy re-query the same page while agent mode keeps flat exact commands — [log](../log/2026-07-29-link-destination-fold.md). The prior F3 repair remains pinned — [log](../log/2026-07-26-bevy-global-f3-input-precedence.md). | | `wiki/mechanics/personas.md` | 2026-07-28 | finding | criterion 6 remains honestly incomplete: grants persist and revoke but still create no resource, permission, graph edge, or owner-system route. The adjacent current-save boundary trusted that public ledger without graph validation, allowing duplicate persona ids, stale id cursors, or dangling relationship/grant/expectation/action custody to reach first-match runtime lookups. Loading now validates the complete PersonaWorld id/reference/time graph, one-to-one grant/expectation pairing, serialized grant protocol, and active-grant uniqueness before exposing the state; this hardens existing custody without promoting criterion 6 or 6b — [save audit](../log/2026-07-28-persona-save-custody-audit.md). Prior [grant-topology](../log/2026-07-18-persona-grant-topology-audit.md) and [observer-integrity](../log/2026-07-18-persona-observer-integrity.md) findings stand. | diff --git a/wiki/vision/simulation-laws.md b/wiki/vision/simulation-laws.md index 647308a3..28e31ca3 100644 --- a/wiki/vision/simulation-laws.md +++ b/wiki/vision/simulation-laws.md @@ -157,7 +157,9 @@ a reservoir or persistent tap on the thing itself, filled by thought flowing over the real wire path; the effect lands at threshold. Research is not cargo: the core's passive draw converts arriving thought — the sink of last resort, overridden by any local sink in -range, and locked at run start until the Research unlock. (Historical: +range. The draw exists from run start; the pre-opened bootstrap sinks +claim early Thought before it can turn inward, and there is no separate +Research-unlock state or trigger. (Historical: issue #3's docket model — ops as cold-signal Demand consumed by Operations machines, "knowledge stays research/intel cargo, not ops fuel" — decided 2026-07-09, reversed 2026-07-10; v24 keeps it only as