ace-bundle 0.41.3 → 0.43.8

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: 99da917e4b6b5321e35ba3d5f8a06ff18a0faa2d490d7ccd09008a69fdbd4441
4
- data.tar.gz: 899a092de9289c129e5e5e4227955787df1eae66d669ef7c859fbdea0dc3c5bd
3
+ metadata.gz: ffe6665204245e7b5495e1834ab4ab570cd732986f0a2aa17844769f9858ccbb
4
+ data.tar.gz: 40de7e7e422003fe1df4451c37e188c5d72b8f444c55f6e23f40fc11a809a26d
5
5
  SHA512:
6
- metadata.gz: 13d66ce1e805f5a7487321ecc23ab87d8c82ab2c9d40fb6a6b3cd1c07eb6af1bc7c242c40463b5b9557233105caaa1299800e433874754b4b4d7d7687ba2589f
7
- data.tar.gz: ec14d85f4c4114cb2c1568c2ea56d3174efc5d66e8caf0eea18b3f7c80cf82b478ec5cebc2ea254a7c5dcd4915888c6ce5c887fc6d4599eaa9cf8a2d21c2a551
6
+ metadata.gz: c3783e6af82022acdcb30761a234df06645f4c96a418cbcd15e799159aeab9fe66f07a6573e232318df868a596ed250f4efdefabeb01eceaa866f71f48013763
7
+ data.tar.gz: 4cccf1f0e950b4591f5656cefdb43275f28677881481b847d448cee76068896009f505fedfde0348826fe535b497938baf0f2044c5f1be112c8b6472251344b2
data/CHANGELOG.md CHANGED
@@ -6,8 +6,74 @@ The format is based on [Keep a Changelog][1], and this project adheres to [Seman
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.43.8] - 2026-08-12
10
+
11
+ ### Technical
12
+ - Extended workflow-resolution feat coverage for gem-shipped `wfi://release/*` baselines (isolated from monorepo overlays) plus a clear failure path for missing release URIs.
13
+
14
+ ## [0.43.7] - 2026-08-12
15
+
16
+ ### Technical
17
+ - Raised the `ace-support-core` dependency floor to `~> 0.31` after the principles-first bootstrap guidance release.
18
+ ## [0.43.6] - 2026-08-12
19
+
20
+ ### Technical
21
+ - Aligned gemspec dependency floors with current ACE package minor release lines and safe external minor dependency bumps (no major version jumps).
22
+
23
+ ## [0.43.5] - 2026-04-19
24
+
25
+ ### Changed
26
+ - Documented the `bundle.sources` preset shorthand in the configuration and getting-started guides so generated bundle presets can use the public file, command, and preset source-list contract.
27
+
28
+ ## [0.43.4] - 2026-04-19
29
+
30
+ ### Fixed
31
+ - Added support for documented `bundle.sources` frontmatter entries so file, command, and preset sources expand through the same public bundle path as direct `files`, `commands`, and `presets` keys.
32
+
33
+ ## [0.43.3] - 2026-04-16
34
+
35
+ ### Technical
36
+ - Aligned `TS-BUNDLE-001` preset-loading verification with the documented `**/*.js` routing behavior so valid preset matches are preserved without treating unrelated files as failures.
37
+
38
+ ## [0.43.2] - 2026-04-16
39
+
40
+ ### Fixed
41
+ - Corrected `TS-BUNDLE-001` file-pattern verification so root-level markdown matched by `*.md` remains valid while genuinely out-of-scope test files stay excluded.
42
+
43
+ ## [0.43.1] - 2026-04-16
44
+
45
+ ### Technical
46
+ - Updated `TS-BUNDLE-001` sandbox setup to source `mise.toml` from `${ACE_E2E_SOURCE_ROOT:-$PROJECT_ROOT_PATH}` so goal runs stay compatible with read-only source mounts.
47
+
48
+ ## [0.43.0] - 2026-04-14
49
+
50
+ ### Changed
51
+ - Rewrote `TS-BUNDLE-001` to a retained public-surface goal set by consolidating file-pattern checks into Goal 2, reframing Goal 4 around user-visible routing behavior, and renaming Goal 5 to CLI output consistency and error semantics.
52
+
53
+ ### Technical
54
+ - Updated scenario/runner/verifier manifests to the retained 4-goal layout and removed the standalone TC-003 goal assets.
55
+
56
+ ## [0.42.1] - 2026-04-13
57
+
58
+ ### Changed
59
+ - Completed the batch i05 migration follow-through for this package and aligned it with the restarted `fast` / `feat` / `e2e` verification model.
60
+
61
+ ### Technical
62
+ - Included in the coordinated assignment-driven patch release for batch i05 package updates.
63
+
64
+
65
+ ## [0.42.0] - 2026-04-12
66
+
67
+ ### Changed
68
+ - Expanded `as-onboard` canonical skill metadata so the public `onboard` assign step is fully described via skill-owned `assign.steps`.
69
+ - Migrated package tests to the restarted `fast` / `feat` / `e2e` model: deterministic suites now live under `test/fast/` and legacy `test/integration/` coverage moved to `test/feat/`.
70
+ - Updated E2E TC-004 output-routing assertions to accept the observed explicit-stdio routing behavior when compression emits cache-save messaging.
71
+
9
72
  ### Fixed
