Refactor apm init to minimal-only mode (breaking change)#18
Refactor apm init to minimal-only mode (breaking change)#18danielmeppiel merged 7 commits intomainfrom
apm init to minimal-only mode (breaking change)#18Conversation
Co-authored-by: danielmeppiel <51440732+danielmeppiel@users.noreply.github.com>
Co-authored-by: danielmeppiel <51440732+danielmeppiel@users.noreply.github.com>
Co-authored-by: danielmeppiel <51440732+danielmeppiel@users.noreply.github.com>
Co-authored-by: danielmeppiel <51440732+danielmeppiel@users.noreply.github.com>
apm init to minimal-only mode (breaking change)
|
@copilot integration tests failed in CI and need to be adjusted to the new way of working: |
- Remove expectations for template files (hello-world.prompt.md, .apm/) - Add manual file creation to simulate user workflow in minimal mode - Create prompt files and .apm/ directory structure in tests - Update apm.yml with required scripts for each test - Rename template bundling test to minimal mode test - Update assertions to verify only apm.yml is created by init Co-authored-by: danielmeppiel <51440732+danielmeppiel@users.noreply.github.com>
... Updated E2E integration tests to reflect minimal mode behavior (commit 9452472). Changes made:
The tests now simulate the actual minimal mode workflow where users manually create their project structure after initialization. |
|
@copilot the Release Validation tests which now failed in CI seems to need some adjustment as well: |
- Add project structure creation after apm init - Create .apm/instructions directory with test instructions - Create hello-world.prompt.md for compilation testing - Add start script to apm.yml for run command testing - Update log messages to reflect minimal mode behavior Co-authored-by: danielmeppiel <51440732+danielmeppiel@users.noreply.github.com>
... Updated release validation script to work with minimal mode (commit 745d5e2). Changes made:
The validation script now simulates the actual user workflow where they manually create their project structure after running |
Refactor
apm initto Minimal-Only Mode ✅This PR implements a breaking change to
apm initto align with npm's behavior wherenpm initcreates onlypackage.json.Implementation Status
apm initto create only minimalapm.yml_create_project_files()logic for template files_load_template_file()and_get_template_dir()functions_create_minimal_apm_yml()function-yflag properly (removed--force)apm.ymlcreationdocs/cli-reference.md)Key Changes
CLI Changes:
--forceflag (no longer needed with minimal mode)--yesflag to use auto-detected defaultsapm.yml(no templates, no example files, no .apm/ directory)Auto-Detection System:
_auto_detect_author()- Extracts author fromgit config user.name(fallback: "Developer")_auto_detect_description()- Generates description from project nameMinimal apm.yml Structure:
Test Results ✅
Test Updates
All test suites now simulate the minimal mode workflow:
apm initcreates onlyapm.yml.apm/directoryapm.ymlwith required scriptsThis matches the real-world workflow where users manually create their project structure.
Usage Examples
Breaking Changes⚠️
hello-world.prompt.md,feature-implementation.prompt.md) no longer created.apm/directory structure no longer auto-generated--forceflag removed (behavior now covered by--yes)Documentation Updates
docs/cli-reference.mdwith new behavior and examplesSecurity Summary
CodeQL Analysis: ✅ No vulnerabilities detected in changes
Original prompt
apm initto minimal-only mode (breaking change) #13✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.