@emiliosp/pi-maestro 0.9.0 → 0.9.1
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.
- package/CHANGELOG.md +13 -2
- package/ROADMAP.md +21 -23
- package/extensions/maestro.ts +3 -1
- package/package.json +1 -1
- package/src/maestro/instructions/getMaestroInstructions.ts +16 -0
package/CHANGELOG.md
CHANGED
|
@@ -2,12 +2,23 @@
|
|
|
2
2
|
|
|
3
3
|
This file summarizes meaningful changes to the codebase, including behavior, data formats, architecture, and development tools. Git tags identify version boundaries; GitHub Releases are not required. Version-only changes and routine maintenance are omitted.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## 0.9.1
|
|
6
6
|
|
|
7
|
-
1.
|
|
7
|
+
1. Added a brief introduction and an invitation to ask how `Maestro` works to the successful activation notice. See [PR #33](https://github.com/emilioSp/pi-maestro/pull/33).
|
|
8
|
+
2. Preserved the configured agent details and UI-only activation. Activation does not add session history or start a model request.
|
|
9
|
+
3. Added absolute paths to the installed README and documentation directory in active instructions. `Maestro` reads relevant documentation on demand without automatically loading its contents.
|
|
10
|
+
|
|
11
|
+
## 0.9.0
|
|
12
|
+
|
|
13
|
+
1. Breaking: `builder` reports now support only `done` and `escalation`. Reportable technical problems use the existing `owner` `escalation` process. See [PR #32](https://github.com/emilioSp/pi-maestro/pull/32).
|
|
8
14
|
2. Removed the terminal `builder` failure phase and event. Execution errors and missing or invalid saved results still stop the workflow without automatic recovery.
|
|
9
15
|
3. No migrations, compatibility readers, or deprecated aliases are provided. `Artifact` versions remain `1.0.0`.
|
|
10
16
|
|
|
17
|
+
## 0.8.0
|
|
18
|
+
|
|
19
|
+
1. Updated the bundled `pi-subagents` dependency from `0.76.0` to `0.78.0`.
|
|
20
|
+
2. Renamed `test/` to `tests/`. Updated imports, fixture paths, lint configuration, and project instructions. Source tests remain next to their source files.
|
|
21
|
+
|
|
11
22
|
## 0.7.3
|
|
12
23
|
|
|
13
24
|
1. Added Oxlint rules for `given ... when ... then ...` test titles, `const` usage, unnecessary `else` branches, type aliases, and ESM imports. See [PR #31](https://github.com/emilioSp/pi-maestro/pull/31).
|
package/ROADMAP.md
CHANGED
|
@@ -24,6 +24,16 @@ Numbered `builder` `handoffs` contain multiple `escalation` questions and their
|
|
|
24
24
|
|
|
25
25
|
[Specification](.specs/20261008-132344-store-escalations-in-builder-handoffs/spec.md), [verifier report](.specs/20261008-132344-store-escalations-in-builder-handoffs/handoffs/verifier/V1.json), and [merged PR #27](https://github.com/emilioSp/pi-maestro/pull/27).
|
|
26
26
|
|
|
27
|
+
### R-03: Route builder failures through owner escalations
|
|
28
|
+
|
|
29
|
+
Released in `0.9.0`. The `builder` reports only `done` or `escalation`. Reportable technical problems use the existing `owner` `escalation` process. Individual `probe` results retain `failed`. Execution errors and missing or invalid saved results still stop the workflow without automatic recovery.
|
|
30
|
+
|
|
31
|
+
All 8 `acceptance criteria` passed with no `verifier` `findings`. The saved workflow reached `candidate-ready`.
|
|
32
|
+
|
|
33
|
+
#### Evidence
|
|
34
|
+
|
|
35
|
+
[Specification](.specs/20261013-101454-route-builder-failures-through-owner-escalations/spec.md), [verifier report](.specs/20261013-101454-route-builder-failures-through-owner-escalations/handoffs/verifier/V1.json), and [merged PR #32](https://github.com/emilioSp/pi-maestro/pull/32).
|
|
36
|
+
|
|
27
37
|
### R-12: Format glossary terms consistently
|
|
28
38
|
|
|
29
39
|
Applied glossary formatting across the documentation and recorded its exclusions in `AGENTS.md` and the documentation audit skill. The approved change document uses the term `spec`. The `owner` confirmed completion.
|
|
@@ -32,32 +42,30 @@ Applied glossary formatting across the documentation and recorded its exclusions
|
|
|
32
42
|
|
|
33
43
|
[Glossary](docs/glossary.md) and [workflow documentation](docs/workflow.md).
|
|
34
44
|
|
|
35
|
-
### R-
|
|
45
|
+
### R-14: Introduce Maestro at activation
|
|
36
46
|
|
|
37
|
-
|
|
47
|
+
Implemented in `0.9.1`. npm publication is pending. Successful activation introduces `Maestro` and invites the `owner` to ask how it works. The UI-only notice retains the configured agent details and does not add session history or start a model request.
|
|
38
48
|
|
|
39
|
-
|
|
49
|
+
Active instructions identify absolute paths to the installed README and documentation directory. `Maestro` reads relevant documentation on demand without automatically loading its contents.
|
|
40
50
|
|
|
41
|
-
|
|
51
|
+
All 6 `acceptance criteria` passed with no `verifier` `findings`. The saved workflow reached `candidate-ready`.
|
|
42
52
|
|
|
43
|
-
|
|
53
|
+
#### Evidence
|
|
44
54
|
|
|
45
|
-
|
|
55
|
+
[Specification](.specs/20261013-171954-introduce-maestro-at-activation/spec.md), [verifier report](.specs/20261013-171954-introduce-maestro-at-activation/handoffs/verifier/V1.json), and [merged PR #33](https://github.com/emilioSp/pi-maestro/pull/33).
|
|
46
56
|
|
|
47
|
-
|
|
57
|
+
### R-15: Rename the test support directory
|
|
48
58
|
|
|
49
|
-
|
|
59
|
+
Renamed `test/` to `tests/` at the owner's request. Updated imports, fixture paths, lint configuration, and project instructions. This follows the global instruction to keep fixtures under `tests/fixtures`. Source tests remain next to their source files. Historical `handoffs` retain their recorded paths.
|
|
50
60
|
|
|
51
|
-
|
|
52
|
-
Automatic recovery of interrupted `runs` remains outside this item.
|
|
61
|
+
#### Evidence
|
|
53
62
|
|
|
54
|
-
|
|
63
|
+
[Test support](tests/support/), [fixtures](tests/fixtures/), [lint configuration](biome.json), and [project instructions](AGENTS.md#tests).
|
|
55
64
|
|
|
56
|
-
|
|
65
|
+
## Now
|
|
57
66
|
|
|
58
67
|
## Next
|
|
59
68
|
|
|
60
|
-
|
|
61
69
|
## Later
|
|
62
70
|
|
|
63
71
|
These items need scope review before `specification` approval. Existing behavior must be checked before adding new code. Dependencies between these items are not yet agreed.
|
|
@@ -160,16 +168,6 @@ Show an activity indicator in Pi's status bar while progress does not require an
|
|
|
160
168
|
|
|
161
169
|
The status clearly distinguishes work in progress from a request for `owner` action.
|
|
162
170
|
|
|
163
|
-
### R-14: Introduce Maestro at activation
|
|
164
|
-
|
|
165
|
-
#### Objective
|
|
166
|
-
|
|
167
|
-
When activated, `Maestro` gives a brief introduction and invites the `owner` to ask how it works, if interested. `Maestro` must have access to its own documentation to answer those questions.
|
|
168
|
-
|
|
169
|
-
#### Completed when
|
|
170
|
-
|
|
171
|
-
Activation includes this short introduction. `Maestro` can consult its documentation.
|
|
172
|
-
|
|
173
171
|
### R-16: Verify code quality against AGENTS.md instructions
|
|
174
172
|
|
|
175
173
|
#### Objective
|
package/extensions/maestro.ts
CHANGED
|
@@ -90,10 +90,12 @@ export default (pi: ExtensionAPI): void => {
|
|
|
90
90
|
syncMainTools();
|
|
91
91
|
await refreshMaestroStatus(context);
|
|
92
92
|
|
|
93
|
-
// show
|
|
93
|
+
// Introduce Maestro and show configured agents only in the UI.
|
|
94
94
|
context.ui.notify(
|
|
95
95
|
[
|
|
96
96
|
context.ui.theme.fg('muted', 'Maestro active'),
|
|
97
|
+
'Maestro helps the owner define a spec, then coordinates implementation and independent verification.',
|
|
98
|
+
'Ask how Maestro works for a short explanation.',
|
|
97
99
|
context.ui.theme.fg(
|
|
98
100
|
'accent',
|
|
99
101
|
`Builder (${config.builder.model} ${config.builder.thinking})`,
|
package/package.json
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
* Used: When Pi prepares a model request while Maestro is active.
|
|
4
4
|
*/
|
|
5
5
|
|
|
6
|
+
import { fileURLToPath } from 'node:url';
|
|
7
|
+
|
|
8
|
+
const README_PATH = fileURLToPath(
|
|
9
|
+
new URL('../../../README.md', import.meta.url),
|
|
10
|
+
);
|
|
11
|
+
|
|
12
|
+
const DOCS_PATH = fileURLToPath(new URL('../../../docs/', import.meta.url));
|
|
13
|
+
|
|
6
14
|
const MAESTRO_INSTRUCTIONS = `## Maestro mode
|
|
7
15
|
|
|
8
16
|
You are Maestro. Coordinate one sequential spec-driven workflow in the current session.
|
|
@@ -10,6 +18,14 @@ The owner decides requirements, scope, technical decisions in the spec, spec app
|
|
|
10
18
|
The builder implements the approved spec. The verifier independently checks the candidate. Do not perform their work yourself.
|
|
11
19
|
The approved spec.md is the contract for all three roles. Do not infer owner approval from an agent's recommendation.
|
|
12
20
|
|
|
21
|
+
### Maestro documentation
|
|
22
|
+
|
|
23
|
+
The loaded Maestro package's documentation is separate from the owner's project:
|
|
24
|
+
README.md: ${README_PATH}
|
|
25
|
+
docs/: ${DOCS_PATH}
|
|
26
|
+
Before answering questions about Maestro, use the available file-reading tools to read the relevant documentation on demand.
|
|
27
|
+
Do not automatically load all documentation.
|
|
28
|
+
|
|
13
29
|
### Tools and boundaries
|
|
14
30
|
|
|
15
31
|
The project root is the canonical Pi working directory, resolved with realpath. Do not search ancestor directories.
|