diff --git a/spectr/changes/add-latest-program/proposal.md b/spectr/changes/archive/2025-12-10-add-latest-program/proposal.md similarity index 100% rename from spectr/changes/add-latest-program/proposal.md rename to spectr/changes/archive/2025-12-10-add-latest-program/proposal.md diff --git a/spectr/changes/add-latest-program/specs/shell-utilities/spec.md b/spectr/changes/archive/2025-12-10-add-latest-program/specs/shell-utilities/spec.md similarity index 100% rename from spectr/changes/add-latest-program/specs/shell-utilities/spec.md rename to spectr/changes/archive/2025-12-10-add-latest-program/specs/shell-utilities/spec.md diff --git a/spectr/changes/add-latest-program/tasks.md b/spectr/changes/archive/2025-12-10-add-latest-program/tasks.md similarity index 100% rename from spectr/changes/add-latest-program/tasks.md rename to spectr/changes/archive/2025-12-10-add-latest-program/tasks.md diff --git a/spectr/specs/shell-utilities/spec.md b/spectr/specs/shell-utilities/spec.md index 44eb48f4..d23a5056 100644 --- a/spectr/specs/shell-utilities/spec.md +++ b/spectr/specs/shell-utilities/spec.md @@ -113,3 +113,18 @@ The cf program SHALL explicitly declare its runtime dependencies (fd-find, fzf, - **WHEN** cf script is executed - **THEN** it uses the Nix-provided versions of fd, fzf, and ls - **AND** does not rely on system-installed versions of these tools + +### Requirement: Latest Program +The system SHALL provide a `latest` program that commits and pushes all changes with AI-generated commit messages using the `cldk` tool. + +#### Scenario: User runs latest in git repository +- **WHEN** user executes `latest` in a git repository with uncommitted changes +- **THEN** the program invokes `cldk "commit and push all changes with good commit messages"` to stage, commit, and push changes with meaningful AI-generated messages + +#### Scenario: Cross-platform availability +- **WHEN** the engineer feature is enabled on NixOS or Darwin +- **THEN** the `latest` program is available in the system PATH + +#### Scenario: Replaces shell alias +- **WHEN** user previously used the `latest` alias in `.zshrc` +- **THEN** the `latest` program provides the same entry point with improved commit message quality