Commit Graph
29 Commits
Author SHA1 Message Date
james.maes f751b2eb4e refactor: reorganize repository structure
- Move design docs to docs/
- Move packaging files to packaging/
- Create GitHub issues and milestones for tracking
- Update workflow and README references
2025-12-31 06:23:24 -06:00
james.maes b4adabecfe docs: update CLAUDE.md and TODO.md with session progress 2025-12-30 20:55:35 -06:00
james.maes 418f09fea1 refactor(qqq): make init command interactive with ConsoleUI
- Add ConsoleUI for centralized console I/O
- InitCommand now prompts for template and directory
- Template defaults to new-qqq-application
- PromptRunner uses ConsoleUI for consistency
2025-12-30 20:50:42 -06:00
james.maes 759f40d61e fix(cli): add version provider to qqq subcommand 2025-12-30 20:27:06 -06:00
james.maes 608e807704 feat(cli): implement version flag with build metadata
Add VersionProvider to display version, build time, and git commit.
2025-12-30 20:24:09 -06:00
james.maes ec52f64c49 docs: update CLAUDE.md and TODO.md with distribution info 2025-12-30 20:15:56 -06:00
james.maes c2f619798b docs: add release workflow and distribution info to README 2025-12-30 20:13:59 -06:00
james.maes fe4883c966 feat(dist): add Docker, Scoop, and AUR distribution 2025-12-30 20:10:50 -06:00
james.maes fb10e15ef2 feat(brew): add Homebrew formula with auto-update on release 2025-12-30 20:05:08 -06:00
james.maes 98f4a470d3 fix(ci): use macos-15 runner (macos-13 deprecated) 2025-12-30 19:54:12 -06:00
james.maes 514cd3d5ae docs: add TODO with project roadmap 2025-12-30 19:48:22 -06:00
james.maes 618f09e5f0 fix: remove unused import, add README 2025-12-30 19:47:22 -06:00
james.maes a25309b75d feat(qqq): add init and list commands for template scaffolding
- Add qqq init command with hub-based template discovery
- Add qqq list command to display available templates
- Add Handlebars templating with native image support
- Add GitHub Actions workflow for multi-platform builds
- Add ExitCodes constants, cleanup duplicate Javadoc
- Remove native profile from qctl-core (only qctl-cli builds)
2025-12-30 19:43:32 -06:00
james.maes 8028f9b101 build(ide): updated 2025-12-29 06:47:25 -06:00
james.maes 29e0e8c1f4 chore(license): update to AGPL-3.0 with QRun-IO copyright 2025-12-25 19:39:06 -06:00
james.maes 12e4a0355b Build: add initial native build support and configuration setup
- Introduced `native-maven-plugin` configuration in `qctl-cli` for native image generation.
- Added reflection configuration files for native image requirements.
- Implemented GraalVM validation, build scripts, and environment checks in `scripts/`.
- Added tests for `TokenStore`, CLI authentication commands, and publish functionality.
- Registered SPI plugins for modules (`qbit`, `qqq`, `qrun`, `qstudio`).
- Documented native build process in `NATIVE-BUILD.md`.
2025-08-09 17:53:14 -05:00
james.maes 65c3883c45 Style: add canonical Javadoc flowerbox format example to design documents 2025-08-09 16:25:19 -05:00
james.maes 2afa12cb6c Style: update Checkstyle scan scope and normalize formatting; add constants and Javadoc in tests 2025-08-09 16:22:17 -05:00
james.maes ba1d5b19ea Style: Removed files from target directories from git 2025-08-09 15:59:42 -05:00
james.maes 29118d637c Style: add Javadoc, constants, and normalize formatting across modules
- Add Javadoc for public methods and classes in core and shared modules.
- Introduce reusable constants for calculations (e.g., BYTES_PER_KB).
- Normalize header spacing and brace placement.
- Update Cache, ConfigLoader, and ApiClient classes for readability and maintainability.
2025-08-09 15:55:38 -05:00
james.maes 5aae0a85fc Style(core): add Javadoc, braces, and header spacing; partial cleanup; continue until verify is green 2025-08-09 12:54:11 -05:00
james.maes a7c0f96905 Fix: normalize header spacing per Spotless in qctl-shared 2025-08-09 08:28:36 -05:00
james.maes bf0f873415 Style: add/normalize headers and Kingsrook formatting in shared module
- Ensure blank line separation before package declarations
- Normalize brace placement and 3-space indentation
- Add package-level Javadoc where appropriate
2025-08-09 07:57:57 -05:00
james.maes fe177d13bf Style: adopt Kingsrook IntelliJ style in build tooling
- Treat Kingsrook as the project standard: Checkstyle uses codestyle/checkstyle.config.xml
- Spotless enforces license headers for Java, XML, YAML/Properties; removed Google formatter
- Added license templates for XML and hash comment styles
- Verified mvn verify passes across modules
2025-08-09 07:23:44 -05:00
james.maes 5aad4cc634 Build: enforce Checkstyle + Spotless across modules
- Add maven-checkstyle-plugin (validate phase) using codestyle/checkstyle.config.xml
- Add Spotless license header + Google Java Format; enforce at verify
- Point Header module to codestyle/license.txt; fix paths
- Apply formatting and headers across sources
2025-08-09 07:19:32 -05:00
james.maes 3725674e31 V1 progress: output integration, tests, and mock flows
- qrun status: honor --output json via core Output; added unit test harness for renderer
- ApiClient: injectable client/sendOnce + postJson; added tests for header injection and exit-code mapping
- Cache: prune command testability (root override) + parseSize unit tests; no-op prune case covered
- qrun: added mock package and publish commands with Idempotency-Key handling
- qbit: added resolve command (hermetic stub) reading lockfile; basic tests
- whoami: align output to V1 spec (api-key: set|not set)

All modules build; unit tests pass locally.
2025-08-09 07:04:44 -05:00
james.maes 14e60277ef Scaffold qctl multi-module (Java 21, Maven) and V1 foundations:
- Reactor modules: qctl-shared, qctl-core, qctl-qqq, qctl-qbit, qctl-qrun, qctl-qstudio, qctl-integration-tests
- Core: Picocli CLI with SPI subcommand loading; config loader + schema validation; system paths; logging; Output (text/json)
- HTTP: ApiClient with retries/backoff and RFC7807→exit code mapping
- Auth: TokenStore (file fallback); auth login/logout/whoami stubs
- Cache: ls, prune --max-size, clean --all
- qrun: status command calling mock API (uses X-API-Key)
- qbit: Lockfile DTO + atomic YAML read/write
- Tests: core (config, sys paths), qbit (lockfile)
- Design & resume files: CODEGEN-LOCKS-V1.md, PROMPT-RESUME.md, cheaklist.md
2025-08-09 06:16:34 -05:00
james.maes b61c0aaf9c Initial design 2025-08-08 20:47:36 -05:00
james.maes 97efbdbd24 Initial commit 2025-08-09 00:08:13 +00:00