Aetheria/docs/original-game-migration-matrix.md
2026-07-19 02:29:41 +01:00

50 KiB
Raw Blame History

Original Game To Perfect Machine Matrix

Status dimensions:

  • reference: behavior exists only in the fossil/reference implementation;
  • owner-exists: target subsystem implements the primitive in isolation;
  • wired: production Aetheria paths invoke that owner;
  • exclusive: obsolete writers cannot decide or repair the result;
  • projected: authoritative state reaches Eve;
  • lowered: a generic runtime presents or controls it;
  • proven: live parity and negative-authority checks pass.

Dimensions are cumulative claims only when evidence proves each one. Fixture validation proves contract shape, not wiring, exclusivity, lowering, or parity.

Organ Original authority/evidence Target owner Eve contract Runtime lowering Current status Required proof
Run/session state ServerShared, ActionGameManager Aetheria daemon/CultCache provider/session advertisement plus run lifecycle bindings all clients active/failed lifecycle is daemon-owned and restart-stable: controlled-entity destruction commits the fossil cause, terminal frame, one run.failed fact, releases control, rejects later gameplay commands, and freezes the world; Eve receives terminal presentation/input levers without becoming an owner. Terminus keeps persistent requested simulation rate distinct from effective rate: compressed batches inspect authoritative facts after each fixed step, stop at the causal damage/destruction/cargo/thermal/docking/weapon/wormhole/run event, pause effectively without erasing the request, and project the exact cause and executed-step count through Eve. Docked, travelling, fighting, mining, looting, and refitting remain derived world conditions rather than counterfeit durable phases. The distinct tutorial is now daemon-owned and selectable: authored 64-zone topology, bodies, post-body station/turret/agent population, resolved orbital placement, deterministic half-zone NPC distribution, starter entry ship, loadout receipts, discovery, and canonical persistence feed an Aetheria-mode session. Generated orbit facts carry the fossil distance-derived period; daemon fixed steps advance phase and project the shared graph into orbital pose/velocity before Ymir while Eve and body queries observe the same graph. New Game submits its Eve operation and waits for the new sector-map publication. The daemon also owns the distinct fossil regular sector: 196 weighted zones, pruned Delaunay graph, twelve selected corporations, three boss chokepoints, full influence radii, isolated exit, furthest entrance, discovery, order-four names, celestial/population/loadout materialization, controlled starter, patrol work, and CultCache persistence. Accepted New Game identity determines the seed. New runs explicitly carry aetheria mode; post-tutorial Terminus fallback selection is deleted and Terminus generation requires an explicit witness launch option source-backed tutorial completion rule (none survived in the fossil); full-scale real-catalog daemon/client regular-sector witness, boss entity/narrative behavior where source evidence exists, full-daemon death/restart witness, broader attention taxonomy, and multi-client convergence
Entity identity/loadout ServerShared/Entity* daemon typed entity and inventory surfaces EveUnity/Electron daemon-owned hull identity, exact installed placement/rotation and instance state, cargo stacks, weapon membership/held state, equipment wear, executable behavior state, weapon chronology, active-effect state, and loadout-generation provenance survive a hard CultCache close/reopen through the durable latest-frame checkpoint. An advertised generic Eve equip operation now translates into the typed daemon transaction before that checkpoint; its accepted placement survives restart and its consumed station-cargo source does not resurrect. Generic Eve rebuilds weapon and scalar thermostat controls from that restored truth; legacy per-entity documents are bootstrap inputs only when no live frame exists live client refit witness and multi-client convergence
Loadout generation map/faction availability, item cost, hull hardpoints and role constraints daemon using canonical galaxy, faction knowledge/economy and typed catalog generated loadout plus provenance/availability facts Eve inspection and refit surfaces daemon now uses the fossil candidate filter and seeded weighted selection: manufacturer must be present and allied, ally weight decays by home-zone graph distance, price uses the authored exponent, and hardpoints require matching semantic type, rotated footprint containment, and controller role. Prelude generation retains the fossil exception that allied catalog manufacturers need not own one of the six tutorial home zones; unknown manufacturers remain zero-weight. The April 2021 catalog fossil restores the distinct common Longinus, rare AetherDrive-compatible LonginusX, and Djinni rows with their original IDs, shapes, hardpoints, prices, drag, and prefabs, plus missing Thruster rows required to fill their authored mounts; typed rarity:rare tags apply a 0.05 generation multiplier to LonginusX and AetherDrive equipment; the generator owns one mutable CultMath stream, fixing the readonly-struct defensive-copy bug that restarted every weighted draw; placement rotation survives durable state and reconnect; generation fills the largest compatible footprint before economic weighting; cargo/capacitor plus station docking equipment must fit remaining hull space; stations pack faction-available inventory largest-first; ordinary ships begin without invented scenario cargo; every generated entity persists a source/selection receipt that reaches Eve as loadout.item semantics multi-zone generated-world parity and exact root-to-zone stream sequencing against the fossil
Flight intent Ship, Thruster, AetherDrive, VelocityConversion, VelocityLimit, input paths daemon actuator simulation + Ymir integration analog local helm/look/tractor plus actuator state generic Eve input and scene lowerers direct faction-speed velocity ownership is deleted; daemon persists local strafe/forward helm and desired look, allocates ordinary directional thruster banks by authored rotation, derives torque from hull/item placement, compensates lateral torque, gates execution through the shared energy ledger, deposits equipment-cell heat, publishes plume visibility and actuator state, applies hull drag, then runs operational velocity conversion with the fossil exponential damp equation and clamps the result through evaluated velocity limits before giving velocity/direction to Ymir. The evaluated limit remains in durable behavior state for reconnect and Eve inspection. Autonomous tasks translate world travel into the same local helm axes and issue look commands instead of mutating heading. AetherDrive rotor/coupling simulation is additive and explicitly non-default: common Longinus and Djinni hulls use ordinary thrusters; the rare LonginusX replaces those mounts with the single rare Traction AetherDrive path hardpoint-transform direction parity, exact cross-equipment behavior execution ordering, CultMath/float32 parity harness, live production-frequency evidence, generic thrust/turn feedback lowering, and live handling screenshots
Collision fossil entity code contains no ship/station collision gameplay callback; shield collision timing is presentation Ymir Ymir-owned contact facts for collidable pairs; immutable entity generations for presentation visual interpolation only Ymir world stepping owns entity poses and radial fields. Loot collection and its capacity-rejection kick are daemon-owned XZ proximity consequences and do not consume contact facts. Ship and station bodies deliberately share one negative collision group: the fossil had no rigidbody entity response, and invented circle separation would make its 25-unit center-distance docking rule unreachable. Daemon smoke advances an overlapping ship/station pair, proves the ship remains at 24 units, then accepts docking. The released EveUnity scene sink consumes immutable presented generations and has no provider/command-transport dependency; the canonical Unity product contains no Aetheria or ServerShared gameplay assembly upstream Box3D parity harness for any future solid-body pair and live interpolation timeline under packet delay
Targeting/contacts sensors + ActionGameManager daemon contact/target semantics target HUD and indicators daemon-owned selection now preserves the executable fossil exactly, including its oddly misnamed Target Nearest action selecting MaxBy(distance), stable visible-contact tie order, and previous-from-no-selection choosing the second-to-last distance row when at least three contacts exist. Generic Eve nearest/next/previous/reticle/clear levers route to that owner; explicit scene targeting preserves both EveUnity's sourceEntityId and targetEntityId instead of falling back to the frame's current ship. Only daemon-visible contacts can be explicitly selected, and target-not-visible survives into the denied Eve receipt without disturbing the prior target. Every authored instant lock behavior evaluates on every daemon step independently of trigger/burst selection, so an idle weapon cannot retain a stale completed lock; acquisition and decay derive from facing, elapsed time, and observer-local contact confidence. Smoke proves progressive acquisition, exact target-transfer loss/start chronology, authored angular decay with one loss crossing, reacquisition without replaying start, invalid-target reset, and generic Eve projection of the prior/current lock values. weapon.lock.started, weapon.lock.acquired, and weapon.lock.lost publish stable one-time chronology with target, weapon identity, reason, and prior/current progress through the generic feedback stream authored reticle/HUD parity; provider audio/effect binding is visual pull work
Projectile flight weapon/projectile classes Eve presentation for ordinary tracers; Ymir for persistent physical payloads receipt trajectory/effect facts or persistent payload state native projectile visual ordinary instant, charged, constant, GuidedWeapon, and Launcher execution creates no projectile body; each weapon state owns a stable shot sequence and receipts carry origin, endpoint, nominal duration, and effect identity for Eve presentation. Guided receipts additionally retain target-entity/look-direction mode, complete guidance/thrust/lift curves, evaluated thrust and top speed, and dodge frequency; these survive checkpoint restart and reach generic Eve shot facts. The fossil guided projectile only steered, split, faded, and selected hit visuals after the ordinary weapon event had committed damage, so the client path remains derived presentation rather than a Ymir gameplay body. SpawnProjectile and its alternate writer are deleted; Ymir projectile contacts are feedback-only for explicitly persisted payload rows and cannot write damage; Ymir.Core remains embedded for world integration, radial fields, circle contacts, pickups, and genuinely persistent/interceptable payloads generic guided trajectory lowering, provider split/fade asset parameters, and removal of ordinary projectile terminology from runtime contracts
Shield/armor/equipment/hull damage energy-funded shield, schematic armor cells, equipment and scalar hull daemon canonical damage transaction aggregate/exact armor grid, entity status, and layer-aware shot/damage receipts schematic, meters, impacts, damage VFX owner-exists; wired; exclusive; projected: daemon initializes armor/maximum-armor grids from hull plus hardpoint catalog topology; direct and deployable damage share one shield -> armor cell -> equipment -> scalar hull transaction; direct impacts use the fossil's full-width/full-height normalized-UV scaling to select a cell or complete hardpoint footprint before orthogonal spread and contiguous 0.5-cell penetration that stops at the first hull gap, while splash payloads select the source-facing hull half; rotated equipment interception shares the refit/thermal/schematic footprint owner; the fossil penetration infinite-loop defect is fixed; damage type is typed/pass-through without resistances because the fossil never applied them; Eve exposes aggregate and exact armor state, and each direct-shot receipt owns stable per-cell coordinates plus armor/equipment/hull application for presentation; fake Ymir contacts and presentation cannot decide damage authoritative authored collider-UV topology input, orthogonal-spread/depth fixtures, and generic shield/equipment effect lifecycle
Thermal/energy cell conduction, capacitor/reactor/radiator network, and cockpit thermal exposure daemon ship/equipment power, temperature, medical state, risk and death feedback schematic/post effects owner-exists; wired; exclusive; projected; generic timing and native asset delivery lowered: catalog hull and installed-item shapes derive cell mass/conductivity/topology; local temperature derives thermal performance, wear potential and online state; all consumers share capacitor-first/reactor-residual transactions; powered radiators pump before reactor settlement; reactor heat then enters the same cell network before conduction/radiation; cockpit-cell temperature drives the fossil nonlinear heatstroke/hypothermia accumulation, linear recovery, severe-risk crossings, and ordinary exactly-once destruction with a typed cause; Eve exposes cockpit, risk, heatstroke source-weight, phasing and death-transition facts; EveUnity generically resolves the original severe pulse plus live/reconnect-safe cause-specific death crossfade; Aetheria deterministically translates the five legacy profiles into URP profiles, persists every override as a real profile sub-asset, advertises them by semantic role through CultMesh CDN, and binds them in the canonical client through a weight-only native sink; rotated equipment topology, parent/child radiation, schematic composition, legacy SSR/AO/roundness equivalents, and live/reconnect death-fade parity remain incomplete multi-consumer ordering, multi-radiator visibility, rotated topology, generic schematic meters, renderer-feature parity, and live/reconnect death-fade screenshots
Weapons ServerShared behaviors + Unity effects daemon plus Ymir geometry/kinematics action capability, weapon state, shot/damage receipts effects/audio/HUD instant and constant resource/timing lifecycles are daemon-owned; ordinary instant weapons remain press-edge driven, while authored AutoWeapon payloads use the persisted generic hold latch to retrigger on the fixed step after cooldown completion and stop structurally on release, including across CultCache restart. Charged weapons accept one semantic request, spool without requiring a solution, hold at full charge, commit automatically when a solution appears, and perform deterministic once-per-second malfunction hazard checks after the authored safe hold interval with increasing persisted risk; successful instant, automatic, constant, charged, deployable, and turret-controlled transactions publish authored transient visibility and consume the owning equipment's temperature-derived wear, with charged visibility applying its authored multiplier and turret wear remaining exact-weapon scoped; GuidedWeapon and Launcher retain ordinary authoritative shot resolution while publishing their complete fossil steering profile as derived presentation; generic Eve weapon.state exposes charge hold/risk and feedback exposes readiness, commit, refusal, and malfunction chronology; committed direct damage now enters the shared daemon armor-cell transaction remaining impact-distribution parity, generic guided/effect lowering, and Unity effect reconciliation
Destruction/drops hull death, 25% equipment rolls, unconditional cargo drops, 25-unit launch, 30-second pickups daemon destruction identity, death/drop events, typed pickups provider-advertised destruction effect and pickups owner-exists; wired; exclusive; projected: direct and deployable lethal damage commit one deterministic destruction transaction, clear live references, retain only a non-rendered identity tombstone, and emit exact pickups/events; residual cell damage destroys installed equipment before hull, disables its behaviors immediately, and cockpit destruction kills with its fossil cause before scalar hull depletion; the reserved client DestroyEntity command is rejected; Aetheria advertises its original big explosion as effect.feedback.entity.destroyed, lowered generically by EveUnity multiplayer reconnect chronology
Tractor/scoop analog tractor and physical timed pickups daemon + Ymir tractor power, pickup body and receipt pickup world entity plus beam/interaction feedback fossil 2/s power ramp and authored forward radius/traction/distance feed pickup bodies into the shared Ymir world; after motion, the daemon collects the nearest live pickup within a fixed 25-unit XZ distance of an active undocked ship when capacity permits or moves it outside the boundary with the fossil 25-unit rejection kick; stable pickup removal makes collection exactly once and stations cannot become cargo writers; 30s daemon lifetime; instant cargo teleport deleted; current-zone pickups occupy ordinary rows in the shared Eve entity SoA body with stable logical identity and provider-owned assets; pilot.scoop advertises a generic button-hold.v1 scalar contract, the released client sends 1 on press and 0 on release through SetTractorPower, both receipts reconcile, and daemon power returns exactly to zero; the released warm collection witness proves one stable event, cargo 0 to 1, and removal in the following authoritative SoA generation; the full-cargo witness proves one capacity rejection, unchanged cargo, and one retained pickup; the provider build removes the fossil's embedded tractor object from ship prefabs, and beam.presentation attaches the sole standalone effect to the SoA ship polish provider beam shape/attachment
Dock/undock wormhole-first interact; first eligible bay; component prerequisites daemon + Ymir placement dock commands/context camera/UI transition daemon docking now preserves the fossil transaction: stable zone order selects the first entity with a real empty bay inside the fixed 25-unit XZ center radius; undock checks installed Cockpit, Thruster-or-AetherDrive, Reactor, then empty bay cargo in source order; rejection reasons survive committed command facts into generic Eve receipts; success removes parentage without moving, stopping, or rotating the ship. Accepted transitions additionally publish retained ship.docked / ship.undocked feedback with exact actor, parent, bay, frame and position; rejected operations publish no false transition. Docking clears held-group and transient weapon state, docked actors reject later fire commands, and combat subtracts docked child identities from both attacker iteration and target lookup, so stale input, forged pulses, and turret controllers cannot fire through a bay. Ymir world entities retain gravity/query bodies but do not invent ship/station rigidbody collision response that would make the 25-unit rule unreachable. The live generic Unity witness also proves advertised actions, bay assignment, dock-parent SoA inclusion and sensor sharing, camera retargeting, controlled-subject hiding, movement suppression, and restoration on undock reconnect, docked inventory/trade surfaces, and authored dock-camera blend/effect lowering
Wormhole travel ActionGameManager.EnterWormhole plus Ship enter/exit state daemon fixed-step transition plus Ymir exclusion current-entity transition state and feedback chronology provider-selected generic transition lowering command acceptance no longer moves an entity immediately; player interact, explicit travel, and agent routing derive the same canonical adjacent-zone wormhole and proximity gate, then persist four-second entering, authoritative transfer, four-second exiting, and one-frame completed phases. The daemon owns smootherstep XZ motion, the fossil 1000-unit visual-depth lever, deterministic 20-unit exit direction, 50-unit exit radius, target-adjacency discovery, and exactly-once start/transfer/completion events. Flight and every world-physics implementation receive no transitioning body; Ymir resumes on the tick after completion. An autonomous three-zone route now hard-flushes and closes CultCache during the first entering phase, reopens into a fresh run graph and Ymir owner, preserves the assigned task/carrier/phase, crosses both edges, emits exactly two start/transfer/completion triplets, and never clones the worker generic provider transition effect/camera lowering and live multi-zone pilot witness
Inventory/equipment Entity.ItemFits, TryEquip, TryUnequip, EquippedCargoBay.ItemFits/TryStore, inventory panels + ServerShared daemon atomic inventory transactions typed inventory/equipment state, commands, exact receipts generic UI generated cargo and docking bays now occupy their typed collections instead of masquerading as ordinary equipment; docked equip/reposition/store validates the complete destination on cloned state before committing either side, uses authored hull interior and hardpoint geometry, forces hardpoint rotation, rejects occupied cells and deployed ships, preserves exact item instance fields, surviving equipment behavior/weapon state, and weapon-group membership, routes bay categories with aligned content/assignment arrays, and refuses to unequip nonempty/occupied bays. Cargo transfer now uses the same plan-first rule with typed bay interiors, rotated item footprints, deterministic free-cell search, exact stack maxima, multi-stack splitting, and no partial source/destination mutation on rejection; exact reasons reach generic Eve receipts. The generic Eve equip request-to-transaction-to-CultCache-restart path is covered, including source non-resurrection live generic refit control lowering, reconnect after rejected moves, and full fossil inventory feedback parity
Trade trade UI/economy daemon stock, current value, purchase/sale commands generic UI daemon derives station, stock row, catalog item, current price, quantity, credits, target capacity, and hull-vs-cargo result; purchases ignore client opinions about price and destination kind. Commodity delivery now uses the same cloned spatial cargo plan as inventory transfer: it fills compatible partial stacks, splits the remainder at authored maximum stack size, finds deterministic free cells in the bay shape, and only then commits stock, cargo, and credits. The sequential daemon reducer serializes two client purchases for the same final stock in one frame: exactly one command debits/delivers, the other commits trade-stock-unavailable, and a hard CultCache close/reopen preserves exhausted stock, the single wallet debit, delivered cargo, and both generic Eve receipts. Docked sales identify only the source stack and quantity: the daemon derives station, instance-sensitive value, payout, deterministic typed stock placement, and commits cargo/credits atomically; generic Eve advertises available buy and sell actions. The fossil had no durable quote or expiry mechanic: its menu displayed current item value and mutated immediately, so Aetheria intentionally reprices at authoritative command execution rather than inventing quote authority. The generic Unity live witness receives an authoritative purchase receipt while paused live sale receipt witness and full trade surface parity
Action bar/input input shell and rebinding UI daemon advertises actions; client owns bindings input capability and action descriptors universal binding UI contracts wired; consumable rows are catalog-filtered, expose daemon-owned cargo quantity, active-effect count, exact duration/remaining duration, and the fossil remaining / duration fill as remaining-ratio.v1. A depleted or non-stackable active consumable remains visible with unavailable command state until its effect ends, so a lowerer never queries Unity gameplay objects. Weapon groups advertise the fossil press/release lifecycle as generic button-hold.v1 values routed to SetWeaponGroupActive; daemon entity state persists the active-group latch, press edges pulse instant/charged weapons once, constant weapons remain selected without client keepalives, release clears the latch, and the one-shot compatibility command is not the public input contract. Equipment actions derive from exact installed catalog payload/state pairs instead of blindly activating behavior zero: Switch and Trigger expose generic hold values, adjustable Thermotoggle exposes a canonical scalar.v1 Kelvin target/current value, fixed/non-interactive rows are omitted, and offline rows retain identity as unavailable. Target nearest/previous/next/reticle/clear actions expose daemon-owned current selection, visible-hostile count, and availability; the default profile preserves fossil R/T/Y/U, restores the shared wormhole-first/then-dock interaction to F, and routes view-direction.v1 world XYZ through the released generic runtime while target ranking remains daemon policy. Released EveUnity lowers provider action-bar suggestions with provider-owned icon asset keys, availability, one-shot, held, view-direction, and explicit scalar controls without importing Aetheria. Every value form translates through generic Eve requests into typed daemon commands under provider identity aetheria generic slot editing/persistence, consumable quantity/progress chrome, provider styling, and live action-bar witness
Pilot camera ARPG follow/dock cameras Eve view semantics + runtime camera rig and semantic view id EveUnity camera rig daemon dock state selects distinct contracts instead of collapsing both fossil cameras: undocked flight advertises the entity-forward Third Person Rig framing (distance 30, screen 0.64/0.19, FOV 60, lens 1-4096) and the shared aim.presentation convergence point as its look-at; Aetheria translates the fossil Cinemachine top-origin screen Y of 0.81 to Eve's bottom-origin viewport Y of 0.19; EveUnity solves native pose while preserving both optical aim and advertised entity framing, without provider types; the retained dock projection remains separate reproduce the dock camera's separate follow/look-at subjects, blend timeline, noise, and reconnect state
Render channels Unity layers/culling masks provider surface policy + runtime asset variant semantic channel exclusions EveUnity native layer mapping wired, exclusive, and lowered: the pilot surface excludes the semantic map channel; the Unity asset variant maps map to its authored native layer; EveUnity subtracts that layer from the configured camera mask; portable state contains no Unity layer or mask; provider conversion preserves the source icon shader's unlit lighting model; the released witness proves the pilot camera excludes map glyphs while the map camera retains readable white glyphs without a scene light preserve the channel proof while world presentation and transport continue to evolve
Minimap/tactical map ZoneRenderer, map cameras daemon world facts explicit map projections Unity and Electron the daemon directly advertises one every-frame aetheria.sector_map Eve surface backed by the committed sector-map projection, so travel and discovery cannot remain stuck at topology boot. The graph carries only discovered topology, current/start/Terminus roles, the fossil weighted critical route, persistent home/executive faction landmarks, and a legend. Each visible faction owns a graph.region scalar field with the original owner 10, present 5, excluded -10 samples. The provider asset catalog carries the historical Galaxy and Influence materials plus start, Terminus, home, and executive sprites. sectorMap.* tokens preserve the authored background noise, contour/hatch/stroke parameters, faction boosts, deterministic per-faction hatch tilt, 0.002/0.005 link widths, 0.5/0.25s reveal timing, marker scale, label offset, and zoom bounds without putting Aetheria styling or gameplay logic in EveUnity. Zone details remain a subordinate inspection surface; the fossil Unity map remains a transitional lowerer, not a writer generic EveUnity and Electron graph/region lowering, provider palette recovery beyond the current stable fallback colors, node activation into zone details, and same-state visual witness in both runtimes
Celestial world ZoneRenderer, ZoneGenerator, GeneratorPlanet, body/asteroid prefab scripts daemon render projection plus provider assets ordinary generic Eve entity SoA rows EveUnity generic entity/prefab lowerer wired, exclusive, projected, and lowered for Terminus; generated-world authority now also exists in the daemon. Each tutorial topology zone deterministically evaluates the authored radius/mass/subzone curves, rosette-or-solar hierarchy, five satellite/binary passes, belt selection, mass normalization, stable orbits/bodies, gravity/wave curves, asteroid rows, and sun/gas-giant visual parameters. All 64 zones, their station/turret orbits, faction ships, and starter entry are persisted as canonical daemon state. Provider packaging extracts only each advertised visual child and strips fossil scripts/physics; released EveUnity 0.3.51 applies semantic scale around provider-authored local scale and contains no celestial or Aetheria branch. The released warm Terminus witness records eleven bodies and eighteen asteroids with provider refs and enabled renderers, including seven celestial instances intersecting the pilot frustum witness generic lowering of the persisted tutorial run; body material/light readability, close-range composition matching the fossil, asteroid variation, and Electron lowering
Fields/fog/gravity zone renderer and shaders daemon/plugin semantics Fields plugin documents EveUnity fields lowerer daemon publishes canonical gravity/fog splat layers through field.volume3d; Eve Fields 0.2.3 owns portable PowerPulse and AnimatedRadialCosine semantics; Aetheria emits the fossil global animated simplex/cellular/ambient stack, body-owned radial waves, and separate negative gameplay gravity.height and positive visual fog.surface_height; the shared camera-relative lattice spans 1536 world units as 256 six-unit Stardust cells, rasterizes gravity at eight texels per cell into 2048 texels, and snaps the viewport by one six-unit cell; daemon entities follow fossil terrain height plus hull grid offset after Ymir XZ motion; released EveUnity 0.3.58 lowers the authored topology, one shared snapped viewport frame for fog and Stardust, provider shader ABI, pre-postprocess URP pass, provider-requested TAA, provider-material temporal coverage inputs, authoritative flow time, the historical positive-Z Unity shader camera transform, and float32 packed-output diagnostics without provider code. The provider bundle runs the actual Stardust compute shader across X, Y, and diagonal one-cell remaps and proves 705 overlapping world cells remain bit-identical after buffer reassignment; an asymmetric GPU fixture proves positive world X samples positive texture X instead of retaining the deleted fossil gravity camera's two-axis reversal; its source gate rejects replacement of temporal dithering with a fixed alpha threshold. A separate gravity-fog gate requires raymarch and temporal reprojection to share the historical positive-Z camera convention. The flight post-process bundle gate verifies serialized ACES, exposure/contrast, bloom, vignette, and film-grain components restore readable patch structure, gravity waves, surrounding world geometry, and final luminance/composition parity; visual parity remains explicitly open
HUD/schematic ARPG HUD and SchematicDisplay Eve composition from daemon facts semantic status/components EveUnity UI provider-authored transparent cockpit is wired, projected, and lowered through generic UI Toolkit panes, metrics, and progress components for hull, shield, capacitor, temperature, cargo, weapon cooldown/groups, selected target, target lock, target shield, and target hull. The daemon now publishes the original spatial schematic semantics as a generic ship.schematic subtree for both self and selected target: explicit occupied hull cells with current/maximum armor, catalog-backed rotated equipment footprints, durability, thermal range/performance, online state, wear, and nested weapon ammo/cooldown/charge/reload facts. Refit, damage, and presentation share the same rotation geometry; Unity objects do not derive schematic truth generic spatial schematic lowering, warning timelines, dynamic action state, and composited live capture
Hit/lock/warnings ActionGameManager feedback daemon event facts transient feedback stream VFX/UI/audio bounded deduplicated game-event ledger and Eve feedback.stream wired for pickup outcomes, projectile launch/impact, entity damage, alive-to-dead destruction, thermal-risk crossings, accepted dock/undock transitions, authoritative weapon reload chronology, lock start/acquired/lost chronology, and episode-deduplicated weapon.fire.refused facts for insufficient energy or missing ammunition; docking facts retain exact actor/parent/bay identity and rejected operations emit none; every lock transition carries authored weapon identity, target, reason, and prior/current progress, while reconnect priming prevents retained events from replaying as new feedback broader negative transaction fixtures, provider lock/docking audio and effect roles, and broader runtime effect consumption
Assets Assets/Resources Aetheria provider asset catalog + CultMesh CDN runtime cache/load provider manifests name deterministic bundle-internal paths and now project each typed hull prefab through the same asset key in Eve scene and SoA identity state; the authoring build derives presentation-only prefabs, strips non-Eve gameplay scripts, externalizes embedded effects, preserves source material semantics, and verifies the loaded bundle ABI; released EveUnity 0.3.57 resolves Unity's lowercase bundle names against authored-case advertised keys. The released cold witness begins with an empty cache, transfers the 56,168,017-byte body through cultmesh.content.v1, atomically promotes its exact SHA-256 with no partial, selects SharedFileMapping, and lowers the shield-free hull while preserving pilot/map isolation provider-to-client network zero-copy, shared-memory delivery, and GPU zero-copy remain open; the managed network session still copies and fragments payload bytes before verified promotion
Save/resume original persistence paths daemon/CultCache published current state clients rehydrate durable latest-frame checkpoints survive real CultCache directory-store close/reopen with complete loadout/behavior state, pending combat lock/trigger state, consumed pickup removal/cargo chronology, active autonomous task ownership, and a mid-wormhole multi-zone route. Fresh Ymir sessions reconstruct ordinary motion from committed world truth; loot replay safety comes from the same atomic durable pickup removal and cargo insertion rather than a private contact journal. Explore tasks resume through the same scheduler movement commands, complete exactly once, release helm ownership, and reach the generic Eve commander surface; cross-zone restart preserves the transition phase and exactly-once event chronology without cloning the worker live process-kill/relaunch witness and version/catalog migration policy
Terminus loop original game composition daemon/Ymir/Eve pilot surface Aetheria.Unity released minimum/full-session witnesses prove generic provider discovery, world/assets, dock/undock, trade, movement, targeting, fire, destruction, tractor motion, and feedback. The current released loop proves tractor delivery into daemon XZ proximity, one stable pickup.collected event, durable pickup removal, and cargo 0 to 1 without a Ymir fact receipt; its full-cargo sibling proves one stable rejection, unchanged cargo, and retained provider pickup state richer trade content, docking transitions, and sustained combat encounters
Starbridge original/shared architecture intent one daemon session pilot + commander surfaces Unity + Electron commander task board and autonomous explore execution wired; Electron Eve lowering and split-target proof missing commander orders plus four pilots and autonomous workers
Behavior engine ServerShared/Behaviors composition daemon executable action/status projection action bar and feedback tick reconciles equipped catalog payloads into persistent behavior state; Switch, one-shot Trigger, normalized Cooldown, adjustable high/low-pass Thermotoggle, EnergyDraw, equipment Heat, atomic ItemUsage, and thermal Wear execute in authored group order and stop downstream effects on refusal; each row records whether the chain reached it. Thruster, rare AetherDrive, Radiator, MiningTool, and ResourceScanner pause their groups at the specialized owner, report the exact fossil success result, and resume common tails at most once. Invalid or out-of-range resource work therefore cannot consume trailing cargo or wear. Deferred tails now complete after the resource owners and before reactor settlement and thermal integration, preserving the fossil consumer-before-reactor order; radiator emission remains its independent always-update path. Cooldown projects generic progress and thermostat target is daemon-commanded state seeded from authored data. Equipped and timed-consumable StatModifier sources persist daemon-owned lifecycle state and every runtime stat reader applies the fossil base × multiplier product + constant sum rule through one query; legacy Data kind references and required-behavior filters are honored remaining specialized return-value composition and canonical consumable-content proof
Sensors/visibility installed sensor sensitivity and angular curve, Visibility, Reflector, decaying signature sources, stellar light, ping state, and observer information thresholds daemon accumulated contacts, named visibility sources, and ping events indicators/maps and provider environment lowering every operational installed Sensor executes the fossil visibility/sensitivity/angle/distance information equation and decay; visibility is thresholded by the provider setting. Actor-scoped ping owns energy, cooldown, expansion radius, reconnect-stable crossed-target state, one-time information boost, and transient signature. Operational Visibility equipment publishes evaluated constant signature; committed weapons publish authored signature including charged-shot multiplication; transient weapon and ping sources decay by the fossil exponential rule. Reflectors multiply evaluated cross-section by the exponent-8 stellar PowerPulse after thermal settlement. Gameplay light and environment projection share resolved authored orbit/body centers and provider-owned sun radius inputs. Contact refresh no longer invents perfect information or overwrites emitted visibility; docked craft consume one daemon-derived union of craft and dock-parent contacts through both Eve rows and SoA bodies, with sensor-source provenance active consumable visibility/reflector effects, complete source cardinality, classification timelines, and canonical catalog station-array data
AI/tasks corporation task scheduler plus agent state machines and installed orbital TurretController daemon commander task board, corporation survey ledger, controller aim/state, and shared semantic controls Eve commander/pilot clients point exploration, loadout-driven attack, haul, mining/offload, resource surveying, physical station towing, persistent orbit patrol, route-aware assignment, and autonomous return home are wired through shared commands. patrol is a first-class task with orbit targets distinct from survey/mining body targets; every generated tutorial NPC persists its assigned fossil four-orbit shuffled circuit before the first tick. Daemon sensors derive the fossil owner-security trespass rule from the controlled pilot's faction relationship and orbital security fields. Like the fossil Minion, a patrol agent temporarily enters the shared combat planner for its first visible hostile ship, keeps its circuit index, and resumes that same patrol when visibility is lost. Ship combat samples the fossil DPS/range policy, selects live weapon groups, leads projectiles, strafes relative to target attitude, and gates fire on catalog placement rotation. Chain-admitted orbital controllers independently acquire the first visible hostile ship, publish predictive look direction, and trigger only exact aligned in-range weapon behaviors through the shared combat lifecycle; the canonical preceding EnergyDraw now blocks acquisition, aim, and fire when power is unavailable, and non-player identity grants no implicit group-zero fire. Cross-zone task and home routes survive the full daemon-owned wormhole timeline; attack admission rejects missing/friendly targets and unavailable weapon groups before durable queueing. Cancel, complete, fail, stale-assignment repair, and duplicate-carrier repair share one scheduler-owned release primitive that zeros persisted helm input, clears the scheduler target, releases towing parentage, and prevents a terminal task from emitting another command. Real CultCache close/reopen proofs now cover both ordinary mid-travel and the first entering phase of a two-edge route; fresh Ymir owners resume without duplicate tasks, entities, or transition events, and Eve commander observes terminal status multi-client command transfer and model-local barrel-direction metadata
Consumables cargo-backed timed behavior containers daemon dynamic actions, active effects, and lifecycle facts action bar/schematic daemon atomically resolves typed metadata and concrete cargo, preserves consumed-instance quality, enforces authored stacking, evaluates effectiveness/quality, and executes ordered EnergyDraw, fossil-compatible no-op Heat, ItemUsage, and stateful Cooldown payloads after energy tick initialization; every effect and payload state has stable authored identity; cooldowns update before the ordered chain, require state strictly below zero, reset to one on success, and continue aging behind earlier failures; false and unsupported payloads stop later execution with a typed fact; timers retain the fossil's exact-zero final tick; Unity reconciles presentation by effect identity and cannot restore active behavior state by list index catalog revision pinning, stat modifiers, remaining behavior families, and reconnect presentation proof

