ace-git 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.ace-defaults/git/config.yml +83 -0
- data/.ace-defaults/nav/protocols/guide-sources/ace-git.yml +10 -0
- data/.ace-defaults/nav/protocols/tmpl-sources/ace-git.yml +19 -0
- data/.ace-defaults/nav/protocols/wfi-sources/ace-git.yml +19 -0
- data/CHANGELOG.md +762 -0
- data/LICENSE +21 -0
- data/README.md +48 -0
- data/Rakefile +14 -0
- data/docs/demo/ace-git-getting-started.gif +0 -0
- data/docs/demo/ace-git-getting-started.tape.yml +18 -0
- data/docs/demo/fixtures/README.md +3 -0
- data/docs/demo/fixtures/sample.txt +1 -0
- data/docs/getting-started.md +87 -0
- data/docs/handbook.md +50 -0
- data/docs/usage.md +259 -0
- data/exe/ace-git +37 -0
- data/handbook/guides/version-control/ruby.md +41 -0
- data/handbook/guides/version-control/rust.md +49 -0
- data/handbook/guides/version-control/typescript.md +47 -0
- data/handbook/guides/version-control-system-git.g.md +829 -0
- data/handbook/skills/as-git-rebase/SKILL.md +43 -0
- data/handbook/skills/as-git-reorganize-commits/SKILL.md +41 -0
- data/handbook/skills/as-github-pr-create/SKILL.md +60 -0
- data/handbook/skills/as-github-pr-update/SKILL.md +41 -0
- data/handbook/skills/as-github-release-publish/SKILL.md +58 -0
- data/handbook/templates/commit/squash.template.md +59 -0
- data/handbook/templates/pr/bugfix.template.md +103 -0
- data/handbook/templates/pr/default.template.md +40 -0
- data/handbook/templates/pr/feature.template.md +41 -0
- data/handbook/workflow-instructions/git/rebase.wf.md +402 -0
- data/handbook/workflow-instructions/git/reorganize-commits.wf.md +158 -0
- data/handbook/workflow-instructions/github/pr/create.wf.md +282 -0
- data/handbook/workflow-instructions/github/pr/update.wf.md +199 -0
- data/handbook/workflow-instructions/github/release-publish.wf.md +162 -0
- data/lib/ace/git/atoms/command_executor.rb +253 -0
- data/lib/ace/git/atoms/date_resolver.rb +129 -0
- data/lib/ace/git/atoms/diff_numstat_parser.rb +82 -0
- data/lib/ace/git/atoms/diff_parser.rb +110 -0
- data/lib/ace/git/atoms/file_grouper.rb +152 -0
- data/lib/ace/git/atoms/git_scope_filter.rb +86 -0
- data/lib/ace/git/atoms/git_status_fetcher.rb +29 -0
- data/lib/ace/git/atoms/grouped_stats_formatter.rb +233 -0
- data/lib/ace/git/atoms/lock_error_detector.rb +79 -0
- data/lib/ace/git/atoms/pattern_filter.rb +156 -0
- data/lib/ace/git/atoms/pr_identifier_parser.rb +88 -0
- data/lib/ace/git/atoms/repository_checker.rb +97 -0
- data/lib/ace/git/atoms/repository_state_detector.rb +92 -0
- data/lib/ace/git/atoms/stale_lock_cleaner.rb +247 -0
- data/lib/ace/git/atoms/status_formatter.rb +180 -0
- data/lib/ace/git/atoms/task_pattern_extractor.rb +57 -0
- data/lib/ace/git/atoms/time_formatter.rb +84 -0
- data/lib/ace/git/cli/commands/branch.rb +62 -0
- data/lib/ace/git/cli/commands/diff.rb +252 -0
- data/lib/ace/git/cli/commands/pr.rb +119 -0
- data/lib/ace/git/cli/commands/status.rb +84 -0
- data/lib/ace/git/cli.rb +87 -0
- data/lib/ace/git/models/diff_config.rb +185 -0
- data/lib/ace/git/models/diff_result.rb +94 -0
- data/lib/ace/git/models/repo_status.rb +202 -0
- data/lib/ace/git/molecules/branch_reader.rb +92 -0
- data/lib/ace/git/molecules/config_loader.rb +108 -0
- data/lib/ace/git/molecules/diff_filter.rb +102 -0
- data/lib/ace/git/molecules/diff_generator.rb +160 -0
- data/lib/ace/git/molecules/git_status_fetcher.rb +32 -0
- data/lib/ace/git/molecules/pr_metadata_fetcher.rb +286 -0
- data/lib/ace/git/molecules/recent_commits_fetcher.rb +53 -0
- data/lib/ace/git/organisms/diff_orchestrator.rb +178 -0
- data/lib/ace/git/organisms/repo_status_loader.rb +264 -0
- data/lib/ace/git/version.rb +7 -0
- data/lib/ace/git.rb +230 -0
- metadata +201 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: c896850e93844a5ee9be77622e671b5bdfbef22525c48c1895dcdf7d3c2a260b
|
|
4
|
+
data.tar.gz: bc4a8121818d3bef9756fcf1057493956c18750a7cb29b76ace9afbc8984b954
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 79fa7aba7235fd235f52274652ebf222f4e0138f0fbf51175893a2e421467b00392ac53946b4f43cdd290ad4734cbfdb7cd0f1b6ade6f7bc65814d2d532c3143
|
|
7
|
+
data.tar.gz: 5fb09c315fb7cc8835a4a4a80a4f3f0029fd2b681c4afde47198a50faa959e9d1e41978ea600cf3ba810db4ca7cfaca9b343943be43388e189ad89819a9d43d4
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# ACE Git Configuration
|
|
2
|
+
# Complete default configuration - users only need to override what differs
|
|
3
|
+
# This is the single source of truth for ace-git defaults (per ADR-022)
|
|
4
|
+
|
|
5
|
+
git:
|
|
6
|
+
# General preferences
|
|
7
|
+
default_branch: main # Your preferred main branch name (main/master/develop)
|
|
8
|
+
remote: origin # Your preferred remote name
|
|
9
|
+
verbose: false # Enable verbose output
|
|
10
|
+
|
|
11
|
+
# Timeout settings (in seconds)
|
|
12
|
+
timeout: 30 # Local git operations (diff, status, log)
|
|
13
|
+
network_timeout: 60 # Network operations (gh CLI, remote operations)
|
|
14
|
+
|
|
15
|
+
# Status command settings
|
|
16
|
+
status:
|
|
17
|
+
commits_limit: 3 # Number of recent commits to show
|
|
18
|
+
merged_prs_limit: 3 # Number of recently merged PRs to show
|
|
19
|
+
open_prs_limit: 10 # Number of open PRs from others to show
|
|
20
|
+
|
|
21
|
+
# Diff configuration
|
|
22
|
+
diff:
|
|
23
|
+
# Glob patterns to exclude from diff output
|
|
24
|
+
exclude_patterns:
|
|
25
|
+
# Lock files (always safe to exclude)
|
|
26
|
+
- "**/*.lock"
|
|
27
|
+
- "package-lock.json"
|
|
28
|
+
- "yarn.lock"
|
|
29
|
+
- "Gemfile.lock"
|
|
30
|
+
# Vendored dependencies
|
|
31
|
+
- "vendor/**/*"
|
|
32
|
+
- "node_modules/**/*"
|
|
33
|
+
# Build artifacts and coverage
|
|
34
|
+
- "coverage/**/*"
|
|
35
|
+
- "dist/**/*"
|
|
36
|
+
- "build/**/*"
|
|
37
|
+
- ".ace-local/**/*"
|
|
38
|
+
# Test fixtures (static test data, not tests themselves)
|
|
39
|
+
- "**/fixtures/**/*"
|
|
40
|
+
- "**/testdata/**/*"
|
|
41
|
+
# NOTE: test/**/* and spec/**/* are NOT excluded by default
|
|
42
|
+
# because users often want to see test changes in diffs
|
|
43
|
+
# Ignore whitespace-only changes (default: true)
|
|
44
|
+
exclude_whitespace: true
|
|
45
|
+
# Exclude renamed files from diff (default: false)
|
|
46
|
+
exclude_renames: false
|
|
47
|
+
# Exclude moved files from diff (default: false)
|
|
48
|
+
exclude_moves: false
|
|
49
|
+
# Maximum lines in diff output (default: 10000)
|
|
50
|
+
max_lines: 10000
|
|
51
|
+
# Grouped stats output tuning for `ace-git diff --format grouped-stats`
|
|
52
|
+
grouped_stats:
|
|
53
|
+
layers: [lib, test, handbook]
|
|
54
|
+
collapse_above: 5
|
|
55
|
+
show_full_tree: collapsible
|
|
56
|
+
dotfile_groups: [.ace-tasks, .ace]
|
|
57
|
+
|
|
58
|
+
# Rebase configuration (optional - workflows have defaults)
|
|
59
|
+
# rebase:
|
|
60
|
+
# preserve_files:
|
|
61
|
+
# - CHANGELOG.md
|
|
62
|
+
# - "**/version.rb"
|
|
63
|
+
# auto_resolve: manual # manual or ours
|
|
64
|
+
|
|
65
|
+
# PR configuration (optional - workflows have defaults)
|
|
66
|
+
# pr:
|
|
67
|
+
# template: default # default, feature, bugfix
|
|
68
|
+
# draft: false # Create as draft PR
|
|
69
|
+
# reviewers: [] # Auto-assign reviewers
|
|
70
|
+
# labels: [] # Auto-add labels
|
|
71
|
+
|
|
72
|
+
# Squash configuration (optional - workflows have defaults)
|
|
73
|
+
# squash:
|
|
74
|
+
# strategy: version # version, manual, interactive
|
|
75
|
+
# interactive: false # Use interactive mode
|
|
76
|
+
# preserve_messages: true
|
|
77
|
+
|
|
78
|
+
# Lock retry configuration (handles .git/index.lock errors)
|
|
79
|
+
lock_retry:
|
|
80
|
+
enabled: true # Enable/disable retry behavior
|
|
81
|
+
max_retries: 4 # Maximum retry attempts (uses progressive 1s,2s,3s,4s delays)
|
|
82
|
+
stale_cleanup: true # Auto-remove orphaned/stale locks
|
|
83
|
+
stale_threshold_seconds: 10 # Age threshold for stale locks (fallback)
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
# Template Sources Protocol Configuration for ace-git gem
|
|
3
|
+
# This enables template discovery from the installed ace-git gem
|
|
4
|
+
|
|
5
|
+
name: ace-git
|
|
6
|
+
type: gem
|
|
7
|
+
description: Git templates (PR and commit) from ace-git gem
|
|
8
|
+
priority: 10
|
|
9
|
+
|
|
10
|
+
# Configuration for template discovery within the gem
|
|
11
|
+
config:
|
|
12
|
+
# Relative path within the gem
|
|
13
|
+
relative_path: handbook/templates
|
|
14
|
+
|
|
15
|
+
# Pattern for finding template files
|
|
16
|
+
pattern: "*.template.md"
|
|
17
|
+
|
|
18
|
+
# Enable discovery
|
|
19
|
+
enabled: true
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
---
|
|
2
|
+
# WFI Sources Protocol Configuration for ace-git gem
|
|
3
|
+
# This enables workflow discovery from the installed ace-git gem
|
|
4
|
+
|
|
5
|
+
name: ace-git
|
|
6
|
+
type: gem
|
|
7
|
+
description: Git workflow instructions from ace-git gem
|
|
8
|
+
priority: 10
|
|
9
|
+
|
|
10
|
+
# Configuration for workflow discovery within the gem
|
|
11
|
+
config:
|
|
12
|
+
# Relative path within the gem (default: handbook/workflow-instructions)
|
|
13
|
+
relative_path: handbook/workflow-instructions
|
|
14
|
+
|
|
15
|
+
# Pattern for finding workflow files (default: *.wf.md)
|
|
16
|
+
pattern: "*.wf.md"
|
|
17
|
+
|
|
18
|
+
# Enable discovery
|
|
19
|
+
enabled: true
|