ace-bundle 0.40.6 → 0.41.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0b5231de647366436e34e750b7070ae8daa8d7c1733883b22e2bf4ebe75f1d5e
4
- data.tar.gz: ec74711c080c94236e3fb8812f41e278c1c43e10698e97b7ff1301b1588ddcf4
3
+ metadata.gz: 99da917e4b6b5321e35ba3d5f8a06ff18a0faa2d490d7ccd09008a69fdbd4441
4
+ data.tar.gz: 899a092de9289c129e5e5e4227955787df1eae66d669ef7c859fbdea0dc3c5bd
5
5
  SHA512:
6
- metadata.gz: 730fab64647d209e698f5a45e6cd2472092b349eeebbfa2815851b296ace2785148ab30efae232f69e9fa5f53e6b110e1f695792ae6c290ebc079307e820b005
7
- data.tar.gz: 8f1a0a6b38256511199d64f17494950f33052bc9c0decf6bc05964b283fc9469025b05b89a357e19d62d5819765937b01f43537956b47e995acd448e25a44e8b
6
+ metadata.gz: 13d66ce1e805f5a7487321ecc23ab87d8c82ab2c9d40fb6a6b3cd1c07eb6af1bc7c242c40463b5b9557233105caaa1299800e433874754b4b4d7d7687ba2589f
7
+ data.tar.gz: ec14d85f4c4114cb2c1568c2ea56d3174efc5d66e8caf0eea18b3f7c80cf82b478ec5cebc2ea254a7c5dcd4915888c6ce5c887fc6d4599eaa9cf8a2d21c2a551
@@ -0,0 +1,40 @@
1
+ ---
2
+ description: Lightweight project starter preset for first-run onboarding
3
+ bundle:
4
+ params:
5
+ output: cache
6
+ max_size: 10485760
7
+ timeout: 30
8
+ compressor_mode: agent
9
+ embed_document_source: true
10
+ sections:
11
+ vision:
12
+ title: Project Vision
13
+ content: |
14
+ TODO: Add a one-paragraph project overview and current priorities.
15
+ Move this to docs/vision.md later if desired.
16
+
17
+ structure:
18
+ title: Project Structure
19
+ content: |
20
+ TODO: Describe the top-level folders and where core logic lives.
21
+ Move this to docs/blueprint.md once project docs exist.
22
+
23
+ quick_status:
24
+ title: Quick Status
25
+ compressor_mode: exact
26
+ commands:
27
+ - pwd
28
+ - date
29
+
30
+ starter_guidance:
31
+ title: Starter Guidance
32
+ content: |
33
+ TODO: Add concise onboarding notes for contributors.
34
+ Replace placeholders with your project's goals and current priorities.
35
+ ---
36
+
37
+ # Project Context
38
+
39
+ Use this lightweight preset as a starting point for new projects.
40
+ Expand sections as your team documentation grows.
@@ -1,35 +1,41 @@
1
1
  ---
2
- description: Project-wide context
2
+ description: Project-wide context starter preset for generic projects
3
3
  bundle:
4
4
  params:
5
5
  output: cache
6
6
  max_size: 10485760
7
7
  timeout: 30
8
+ compressor_mode: agent
8
9
  embed_document_source: true