Ownership Invariants

  1. Unity objects never decide durable game state.
  2. Aetheria owns spatial state, game meaning, and persistence. The daemon calls Ymir directly as an injected in-process physics library and commits its deterministic results; Ymir never becomes a second daemon or state owner.
  3. Eve publishes semantic facts and commands, not Aetheria implementation objects or runtime-specific layer numbers.
  4. Runtime-specific asset metadata may map semantic view channels to native mechanisms such as Unity layers.
  5. Provider assets own authored visuals; EveUnity owns generic projection and native hosting; Aetheria.Unity owns only provider client configuration.
  6. Transient feedback has authoritative event identity so reconnect and refresh cannot duplicate hits, drops, purchases, or deaths.
  7. RTS, minimap, and pilot views are projections of one world state.
  8. Restored agent combat and future pilot cognition share semantic ship actions, command validation, and Ymir execution. They do not share an implicit combat authority: RTS task scheduling assigns work, while pilot cognition proposes actions from observer-local knowledge under daemon-owned doctrine.

Migration Order

  1. Finish archaeology and replace every reference row with exact behavior, source anchors, state inputs, outputs, timing, and proof cases.
  2. Establish complete daemon simulation parity using the injected Ymir physics port before polishing clients.
  3. Publish combat, thermal, contact, equipment, docking, trade, and feedback facts through Eve without runtime-specific leakage.
  4. Implement generic EveUnity presentation primitives and plugin lowering.
  5. Delete Unity's reconstructed Entity/Zone/Behavior mirror, then compose Aetheria.Unity from generic primitives and provider assets.
  6. Run scenario parity against the fossil and preserve captures, receipts, and state timelines in conformance packs.

