Skip to content

Commit fb26075

Browse files
test(goal): update cli docs
Statistics: 2 files changed, 25 insertions, 6 deletions Summary: - Dirs: .=1, goal=1 - Exts: .md=1, .py=1 - A/M/D: 0/2/0 Modified files: - README.md (+4/-4) - goal/cli/tests.py (+21/-2) Changes (notes): - README.md (+4/-4): update documentation - goal/cli/tests.py (+21/-2): update Implementation notes (heuristics): - Type inferred from file paths + diff keywords + add/delete ratio - Scope prefers 'goal' when goal/* is touched; otherwise based on top-level dirs - For <=6 files: generate short per-file notes from added lines (defs/classes/click options/headings) - A/M/D derived from git name-status; per-file +X/-X from git numstat
1 parent e79a827 commit fb26075

7 files changed

Lines changed: 35 additions & 11 deletions

File tree

CHANGELOG.md

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

3+
## [2.1.182] - 2026-04-09
4+
5+
### Docs
6+
- Update README.md
7+
38
## [2.1.181] - 2026-04-09
49

510
### Docs

README.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66

77
<p align="center">
8-
<img src="https://img.shields.io/badge/version-2.1.181-blue.svg" alt="Version">
8+
<img src="https://img.shields.io/badge/version-2.1.182-blue.svg" alt="Version">
99
<img src="https://img.shields.io/badge/python-3.8+-blue.svg" alt="Python">
1010
<img src="https://img.shields.io/badge/license-Apache%202.0-blue.svg" alt="License">
1111
<img src="https://img.shields.io/badge/pypi-goal-orange.svg" alt="PyPI">
@@ -23,11 +23,11 @@
2323

2424
## AI Cost Tracking
2525

26-
![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-2.1.181-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
27-
![AI Cost](https://img.shields.io/badge/AI%20Cost-$7.50-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-61.0h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fx--ai%2Fgrok--code--fast--1-lightgrey)
26+
![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-2.1.182-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
27+
![AI Cost](https://img.shields.io/badge/AI%20Cost-$7.50-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-62.0h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fx--ai%2Fgrok--code--fast--1-lightgrey)
2828

29-
- 🤖 **LLM usage:** $7.5000 (210 commits)
30-
- 👤 **Human dev:** ~$6101 (61.0h @ $100/h, 30min dedup)
29+
- 🤖 **LLM usage:** $7.5000 (211 commits)
30+
- 👤 **Human dev:** ~$6201 (62.0h @ $100/h, 30min dedup)
3131

3232
Generated on 2026-04-09 using [openrouter/x-ai/grok-code-fast-1](https://openrouter.ai/x-ai/grok-code-fast-1)
3333

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.1.181
1+
2.1.182
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
"""None"""
22

3-
__version__ = "2.1.181"
3+
__version__ = "2.1.182"

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.181"
3+
__version__ = "2.1.182"

goal/cli/tests.py

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
from pathlib import Path
77
from typing import List, Optional
88

9+
import click
10+
911
from goal.git_ops import run_command
1012
from goal.cli.version import PROJECT_TYPES
1113
from goal.project_bootstrap import _find_python_bin
@@ -93,8 +95,25 @@ def _run_subdir_test(project_type: str, base_cmd: List[str], test_dir: str) -> b
9395
result = subprocess.run(base_cmd + [test_dir], capture_output=True, text=True, timeout=120)
9496
else:
9597
result = subprocess.run(base_cmd, cwd=test_dir, capture_output=True, text=True, timeout=120)
96-
return result.returncode == 0
97-
except Exception:
98+
if result.returncode != 0:
99+
click.echo(click.style(f"\n ❌ Tests failed in {test_dir}/", fg='red'))
100+
if result.stdout:
101+
click.echo(click.style(" stdout:", fg='yellow'))
102+
for line in result.stdout.strip().split('\n')[:10]:
103+
click.echo(f" {line}")
104+
if result.stderr:
105+
click.echo(click.style(" stderr:", fg='yellow'))
106+
for line in result.stderr.strip().split('\n')[:10]:
107+
click.echo(f" {line}")
108+
if project_type == 'nodejs':
109+
if not (Path(test_dir) / 'node_modules').exists():
110+
click.echo(click.style(f"\n 💡 Fix: cd {test_dir} && npm install", fg='cyan'))
111+
elif 'Cannot find module' in (result.stderr or ''):
112+
click.echo(click.style(f"\n 💡 Fix: cd {test_dir} && npm run compile", fg='cyan'))
113+
return False
114+
return True
115+
except Exception as e:
116+
click.echo(click.style(f"\n ❌ Error running tests in {test_dir}/: {e}", fg='red'))
98117
return False
99118

100119

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "goal"
7-
version = "2.1.181"
7+
version = "2.1.182"
88
description = "Goal - Automated git push with enterprise-grade commit intelligence, smart conventional commit generation based on deep code analysis, and interactive release workflow management."
99
readme = "README.md"
1010
license = "Apache-2.0"

0 commit comments

Comments
 (0)