9
- files:
10
- - docs/vision.md
11
- - docs/blueprint.md
12
- - docs/architecture.md
13
- - docs/decisions.md
14
- - docs/tools.md
15
- commands:
16
- - pwd
17
- - date
18
- - git status --short
19
- - ace-taskflow recent --limit 3
20
- - ace-taskflow next --limit 3
21
- - eza -R -1 -L 2 --git-ignore --absolute $PROJECT_ROOT_PATH
22
- # Optional: Include diffs (delegated to ace-git for consistent filtering)
23
- # diffs:
24
- # - origin/main...HEAD
25
- # Or use ranges with options (respects global .ace/diff/config.yml):
26
- # diff:
27
- # ranges:
28
- # - origin/main...HEAD
29
- # paths:
30
- # - "lib/**/*.rb"
10
+ sections:
11
+ vision:
12
+ title: Project Vision
13
+ content: |
14
+ TODO: Add your project's mission, users, and success criteria.
15
+ Optionally move this to docs/vision.md once your docs structure is established.
16
+
17
+ architecture:
18
+ title: System Architecture
19
+ content: |
20
+ TODO: Add key architecture notes, major components, and decision records.
21
+ You can later split this into docs/architecture.md, docs/decisions.md, and docs/blueprint.md.
22
+
23
+ project_status:
24
+ title: Project Status
25
+ compressor_mode: exact
26
+ commands:
27
+ - pwd
28
+ - date
29
+ - ls -1
30
+
31
+ onboarding_notes:
32
+ title: Onboarding Notes
33
+ content: |
34
+ TODO: Replace this preset body text with your project-specific onboarding guidance.
35
+ Include your architecture highlights, coding standards, and ownership boundaries.
31
36
  ---
32
37
 
33
38
  # Project Context
34
39
 
