ace-overseer 0.20.2 → 0.21.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6e3a4a8238f2c6d3918f0969096daf1487799948a6f9f9699fda45ebc3c601e2
4
- data.tar.gz: e68abeacd2ac6b7f17366e420146c3906c999be87c8bf1eef66fde2afc026c64
3
+ metadata.gz: '082a92945b75309e414e0b5761c7839add6438503a02ca230c9843781e8f7125'
4
+ data.tar.gz: 8cd83b89e7720bd7706c48a091d0ca2e28452725621b6774263cb37dfd3993bf
5
5
  SHA512:
6
- metadata.gz: dfb6ec252b2b70ea209115f2e4ea9dbae5c30e78b4c399daeb23e1a5977f87d312830112a11055d2b2121a776e140dbc57d7a39a49773dc5a6c1faf63293e8bc
7
- data.tar.gz: '01385d38011ba32f632622f18931bcbfff19639cbe03c25f70655888b9e6e5041576622bbf73d94be252f21c468742207b8ae780e7345b5ec17a1969a0e08820'
6
+ metadata.gz: a29d77171476bd446104545ea467eb83dd2115d40d1036ccc1c279f14488341b8d75d5672fb683bfdc6e4aedb7c9e003c65b783315d70e68ab105b1c65b3b678
7
+ data.tar.gz: afd0cf96a084bc83030c2d4acbf627bbb709017838b16f54970139d1f2b167be273a6b3cae23f49fe952fc208b0ba950a0eebb7179bb0ee6814311c38f1fca5e
data/CHANGELOG.md CHANGED
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.21.0] - 2026-10-12
11
+
12
+ ### Added
13
+
14
+ - Add the `as-overseer-configure-project` skill and packaged `wfi://overseer/configure-project` workflow for idempotent, customization-preserving delivery supervision adaptation.
15
+
10
16
  ## [0.20.2] - 2026-10-10
11
17
 
12
18
  ### Fixed
data/LICENSE CHANGED
File without changes
data/Rakefile CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/docs/handbook.md CHANGED
@@ -17,6 +17,12 @@ ace-docs:
17
17
  - Purpose: orchestrate task worktrees through `work-on`, `status`, and `prune`
18
18
  - Execution model: workflow-backed skill invoking `wfi://overseer`
19
19
 
20
+ ### `as-overseer-configure-project`
21
+
22
+ - Path: `handbook/skills/as-overseer-configure-project/SKILL.md`
23
+ - Purpose: adapt delivery supervision to project-owned presets, workflows, and decision policy without destructive overwrite
24
+ - Execution model: workflow-backed skill invoking `wfi://overseer/configure-project`
25
+
20
26
  ## Workflows
21
27
 
22
28
  ### `wfi://overseer`
@@ -25,6 +31,12 @@ ace-docs:
25
31
  - Purpose: canonical workflow for working on tasks, checking active worktrees, and safe cleanup
26
32
  - Core sequence: 1) run `ace-overseer work-on --task ...`; 2) inspect state with `ace-overseer status`; 3) preview cleanup with `ace-overseer prune --dry-run`, then confirm with `--yes`.
27
33
 
34
+ ### `wfi://overseer/configure-project`
35
+
36
+ - Path: `handbook/workflow-instructions/overseer/configure-project.wf.md`
37
+ - Purpose: resolve and review effective delivery presets, workflows, and decision guides, then apply repeatable project-local adaptation while preserving customization
38
+ - Output: per-asset `CREATED`, `UPDATED`, `KEPT`, or `BLOCKED` evidence plus a repeat-run zero-write check
39
+
28
40
  ## Related Documentation
29
41
 
30
42
  - [Getting Started](getting-started.md)
