Repository navigation
Labels
area: deployhomelab-deploy, deploy-v2, manifests, and rollout flow.homelab-deploy, deploy-v2, manifests, and rollout flow.priority: P2Medium; normal planned work.Medium; normal planned work.status: blockedCannot move forward until an external dependency is resolved.Cannot move forward until an external dependency is resolved.type: featureNew user-facing or operator-facing capability.New user-facing or operator-facing capability.
Description
Parent
Rewrite the spec and the compiler in place, release 1.0.0, and hand over every Project
What to build
A route's redirect step renders as a Traefik redirect Middleware instead of failing with "a redirect Middleware is not rendered yet". The live case is mail's stalwart-root-to-admin (the root of the mail host redirects to its admin path), which the mail handover needs. Found while planning the edge handover (#373, 2026-10-23).
Acceptance criteria
- A route with a redirect step renders, and the Middleware it names is in the same artifact.
- Mail's root-to-admin redirect is the worked example.
- The chapter states the rule and its refusals, with short rationale only, and
CONTEXT.mdcarries each new term in the same pull request. - A worked example shows it; its resolved artifact and its rendered tree are updated and reviewed by hand, never regenerated in CI.
- Each refusal has a refusal example with its diagnostics file.
- The JSON Schemas and their corpus admit the new shape and refuse a malformed one.
- The behaviour-ledger row lands with its test, and
npm run verifypasses.
Blocked by
Metadata
Metadata
Assignees
Labels
area: deployhomelab-deploy, deploy-v2, manifests, and rollout flow.homelab-deploy, deploy-v2, manifests, and rollout flow.priority: P2Medium; normal planned work.Medium; normal planned work.status: blockedCannot move forward until an external dependency is resolved.Cannot move forward until an external dependency is resolved.type: featureNew user-facing or operator-facing capability.New user-facing or operator-facing capability.
Activity
feat(model): render a route's redirect as its own Middleware
feat(model): render a route's redirect as its own Middleware
feat(model): render a route's redirect as its own Middleware
feat(model): render a route's redirect as its own Middleware
feat(model): render a route's redirect as its own Middleware