Skip to content

Commit 6205aff

Browse files
refactor(goal): code analysis engine
changes: - file: __init__.py area: cli modified: [stage_paths, main] - file: authors_cmd.py area: cli modified: [authors_list, authors_remove, authors_update, authors_add, authors_import] - file: commit_cmd.py area: cli modified: [validate] - file: version.py area: cli modified: [update_project_metadata] - file: validation.py area: config modified: [ConfigValidationError] - file: python.py area: docs modified: [PythonDiagnostics, check_py011_version_consistency] - file: formatter.py area: core modified: [MarkdownFormatter, add_command_output] - file: analyzer.py area: analyzer modified: [per_file_notes, ContentAnalyzer] - file: push_remote.py area: core modified: [_offer_recovery] - file: file_validator.py area: core modified: [manage_dot_folders] stats: lines: "+706/-501 (net +205)" files: 26 complexity: "Stable complexity"
1 parent d4609f4 commit 6205aff

30 files changed

Lines changed: 731 additions & 505 deletions

CHANGELOG.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,39 @@
11
## [Unreleased]
22

3+
## [2.1.116] - 2026-03-27
4+
5+
### Docs
6+
- Update CHANGELOG.md
7+
- Update TODO.md
8+
- Update docs/README.md
9+
- Update project/context.md
10+
11+
### Other
12+
- Update planfile.yaml
13+
- Update project/analysis.toon.yaml
14+
- Update project/calls.mmd
15+
- Update project/calls.png
16+
- Update project/compact_flow.mmd
17+
- Update project/duplication.toon.yaml
18+
- Update project/flow.mmd
19+
- Update project/flow.png
20+
- Update project/index.html
21+
- Update project/map.toon.yaml
22+
- ... and 2 more files
23+
24+
## [0.1.10] - 2026-03-27
25+
26+
### Fixed
27+
- Fix wildcard-imports issues (ticket-09656430)
28+
29+
## [0.1.10] - 2026-03-27
30+
31+
### Fixed
32+
- Fix wildcard-imports issues (ticket-0f634339)
33+
- Fix wildcard-imports issues (ticket-0d8f6000)
34+
- Fix wildcard-imports issues (ticket-212c0467)
35+
- Fix wildcard-imports issues (ticket-0fd418e6)
36+
337
## [2.1.115] - 2026-03-27
438

539
## [2.1.114] - 2026-03-27

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# Goal
55

66
<p align="center">
7-
<img src="https://img.shields.io/badge/version-2.1.115-blue.svg" alt="Version">
7+
<img src="https://img.shields.io/badge/version-2.1.116-blue.svg" alt="Version">
88
<img src="https://img.shields.io/badge/python-3.8+-blue.svg" alt="Python">
99
<img src="https://img.shields.io/badge/license-Apache%202.0-blue.svg" alt="License">
1010
<img src="https://img.shields.io/badge/pypi-goal-orange.svg" alt="PyPI">

TODO.md

Lines changed: 351 additions & 214 deletions
Large diffs are not rendered by default.

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.1.115
1+
2.1.116

docs/README.md

Lines changed: 29 additions & 29 deletions
Large diffs are not rendered by default.

goal/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
"""Goal - Automated git push with smart commit messages, changelog updates, and version tagging."""
22

3-
__version__ = "2.1.115"
3+
__version__ = "2.1.116"

goal/cli/__init__.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ def split_paths_by_type(paths: List[str]) -> Dict[str, List[str]]:
7575
return {k: v for k, v in groups.items() if v}
7676

7777

78-
def stage_paths(paths: List[str]):
78+
def stage_paths(paths: List[str]) -> None:
7979
if not paths:
8080
return
8181
# stage in chunks to avoid arg length issues
@@ -154,7 +154,7 @@ def parse_args(self, ctx, args):
154154
@click.option('--nfo-format', default='markdown', help='nfo log format')
155155
@click.option('--nfo-sink', default='', help='Additional nfo sink')
156156
@click.pass_context
157-
def main(ctx, bump, version, yes, all_flags, todo, markdown, dry_run, config_path, abstraction, nfo_format, nfo_sink):
157+
def main(ctx, bump, version, yes, all_flags, todo, markdown, dry_run, config_path, abstraction, nfo_format, nfo_sink) -> None:
158158
"""Goal - Automated git push with smart commit messages."""
159159
_setup_nfo_logging(nfo_format, nfo_sink)
160160

goal/cli/authors_cmd.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ def authors():
1313

1414

1515
@authors.command(name='list')
16-
def authors_list():
16+
def authors_list() -> None:
1717
"""List all project authors."""
1818
manager = AuthorsManager()
1919
manager.list_authors()
@@ -24,15 +24,15 @@ def authors_list():
2424
@click.argument('email')
2525
@click.option('--role', '-r', help='Author role or title')
2626
@click.option('--alias', '-a', help='Short alias for reference')
27-
def authors_add(name, email, role, alias):
27+
def authors_add(name, email, role, alias) -> None:
2828
"""Add an author to the project."""
2929
manager = AuthorsManager()
3030
manager.add_author(name, email, role, alias)
3131

3232

3333
@authors.command(name='remove')
3434
@click.argument('email')
35-
def authors_remove(email):
35+
def authors_remove(email) -> None:
3636
"""Remove an author from the project."""
3737
manager = AuthorsManager()
3838
manager.remove_author(email)
@@ -43,14 +43,14 @@ def authors_remove(email):
4343
@click.option('--name', '-n', help='New name')
4444
@click.option('--role', '-r', help='New role')
4545
@click.option('--alias', '-a', help='New alias')
46-
def authors_update(email, name, role, alias):
46+
def authors_update(email, name, role, alias) -> None:
4747
"""Update an author's information."""
4848
manager = AuthorsManager()
4949
manager.update_author(email, name, role, alias)
5050

5151

5252
@authors.command(name='import')
53-
def authors_import():
53+
def authors_import() -> None:
5454
"""Import authors from git history."""
5555
manager = AuthorsManager()
5656
manager.import_from_git()

goal/cli/commit_cmd.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,6 @@ def fix_summary(ctx, fix, preview, cached):
143143
@click.pass_context
144144
def validate(ctx, fix, cached):
145145
"""Validate commit summary against quality gates."""
146-
from ..enhanced_summary import QualityValidator
147146

148147
files = get_staged_files()
149148
stats = get_diff_stats()

goal/cli/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -340,7 +340,7 @@ def update_project_metadata(filepath: Path, user_config) -> bool:
340340
author_list = [a.strip().rstrip(',') for a in existing_authors.split('\n') if a.strip()]
341341
author_list.append(new_author_entry)
342342

343-
authors_block = 'authors = [' + ', '.join(author_list) + ']'
343+
authors_block = f"authors = [{', '.join(author_list)}]"
344344
content = re.sub(
345345
r'^authors\s*=\s*\[.*?\]',
346346
authors_block,

0 commit comments

Comments
 (0)