File without changes
@@ -0,0 +1,32 @@
1
+ ---
2
+ name: as-overseer-configure-project
3
+ description: Adapt project delivery supervision presets, workflows, and decision guidance without replacing local policy
4
+ # bundle: wfi://overseer/configure-project
5
+ # agent: general-purpose
6
+ user-invocable: true
7
+ allowed-tools:
8
+ - Bash(ace-nav:*)
9
+ - Bash(ace-bundle:*)
10
+ - Read
11
+ - Write
12
+ - Edit
13
+ - Glob
14
+ argument-hint: "[project-root]"
15
+ last_modified: "2026-10-11"
16
+ source: ace-overseer
17
+ integration:
18
+ targets:
19
+ - claude
20
+ - codex
21
+ - gemini
22
+ - opencode
23
+ - pi
24
+ providers: {}
25
+ skill:
26
+ kind: workflow
27
+ execution:
28
+ workflow: wfi://overseer/configure-project
29
+ ---
30
+
31
+ Load and run `ace-bundle wfi://overseer/configure-project` in the target project, then follow the loaded workflow as the source of truth and execute it end-to-end instead of only summarizing it.
32
+
@@ -0,0 +1,211 @@
1
+ ---
2
+ name: overseer-configure-project
3
+ description: Adapt delivery supervision to a project's existing presets, workflows, and decision policy
4
+ allowed-tools: Bash, Read, Write, Edit, Glob
5
+ doc-type: workflow
6
+ title: Configure Project Delivery Supervision
7
+ purpose: Resolve and safely adapt project delivery supervision without replacing project policy or duplicating canonical work.
8
+ ace-docs:
9
+ last-updated: '2026-10-11'
10
+ last-checked: '2026-10-11'
11
+ ---
12
+
13
+ # Configure Project Delivery Supervision
14
+
15
+ ## Goal
16
+
17
+ Make the four ACE delivery-supervision presets usable under the target project's
18
+ own workflow and decision policy while preserving existing customization and
19
+ producing an idempotent, attributable change report.
20
+
21
+ ## Prerequisites
22
+
23
+ - Run from the target project root and identify that root explicitly before any write.
24
+ - Use the installed `ace-nav`, `ace-bundle`, and `ace-assign` package set that the
25
+ project will actually run; source-checkout resolution is not installed-runtime proof.
26
+ - Have reviewed project policy for dependency ordering, integration groups, release
27
+ cuts, demo/production delivery, evidence freshness, and authority ownership.
28
+ - Treat missing policy, authority, transport, or a durable result path as a blocker.
29
+ This workflow does not grant permissions and does not publish, merge, deploy, or
30
+ perform host-owned root operations.
31
+
32
+ ## Project Context Loading
33
+
34
+ Read existing project-owned sources before proposing a change:
35
+
36
+ - `.ace/assign/presets/` for project-local preset overrides.
37
+ - `.ace/overseer/config.yml` and other existing `.ace/overseer/` configuration.
38
+ - `.ace-handbook/workflow-instructions/` for project workflows.
39
+ - `.ace-handbook/guides/` and registered project guide sources for decision guides.
40
+ - Current task, Assign, review, release, and delivery records that already own work.
41
+ - Repository guidance such as `AGENTS.md`, architecture decisions, and delivery docs.
42
+
43
+ Resolve rather than infer protocol ownership. Run `ace-nav explain <URI>` followed by
44
+ `ace-nav resolve <URI>` for every applicable `wfi://` workflow and for
45
+ `guide://delivery-supervision`. Load resolved workflow content with `ace-bundle <URI>`.
46
+ If the expected project decision guide uses another registered URI, record that URI
47
+ and use it consistently instead of creating an alias or duplicate guide.
48
+
49
+ ## High-Level Execution Plan
50
+
51
+ 1. Inventory the effective package defaults and all project-owned overrides.
52
+ 2. Review the resolved assets against the supervision invariants below.
53
+ 3. Plan the smallest path-keyed set of project-local changes.
54
+ 4. Apply only justified additions or surgical updates while preserving local policy.
55
+ 5. Resolve everything again, repeat the inventory, and report exact outcomes.
56
+
57
+ ## Process Steps
58
+
59
+ ### 1. Establish the effective source inventory
60
+
61
+ For each baseline preset, resolve the same project-first ownership used by ACE:
62
+
63
+ - `supervise-delivery`
64
+ - `integrate-batch`
65
+ - `deliver-release`
66
+ - `close-delivery`
67
+
68
+ An existing `.ace/assign/presets/<name>.yml` is the effective project-local preset.
69
+ Otherwise use the installed `ace-assign` gem's
70
+ `.ace-defaults/assign/presets/<name>.yml`. Use `gem contents ace-assign` when an
71
+ installed package path is needed. Do not create a project copy merely to select the
72
+ unchanged package default.
73
+
74
+ Inventory applicable project workflows by exact `wfi://` URI and decision guides by
75
+ exact `guide://` URI. For every resolved item record its URI or preset name, resolved
76
+ path, owning source, and content digest. Record unresolved items as blockers rather
77
+ than silently substituting a remembered or similarly named file.
78
+
79
+ Before making task-related recommendations, reconcile existing implementation and
80
+ delivery tasks. Do not create or duplicate tasks. Delivery records reference producer
81
+ tasks; they never reparent, reopen, or clone producer work.
82
+
83
+ ### 2. Review the effective supervision contract
84
+
85
+ Review project-local preset overrides, resolved workflows, and decision guides as one
86
+ contract. Preserve stronger project requirements. Require these minimum invariants:
87
+
88
+ - Worker and implementation-parent terminal behavior remains PR-ready; delivery stays
89
+ a separate explicit decision scope.
90
+ - One canonical Assign tree and attempt/evidence ledger owns state. No second queue,
91
+ journal, daemon, timer, or fabricated runtime context is introduced.
92
+ - Integration decisions record the ordered eligible set, selected entry, every
93
+ deferred entry with reason, actor, timestamp, evidence references, and policy/plan
94
+ revision. Completion order is never integration order.
95
+ - Dependency, candidate head, target head, evidence, authority, or transport movement
96
+ triggers a fresh decision. A moved candidate receives fresh relevant tests and an
97
+ independent review bound to its new exact head.
98
+ - `WAIT(reference, next-check)` requires an existing durable operation reference and
99
+ exact reconciliation path. Missing provision is `BLOCKED(provision, owner)`.
100
+ Uncertain effects are reconciled through the original operation and never replayed
101
+ blindly.
102
+ - Release preparation binds the exact accepted source set, package versions, and
103
+ artifact digests. Later merges cannot enter an accepted cut silently. Publication
104
+ remains a separate-authority placeholder.
105
+ - Closure preserves evidence and work, positively proves no surviving writers, keeps
106
+ producer references and delivery tags discoverable, and closes only accepted scope.
107
+ Host-owned root effects remain referenced external operations.
108
+
109
+ If a project decision is absent, do not invent it. Report the precise missing policy,
110
+ the owner needed to decide it, and the assets that remain usable without that choice.
111
+
112
+ ### 3. Build an idempotent change plan
113
+
114
+ Key every proposed mutation by one target path per logical override. Classify each
115
+ inventory item before editing:
116
+
117
+ - `KEPT`: the effective default or customization already satisfies the contract.
118
+ - `CREATED`: no project asset exists and authoritative project policy requires a new
119
+ project-local override.
120
+ - `UPDATED`: an existing project asset needs a minimal, reviewed change.
121
+ - `BLOCKED`: policy, provenance, ownership, authority, or safe merge information is
122
+ missing.
123
+
124
+ Never overwrite an existing project customization with a packaged baseline. Preserve
125
+ unknown keys, comments, project-only steps, stronger gates, and established URIs.
126
+ Patch only the necessary fields. If two files claim the same logical override, stop
127
+ and report the collision instead of choosing one or creating a third.
128
+
129
+ Before every write, retain the path and before digest. If the desired bytes are
130
+ byte-identical, make the operation a no-op. Never append duplicate steps, mappings,
131
+ source registrations, task references, or configuration entries. A second execution
132
+ with unchanged inputs must plan zero writes.
133
+
134
+ ### 4. Apply safe project-local adaptation
135
+
136
+ Create a project-local preset, workflow, or decision guide only when the project's
137
+ reviewed policy differs from the packaged contract or supplies policy that cannot be
138
+ generic. Use the project's existing registered locations and naming conventions.
139
+ Never edit an installed gem in place.
140
+
141
+ When updating YAML or Markdown, preserve unrelated content and ordering wherever
142
+ possible. Re-read the complete file immediately after the write. Record the after
143
+ digest and a concise semantic delta. If safe preservation is not possible, leave the
144
+ file unchanged and classify it `BLOCKED` with the collision or ownership reason.
145
+
146
+ The adaptation may select and specialize supervision behavior, but it does not grant
147
+ permissions, does not publish, and does not exercise merge, deployment, installation,
148
+ or root authority.
149
+
150
+ ### 5. Verify resolution and repeatability
151
+
152
+ Repeat the complete source inventory after edits:
153
+
154
+ 1. Run `ace-nav explain` and `ace-nav resolve` for every selected `wfi://` and
155
+ `guide://` URI.
156
+ 2. Load every selected workflow with `ace-bundle` and verify it came from the intended
157
+ owner.
158
+ 3. Re-read all four effective presets and confirm the invariant review still passes.
159
+ 4. Re-run the change-plan calculation from current bytes. It must report zero planned
160
+ writes and no duplicate paths, steps, mappings, registrations, or task references.
161
+ 5. Keep genuine unresolved policy or provisioning as `BLOCKED`; idempotence never
162
+ turns a blocker into assumed success.
163
+
164
+ ## Required Report
165
+
166
+ Return one report with these fields for every inspected or changed asset:
167
+
168
+ ```text
169
+ STATUS: CREATED | UPDATED | KEPT | BLOCKED
170
+ KIND: preset | workflow | decision-guide | configuration
171
+ IDENTITY: exact preset name, protocol URI, or configuration key
172
+ OWNER: package default or project-owned source
173
+ PATH: resolved or intended path
174
+ BEFORE: before digest, MISSING, or UNRESOLVED
175
+ AFTER: after digest, UNCHANGED, or NOT-WRITTEN
176
+ CHANGE: concrete semantic change or reason it was kept
177
+ EVIDENCE: resolution and review references
178
+ BLOCKER: missing policy/provision and responsible owner, or NONE
179
+ ```
180
+
181
+ Finish with counts for `CREATED`, `UPDATED`, `KEPT`, and `BLOCKED`, followed by the
182
+ repeat-run planned-write count. List any remaining authority, transport, publication,
183
+ installation, deployment, or root-operation gates separately from source adaptation.
184
+
185
+ ## Success Criteria
186
+
187
+ - All four delivery presets resolve from either an intentional project override or the
188
+ installed package default and pass the supervision-invariant review.
189
+ - Applicable workflows and the project delivery decision guide resolve through their
190
+ registered protocol sources with intended ownership.
191
+ - Existing project customization and unknown fields remain intact; no file is
192
+ destructively replaced by a generic baseline.
193
+ - The repeated run produces no duplicate task, step, mapping, source registration,
194
+ configuration entry, or file, and plans zero writes for unchanged inputs.
195
+ - The report names every concrete change and every unresolved blocker with its owner
196
+ and evidence; it claims no permission, publication, deployment, installation, or
197
+ host-owned root effect.
198
+
199
+ ## Error Handling
200
+
201
+ - **Missing package preset:** report `BLOCKED(package, ace-assign owner)` and do not
202
+ fabricate a local substitute.
203
+ - **Unresolved workflow or guide:** preserve any existing file, report the failed URI,
204
+ source registrations inspected, and responsible project/package owner.
205
+ - **Conflicting project overrides:** make no write; report every competing path and
206
+ require the project owner to choose the canonical source.
207
+ - **Unsafe merge with customization:** keep the current file byte-for-byte and report
208
+ the exact invariant gap and proposed minimal delta.
209
+ - **Uncertain external effect:** retain the original operation reference and reconcile
210
+ it through its owner; never repeat the effect as part of configuration.
211
+
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ace
4
4
  module Overseer