10
73
  - 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>`.
74
+ - Made `workflow_resolution_test` robust across repo and sandbox execution contexts by asserting workflow-suffix resolution against package-local WFI sources.
75
+ - Hardened TS-BUNDLE-001 sandbox setup by skipping `mise.toml` trust when that file is not present in package-copy sandboxes.
76
+ - Reduced brittle TC-001 verifier gating from strict line-count requirements to substantive observed output checks.
11
77
 
12
78
  ## [0.41.2] - 2026-03-31
13
79
 
@@ -19,10 +19,19 @@ integration:
19
19
  - pi
20
20
  providers: {}
21
21
  assign:
22
- source: wfi://onboard
23
22
  steps:
24
23
  - name: onboard
25
24
  description: Load project context and understand the codebase
25
+ prerequisites: []
26
+ produces: [project-context]
27
+ consumes: []
28
+ context:
29
+ default: null
30
+ reason: "Onboarding needs access to the main conversation context"
31
+ when_to_skip:
32
+ - "Already onboarded in a previous assignment"
33
+ - "Working in a context where project is already loaded"
34
+ effort: light
26
35
  tags: [setup, context-loading]
27
36
  skill:
28
37
  kind: workflow
@@ -76,7 +76,7 @@ Analyze the loaded context and prepare a concise summary covering:
76
76
  > "Load base preset"
77
77
 
78
78
  **Files** - Task-specific context, custom one-off requirements:
79
- > `ace-bundle .ace-taskflow/v.0.9.0/context/task-084.md`
79
+ > `ace-bundle .ace-task/v.0.9.0/context/task-084.md`
80
80
  > "Load task-specific context file"
81
81
 
82
82
  > `ace-bundle /path/to/your/project/context.yml`
@@ -449,6 +449,7 @@ module Ace
449
449
  (frontmatter.keys & %w[preset presets files commands include exclude diffs]).any?
450
450
  # Use frontmatter as the main config
451
451
  config = unwrap_bundle_config(frontmatter)
452
+ config = normalize_bundle_sources(config)
452
453
 
453
454
  # Merge params into options if present
454
455
  params = config["params"]
@@ -613,6 +614,7 @@ module Ace
613
614
 
614
615
  def load_from_preset_config(preset, options)
615
616
  bundle_config = preset[:bundle] || {}
617
+ bundle_config = normalize_bundle_sources(bundle_config)
616
618
 
617
619
  # Apply CLI overrides to context config (CLI takes precedence)
618
620
  bundle_config = apply_cli_overrides(bundle_config)
@@ -890,6 +892,8 @@ module Ace
890
892
  end
891
893
 
892
894
  def process_template_config(config)
895
+ config = normalize_bundle_sources(config)
896
+
893
897
  # Apply CLI overrides to config (CLI takes precedence)
894
898
  config = apply_cli_overrides(config)
895
899
 
@@ -989,6 +993,39 @@ module Ace
989
993
  bundle
990
994
  end
991
995
 
996
+ def normalize_bundle_sources(config)
997
+ return config unless config.is_a?(Hash)
998
+
999
+ sources = config["sources"] || config[:sources]
1000
+ return config unless sources.is_a?(Array) && sources.any?
1001
+
1002
+ normalized = config.dup
1003
+ files = Array(normalized["files"] || normalized[:files])
1004
+ commands = Array(normalized["commands"] || normalized[:commands])
1005
+ presets = Array(normalized["presets"] || normalized[:presets])
1006
+
1007
+ sources.each do |source|
1008
+ case source
1009
+ when Hash
1010
+ source_file = source["file"] || source[:file]
1011
+ source_command = source["command"] || source[:command]
1012
+ source_preset = source["preset"] || source[:preset]
1013
+ files << source_file if source_file
1014
+ commands << source_command if source_command
1015
+ presets << source_preset if source_preset
1016
+ when String
1017
+ files << source
1018
+ end
1019
+ end
1020
+
1021
+ normalized["files"] = files.compact.uniq if files.any?
1022
+ normalized["commands"] = commands.compact.uniq if commands.any?
1023
+ normalized["presets"] = presets.compact.uniq if presets.any?
1024
+ normalized.delete("sources")
1025
+ normalized.delete(:sources)
1026
+ normalized
1027
+ end
1028
+
992
1029
  def format_bundle(bundle, format)
993
1030
  bundle.metadata[:raw_content_for_auto_format] = bundle.content
994
1031
 
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ace
4
4
  module Bundle
5
- VERSION = '0.41.3'
5
+ VERSION = "0.43.8"
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.41.3
4
+ version: 0.43.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michal Czyz
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2026-04-01 00:00:00.000000000 Z
10
+ date: 2026-08-12 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: ace-support-cli
@@ -29,28 +29,28 @@ dependencies:
29
29
  requirements:
30
30
  - - "~>"
31
31
  - !ruby/object:Gem::Version
32
- version: '0.9'
32
+ version: '0.17'
33
33
  type: :runtime
34
34
  prerelease: false
35
35
  version_requirements: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '0.9'
39
+ version: '0.17'
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: ace-support-core
42
42
  requirement: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - "~>"
45
45
  - !ruby/object:Gem::Version
46
- version: '0.29'
46
+ version: '0.31'
47
47
  type: :runtime
48
48
  prerelease: false
49
49
  version_requirements: !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - "~>"
52
52
  - !ruby/object:Gem::Version
53
- version: '0.29'
53
+ version: '0.31'
54
54
  - !ruby/object:Gem::Dependency
55
55
  name: ace-support-fs
56
56
  requirement: !ruby/object:Gem::Requirement
@@ -71,42 +71,42 @@ dependencies:
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: '0.19'
74
+ version: '0.22'
75
75
  type: :runtime
76
76
  prerelease: false
77
77
  version_requirements: !ruby/object:Gem::Requirement
78
78
  requirements:
79
79
  - - "~>"
80
80
  - !ruby/object:Gem::Version
81
- version: '0.19'
81
+ version: '0.22'
82
82
  - !ruby/object:Gem::Dependency
83
83
  name: ace-support-nav
84
84
  requirement: !ruby/object:Gem::Requirement
85
85
  requirements:
86
86
  - - "~>"
87
87
  - !ruby/object:Gem::Version
88
- version: '0.25'
88
+ version: '0.28'
89
89
  type: :runtime
90
90
  prerelease: false
91
91
  version_requirements: !ruby/object:Gem::Requirement
92
92
  requirements:
93
93
  - - "~>"
94
94
  - !ruby/object:Gem::Version
95
- version: '0.25'
95
+ version: '0.28'
96
96
  - !ruby/object:Gem::Dependency
97
97
  name: ace-compressor
98
98
  requirement: !ruby/object:Gem::Requirement
99
99
  requirements:
100
100
  - - "~>"
101
101
  - !ruby/object:Gem::Version
102
- version: '0.24'
102
+ version: '0.25'
103
103
  type: :runtime
104
104
  prerelease: false
105
105
  version_requirements: !ruby/object:Gem::Requirement
106
106
  requirements:
107
107
  - - "~>"
108
108
  - !ruby/object:Gem::Version
109
- version: '0.24'
109
+ version: '0.25'
110
110
  description: Assembles files, shell commands, and git diffs into a single bundled
111
111
  file. Configured via presets or markdown frontmatter with protocol URL support (wfi://,
112
112
  guide://, tmpl://, prompt://, task://). Output to stdout or cache, with optional