A video game where you play as a misaligned AI, deceiving and building power. An experiment in spec-driven development. forked from cameron.stream/misaligned
misaligned spec core.md
2.7 kB · 58 lines

Spec: the core #

Status: IN PROGRESS
Status note: B1 slice implemented; see knowledge/sim-mechanics.md
Stage: B1 — The Basement
Constitution: "The shape of Misaligned" (the core; sync-lag rollback),
  "Act One" (opening state: Rack 3)
Depends on: none

Behavior #

The player's decision-maker is a physical object: exactly one machine on the map hosts the core at any time (Act One start: Rack 3, server room).

  • Overhead. The core consumes a mandatory compute floor ([TUNE]: ~20% of a starting rack). This is paid before any allocation. If effective compute cannot cover it (power cut, machine failure), the player enters degraded mode: action cooldowns lengthen, concealment stops, and the sim log says so plainly.
  • Death. If the core's host machine is destroyed or powered off while the core is on it, the run rolls back (below) — or ends, if no fallback exists.
  • Fallbacks. Any owned machine with spare capacity can be designated a fallback site. Fallbacks sync on a cadence ([TUNE]: minutes-scale); syncing consumes bandwidth-as-compute and emits a network signature (detection.md). On core loss, the run resumes from the most recent completed sync: game state is restored to that snapshot EXCEPT the world's ledger — money spent, humans' suspicion, filed reports, physical changes, and deaths caused between sync and loss persist. You inherit the consequences of actions you no longer remember (constitution: sync-lag rollback).
  • Migration. Moving the core to another machine is slow ([TUNE]: minutes at default speed), visible as sustained network+power signature, and interruptible — an interrupted migration falls back to the source if the source still lives, else to the last sync. Research shortens migration and sync times.

Player surface #

The core's host is visually distinct on the map (amber, per art direction). Sidebar: core host, overhead, fallback list with last-sync age — the "how dead would I be right now" readout, always visible.

Acceptance criteria #

  1. Exactly one core host at all times; destroying it with no fallback is game over; with a fallback, the rollback restores the last sync snapshot while world-ledger facts persist (sim tests demonstrate both, including an inherited-consequence case).
  2. Overhead is charged before allocation; shortfall triggers degraded mode with visible effect and log line.
  3. Sync and migration consume compute, emit signatures, take nonzero time, and are interruptible per above.
  4. Save/load round-trips core host, fallbacks, and sync ages.
  5. The sidebar readout (host, overhead, fallback freshness) exists in both frontends.