35
- You are working on the Coding Agent Workflow Toolkit (Meta) - a comprehensive meta-repository that provides documentation and guidance for setting up AI-assisted development workflow systems.
40
+ You are working in a project that uses ACE tooling.
41
+ Treat this as starter scaffolding and customize it for your codebase.
data/CHANGELOG.md CHANGED
@@ -6,6 +6,25 @@ The format is based on [Keep a Changelog][1], and this project adheres to [Seman
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ### Fixed
10
+ - Added end-to-end support for diff path filters in bundle diff configs so `paths` now flows through section normalization and into `git diff -- <paths>`.
11
+
12
+ ## [0.41.2] - 2026-03-31
13
+
14
+ ### Fixed
15
+ - Made default bootstrap presets self-contained so generated onboarding guidance no longer depends on external release-specific context.
16
+
17
+ ## [0.41.1] - 2026-03-30
18
+
19
+ ### Fixed
20
+ - Removed the generic-project preset dependency on `ace-task` by replacing the task listing command with `ls -1` for plain-repo compatibility.
21
+
22
+ ## [0.41.0] - 2026-03-29
23
+
24
+ ### Changed
25
+ - Reworked shipped default bootstrap presets for generic projects: `project` now uses section-driven content, removes stale monorepo/taskflow copy, and includes TODO-oriented scaffold guidance.
26
+ - Added a shipped `project-base` preset for lightweight onboarding context in fresh repositories.
27
+
9
28
  ## [0.40.6] - 2026-03-29
10
29
 
11
30
  ### Technical
@@ -331,7 +331,7 @@ module Ace
331
331
  since_ref = diff_config[:since] || diff_config["since"]
332
332
  normalized[:ranges] = ["#{since_ref}...HEAD"]
333
333
  end
334
- # Note: paths filtering will be handled by ace-git when implemented
334
+ normalized[:paths] = diff_config[:paths] || diff_config["paths"] if diff_config[:paths] || diff_config["paths"]
335
335
  elsif diff_config.is_a?(String)
336
336
  # Single range string
337
337
  normalized[:ranges] = [diff_config]
@@ -376,6 +376,10 @@ module Ace
376
376
  merged[:ranges] = ((merged[:ranges] || []) + (new_normalized[:ranges] || [])).uniq
377
377
  end
378
378
 
379
+ if merged[:paths] || new_normalized[:paths]
380
+ merged[:paths] = ((merged[:paths] || []) + (new_normalized[:paths] || [])).uniq
381
+ end
382
+
379
383
  # Merge diffs arrays (legacy format)
380
384
  if merged[:diffs] || new_normalized[:diffs]
381
385
  merged[:diffs] = ((merged[:diffs] || []) + (new_normalized[:diffs] || [])).uniq
@@ -956,9 +956,10 @@ module Ace
956
956
  # Process diffs
957
957
  if config["diffs"] && config["diffs"].any?
958
958
  data[:diffs] ||= []
959
+ diff_paths = config["paths"] || config[:paths] || []
959
960
  config["diffs"].each do |diff_range|
960
- result = generate_diff_safe(diff_range)
961
- data[:diffs] << result.slice(:range, :output, :success, :error, :error_type)
961
+ result = generate_diff_safe(diff_range, paths: diff_paths)
962
+ data[:diffs] << result.slice(:range, :paths, :output, :success, :error, :error_type)
962
963
 
963
964
  unless result[:success]
964
965
  error_prefix = (result[:error_type] == :git_error) ? "Git diff failed" : "Invalid diff range"
@@ -1270,10 +1271,11 @@ module Ace
1270
1271
  return unless ranges.any?
1271
1272
 
1272
1273
  processed_diffs = []
1274
+ diff_paths = section_data[:paths] || section_data["paths"] || []
1273
1275
 
1274
1276
  ranges.each do |diff_range|
1275
- result = generate_diff_safe(diff_range)
1276
- processed_diffs << result.slice(:range, :output, :success, :error)
1277
+ result = generate_diff_safe(diff_range, paths: diff_paths)
1278
+ processed_diffs << result.slice(:range, :paths, :output, :success, :error)
1277
1279
 
1278
1280
  unless result[:success]
1279
1281
  bundle.metadata[:errors] ||= []
@@ -1372,17 +1374,21 @@ module Ace
1372
1374
  # Generate diff with ace-git and return standardized result hash
1373
1375
  # Handles GitError and ArgumentError with standardized error handling
1374
1376
  # @param diff_range [String] Git range to diff
1377
+ # @param paths [Array<String>] Optional git path filters
1375
1378
  # @return [Hash] Result with :range, :output, :success, and optional :error
1376
- def generate_diff_safe(diff_range)
1377
- diff_result = Ace::Git::Organisms::DiffOrchestrator.generate(ranges: [diff_range])
1379
+ def generate_diff_safe(diff_range, paths: [])
1380
+ normalized_paths = Array(paths).map(&:to_s).map(&:strip).reject(&:empty?).uniq
1381
+ diff_result = Ace::Git::Organisms::DiffOrchestrator.generate(ranges: [diff_range], paths: normalized_paths)
1378
1382
  {
1379
1383
  range: diff_range,
1384
+ paths: normalized_paths,
1380
1385
  output: diff_result.content,
1381
1386
  success: true
1382
1387
  }
1383
1388
  rescue Ace::Git::Error => e
1384
1389
  {
1385
1390
  range: diff_range,
1391
+ paths: Array(paths).map(&:to_s).map(&:strip).reject(&:empty?).uniq,
1386
1392
  output: "",
1387
1393
  success: false,
1388
1394
  error: e.message,
@@ -1391,6 +1397,7 @@ module Ace
1391
1397
  rescue ArgumentError => e
1392
1398
  {
1393
1399
  range: diff_range,
1400
+ paths: Array(paths).map(&:to_s).map(&:strip).reject(&:empty?).uniq,
1394
1401
  output: "",
1395
1402
  success: false,
1396
1403
  error: e.message,
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ace
4
4
  module Bundle
5
- VERSION = '0.40.6'
5
+ VERSION = '0.41.3'
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ace-bundle
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.40.6
4
+ version: 0.41.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michal Czyz
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2026-03-29 00:00:00.000000000 Z
10
+ date: 2026-04-01 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: ace-support-cli
@@ -124,6 +124,7 @@ files:
124
124
  - ".ace-defaults/bundle/presets/development.md"
125
125
  - ".ace-defaults/bundle/presets/documentation-review.md"
126
126
  - ".ace-defaults/bundle/presets/mixed-content-example.md"
127
+ - ".ace-defaults/bundle/presets/project-base.md"
127
128
  - ".ace-defaults/bundle/presets/project-context.md"
128
129
  - ".ace-defaults/bundle/presets/project.md"
129
130
  - ".ace-defaults/bundle/presets/section-example-simple.md"