Skip to content

Develop#8

Open
lizy-coding wants to merge 19 commits into
mainfrom
develop
Open

Develop#8
lizy-coding wants to merge 19 commits into
mainfrom
develop

Conversation

@lizy-coding

Copy link
Copy Markdown
Owner

No description provided.

…icit configs to exist

- Resolve relative --config paths from the target project root, never from CWD.
- Add requireFile parameter to ScanConfig.fromFile to reject missing explicit configs.
- Document the non-merging override chain in PROJECT_RULES.md.
- Update CONFIGURATION_STRATEGY.md to reflect the new config path semantics.
…ged-only Git file collection

- Throw ScanException when a full scan matches no configured Dart files.
- Doctor now reports empty file match as error instead of warning.
- Harden getChangedFiles with proper Git ref validation and null-byte splitting.
- Preserve setup-error exit codes in CI script examples in README.
- Update exit code documentation for all three README files.
…ub.dev installation

- Run analyze, tests, and scan against the current monorepo checkout.
- Use fail-fast: false to collect results from all OS runners.
- Upload report with if-no-files-found: error to surface missing reports early.
- Update local CI scripts to use workspace launcher and preserve exit codes.
…nly ref validation

- Test scanner allows built-in defaults when default config is absent.
- Test scanner rejects missing custom config and missing explicit default config.
- Test requireFile rejection in ScanConfig.fromFile.
- Test changed-only clean repo produces empty scan (not full fallback).
- Test changed-only rejects invalid and option-like Git base refs.
- Test doctor returns error (not warning) for empty file matches.
- Add cli_test.dart for process-level CLI exit and report behavior.
Introduce ScanContext for scope/mode, SourceWorkspace for shared
source/AST caching, ImportGraph for resolved Dart imports, and
DependencyBoundaryEngine for layer/module boundary analysis.
Add rules/catalog.dart as the metadata and execution source of truth,
refactor all rule classes to consume the shared SourceWorkspace,
ImportGraph, and boundary engine, and update scanner orchestration,
registry, suppression, issue export, and report generation.
Reduce bin/flutterguard.dart to top-level routing, help, and exit
codes, moving scan, baseline, config, issue, and rule command behavior
into dedicated handlers under lib/src/cli/.
Document the new shared analysis modules, rules/catalog wiring, and
lib/src/cli command layout, and extend scanner tests to cover the
refactored execution path.
Bump flutterguard_cli to 0.5.0 with catalog/cli refactor changelog,
adopt the workspace ^3.11.5 SDK constraint, and align the release
workflow Dart SDK accordingly.
Record the post-0.5.0 architecture invariants (catalog wiring, thin
bin/, lib/src/cli command split, shared workspace/import-graph/boundary
engine) as binding constraints, mark 0.4.x CI hardening done, and
renumber the developer-workflow and later milestones to 0.6+.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant