For Chris — nuget.org account task, not a code change.
Trusted publishing is configured and working end-to-end, but it only authenticates the push. It does not reserve the package-id prefix. Those are separate things on nuget.org and it's easy to assume the first covers the second.
Why it matters
Without a reserved prefix:
- Anyone can publish
ErpForFactoryGames.<anything> before we do, and first push wins the id permanently.
- Our packages get no owner badge on nuget.org, so consumers have nothing distinguishing ours from a lookalike.
The SatisfactorySaveNet id is already the cautionary case — it's taken by upstream, which is what forced the rename in #312 in the first place.
What to do
Ids awaiting the reservation
Per ADR-0030, a package per layer rather than one per repo:
ErpForFactoryGames.CaptainOfIndustry.Domain
ErpForFactoryGames.CaptainOfIndustry.Application
ErpForFactoryGames.CaptainOfIndustry.Infrastructure
ErpForFactoryGames.CaptainOfIndustry.Cli (tool: erp-coi)
ErpForFactoryGames.OutworldStation.Domain
ErpForFactoryGames.OutworldStation.Application
ErpForFactoryGames.OutworldStation.Infrastructure
ErpForFactoryGames.OutworldStation.Cli (tool: erp-outworld)
Satisfactory's ids follow once that repo is restructured (#312 covers the rename, #311 the move).
Already done
- nuget.org trusted publishing configured for all three game repos (Chris, 2026-08-09).
NUGET_USER repository variable set to ERP-for-Factory.Games on both new repos.
Production GitHub environment created on both, matching the environment the trusted-publishing policy is bound to.
Nothing is blocked on this until the first release — the packages build and pack fine today, they just shouldn't be pushed until the prefix is held.
For Chris — nuget.org account task, not a code change.
Trusted publishing is configured and working end-to-end, but it only authenticates the push. It does not reserve the package-id prefix. Those are separate things on nuget.org and it's easy to assume the first covers the second.
Why it matters
Without a reserved prefix:
ErpForFactoryGames.<anything>before we do, and first push wins the id permanently.The
SatisfactorySaveNetid is already the cautionary case — it's taken by upstream, which is what forced the rename in #312 in the first place.What to do
ErpForFactoryGames.*ID prefix reservation on nuget.org, under the ERP-for-Factory.Games organisation..Clitool packages.Ids awaiting the reservation
Per ADR-0030, a package per layer rather than one per repo:
Satisfactory's ids follow once that repo is restructured (#312 covers the rename, #311 the move).
Already done
NUGET_USERrepository variable set toERP-for-Factory.Gameson both new repos.ProductionGitHub environment created on both, matching the environment the trusted-publishing policy is bound to.Nothing is blocked on this until the first release — the packages build and pack fine today, they just shouldn't be pushed until the prefix is held.