Document the app boundary between factory-game and galaxy generation #17
Labels
No labels
burndown-2026-08
autonomy
async-consult
autonomy
epic
autonomy
headless
autonomy
live-collab
c#
priority
P0
priority
P1
priority
P2
priority
P3
priority
P4
role/advocate
role/director
role/exec
role/frontend
role/gamedev
role/human
role/platform
role/qa
role/science
role/sysadmin
state
ambient
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
coilyco-gaming/factory-game-v3#17
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Capture the product boundary Kai clarified during planning:
factory-game-v3and galaxy generation should remain completely separate apps. This is a design/documentation task, not an implementation task.Context:
factory-game-v3is the programming-first factory/logistics simulation.factory-game-v3.factory-game-v3#16should be interpreted only as a future factory-game debug/observability viewer overfactory_sim, not as a galaxy-gen viewer or shared app.Design/documentation goal:
factory-game-v3planning docs or issue guidance.factory-game-v3should not grow afactory_gen/galaxy-generation crate or assume ownership of galaxy generation.Advisor deliverable:
Out of scope:
🔎 ward agent advisor
ward agent advisor --harness codexran a one-shot standard research pass on this question:Recommendation
factory-game-v3should document a hard app boundary: this repo owns the programming-first factory/logistics simulation and any future tooling that visualizes factory sim state only. It does not own galaxy generation, galaxy seed exploration, star-system rendering, or galaxy-scale resource distribution.Decision to record
factory-game-v3remains the home offactory_content,factory_sim,factory_cli, and any future debug or observability viewer for factory simulation state.factory_simdata such as sources, factories, haulers, dispatch state, inventory, recipes, and ticks.factory_gencrate, galaxy-generation crate, or shared runtime that assumes ownership of galaxy concerns.Why this is the right boundary
factory_simand a headless CLI, with simulation concepts limited to typed content IDs, dispatch, haulers, factories, inventory, and tick stepping.What to do with existing issues
#16should stay open if its intent is the future factory-game debug/observability viewer overfactory_sim.#16should be annotated to say explicitly that it is not a galaxy viewer, galaxy generator, or shared Bevy app.#16should be renamed only if its current title is ambiguous. A good direction would be wording like "Document or build a factory-sim debug viewer" rather than a generic "Bevy viewer" title.#17is the right place to capture the boundary decision itself. It should not fan out into separate child issues unless later work actually spans multiple repos.Suggested wording for the boundary note
Options considered
Open questions
docs/FEATURES.md, or issue guidance around#16? My recommendation is to capture it in repo docs and annotate#16, because issue-only guidance is too easy to lose.Recommendation for any future cross-app contract
Risks if this is not documented now
factory_genor galaxy-adjacent crates without a product decision.Bottom line
Post a repo-level clarification that
factory-game-v3is the factory sim app, not the galaxy app. Keep#16alive only as a factory-sim viewer track, annotate it to remove galaxy ambiguity, and require any future interop to happen through a versioned exported data contract rather than a shared runtime.Researched and posted automatically by
ward agent advisor --harness codex(ward#179). This is one-shot research, not a carried change - verify before acting on it.— Codex, via
ward agentClarification from Kai: the intended boundary is not “these projects must look unrelated.”
The boundary is domain/runtime/code ownership:
factory-game-v3must not depend on galaxy-gen code in any meaningful way.The acceptable and expected similarity is ops/build/deploy structure because both may be Rust/Bevy/Wasm apps:
wardverbsSo future guidance should say: converge on deployment architecture where useful, but keep domain architecture and runtime code independent.
Boundary recorded on
mainin41d93eb: docs/app-boundary.md, linked from the AGENTS.md repo boundaries.Advisor recommendations from the issue body, resolved:
factory_simdebug/observability viewer and #18 already carries the "no galaxy-generation concepts" hard constraint, so both are consistent with the boundary. #11's design brief predates the clarification but is a historical record, not guidance - the boundary doc now outranks it for scope questions.factory_clialready emits are the template: versioned schema files one app writes and another reads. A shared contract crate only if Kai explicitly creates one, and neither app ever reaches into the other's internals or runtime.WARD-OUTCOME: done