A snapshot: read at commit 707a04c7ce8 on 2026-10-18T00:06:01Z by majordomus 0.29.0. Nothing on this page is read again. See it live
I0913
The provider configuration is generated, and the cheap profile is declared
Where it stands
devtask.issue- Readiness
- cancelled withdrawn
- Status
- CANCELLED
- Can start
- not now
- Milestone
- Milestone status
- ACTIVE
- Wave
3- Waiting on
- none
- Holds back
- Behind it in all
9- Evidence
0of4
Moves
plan.transitionWhat it is
- Objective
- Generate the Fly configuration from the canonical object — application, region, port, resources, autostart and autostop, health check, concurrency — and declare the cheap cost profile as data that a reader and a check can both see.
- Why
- fly.toml at the repository root is excellent for a developer and unacceptable as a second source of truth. Generating it keeps the ergonomics and removes the drift; declaring the cost profile makes an expensive change deliberate and visible in review.
- Now
- Fly.io is not a target (owner order, 2026-10-12: Fly.io is disconnected; what ships is the release binaries, GitHub Pages and the GHCR image). fly.toml is no longer generated and is not in the tree; the deployment object carries no provider block and deployment/v1 refuses one. Nothing this issue asks for exists or is wanted any more; closing it is the owner's act. Before 2026-10-12 fly.toml was generated from .ai/repo/deployments/majordomus.yaml by majordomus generate deployment (measured on master 6042f4286, 2026-09-10). Measured on 722228ef3c, 2026-10-12.
- Wanted
- fly.toml is generated, marked as generated with its source and regeneration command, validated by the provider's own validator, and every value in it traces to the canonical object.
- Done when
- Cancelled 2026-10-14 on master e28daccd9b: its whole outcome is a generated fly.toml validated by `fly config validate`, and fly.toml has left the tree. The owner disconnected Fly.io on 2026-10-12; this repository deploys release binaries, the GHCR image and GitHub Pages (commit 9af3fa65a4 removed fly.toml).
- Risk
- The high-availability profile invites a second configuration file. It must be a derived override of the same base or documented prose, never a parallel file to maintain.
Acceptance
- Every value in the generated configuration traces to the canonical object, and changing the object changes the configuration on regeneration
- The generated file carries a header naming its source and its regeneration command without invalidating the format
- The region is chosen deliberately for the intended audience and persisted in the canonical object rather than hardcoded in the projection
- The cheap profile — one machine, shared CPU, the declared memory, minimum running zero, autostart on, autostop enabled, one region, no volume — is declared as data and asserted by a check
- A service health check points at the canonical route with a startup grace period taken from the measured cold start
- Concurrency limits follow the measured behaviour of the server rather than an arbitrary number
- The provider's own configuration validator accepts the generated file
- Validation
majordomus generate --checkfly config validate- Evidence required
generated_flytomlregion_from_speccheap_profilefly_config_validate- Evidence present
- unknown: the record carries no `evidence` entries
Scope
- Touches
fly.tomlapps/majordomus-cli/src/deploy/fly.rs- Not
A second configuration file for a high-availability profileAny volume, extra service or extra address that the deployment does not requireAny secret value- Depends on
- Priority
- p0
- Profile
- implementation
- Parallel safe
- true
- Owner
- unknown: the record declares no `owner`
The work so far
- Branches
- none
- Merged
- none
- Commits
0- Trunk
- master
- Sessions
- none
- Created
- 2026-09-06
- Updated
- 2026-10-14
- Started
- unknown: the record declares no `started_at`
- Verified
- unknown: the record declares no `verified_at`
- Completed
- unknown: the record declares no `completed_at`
Synchronisation
- Adapter
scripts/github-sync- Repository
- unknown: the derived plan's header carries no repository
- External issue
- unknown: a live GitHub state; this executable makes no network call, so only `scripts/github-sync --check` can answer it
- State there
- unknown: a live GitHub state; this executable makes no network call, so only `scripts/github-sync --check` can answer it
Findings
Nothing is wrong with these records.