5
- VERSION = "0.20.2"
5
+ VERSION = "0.21.0"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ace-overseer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.20.2
4
+ version: 0.21.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michal Czyz
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2026-10-10 00:00:00.000000000 Z
10
+ date: 2026-10-12 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: ace-support-cli
@@ -71,14 +71,14 @@ dependencies:
71
71
  requirements:
72
72
  - - "~>"
73
73
  - !ruby/object:Gem::Version
74
- version: 0.66.1
74
+ version: '0.67'
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.66.1
81
+ version: '0.67'
82
82
  - !ruby/object:Gem::Dependency
83
83
  name: ace-git
84
84
  requirement: !ruby/object:Gem::Requirement
@@ -271,8 +271,10 @@ files:
271
271
  - docs/handbook.md
272
272
  - docs/usage.md
273
273
  - exe/ace-overseer
274
+ - handbook/skills/as-overseer-configure-project/SKILL.md
274
275
  - handbook/skills/as-overseer/SKILL.md
275
276
  - handbook/workflow-instructions/overseer.wf.md
277
+ - handbook/workflow-instructions/overseer/configure-project.wf.md
276
278
  - handbook/workflow-instructions/roles/lab-coordinator.wf.md
277
279
  - handbook/workflow-instructions/roles/project-overseer.wf.md
278
280
  - handbook/workflow-instructions/roles/second-commander.wf.md