ace-task 0.31.0 → 0.31.4

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: 877620123fef9ff0b8efba7eb8612cf315d16442562ca58aafc7918a61d2fbd3
4
- data.tar.gz: 733610446049929343345e7c49451f9190b2f085a39b1fee5462ee6493347035
3
+ metadata.gz: 5e477e2c198c576ab07f7a50eb6756e04448bc1c42e5f5fc17beec674be15527
4
+ data.tar.gz: ea40e22f1e761cc6fa7bc3ba9cba138af6047272c3941a39a325f36de5dd527e
5
5
  SHA512:
6
- metadata.gz: 0e67bc5971f524fac70b451b001747d562e9f878f5234fc4260bffa91eb01f8c37b2883c63f9e3643ad31048244b7d30fbf09b4146926cf401b376013d713024
7
- data.tar.gz: f92112f098a1079aa3943ce763b6e26591bf31d3f257cb8e5c5d64e268e408189a61f540379028c675157616dfae085d9e0ed43b51ab42187733ae1e5ef4e762
6
+ metadata.gz: 5dc208ea23a98741cda9b2a65230688dd5fd705e31979d517eb8fa5a9749f9ffa8fc19ca3efa3b52fe5bd4fbc66a915838141098f371ad9eb179c81ad40fc035
7
+ data.tar.gz: e0f63752e0a24626c1ffdd27e0c371eee92ed68288f5904f7a7b9d094f035b7dab4b6f35d9c10076bc4c99faf04ff1bc028319f06a3ed0376e24355b9168c1ca
data/CHANGELOG.md CHANGED
@@ -7,6 +7,32 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.31.4] - 2026-03-26
11
+
12
+ ### Added
13
+ - Added optional "Demo Scenario" section to the task draft template for defining demo scenes, commands, and fixtures upfront on user-facing features.
14
+
15
+ ## [0.31.3] - 2026-03-26
16
+
17
+ ### Fixed
18
+ - Simplified `TaskDisplayFormatter.format_list` by consolidating the shared stats footer return path for empty and non-empty output.
19
+
20
+ ### Technical
21
+ - Strengthened `ace-task list` command coverage to assert empty-state stats footer output includes the zero-total summary.
22
+
23
+ ## [0.31.2] - 2026-03-26
24
+
25
+ ### Fixed
26
+ - Tightened empty-list stats rendering to match the corrected support formatter output (`Tasks: • 0 total`) for fully empty roots.
27
+
28
+ ### Technical
29
+ - Strengthened task display formatter regression coverage with an exact empty-output assertion.
30
+
31
+ ## [0.31.1] - 2026-03-26
32
+
33
+ ### Fixed
34
+ - Updated `ace-task list` empty-result rendering to always append the stats footer, matching non-empty output and `ace-idea` behavior.
35
+
10
36
  ## [0.31.0] - 2026-03-24
11
37
 
12
38
  ### Fixed
data/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  Draft, organize, and tackle tasks — for you and your agents.
5
5
 
6
- <img src="https://raw.githubusercontent.com/cs3b/ace/main/docs/brand/AgenticCodingEnvironment.Logo.XS.jpg" alt="ACE Logo" width="480">
6
+ <img src="../docs/brand/AgenticCodingEnvironment.Logo.XS.jpg" alt="ACE Logo" width="480">
7
7
  <br><br>
8
8
 
9
9
  <a href="https://rubygems.org/gems/ace-task"><img alt="Gem Version" src="https://img.shields.io/gem/v/ace-task.svg" /></a>
@@ -151,6 +151,20 @@ Why are we doing this? Focus on user value and behavioral outcomes.
151
151
  - User acceptance criteria
152
152
  - Behavioral test scenarios
153
153
 
154
+ #### Demo Scenario (user-facing features only)
155
+ <!-- Skip this section if the task has no CLI or user-visible behavior changes -->
156
+ <!-- Define what a recorded demo should show so a reviewer can confirm the feature works -->
157
+
158
+ **What the viewer should understand**: [one sentence summarizing the takeaway]
159
+
160
+ | Scene | Shows | Commands | Fixtures needed |
161
+ |-------|-------|----------|-----------------|
162
+ | 1. Show input | The config/input the user creates | `cat <file>` | sample config file |
163
+ | 2. Run feature | The feature in action | `ace-<tool> <command>` | — |
164
+ | 3. Verify result | The output/outcome | `ls`, `cat`, status check | — |
165
+
166
+ **Timing**: use 3-5s sleep per scene so the viewer can read output
167
+
154
168
  ## Out of Scope
155
169
  <!-- Explicitly exclude implementation concerns to maintain behavioral focus -->
156
170
 
@@ -215,7 +215,7 @@ This prevents decomposing into subtasks that add concepts the spike later proves
215
215
  * Use `ace-git-commit` to commit all idea file movements together
216
216
  * Clear commit message: "Mark source ideas as done after creating task"
217
217
  * **Validation Requirements:**
218
- * [ ] All source idea files marked as done and moved to _archive/
218
+ * [ ] All source idea files marked as done and moved to _archive/ — verify: `ace-idea list --status done` should return zero results (done ideas must be in archive, not active)
219
219
  * [ ] Task references updated to new locations
220
220
  * [ ] Git movements committed
221
221
  * Error handling:
@@ -115,10 +115,19 @@ module Ace
115
115
  # @param global_folder_stats [Hash, nil] Folder name → count hash from full scan
116
116
  # @return [String] Formatted list output
117
117
  def self.format_list(tasks, total_count: nil, global_folder_stats: nil)
118
- return "No tasks found." if tasks.empty?
118
+ stats_line = format_stats_line(
119
+ tasks,
120
+ total_count: total_count,
121
+ global_folder_stats: global_folder_stats
122
+ )
123
+
124
+ body = if tasks.empty?
125
+ "No tasks found."
126
+ else
127
+ tasks.map { |task| format_list_item(task) }.join("\n")
128
+ end
119
129
 
120
- lines = tasks.map { |task| format_list_item(task) }.join("\n")
121
- "#{lines}\n\n#{format_stats_line(tasks, total_count: total_count, global_folder_stats: global_folder_stats)}"
130
+ "#{body}\n\n#{stats_line}"
122
131
  end
123
132
 
124
133
  STATUS_ORDER = %w[draft pending in-progress done blocked skipped cancelled].freeze
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ace
4
4
  module Task
5
- VERSION = "0.31.0"
5
+ VERSION = "0.31.4"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ace-task
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.31.0
4
+ version: 0.31.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michal Czyz