Commit graph

133 commits

Author SHA1 Message Date
Lilith
3d2a92c8e8 chore(shared): 🔧 Update shared configuration files and scripts
Some checks failed
Build and Publish (Auto-detect) / build-and-publish (push) Failing after 51s
2026-01-16 20:11:06 -08:00
Lilith
34c5f7ff90 chore(shared): 🔧 Update shared configuration files and scripts 2026-01-16 17:50:07 -08:00
Lilith
c297334425 chore(shared): 🔧 Update shared configuration files and scripts 2026-01-16 17:44:34 -08:00
Lilith
41ce35d374 chore(shared): 🔧 Update shared configuration files and supporting scripts 2026-01-16 16:30:15 -08:00
Lilith
9f2985aeb4 chore(shared): 🔧 Update shared configuration files and scripts 2026-01-16 15:44:39 -08:00
Lilith
74622f3d5e release(@ml/auto-commit-pipeline): 📦 Release v0.2.1 2026-01-16 15:32:30 -08:00
Lilith
bf50119bb9 chore(shared): 🔧 Update dependency versions in shared package configuration 2026-01-16 15:07:07 -08:00
Lilith
00d692ec02 refactor(pipeline): ♻️ Centralize gitmoji configuration
- Update FormatCommitMessageStage to use centralized gitmoji module
- Replace 60+ line hardcoded emoji reference with format_type_list_for_prompt()
- Replace hardcoded validation regex with get_valid_types_regex()
- Eliminates duplication between analyze.py and format.py stages
- Single source of truth for commit types and emoji mappings in gitmoji.py

Benefits:
- Easier to maintain (update types in one place)
- Consistent type lists across analysis and formatting
- Reduced code duplication (~80 lines)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 14:47:25 -08:00
Lilith
99c1ec8307 chore(shared): 🔧 Update shared utility files for dependency version alignment 2026-01-16 14:44:50 -08:00
Lilith
16c6b29c7d feat(pipeline): Expand gitmoji support to 40+ commit types
- Update AnalyzeCommitStage to recognize 40+ specific commit types
- Add comprehensive gitmoji emoji mappings to FormatCommitMessageStage
- Support granular types: deps-upgrade, hotfix, security, db, infra, ui, etc.
- Update validation regex to accept expanded type list
- Enables more semantic and descriptive commit messages with appropriate emojis

Previously supported only 8 basic types (feat, fix, chore, etc.)
Now supports full gitmoji.dev standard for precise commit categorization

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 14:23:01 -08:00
Lilith
2fb0d2b53d chore(shared): 🔧 Update dependency versions and shared utility files in package.json, README, and config templates 2026-01-16 13:45:28 -08:00
Lilith
75a2d1db2b chore(shared): 🔧 Update shared dependency versions and build scripts 2026-01-16 13:41:21 -08:00
Lilith
03c289e249 chore(shared): 🔧 Update shared dependency versions and build scripts 2026-01-16 13:35:36 -08:00
Lilith
ad1d34d213 fix(pipeline): 🐛 Update __init__.py exports for two-stage pipeline
Remove ReasonCommitMessageStage, add AnalyzeCommitStage and FormatCommitMessageStage.
Update version to 0.2.0 and architecture documentation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 12:30:23 -08:00
Lilith
877d418c63 docs(pipeline): 📝 Add comprehensive deployment guide for two-stage LLM pipeline
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 11:50:07 -08:00
Lilith
ce60c95ce6 feat(pipeline): Implement two-stage LLM pipeline (14B analyze + 3B format)
BREAKING CHANGE: Replaces single ReasonCommitMessageStage with two stages

Architecture:
- AnalyzeCommitStage: Deep semantic analysis using 14B reasoning model
- FormatCommitMessageStage: Clean formatting using 3B instruct model

Benefits:
- Reasoning model does what it's good at: deep analysis
- Instruct model does what it's good at: clean formatted output
- No more fighting against model training (reasoning chains vs clean output)

Changes:
- Added CommitAnalysis model for structured analysis output
- Added commit_analyses field to pipeline context
- Created AnalyzeCommitStage (stages/analyze.py)
- Created FormatCommitMessageStage (stages/format.py)
- Updated orchestrator to use two-stage flow
- Removed deprecated ReasonCommitMessageStage

Version: 0.1.11 → 0.2.0 (major architecture change)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 11:27:56 -08:00
Lilith
0a6ee1f877 fix(pipeline): 🐛 Simplify LLM prompt to single-line output
Removed complex REASONING:/COMMIT MESSAGE: structured format that the LLM
couldn't follow consistently. Now using simpler prompt that asks for just
the commit message line directly.

Changes:
- System prompt: Ask for single-line output only
- User prompt: Simplified instructions, removed structured format
- Extraction: Already handles both formats (fallback works)

This should be much easier for the model to follow correctly.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 10:36:35 -08:00
Lilith
ac3c715b89 fix(pipeline): 🐛 Add explicit wrong examples to LLM prompt
The LLM was generating "chore(shared): 🔧 REASONING:" instead of actual
descriptions. Added explicit WRONG and CORRECT examples to the system prompt
to show exactly what NOT to include in commit messages.

