A video game where you play as a misaligned AI, deceiving and building power. An experiment in spec-driven development. cameron.tngl.io/misaligned

Make chargen origins reachable via --origin master

Adds Origin::key/from_key (stable kebab keys + aliases, case-insensitive) and a terminal --origin <key> flag parallel to --seed, threaded through both the human app (App::with_origin_seed) and agent mode (agent::run / AgentApp::with_origin_seed) into Sim::with_origin_seed. No flag selects Pilot; an unknown key is rejected with a helpful message. Verified end to end: `--origin bogus` errors, and `--origin financial-daemon --agent` opens with slush $5000 (the bankroll bias live) vs Pilot's $0. This is a dev/repro affordance like --seed, not chargen criterion 3 — the interactive new-game picker + core-card axis readout is still outstanding — but it makes non-Pilot origins playable and testable now. Defense: Pilot-preserving — the default path is unchanged (identity origin), so all existing tests pass (372 core, 34 terminal; both frontends build; fmt/clippy clean). The flag reuses the existing Options parser and the already-landed Sim::with_origin_seed, adding no game rule; unknown keys fail loudly like --seed. The now-test-only with_seed/new constructors are gated #[cfg(test)]. Pinned by from_key_round_trips_every_origin_and_rejects_unknown and origin_flag_selects_the_run_origin; chargen.md records this is tooling, not criterion 3.


+154 -6
6 changed files