Original-game parity is the substrate, not the final pilot command model. New combat work must follow cockpit-doctrine-combat.md: preserve semantic weapon actions and physical constraints, then place daemon-hosted cognition planning above them. The planner may propose sensing, maneuver, and fire-control actions; the daemon command gate alone accepts them, and Ymir alone resolves spatial motion and collision. Do not spend migration effort rebuilding manual aiming as the primary skill test or let a Unity presentation path become a second combat owner.

Current P0 Faults

These are source-confirmed ownership failures, not feature backlog:

  1. Physics parity is incomplete. Daemon entity, pickup motion, tractor, physical payload, and wormhole-exclusion paths use the embedded Ymir owner; pickup collection itself is an Aetheria XZ proximity rule. The entity/entity collision exclusion required by fossil docking is now proven, and the released Unity scene projection has no writeback dependency. The upstream Box3D parity harness and broader shape/contact coverage remain open.
  2. Executable behavior coverage remains partial. Snapshot schemas preserve broad equipment/behavior state and the daemon executes the migrated weapon, propulsion, energy, thermal, consumable, mining, survey, and agent families; remaining catalog behavior families and exact execution order still need proof.
  3. Client feedback chronology is incomplete. Pickup collection, rejection, expiry, projectile launch/impact, damage, and destruction now use a bounded deduplicated daemon ledger projected through Eve, including lock, damage, and wormhole transition chronology; thermal warnings and docking effects still need complete event families.
  4. View composition remains partial. Pilot surfaces now exclude semantic render channels and runtime asset variants map those channels to native layers without leaking Unity masks into portable state. Entity presentation graphs, attachment sockets, map products, and richer effect composition are not yet first-class contracts.
  5. Run completion and boss/narrative progression have no source-backed owner. Active play, failure, and Continue now share the daemon checkpoint; exploration, encounter, loot, docking, trade, and refit remain correctly derived from world facts. The fossil contains boss placement and an exit zone, but no victory transition, so completion must be owned by an explicit game mode rather than inferred from reaching a zone.
  6. Live conformance has no complete owner. Static provider packs can pass while daemon, runtime, or split-target dependencies are absent. The current Eve consumer smoke fails because its expected EveElectron proof is missing.
  7. Normative native presentation is incomplete. EveUnity owns semantic render-channel lowering and immutable presented-entity generations. General presentation graphs, map products, attachment/effect lifecycles, material profiles, and source-version diagnostics still lack complete Eve contracts and generic runtime lowerers.
  8. Original-game acceptance lacks an evidence ledger. No current owner records fossil baseline, target state timeline, commands/receipts, rendered captures, and negative-writer checks as one scenario result.

