import type { CommandContext } from "../registry.js"; import type { Phase } from "../../components/component.js"; /** * chant components release --component --digest * [--git-sha ] [--run-id ] [--actor ] * * `--git-sha` defaults to the current HEAD commit (`git rev-parse HEAD`); * `--run-id` defaults to common CI run-id env vars * (`GITHUB_RUN_ID`/`CI_PIPELINE_ID`) or a locally generated id; `--actor` * defaults to common CI actor env vars * (`GITHUB_ACTOR`/`GITLAB_USER_LOGIN`/`USER`) but must resolve to *something* * — an unattributed release record defeats the point of a release ledger, so * this is the one field with no silent fallback to a placeholder. * * The timestamp is always a real `new Date()` taken here, at record time — * never threaded in from elsewhere and never mocked in production code, per * #568: "the session cannot call Date.now() in some contexts; take the * timestamp from the environment/CLI at record time." */ export declare function runComponentsReleaseRecord(ctx: CommandContext): Promise; /** * chant components status [env] [--live] [--json] [--compare-to ] * * Answers "what's built" and "what's deployed where," joined by digest. * Without `--live`, reports the release ledger alone (recorded vs unrecorded * is meaningless without live evidence, so every recorded row reports * `unknown` reconciliation — still useful as a pure ledger read). With * `--live`, joins against `lifecycle diff --live` + ownership (reusing * `buildChangeSet`, the same classification `lifecycle plan` already * trusts) to flag unrecorded deploys and drift. * * Omitting `` reports every environment that has release records. * `--compare-to ` answers the single-query cross-environment question * the epic names explicitly: "which build is in ``, and is it the one * tested in ``." */ /** Every distinct `cfn-deploy` stack name a component's deploy phases target. A * step may itself be a nested `Phase`, so walk recursively; a resolved component * carries the stack as a concrete string. * * Exported for `chant graph --live` (../handlers/graph.ts's `runGraphLive`, * #57): the same per-component stack resolution this file uses for `chant * components status --live` is also how the live graph learns which stacks to * observe on a multi-stack, per-component project (`describeResources`'s * single-stack-named-after-the-environment convention never matches one). */ export declare function cfnDeployStacks(deploy: Phase[]): string[]; export declare function runComponentsStatus(ctx: CommandContext): Promise; /** Fallback for `chant components` with no/unknown subcommand. */ export declare function runComponentsUnknown(ctx: CommandContext): Promise; //# sourceMappingURL=components.d.ts.map