Skip to content

Commit 99fd20c

Browse files
docs: keep orchestration skill focused
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
1 parent 1b56a59 commit 99fd20c

1 file changed

Lines changed: 62 additions & 122 deletions

File tree

  • .github/plugin/psmodule/skills/psmodule-module-development-orchestration

.github/plugin/psmodule/skills/psmodule-module-development-orchestration/SKILL.md

Lines changed: 62 additions & 122 deletions
Original file line numberDiff line numberDiff line change
@@ -5,133 +5,73 @@ description: Coordinate substantial PSModule development across a parent session
55

66
# Orchestrate substantial PSModule development
77

8-
Use this skill when a module change is large enough to need several independent
9-
workstreams, explicit dependencies, or coordinated review. Use the repository
10-
[module development orchestration guide](../../../../../docs/content/guides/module-development-orchestration.md)
11-
as the detailed process reference. Do not copy organization-wide rules into
12-
this skill; follow the canonical [MSX Agentic Development](https://msx.no/docs/Ways-of-Working/Agentic-Development/),
13-
[Workflow](https://msx.no/docs/Ways-of-Working/Workflow/), and
14-
[Branching and Merging](https://msx.no/docs/Ways-of-Working/Branching-and-Merging/)
15-
guidance.
16-
17-
## Decide whether coordination is warranted
18-
19-
Coordinate through a parent session when the work has two or more genuinely
20-
independent deliverables, crosses code/tests/documentation/workflow boundaries,
21-
has dependencies that need an explicit order, or needs parallel review and
22-
integration. Keep the work in one session when it is a small change, a single
23-
coherent function, a focused documentation correction, or a change one agent
24-
can implement and validate without handoffs.
25-
26-
Before splitting work, inspect the repository README, local agent guidance,
27-
module layout, relevant tests, workflow, documentation, and existing
28-
validation commands. Establish the requested outcome, constraints, acceptance
29-
evidence, and files that are in scope.
30-
31-
## Decompose and hand off
32-
33-
The parent/orchestrator owns the overall outcome, scope, dependency order,
34-
integration decisions, release readiness, and final report. Decompose by
35-
coherent deliverable rather than by arbitrary file count. Each child handoff
36-
must state:
37-
38-
- the narrow objective and acceptance criteria;
39-
- the allowed files and the files it must not change;
40-
- dependencies and the expected branch/PR target;
41-
- repository-native validation to run;
42-
- the expected report-back format, including changed files, validation,
43-
decisions, blockers, and draft PR URL.
44-
45-
Children own their assigned deliverable end to end: inspect before editing,
46-
open a draft PR early, use small commits with the required Copilot co-author
47-
trailer, validate their scope, and report back. A child must stop and notify
48-
the parent when requirements conflict, its scope expands, a dependency is
49-
missing, validation exposes an unrelated failure, or the requested branch
50-
target is unclear. It must not silently absorb adjacent work.
51-
52-
## Branch and pull-request policy
53-
54-
For an existing module, use trunk-based development by default:
55-
56-
1. Create a short-lived topic branch from the default branch.
57-
2. Open a draft PR targeting the default branch as soon as the first coherent
58-
increment is pushed.
59-
3. Keep independent child PRs separate and merge them through normal review.
60-
4. Use a stacked PR only when a real dependency makes a separate target branch
61-
necessary, and follow the canonical MSX stacked-PR procedure.
62-
63-
Do not create a long-lived integration branch for ordinary feature work. The
64-
only exception is a brand-new module with no usable release whose
65-
load-bearing core has not landed. In that bootstrap case, use the
66-
[module bootstrap guide](../../../../../docs/content/get-started/module-bootstrap.md):
67-
keep one narrowly scoped integration branch for the core, let focused child
68-
PRs target it, and open the integration PR to the default branch when the core
69-
is coherent. Once the first release is on the default branch, return to the
70-
ordinary trunk-based policy.
71-
72-
Never target an existing documentation PR, issue, or unrelated worktree
73-
instead of the agreed branch. Do not merge, close, retarget, or modify another
74-
session's PR or issue without explicit ownership from the parent.
75-
76-
## Integrate and review
77-
78-
The parent reviews each child PR against its acceptance criteria and the
79-
repository contract before integration. Confirm that:
80-
81-
- the child diff stays within its handoff and preserves unrelated behavior;
82-
- dependent work is integrated in dependency order;
83-
- tests, lint, build/package, workflow, and documentation changes are wired
84-
together rather than merely passing in isolation;
85-
- generated files, permissions, release labels, and public module behavior
86-
receive deliberate review.
87-
88-
Merge through the agreed PR flow; do not bypass review with direct default
89-
branch pushes. After each merge, refresh dependent branches and rerun affected
90-
checks before integrating the next dependent change. Resolve conflicts by
91-
preserving the repository's current source of truth, not by taking whichever
92-
branch happens to be newer.
93-
94-
## Validate and assess release readiness
95-
96-
Use the repository's own commands and local guidance. At minimum, run the
97-
smallest relevant checks for the changed surface, then escalate when results
98-
show a broader dependency:
99-
100-
- build the module and run the affected Pester tests;
101-
- run the repository's PSScriptAnalyzer/lint and workflow validation;
102-
- build documentation when documentation or navigation changed;
103-
- review the final diff, PR checks, public exports, version/release labels, and
104-
required artifacts.
105-
106-
Apply the PSModule
8+
Use this skill when a module change needs multiple independent workstreams,
9+
explicit dependencies, or coordinated integration. First read the repository
10+
[module development orchestration guide](../../../../../docs/content/guides/module-development-orchestration.md).
11+
That guide is the source of common user and agent process. This skill adds only
12+
the session-specific operating contract below.
13+
14+
## Decide and decompose
15+
16+
Keep small, coherent changes in one session. Create a parent/orchestrator
17+
session when the work crosses capabilities or code, tests, documentation, or
18+
workflow surfaces; has dependencies; or needs parallel review.
19+
20+
The parent owns the outcome, boundaries, dependency order, shared decisions,
21+
integration, release readiness, and final report. Give each child one
22+
reviewable deliverable. Every handoff must include:
23+
24+
- the objective and acceptance evidence;
25+
- allowed files and explicit exclusions;
26+
- dependencies, base branch, and PR target;
27+
- repository-native validation;
28+
- the parent session or communication channel for report-back.
29+
30+
## Agent operating contract
31+
32+
For an existing module, use a short-lived topic branch from the default branch
33+
and target the default branch. Use the integration-branch exception only for a
34+
brand-new module's load-bearing first-release core, as described in the
35+
[module bootstrap guide](../../../../../docs/content/get-started/module-bootstrap.md).
36+
Use a stacked PR only for a genuine dependency.
37+
38+
Each child must:
39+
40+
1. Inspect local guidance, the module layout, and the assigned surface before
41+
editing.
42+
2. Stay within the handoff; make adjacent work a new child task.
43+
3. Open a draft PR early, push small commits, and include the required Copilot
44+
co-author trailer in each commit.
45+
4. Run the validation named in the handoff and record commands and outcomes.
46+
5. Report the draft PR URL and target, changed and excluded files, validation,
47+
decisions or risks, blockers, and follow-up work before requesting
48+
integration.
49+
50+
The parent reviews each child diff and acceptance criterion, integrates through
51+
the normal PR flow, and reruns affected checks after each dependent merge. Do
52+
not bypass review with a direct default-branch push or modify another session's
53+
PR or issue without explicit ownership.
54+
55+
Use the PSModule
10756
[validation before review](../../../../../docs/content/guides/validating-before-review.md)
108-
checklist. A change is release-ready only when all child work is integrated,
109-
required checks are green or explicitly blocked and owned, documentation and
110-
tests match the delivered behavior, and the release intent follows
111-
[versioning and releases](../../../../../docs/content/guides/versioning-and-releases.md).
112-
For a bootstrap integration branch, release readiness means the minimum
113-
load-bearing core is coherent; do not expand the exception to unrelated v1
114-
features.
115-
116-
## Report back and stop
117-
118-
The parent report must include the draft PR URL, files changed, commits,
119-
validation commands and outcomes, policy decisions (especially branch target
120-
and any bootstrap exception), unresolved blockers, and the next integration
121-
step. The parent should not mark the work complete or the PR ready for review
122-
until every child has reported and the combined result has passed the
123-
repository-native validation and review gates.
124-
125-
Stop instead of guessing when scope, ownership, branch target, release intent,
126-
or acceptance evidence is ambiguous; when a required dependency or credential
127-
is unavailable; when validation fails without an understood owner; or when
128-
integration would modify unrelated work. Record the blocker and return control
129-
to the parent.
57+
guidance and [versioning and releases](../../../../../docs/content/guides/versioning-and-releases.md)
58+
for the common validation and release-readiness gates. Keep the coordinated PR
59+
in draft when the integrated result is not ready.
60+
61+
## Stop conditions
62+
63+
Stop and report to the parent instead of guessing when scope, ownership,
64+
acceptance evidence, branch target, release intent, or a required dependency is
65+
ambiguous; when validation fails without a known owner; or when integration
66+
would modify unrelated work. Do not silently expand scope, merge unreviewed
67+
changes, or claim release readiness.
13068

13169
## References
13270

13371
- [Module development orchestration](../../../../../docs/content/guides/module-development-orchestration.md)
13472
- [PSModule repository standard](../../../../../docs/content/reference/repository-standard.md)
13573
- [Structuring your module](../../../../../docs/content/guides/structuring-your-module.md)
74+
- [MSX Agentic Development](https://msx.no/docs/Ways-of-Working/Agentic-Development/)
75+
- [MSX Workflow](https://msx.no/docs/Ways-of-Working/Workflow/)
76+
- [MSX Branching and Merging](https://msx.no/docs/Ways-of-Working/Branching-and-Merging/)
13677
- [MSX PR format](https://msx.no/docs/Ways-of-Working/PR-Format/)
137-
- [MSX Implement guidance](https://msx.no/docs/Agents/implement/)

0 commit comments

Comments
 (0)