Evidence Rules

  • Static fixtures and provider packs prove schema/contract shape only.
  • wired, exclusive, lowered, and proven require live executable witnesses at the claimed layer.
  • A negative ownership claim must verify the obsolete path cannot produce, override, or repair the result.
  • The current verify-aetheria-ymir-cutover.ps1 proves selected Unity callback removal and static routing into an Aetheria bridge. It is not Ymir integration proof until it verifies an actual Ymir.Core/service dependency and rejects Aetheria-local spatial implementations.
  • Conformance scenarios must preserve source baseline, authoritative state timeline, Ymir timeline, command/receipt chronology, rendered capture, runtime/package versions, and negative-authority results together.
  1. The fossil authoring project still contains a mutable gameplay graph. AetheriaUnityObservedEntityRestorer, AetheriaUnityObservedFrameApplier, ActionGameManager, and ZoneRenderer remain reference and asset-authoring inputs in the original Unity project. They are absent from the canonical Aetheria.Unity client, whose verifier rejects Aetheria, ServerShared, and gameplay assemblies. EveUnity now publishes each committed SoA generation through a read-only presented-entity registry; richer selection and HUD adapters still need to consume it instead of rebuilding parallel indexes.
  2. Remote provider asset delivery is proven through the managed content session. The authoring build derives deterministic presentation-only variants, strips missing and non-Eve scripts, verifies the saved prefabs and loaded AssetBundle, and the daemon advertises those bundle-internal paths. A clean released EveUnity client downloads, verifies, atomically promotes, maps, reuses, and renders the provider body without access to the authoring project. The cold witness selects SharedFileMapping over the exact transfer-owned final path; network and GPU zero-copy are not claimed.
  3. The negotiated local SoA fast path remains unproven. The daemon publishes exact immutable generations; the external Unity client rejects stale or mismatched bodies and now resolves the same generation through the Verse-owned network binding, manifest, and content-addressed chunks. The live witness proves remote/fallback correctness. Shared-memory handle exchange and proof that a same-machine client selected the shared-memory SoA representation remain CultMesh work rather than EveUnity policy.