15 Commits

Author SHA1 Message Date
self 2b690fb482 refactor: rename config init command
Replace the tribe metadata command with config tribe and remove the legacy config init path from parsing, service APIs, help, docs, and tests.
2026-06-28 22:49:51 +02:00
self 81ac86b85f refactor: key provider credentials by id
Remove the redundant credentials.kind discriminator and use ProviderConfig.id as the provider selector throughout state, providers, renderer requests, and tests.
2026-06-28 22:02:18 +02:00
self cfbed53f96 refactor: unify provider identity
Use ProviderId as the canonical provider model identity and remove resource-level/provider-kind/source model duplication.

Treat manual as the provider id for manual servers and external domains, deriving domain DNS association from same-name zones.
2026-06-27 21:38:45 +02:00
self ad83dab0ed refactor: flatten provider identity
Remove local providerId and --provider-id multi-account paths so provider kind is the single credential identity.

Update resource bindings, planned/actual state, CLI, renderer forms, reconciliation keys, and tests to use one credential set per provider.
2026-06-27 18:32:24 +02:00
self 3b38221abe refactor: simplify node recovery actions
Remove the old restore/operator-task recovery model and make actor/execution state the source of truth. Align GUI and CLI node actions around start, stop, reboot, retry, and reinstall, with provider image reset folded into reinstall when supported.

Update statechart and architecture docs to match the reinstall/repair model.
2026-06-17 14:09:18 +02:00
self c35b84c986 refactor: rename workflows to ops
Move main operation modules under src/main/ops and retire remaining source-level workflow vocabulary.
2026-06-13 03:12:07 +02:00
self 3e00bd93fa refactor: finish actor model fifth cut
Replace the cloud supervisor actor machinery with a provider broker and provider persistence split, move managed provisioning into the provider deployment phase, and rename the coordinator facade to EngineOps.

Consolidate node observation and repair timers under ObservationScheduler, clean up materialization watcher leftovers, and update tests/docs for the new architecture.
2026-06-12 18:35:47 +02:00
self 274a6315c6 refactor: rename provider accounts to providers
Replace provider-account terminology with provider configuration/provider ids across persisted state, renderer forms, CLI contracts, and resource orchestration. Remove the provider-account CLI selector now that provider kind uniquely identifies the configured provider.
2026-06-12 13:32:45 +02:00
self 7d6dcac82c refactor: simplify provider tracking
Keep one provider credential slot per provider kind, use the normal manual slot without synthetic account handling, and limit refresh/drift/billing/resource actors to Legion-tracked servers. Rename the CLI provider setup flow from add to configure.
2026-06-12 13:32:45 +02:00
self 3e8c74a7dc refactor: route manual servers through provider catalog
Expose manual as a static compute catalog with connection details modeled as offer variables, remove the server source/account selectors, and enforce one provider account per kind. Drop the old manualServerImport capability and request-level manualConfig path so manual planning goes through the same provider offer flow.
2026-06-07 21:20:56 +02:00
self 1859624f88 feat: modularize provider registry
Move cloud providers behind module descriptors and drive renderer provider UI from those descriptors. Model manual as a user-mediated provider with simplified server import credentials and firewall operator tasks. Keep the mock provider gated by LEGION_GUI_MOCK_NETWORK and update provider docs/tests.
2026-06-07 19:59:13 +02:00
self c6f46def34 feat: add gated mock provider
Add the MockKing24 provider for GUI development and tests behind LEGION_GUI_MOCK_NETWORK=1. Hide persisted mock resources when the gate is off instead of deleting them, and remove the old Hetzner HTTP mock transport from GUI tests.
2026-06-07 18:07:07 +02:00
self 2420a527fb refactor: finish resource workflow split
Move remaining server deletion and DNS cleanup policies into resource modules, expand server reconciliation ownership, and move Electron composition roots under main/bootstrap. Narrow deployment runtime dependencies to explicit provider-provisioning and firewall-reconciliation services, validating them before provider side effects. Update architecture/provider docs to match the reorganized module tree.
2026-06-04 00:10:52 +02:00
self 46a5ba0fe1 docs: add legion architecture overview
Add docs/arch.md covering the current engine, daemon, GUI, XState actors, recovery loops, managed-node security, and daemon token posture.

Refresh the non-slop docs to match current scripts, provider coverage, GUI test behavior, and architecture references.
2026-06-03 19:29:54 +02:00
self d1c80841dd docs: consolidate top-level docs
Rename retained top-level docs to lowercase kebab-case and squash obsolete review/refactor notes into docs/open.md. Remove stale standalone plan documents that are now represented by the current open-issues summary.
2026-05-26 21:35:14 +02:00