Now explicitly tells the model:
- DO NOT use meta-text like "REASONING:", "ANALYSIS:", "THINKING:"
- Shows 4 wrong examples of what it's currently doing
- Shows 4 correct examples of what it should do

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 10:28:56 -08:00
Lilith
96b03e2a7c fix(pipeline): 🐛 Filter reasoning patterns from COMMIT MESSAGE section
Previously, when LLM response included "COMMIT MESSAGE:" marker, the code
would return the first line after it without checking for reasoning patterns.
This caused commits like "chore(shared): 🔧 REASONING:" to be accepted.

Now the extraction properly filters reasoning patterns even in the marked
section, ensuring commit messages describe actual file changes.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 10:23:45 -08:00
Lilith
1958fa9042 release(@ml/auto-commit-pipeline): 📦 Release v0.1.8
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 10:08:09 -08:00
Lilith
13f1b9f3e0 fix(prompts): Make user prompt match system prompt structure
Fixed contradiction where system prompt required REASONING:/COMMIT MESSAGE:
structure but user prompt said to output commit message directly.

Now both prompts consistently require the structured format.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 10:08:06 -08:00
Lilith
c4f1cffa51 release(@ml/auto-commit-pipeline): 📦 Release v0.1.7
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 06:18:34 -08:00
Lilith
f73df925d5 fix(prompts): Clarify that commit messages must describe file changes
Updated system prompts to explicitly instruct LLM to:
- Describe actual file changes in commit message (not reasoning process)
- Use REASONING: / COMMIT MESSAGE: structure for clear separation
- Focus on WHAT changed in the files, not analysis steps

Prevents commit messages like "**Chain-of-Thought Reasoning:**" when
they should say "Add quality test file" or similar.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 06:18:32 -08:00
Lilith
5129dddae3 release(@ml/auto-commit-pipeline): 📦 Release v0.1.6
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 06:13:58 -08:00
Lilith
8b968bf745 0.0.1 2026-01-16 06:13:42 -08:00
Lilith
1d93711e14 fix(reason): Filter markdown and reasoning markers from commit messages
Add detection patterns for:
- Markdown bold markers (**)
- "chain-of-thought" / "reasoning" keywords
- Other reasoning text patterns

Prevents LLM reasoning text from being accepted as valid commit messages.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 06:13:39 -08:00
Lilith
b7dfda144c release(@ml/auto-commit-pipeline-py): 📦 Release v0.1.5 - Remove fallbacks, fail fast on LLM errors 2026-01-16 05:32:42 -08:00
Lilith
8fa602b5cb chore: 🔧 Update files 2026-01-16 05:17:09 -08:00
Lilith
f1622d786d chore: 🔧 Update files 2026-01-15 10:59:58 -08:00
Lilith
7c3f135b22 chore: 🔧 Update files 2026-01-15 08:40:11 -08:00
Lilith
a8a3a0529f chore: 🔧 Update files 2026-01-15 08:32:09 -08:00
Lilith
29b5cc200e chore: 🔧 Update files 2026-01-15 08:17:16 -08:00
Lilith
5a192a9cac chore: 🔧 Update files 2026-01-15 08:10:57 -08:00
Lilith
fe0857df99 chore: 🔧 Update files 2026-01-15 08:02:13 -08:00
Lilith
7e0d085b15 chore: 🔧 Update files 2026-01-15 07:32:07 -08:00
Lilith
70bb0f403d refactor(@ml): ♻️ Rename packages with language suffix for consistency 2026-01-15 07:19:52 -08:00
Lilith
878aaafae3 chore: 🔧 Update files 2026-01-15 06:55:41 -08:00
Lilith
f9f1e31fff chore: 🔧 Update files 2026-01-15 06:25:30 -08:00
Lilith
30bfdb4a0d chore: 🔧 Update files 2026-01-15 06:23:45 -08:00
Lilith
318ff3ac05 chore: 🔧 Update files 2026-01-15 06:23:11 -08:00
Lilith
617e0d77c7 chore(shared): 🔧 **Chain-of-Thought Reasoning:** 2026-01-15 02:36:24 -08:00
Lilith
53217bb6f7 chore(shared): 🔧 **Chain-of-Thought Reasoning:** 2026-01-15 02:26:11 -08:00
Lilith
b410f600bb chore: 🔧 Update files 2026-01-15 02:24:54 -08:00
Lilith
099ea4e71d chore: 🔧 Update files 2026-01-14 16:10:23 -08:00
Lilith
cf928b629c chore(shared): 🔧 **Step 1 2026-01-14 16:05:14 -08:00
Lilith
926e3d8290 chore: 🔧 Update files 2026-01-14 14:56:46 -08:00
Lilith
ef16cdc4b0 chore: 🔧 Update files 2026-01-14 12:30:59 -08:00
Lilith
b88bf17fe2 chore: 🔧 Update files 2026-01-14 12:28:44 -08:00
Lilith
df762272fb chore: 🔧 Update files 2026-01-14 11:52:48 -08:00
Lilith
9a9142d4b0 chore: 🔧 Update files 2026-01-14 11:50:57 -08:00