@danmoisan/drm-copilot-mcp 0.0.1 → 0.0.5
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/out/mcp-server.js +5 -1
- package/package.json +21 -5
- package/resources/claude-customizations/.claude/agent-memory/orchestrator/MEMORY.md +15 -3
- package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_branch_base_check_unmerged_pr_deps.md +16 -0
- package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_every_change_through_lifecycle.md +15 -0
- package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_policy_compliance_not_optional.md +18 -0
- package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_potential_to_issue_creates_github_issue.md +13 -0
- package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_remediation_plan_em_dash_required.md +13 -0
- package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_small_bug_uses_minor_audit.md +13 -0
- package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_test_files_count_against_500_cap.md +13 -0
- package/resources/claude-customizations/.claude/agents/atomic-executor.md +7 -7
- package/resources/claude-customizations/.claude/agents/csharp-typed-engineer.md +4 -5
- package/resources/claude-customizations/.claude/agents/feature-review.md +7 -3
- package/resources/claude-customizations/.claude/agents/orchestrator.md +16 -1
- package/resources/claude-customizations/.claude/agents/powershell-typed-engineer.md +1 -1
- package/resources/claude-customizations/.claude/hooks/enforce-checkpoint-monotonic.ps1 +245 -0
- package/resources/claude-customizations/.claude/hooks/enforce-completion-consistency.ps1 +273 -0
- package/resources/claude-customizations/.claude/hooks/enforce-feature-folder-order.ps1 +148 -0
- package/resources/claude-customizations/.claude/hooks/enforce-pr-author-skill.ps1 +190 -0
- package/resources/claude-customizations/.claude/hooks/enforce-prd-feature-before-planner.ps1 +216 -0
- package/resources/claude-customizations/.claude/hooks/enforce-promotion-mcp-only.ps1 +84 -15
- package/resources/claude-customizations/.claude/hooks/validate-executor-output.ps1 +1 -1
- package/resources/claude-customizations/.claude/hooks/validate-feature-review-coverage.ps1 +75 -5
- package/resources/claude-customizations/.claude/hooks/validate-orchestrator-output.ps1 +93 -0
- package/resources/claude-customizations/.claude/hooks/validate-task-researcher-output.ps1 +68 -0
- package/resources/claude-customizations/.claude/rules/architecture-boundaries.md +46 -0
- package/resources/claude-customizations/.claude/rules/benchmark-baselines.md +35 -0
- package/resources/claude-customizations/.claude/rules/ci-workflows.md +36 -0
- package/resources/claude-customizations/.claude/rules/csharp.md +62 -16
- package/resources/claude-customizations/.claude/rules/general-code-change.md +12 -3
- package/resources/claude-customizations/.claude/rules/general-unit-test.md +47 -2
- package/resources/claude-customizations/.claude/rules/orchestrator-state.md +39 -0
- package/resources/claude-customizations/.claude/rules/powershell.md +5 -5
- package/resources/claude-customizations/.claude/rules/python.md +4 -3
- package/resources/claude-customizations/.claude/rules/quality-tiers.md +51 -0
- package/resources/claude-customizations/.claude/rules/typescript.md +37 -8
- package/resources/claude-customizations/.claude/settings.json +37 -12
- package/resources/claude-customizations/.claude/skills/atomic-plan-contract/SKILL.md +2 -2
- package/resources/claude-customizations/.claude/skills/csharp-qa-gate/SKILL.md +25 -10
- package/resources/claude-customizations/.claude/skills/execute-hard-lock/SKILL.md +6 -6
- package/resources/claude-customizations/.claude/skills/feature-promotion-lifecycle/SKILL.md +8 -8
- package/resources/claude-customizations/.claude/skills/feature-review-workflow/SKILL.md +17 -6
- package/resources/claude-customizations/.claude/skills/human-exception-runbook/SKILL.md +52 -0
- package/resources/claude-customizations/.claude/skills/human-exception-runbook/example.runbook.md +36 -0
- package/resources/claude-customizations/.claude/skills/invoke-csharp-engineer/SKILL.md +4 -4
- package/resources/claude-customizations/.claude/skills/orchestrate/SKILL.md +96 -3
- package/resources/claude-customizations/.claude/skills/policy-audit-template-usage/SKILL.md +3 -3
- package/resources/claude-customizations/.claude/skills/powershell-qa-gate/SKILL.md +4 -4
- package/resources/claude-customizations/.claude/skills/pr-base-branch-merge-base/SKILL.md +3 -3
- package/resources/claude-customizations/.claude/skills/python-qa-gate/SKILL.md +1 -1
- package/resources/claude-customizations/.claude/skills/remediation-handoff-atomic-planner/SKILL.md +90 -17
- package/resources/claude-dir-customizations/.mcp.json +3 -3
- package/resources/codex-and-agents-customizations/.agents/README.md +1 -1
- package/resources/codex-and-agents-customizations/.agents/skills/acceptance-criteria-tracking/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/architecture-boundaries/SKILL.md +52 -0
- package/resources/codex-and-agents-customizations/.agents/skills/atomic-plan-contract/SKILL.md +16 -8
- package/resources/codex-and-agents-customizations/.agents/skills/benchmark-baselines/SKILL.md +44 -0
- package/resources/codex-and-agents-customizations/.agents/skills/ci-workflows/SKILL.md +45 -0
- package/resources/codex-and-agents-customizations/.agents/skills/commit-message/SKILL.md +3 -11
- package/resources/codex-and-agents-customizations/.agents/skills/csharp/SKILL.md +1 -5
- package/resources/codex-and-agents-customizations/.agents/skills/csharp-change-budget-router/SKILL.md +1 -6
- package/resources/codex-and-agents-customizations/.agents/skills/csharp-orchestration-state-machine/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/csharp-qa-gate/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/evidence-and-timestamp-conventions/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/execute-hard-lock/SKILL.md +8 -17
- package/resources/codex-and-agents-customizations/.agents/skills/feature-promotion-lifecycle/SKILL.md +13 -14
- package/resources/codex-and-agents-customizations/.agents/skills/feature-review-workflow/SKILL.md +1 -6
- package/resources/codex-and-agents-customizations/.agents/skills/fill-feature-docs/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/general-code-change/SKILL.md +86 -0
- package/resources/codex-and-agents-customizations/.agents/skills/general-unit-test/SKILL.md +111 -0
- package/resources/codex-and-agents-customizations/.agents/skills/human-exception-runbook/SKILL.md +57 -0
- package/resources/codex-and-agents-customizations/.agents/skills/human-exception-runbook/example.runbook.md +36 -0
- package/resources/codex-and-agents-customizations/.agents/skills/invoke-csharp-engineer/SKILL.md +0 -9
- package/resources/codex-and-agents-customizations/.agents/skills/invoke-powershell-engineer/SKILL.md +0 -9
- package/resources/codex-and-agents-customizations/.agents/skills/invoke-python-engineer/SKILL.md +0 -9
- package/resources/codex-and-agents-customizations/.agents/skills/make-skill-template/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/orchestrate/SKILL.md +93 -8
- package/resources/codex-and-agents-customizations/.agents/skills/orchestrator-state/SKILL.md +48 -0
- package/resources/codex-and-agents-customizations/.agents/skills/orchestrator-workflow/SKILL.md +61 -2
- package/resources/codex-and-agents-customizations/.agents/skills/policy-audit-template-usage/SKILL.md +3 -8
- package/resources/codex-and-agents-customizations/.agents/skills/policy-compliance-order/SKILL.md +0 -10
- package/resources/codex-and-agents-customizations/.agents/skills/powershell/SKILL.md +4 -8
- package/resources/codex-and-agents-customizations/.agents/skills/powershell-change-budget-router/SKILL.md +1 -6
- package/resources/codex-and-agents-customizations/.agents/skills/powershell-orchestration-state-machine/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/powershell-qa-gate/SKILL.md +3 -9
- package/resources/codex-and-agents-customizations/.agents/skills/pr-author/SKILL.md +1 -9
- package/resources/codex-and-agents-customizations/.agents/skills/pr-base-branch-merge-base/SKILL.md +4 -9
- package/resources/codex-and-agents-customizations/.agents/skills/pr-context-artifacts/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/python/SKILL.md +1 -5
- package/resources/codex-and-agents-customizations/.agents/skills/python-change-budget-router/SKILL.md +1 -6
- package/resources/codex-and-agents-customizations/.agents/skills/python-qa-gate/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/python-suppressions/SKILL.md +2 -6
- package/resources/codex-and-agents-customizations/.agents/skills/quality-tiers/SKILL.md +57 -0
- package/resources/codex-and-agents-customizations/.agents/skills/remediation-handoff-atomic-planner/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/repo-automation-adapter/SKILL.md +91 -72
- package/resources/codex-and-agents-customizations/.agents/skills/repo-automation-adapter/agents/openai.yaml +1 -1
- package/resources/codex-and-agents-customizations/.agents/skills/research-issue/SKILL.md +0 -10
- package/resources/codex-and-agents-customizations/.agents/skills/review-epic/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/review-feature/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/review-staged/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/self-explanatory-code-commenting/SKILL.md +2 -6
- package/resources/codex-and-agents-customizations/.agents/skills/skill-canonical-location-audit/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.agents/skills/tonality/SKILL.md +86 -0
- package/resources/codex-and-agents-customizations/.agents/skills/translate-claude-to-codex/SKILL.md +297 -0
- package/resources/codex-and-agents-customizations/.agents/skills/translate-copilot-to-claude/SKILL.md +0 -22
- package/resources/codex-and-agents-customizations/.agents/skills/typescript/SKILL.md +1 -5
- package/resources/codex-and-agents-customizations/.agents/skills/typescript-suppressions/SKILL.md +2 -6
- package/resources/codex-and-agents-customizations/.agents/skills/update-status/SKILL.md +0 -5
- package/resources/codex-and-agents-customizations/.codex/agents/atomic-executor.toml +5 -5
- package/resources/codex-and-agents-customizations/.codex/agents/orchestrator.toml +91 -63
- package/resources/codex-and-agents-customizations/.codex/agents/powershell-atomic-executor.toml +1 -1
- package/resources/codex-and-agents-customizations/.codex/agents/powershell-typed-engineer.toml +1 -1
- package/resources/codex-and-agents-customizations/.codex/config.toml +51 -136
- package/resources/codex-and-agents-customizations/.codex/hooks/enforce-promotion-mcp-only.ps1 +1 -1
- package/resources/codex-and-agents-customizations/.codex/prompts/orchestrate-work.md +4 -3
- package/resources/codex-and-agents-customizations/.codex/scripts/post-codex-worktree-session.ps1 +5 -0
- package/resources/codex-and-agents-customizations/.github/workflows/_validate-orchestrator-state.yml +68 -0
- package/resources/codex-and-agents-customizations/.github/workflows/validate-orchestrator-state.yml +15 -0
- package/resources/config/orchestration-routing.json +84 -0
- package/resources/customizations/.github/agents/Powershell DI Unit Test Engineer.agent.md +1 -1
- package/resources/customizations/.github/agents/atomic_executor.agent.md +1 -1
- package/resources/customizations/.github/agents/atomic_planning.agent.md +10 -10
- package/resources/customizations/.github/agents/csharp-orchestrator.agent.md +6 -2
- package/resources/customizations/.github/agents/feature-review.agent.md +2 -2
- package/resources/customizations/.github/agents/orchestrator.agent.md +6 -2
- package/resources/customizations/.github/agents/powershell-atomic-executor.agent.md +4 -4
- package/resources/customizations/.github/agents/powershell-atomic-planning.agent.md +10 -10
- package/resources/customizations/.github/agents/powershell-orchestrator.agent.md +6 -2
- package/resources/customizations/.github/agents/powershell-typed-engineer.agent.md +2 -2
- package/resources/customizations/.github/agents/python-orchestrator.agent.md +6 -2
- package/resources/customizations/.github/agents/staged-review.agent.md +1 -1
- package/resources/customizations/.github/instructions/powershell-code-change.instructions.md +6 -6
- package/resources/customizations/.github/prompts/generate-commit-message-repo.prompt.md +1 -1
- package/resources/customizations/.github/prompts/orchestrate-csharp-work.prompt.md +5 -3
- package/resources/customizations/.github/prompts/orchestrate-work.prompt.md +5 -3
- package/resources/customizations/.github/skills/atomic-plan-contract/SKILL.md +14 -1
- package/resources/customizations/.github/skills/feature-promotion-lifecycle/SKILL.md +11 -7
- package/resources/customizations/.github/skills/feature-review-workflow/SKILL.md +10 -1
- package/resources/customizations/.github/skills/pr-base-branch-merge-base/SKILL.md +2 -2
- package/resources/customizations/.github/skills/remediation-handoff-atomic-planner/SKILL.md +5 -0
- package/resources/powershell/PoshQC/settings/pester.runsettings.psd1 +7 -0
- package/resources/scripts/dev_tools/_orchestrator_state_human_interaction.py +127 -0
- package/resources/scripts/dev_tools/_orchestrator_state_routing.py +216 -0
- package/resources/scripts/dev_tools/push_down_claude_customizations.py +191 -5
- package/resources/scripts/dev_tools/validate_orchestration_artifacts.py +103 -411
- package/resources/scripts/dev_tools/validate_orchestration_review_artifacts.py +107 -0
- package/resources/scripts/dev_tools/validate_orchestrator_state.py +428 -0
- package/resources/scripts/dev_tools/validate_policy_audit_artifact.py +448 -0
- package/resources/templates/push_down_claude_customizations.py +227 -6
- package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_repo_root_is_source_of_truth.md +0 -11
- package/resources/claude-customizations/.claude/agent-memory/orchestrator/feedback_vsce_verify_package_location.md +0 -19
- package/resources/claude-customizations/.claude/agent-memory/orchestrator/project_extension_location.md +0 -11
- package/resources/claude-customizations/.claude/agent-memory/prd-feature/MEMORY.md +0 -1
- package/resources/claude-customizations/.claude/agent-memory/prd-feature/project_push_down_pattern.md +0 -13
- package/resources/claude-customizations/.claude/agent-memory/task-researcher/MEMORY.md +0 -3
- package/resources/claude-customizations/.claude/agent-memory/task-researcher/project_push_down_claude_dir.md +0 -11
|
@@ -15,13 +15,13 @@ Use this skill when:
|
|
|
15
15
|
|
|
16
16
|
## Template Source
|
|
17
17
|
|
|
18
|
-
- Required template source: the MCP server tool `
|
|
18
|
+
- Required template source: the MCP server tool `mcp__drm-copilot__resolve_policy_audit_template_asset` with asset selector `template`.
|
|
19
19
|
- The resolved MCP asset is authoritative even when a matching repo file also exists.
|
|
20
20
|
- If MCP asset resolution fails, create a minimal policy audit artifact marked BLOCKED and document the missing template resolution.
|
|
21
21
|
|
|
22
22
|
## Required Steps
|
|
23
23
|
|
|
24
|
-
1) Resolve the policy-audit template through the MCP server tool `
|
|
24
|
+
1) Resolve the policy-audit template through the MCP server tool `mcp__drm-copilot__resolve_policy_audit_template_asset` with asset `template`, then copy the resolved asset to the target location using an ISO-8601 timestamp.
|
|
25
25
|
2) Replace placeholders with actual values (component, date, files under test, commits).
|
|
26
26
|
3) Remove any template usage instructions per template guidance.
|
|
27
27
|
4) Mark each section PASS/FAIL/N/A using the template’s expected conventions.
|
|
@@ -39,7 +39,7 @@ Use this skill when:
|
|
|
39
39
|
- `## 10. Compliance Verdict`
|
|
40
40
|
- `## Appendix A: Test Inventory`
|
|
41
41
|
- `## Appendix B: Toolchain Commands Reference`
|
|
42
|
-
6) Run the `
|
|
42
|
+
6) Run the `mcp__drm-copilot__validate_orchestration_artifacts` MCP tool with `artifact_type: "policy-audit"` and `artifact_path: <path>` and fail closed on any non-zero result.
|
|
43
43
|
|
|
44
44
|
## Invalid Outputs
|
|
45
45
|
|
|
@@ -27,9 +27,9 @@ Before invoking this gate, the agent must have:
|
|
|
27
27
|
|
|
28
28
|
Run the full toolchain in this exact order. If any step fails or modifies files, fix the issue and restart from step 1. Do not stop the loop until all steps complete without errors in a single pass.
|
|
29
29
|
|
|
30
|
-
1. `
|
|
31
|
-
2. `
|
|
32
|
-
3. `
|
|
30
|
+
1. `mcp__drm-copilot__run_poshqc_format`
|
|
31
|
+
2. `mcp__drm-copilot__run_poshqc_analyze`
|
|
32
|
+
3. `mcp__drm-copilot__run_poshqc_test`
|
|
33
33
|
4. Coverage check (when enforced by task/repo flow) — use the Pester coverage output from step 3 or the repo coverage task.
|
|
34
34
|
|
|
35
35
|
If the environment prevents running any tool, stop and report the change as **unverified**. Do not declare completion.
|
|
@@ -42,7 +42,7 @@ Compare the final results to the Phase A baseline. All of the following must hol
|
|
|
42
42
|
- **Pester delta**: 0 new failing tests.
|
|
43
43
|
- **Per-file coverage delta**: coverage for every touched file is greater than or equal to the baseline for that file.
|
|
44
44
|
- **Overall coverage delta** (when the repo enforces it): overall coverage is greater than or equal to the baseline.
|
|
45
|
-
- **New modules, classes, or methods**: coverage >=
|
|
45
|
+
- **New modules, classes, or methods**: line coverage >= 85% and branch coverage >= 75% per the uniform tier rule (`.claude/rules/quality-tiers.md`). No tier-specific lower thresholds. No regression on changed lines.
|
|
46
46
|
|
|
47
47
|
If any delta check fails, the agent must revert or fix immediately and rerun the full toolchain. Do not proceed to reporting until all deltas are clean.
|
|
48
48
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: pr-base-branch-merge-base
|
|
3
|
-
description: 'Resolve PRBaseBranch for
|
|
3
|
+
description: 'Resolve PRBaseBranch for mcp__drm-copilot__collect_pr_context using merge-base ancestry. Use when orchestrators or review workflows need the correct comparison base branch and must select the branch with the most recent common ancestor commit with HEAD.'
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# PR Base Branch (Merge-Base)
|
|
@@ -10,7 +10,7 @@ Deterministic branch-selection rules for PR context collection.
|
|
|
10
10
|
## When to Use This Skill
|
|
11
11
|
|
|
12
12
|
Use this skill when:
|
|
13
|
-
- running `
|
|
13
|
+
- running `mcp__drm-copilot__collect_pr_context`,
|
|
14
14
|
- delegating post-implementation review that depends on `PRBaseBranch`,
|
|
15
15
|
- constructing PR context artifacts where the base must not be hard-coded.
|
|
16
16
|
|
|
@@ -44,7 +44,7 @@ Definition of correct base:
|
|
|
44
44
|
|
|
45
45
|
When invoking PR context collection, pass the resolved base explicitly:
|
|
46
46
|
|
|
47
|
-
- `
|
|
47
|
+
- `mcp__drm-copilot__collect_pr_context` with `base=<resolved-PRBaseBranch>`
|
|
48
48
|
|
|
49
49
|
## Evidence Recommendation
|
|
50
50
|
|
|
@@ -43,7 +43,7 @@ Compare the final results to the Phase A baseline. All of the following must hol
|
|
|
43
43
|
- **Pytest delta**: 0 new failing tests.
|
|
44
44
|
- **Per-file coverage delta**: coverage for every touched file is greater than or equal to the baseline for that file.
|
|
45
45
|
- **Overall coverage delta** (when the repo enforces it): overall coverage is greater than or equal to the baseline.
|
|
46
|
-
- **New modules, classes, or methods**: coverage >=
|
|
46
|
+
- **New modules, classes, or methods**: line coverage >= 85% and branch coverage >= 75% per the uniform tier rule (`.claude/rules/quality-tiers.md`). No tier-specific lower thresholds. No regression on changed lines.
|
|
47
47
|
|
|
48
48
|
If any delta check fails, the agent must revert or fix immediately and rerun the full toolchain. Do not proceed to reporting until all deltas are clean.
|
|
49
49
|
|
package/resources/claude-customizations/.claude/skills/remediation-handoff-atomic-planner/SKILL.md
CHANGED
|
@@ -1,40 +1,113 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: remediation-handoff-atomic-planner
|
|
3
|
-
description: '
|
|
3
|
+
description: 'Remediation handoff chain from orchestrator through atomic-planner, atomic-executor, and feature-review. Use when an audit cycle requires a delegated remediation plan, preflight clearance, task-by-task execution, and reaudit.'
|
|
4
4
|
---
|
|
5
5
|
|
|
6
|
-
# Remediation Handoff to
|
|
6
|
+
# Remediation Handoff to atomic-planner
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
Strict handoff chain for orchestrator-initiated remediation cycles. The chain enforces that an `atomic-planner`-authored plan is preflighted by `atomic-executor`, revised through a preflight sub-loop if needed, executed by `atomic-executor` task-by-task, and reaudited by `feature-review`. Workers are never invoked directly by the orchestrator.
|
|
9
9
|
|
|
10
10
|
## When to Use This Skill
|
|
11
11
|
|
|
12
12
|
Use this skill when:
|
|
13
|
-
- Audit findings require remediation.
|
|
14
|
-
- You must create remediation inputs and delegate plan creation to `atomic_planner`.
|
|
15
13
|
|
|
16
|
-
|
|
14
|
+
- Audit findings require remediation (FAIL or material PARTIAL findings).
|
|
15
|
+
- Toolchain checks fail.
|
|
16
|
+
- Acceptance criteria are unmet.
|
|
17
|
+
- A required CI check fails after the pull request is open.
|
|
18
|
+
- Any new finding surfaces during execution of an active cycle (in which case begin a new cycle, do not extend the active one).
|
|
19
|
+
|
|
20
|
+
## Full Handoff Chain
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
orchestrator
|
|
24
|
+
-> writes remediation-inputs.<entry-ts>.md
|
|
25
|
+
-> delegates to atomic-planner
|
|
26
|
+
-> atomic-planner authors remediation-plan.<entry-ts>.md
|
|
27
|
+
(plan shape per .claude/skills/atomic-plan-contract/SKILL.md)
|
|
28
|
+
-> orchestrator hands plan to atomic-executor for preflight
|
|
29
|
+
-> atomic-executor returns one of:
|
|
30
|
+
PREFLIGHT: ALL CLEAR -> proceed to execution
|
|
31
|
+
PREFLIGHT: REVISIONS REQUIRED -> route back to atomic-planner
|
|
32
|
+
with a precise plan delta; planner revises in place and
|
|
33
|
+
orchestrator re-runs preflight (sub-loop until clear)
|
|
34
|
+
-> atomic-executor executes the cleared plan task-by-task
|
|
35
|
+
(workers are invoked by atomic-executor only)
|
|
36
|
+
-> orchestrator delegates to feature-review
|
|
37
|
+
-> feature-review writes code-review.<exit-ts>.md,
|
|
38
|
+
feature-audit.<exit-ts>.md, and policy-audit.<exit-ts>.md
|
|
39
|
+
-> orchestrator evaluates exit condition:
|
|
40
|
+
blocking_count == 0 -> mark exit_condition_met = true, end loop
|
|
41
|
+
blocking_count > 0 -> begin cycle N+1 with new remediation-inputs.<new-ts>.md
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
The orchestrator must not call typed-engineer workers directly during any phase of the cycle. The orchestrator must not act on a preflight delta itself; revisions are routed to `atomic-planner`.
|
|
45
|
+
|
|
46
|
+
## Trigger Conditions
|
|
17
47
|
|
|
18
48
|
Trigger remediation when any of these are true:
|
|
49
|
+
|
|
19
50
|
- Audit artifacts contain FAIL or meaningful PARTIAL findings.
|
|
20
|
-
- Toolchain checks fail.
|
|
51
|
+
- Toolchain checks fail (format, lint, type-check, test, contract, or integration stages).
|
|
21
52
|
- Acceptance criteria are not met.
|
|
53
|
+
- A required CI check fails after the PR is open (workflow-file changes specifically must enter the loop and trigger the `modified-workflow-needs-green-run` rule defined in `.claude/skills/feature-review-workflow/SKILL.md`).
|
|
22
54
|
|
|
23
55
|
## Required Remediation Inputs
|
|
24
56
|
|
|
25
|
-
|
|
57
|
+
The orchestrator authors `remediation-inputs.<entry-ts>.md` with:
|
|
58
|
+
|
|
26
59
|
- Enumerated fix list with file paths, expected behavior, and verification commands.
|
|
27
|
-
- A
|
|
60
|
+
- A "do not do" list (no scope creep, no policy weakening, no silent skips).
|
|
61
|
+
- A pointer to the audit artifacts that produced the findings.
|
|
28
62
|
|
|
29
|
-
##
|
|
63
|
+
## Required Artifacts
|
|
30
64
|
|
|
31
|
-
|
|
32
|
-
2) Delegate to `atomic_planner` with:
|
|
33
|
-
- `${spec}` pointing to remediation inputs (authoritative)
|
|
34
|
-
- `${file}` pointing to the remediation plan target file
|
|
35
|
-
3) Require `atomic_planner` to output a deterministic, atomic plan with phases and `[P#-T#]` IDs.
|
|
65
|
+
Each remediation cycle produces exactly five artifacts under the active feature folder:
|
|
36
66
|
|
|
37
|
-
|
|
67
|
+
1. `docs/features/active/<slug>/remediation-inputs.<entry-ts>.md` — orchestrator authors at cycle entry.
|
|
68
|
+
2. `docs/features/active/<slug>/remediation-plan.<entry-ts>.md` — `atomic-planner` authors at cycle entry.
|
|
69
|
+
3. `docs/features/active/<slug>/code-review.<exit-ts>.md` — `feature-review` authors at cycle exit.
|
|
70
|
+
4. `docs/features/active/<slug>/feature-audit.<exit-ts>.md` — `feature-review` authors at cycle exit.
|
|
71
|
+
5. `docs/features/active/<slug>/policy-audit.<exit-ts>.md` — `feature-review` authors at cycle exit.
|
|
72
|
+
|
|
73
|
+
Timestamp rule:
|
|
74
|
+
|
|
75
|
+
- `<entry-ts>` is the ISO-8601 timestamp at cycle entry, in the `yyyy-MM-ddTHH-mm` format defined in `.claude/skills/evidence-and-timestamp-conventions/SKILL.md`. It applies to both `remediation-inputs.<entry-ts>.md` and `remediation-plan.<entry-ts>.md`.
|
|
76
|
+
- `<exit-ts>` is the ISO-8601 timestamp at cycle exit (when `feature-review` runs), in the same `yyyy-MM-ddTHH-mm` format. It applies to all three reaudit artifacts: `code-review.<exit-ts>.md`, `feature-audit.<exit-ts>.md`, and `policy-audit.<exit-ts>.md`.
|
|
77
|
+
|
|
78
|
+
A cycle with fewer than five artifacts is malformed. A cycle that uses a single timestamp for both entry and exit is malformed unless both phases ran within the same minute.
|
|
79
|
+
|
|
80
|
+
## Plan Shape
|
|
38
81
|
|
|
39
|
-
|
|
82
|
+
`remediation-plan.<entry-ts>.md` MUST conform to `.claude/skills/atomic-plan-contract/SKILL.md`. In particular:
|
|
83
|
+
|
|
84
|
+
- Phase headings: `### Phase N — <Title>`.
|
|
85
|
+
- Tasks: `- [ ] [P#-T#]` with sequential per-phase IDs.
|
|
86
|
+
- Phase 0 captures policy reads and baseline toolchain results per `policy-compliance-order` and `evidence-and-timestamp-conventions`.
|
|
87
|
+
- Final phase runs the full toolchain QA loop in the order specified by `atomic-plan-contract` and records numeric coverage values where the repository policy requires coverage.
|
|
88
|
+
- Evidence paths resolve to `<FEATURE>/evidence/<kind>/` per the non-overridable evidence path clause.
|
|
89
|
+
|
|
90
|
+
The plan must pass the `mcp__drm-copilot__validate_orchestration_artifacts` MCP tool with `artifact_type: "plan"` and `artifact_path: <plan-path>` before `atomic-executor` runs preflight against it.
|
|
91
|
+
|
|
92
|
+
## Preflight Sub-Loop
|
|
93
|
+
|
|
94
|
+
After the plan is authored, `atomic-executor` runs preflight under the directive `DIRECTIVE: PREFLIGHT VALIDATION ONLY`. The exact signal returned is either:
|
|
95
|
+
|
|
96
|
+
- `PREFLIGHT: ALL CLEAR` — the plan proceeds to execution.
|
|
97
|
+
- `PREFLIGHT: REVISIONS REQUIRED` — `atomic-executor` returns a precise plan delta. The orchestrator routes the delta to `atomic-planner` for revision. `atomic-planner` updates the same plan file in place (per the plan-path continuity contract in `atomic-plan-contract`). The orchestrator then re-runs preflight. The sub-loop repeats until `PREFLIGHT: ALL CLEAR` is returned.
|
|
98
|
+
|
|
99
|
+
The orchestrator records the preflight outcome in `remediation_loop.cycles[current_cycle].preflight` with `iterations` (counter) and `final_status` (`clear|changes_requested|pending`).
|
|
100
|
+
|
|
101
|
+
## Execution and Reaudit
|
|
102
|
+
|
|
103
|
+
When preflight is clear, `atomic-executor` executes the plan task-by-task. The executor invokes workers (`python-typed-engineer`, `typescript-engineer`, `csharp-typed-engineer`, `powershell-typed-engineer`) internally as needed. The orchestrator does not call workers.
|
|
104
|
+
|
|
105
|
+
When execution is complete, the orchestrator delegates to `feature-review`. `feature-review` produces the three reaudit artifacts under the active feature folder using the exit timestamp.
|
|
106
|
+
|
|
107
|
+
## Exit Gate
|
|
108
|
+
|
|
109
|
+
The orchestrator reads the latest cycle's three reaudit artifacts and computes `blocking_count` as the total number of FAIL findings plus material PARTIAL findings flagged as blocking. Only when `blocking_count == 0` does the orchestrator set `exit_condition_met = true` on the current cycle and mark the remediation loop complete. Otherwise, the orchestrator opens cycle N+1 with a new `remediation-inputs.<new-ts>.md` and runs the full chain again.
|
|
110
|
+
|
|
111
|
+
## Context Package (When Required)
|
|
40
112
|
|
|
113
|
+
If the calling agent requires a context package, inline the relevant audit artifacts, PR context artifacts, and any active plan files in the delegated prompt to `atomic-planner` rather than referencing them by path alone.
|
|
@@ -66,7 +66,7 @@ When migrating a Copilot artifact:
|
|
|
66
66
|
2. If it defines a reusable agent persona or bounded delegation role, migrate it to `.codex/agents/<name>.toml`.
|
|
67
67
|
3. If it is mainly a launch prompt or an orchestration shortcut, migrate it to `.codex/prompts/<name>.md`.
|
|
68
68
|
4. Preserve stable names where possible so downstream handoffs remain readable and consistent.
|
|
69
|
-
5. If a Copilot workflow relied on `drmCopilotExtension.*` commands or another host-specific surface, move that translation logic into `repo-automation-adapter`, target semantic MCP tools on server `
|
|
69
|
+
5. If a Copilot workflow relied on `drmCopilotExtension.*` commands or another host-specific surface, move that translation logic into `repo-automation-adapter`, target semantic MCP tools on server `drm-copilot` when available, and keep the business workflow skill host-agnostic.
|
|
70
70
|
|
|
71
71
|
## External Tool Bindings
|
|
72
72
|
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
# Converted skill
|
|
2
|
-
|
|
3
|
-
Applied rewrites:
|
|
4
|
-
- None
|
|
5
|
-
|
|
6
1
|
---
|
|
7
2
|
name: acceptance-criteria-tracking
|
|
8
3
|
description: 'Track and check off acceptance criteria in requirement source files (issue.md, spec.md, user-story.md) as they are delivered. Use when executing plans, reviewing features, or validating delivery to keep AC checkboxes current.'
|
package/resources/codex-and-agents-customizations/.agents/skills/architecture-boundaries/SKILL.md
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: architecture-boundaries
|
|
3
|
+
description: Architecture boundary enforcement rules for the No-COM architecture.
|
|
4
|
+
paths:
|
|
5
|
+
- "**/*.ts"
|
|
6
|
+
- "**/*.cs"
|
|
7
|
+
description: Architecture boundary enforcement rules for the No-COM architecture.
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Converted rule
|
|
11
|
+
|
|
12
|
+
Source: legacy Claude rule `architecture-boundaries`.
|
|
13
|
+
|
|
14
|
+
# Architecture Boundaries
|
|
15
|
+
|
|
16
|
+
Architecture boundary enforcement is a uniform gate across all tiers (T1–T4). Violations block PRs.
|
|
17
|
+
|
|
18
|
+
## Enforcement Tools
|
|
19
|
+
|
|
20
|
+
- **TypeScript:** `dependency-cruiser`. Configuration file pattern: `.dependency-cruiser.cjs`.
|
|
21
|
+
- **.NET (when the backend exists):** `NetArchTest.Rules`. Test project naming pattern: `*.ArchitectureTests`.
|
|
22
|
+
|
|
23
|
+
## No-COM Architecture Rules (enforceable assertions)
|
|
24
|
+
|
|
25
|
+
Production code in this repository must satisfy each of the following assertions. Each assertion is enforced by `dependency-cruiser` (TypeScript) or `NetArchTest.Rules` (.NET) where applicable; legacy import utilities, when added, must satisfy the same assertions.
|
|
26
|
+
|
|
27
|
+
1. New runtime code must not reference VSTO APIs (`Microsoft.Office.Tools.*`).
|
|
28
|
+
2. New runtime code must not reference Outlook desktop automation APIs (`Microsoft.Office.Interop.Outlook`).
|
|
29
|
+
3. New runtime code must not expose COM-visible interfaces (`[ComVisible(true)]` attribute is banned in production code).
|
|
30
|
+
4. New runtime code must not use Ribbon extensibility callbacks tied to the desktop object model.
|
|
31
|
+
5. New runtime code must not depend on local Outlook event streams.
|
|
32
|
+
6. New runtime code must not depend on Outlook user-defined fields as the primary state store.
|
|
33
|
+
7. Mailbox data must be accessed only through Office.js or Microsoft Graph.
|
|
34
|
+
8. Business behavior must be implemented in the backend or in host-neutral domain or application modules.
|
|
35
|
+
9. Client UI must be implemented as web UI.
|
|
36
|
+
10. Legacy integration, when required, must be limited to offline data import from files or exported data.
|
|
37
|
+
|
|
38
|
+
## Layer Boundary Assertions (TypeScript)
|
|
39
|
+
|
|
40
|
+
- `src/taskpane/` and `src/commands/` must not import from backend internals.
|
|
41
|
+
- Domain modules must not import from Office.js, Microsoft Graph SDK, or any infrastructure adapter.
|
|
42
|
+
- Adapters may import from domain; domain must not import from adapters.
|
|
43
|
+
|
|
44
|
+
## Layer Boundary Assertions (.NET, applies once the backend exists)
|
|
45
|
+
|
|
46
|
+
- `TaskMaster.Domain` must have zero references to Outlook PIA, VSTO, or Office.js types.
|
|
47
|
+
- `TaskMaster.Application` may depend on `TaskMaster.Domain` only.
|
|
48
|
+
- Adapter projects may depend on `TaskMaster.Domain` and `TaskMaster.Application`; domain may not depend on adapters.
|
|
49
|
+
|
|
50
|
+
## Enforcement Outcome
|
|
51
|
+
|
|
52
|
+
Violations of any rule above are PR-blocking findings. CI runs the architecture-boundary stage on every PR; a non-zero violation count fails the stage and prevents merge.
|
package/resources/codex-and-agents-customizations/.agents/skills/atomic-plan-contract/SKILL.md
CHANGED
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
# Converted skill
|
|
2
|
-
|
|
3
|
-
Applied rewrites:
|
|
4
|
-
- Rewrite Claude skill paths to shared skill paths.
|
|
5
|
-
|
|
6
1
|
---
|
|
7
2
|
name: atomic-plan-contract
|
|
8
3
|
description: 'Atomic plan format and toolchain contract shared by planning and execution agents. Use when generating, validating, or executing atomic plans with Phase 0, baseline capture, and final QA loops.'
|
|
@@ -24,7 +19,7 @@ Use this skill when:
|
|
|
24
19
|
- Phase headings must be: `### Phase N — <Title>`
|
|
25
20
|
- Tasks must start with: `- [ ] [P#-T#]` (or `[x]` for completed)
|
|
26
21
|
- Task IDs must match their phase and be sequential per phase.
|
|
27
|
-
- Plans must pass the `
|
|
22
|
+
- Plans must pass the `mcp__drm-copilot__validate_orchestration_artifacts` MCP tool with `artifact_type: "plan"` and `artifact_path: <plan-path>` before they can be reported as approved.
|
|
28
23
|
|
|
29
24
|
## Short-Path Minimal Plan Contract
|
|
30
25
|
|
|
@@ -78,9 +73,22 @@ After preflight all-clear on the minimal-audit plan:
|
|
|
78
73
|
- orchestrator MUST checkpoint Phase 0 evidence before branching.
|
|
79
74
|
|
|
80
75
|
Branching after Phase 0:
|
|
81
|
-
- `manual bootstrap` → save state and stop for manual resume,
|
|
76
|
+
- `manual bootstrap` → save state and stop for manual resume ONLY when the initial user request explicitly opted into manual orchestration from the beginning,
|
|
82
77
|
- otherwise continue with constrained small-path development, then executor validation, then reduced audit/remediation loop.
|
|
83
78
|
|
|
79
|
+
## No-Manual-Step Contract (Mandatory)
|
|
80
|
+
|
|
81
|
+
Unless the user's initial request explicitly opts into manual orchestration from the beginning, approved plans and remediation plans MUST remain fully automated.
|
|
82
|
+
|
|
83
|
+
This prohibition includes:
|
|
84
|
+
|
|
85
|
+
- manual bootstrap pauses,
|
|
86
|
+
- human-operator validation tasks,
|
|
87
|
+
- user-performed repro or QA steps,
|
|
88
|
+
- requests for screenshots, notes, or runtime evidence that the agent cannot collect itself.
|
|
89
|
+
|
|
90
|
+
When a fully automated equivalent is unavailable, the plan MUST fail closed by recording blocked or remediation-required automated state. It MUST NOT introduce a new manual step later in the workflow.
|
|
91
|
+
|
|
84
92
|
## Phase 0 Requirements
|
|
85
93
|
|
|
86
94
|
Phase 0 must include tasks to read policy files in the order defined in `policy-compliance-order`.
|
|
@@ -158,7 +166,7 @@ When validating or handing off plans for execution:
|
|
|
158
166
|
|
|
159
167
|
Before a plan can be treated as approved:
|
|
160
168
|
|
|
161
|
-
- run the `
|
|
169
|
+
- run the `mcp__drm-copilot__validate_orchestration_artifacts` MCP tool with `artifact_type: "plan"` and `artifact_path: <plan-path>`,
|
|
162
170
|
- reject the plan if that validator exits non-zero,
|
|
163
171
|
- do not treat human-readable summaries as a substitute for validator success.
|
|
164
172
|
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: benchmark-baselines
|
|
3
|
+
description: Benchmark baseline provenance rules for performance regression gates.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Converted rule
|
|
7
|
+
|
|
8
|
+
Source: legacy Claude rule `benchmark-baselines`.
|
|
9
|
+
|
|
10
|
+
# Benchmark Baseline Provenance
|
|
11
|
+
|
|
12
|
+
This rule governs performance baselines used by benchmark regression gates. It exists because a baseline captured on a developer workstation was compared against a `windows-latest` runner, producing deterministic latency regressions that the benchmark gate could not survive (issue #26, PR #30).
|
|
13
|
+
|
|
14
|
+
## Runner-Environment Parity (Required)
|
|
15
|
+
|
|
16
|
+
Performance baselines must be captured in the same runner environment class against which they are compared. A baseline captured on a developer workstation must not be committed for comparison against a CI runner.
|
|
17
|
+
|
|
18
|
+
## Prohibited: Unknown Processor
|
|
19
|
+
|
|
20
|
+
A baseline whose `HostEnvironmentInfo.ProcessorName` is the literal string `"Unknown processor"` is rejected. This value indicates the baseline was captured in an environment where the processor could not be identified (typically a virtualized or developer workstation), which violates runner-environment parity.
|
|
21
|
+
|
|
22
|
+
- Tooling MUST reject any baseline JSON where `HostEnvironmentInfo.ProcessorName == "Unknown processor"`.
|
|
23
|
+
- The rejection is a Blocking finding; the baseline must be recaptured on the target runner class.
|
|
24
|
+
|
|
25
|
+
## Required: Sibling Provenance File
|
|
26
|
+
|
|
27
|
+
Every committed baseline file MUST have a sibling `baseline.provenance.json` in the same directory. The provenance file records, at minimum:
|
|
28
|
+
|
|
29
|
+
- `runner_class` — the runner environment class that produced the baseline (for example `windows-latest`).
|
|
30
|
+
- `host_signature` — a stable signature of the host (for example a hashed or labeled description of the CPU/core configuration).
|
|
31
|
+
- `workflow_run_url` — the URL of the workflow run that produced the baseline.
|
|
32
|
+
|
|
33
|
+
- Tooling MUST reject a baseline that has no sibling `baseline.provenance.json`.
|
|
34
|
+
- The rejection is a Blocking finding; the baseline must be recaptured with provenance recorded.
|
|
35
|
+
|
|
36
|
+
## Enforcement
|
|
37
|
+
|
|
38
|
+
- The validator `scripts/benchmarks/Test-BaselineProvenance.ps1` enforces both rejection conditions above and accepts a runner-captured baseline whose `ProcessorName` is a real processor and whose sibling `baseline.provenance.json` is present.
|
|
39
|
+
- The feature-review policy rule `modified-workflow-needs-green-run` (see `.agents/skills/feature-review-workflow/SKILL.md`) provides a second line of defense: a diff under `scripts/benchmarks/**` is Blocking unless a green workflow run against the branch head is present in remediation inputs.
|
|
40
|
+
|
|
41
|
+
## Scope
|
|
42
|
+
|
|
43
|
+
- This rule applies to any baseline consumed by a benchmark regression gate.
|
|
44
|
+
- It does not change which checks are required by branch protection; it constrains the provenance of the data those checks consume.
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ci-workflows
|
|
3
|
+
description: GitHub Actions PowerShell workflow authoring rules.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Converted rule
|
|
7
|
+
|
|
8
|
+
Source: legacy Claude rule `ci-workflows`.
|
|
9
|
+
|
|
10
|
+
# CI Workflow Authoring
|
|
11
|
+
|
|
12
|
+
This rule governs GitHub Actions workflow steps that run PowerShell (`pwsh`). It exists because a `pwsh` step that intentionally invoked a failing nested command left `$LASTEXITCODE == 1` after its verification logic had already succeeded, leaking a failure to GitHub Actions even though the step's intent was satisfied (issue #26, PR #30).
|
|
13
|
+
|
|
14
|
+
## Deliberately-Failing Nested Command Pattern (Required)
|
|
15
|
+
|
|
16
|
+
A workflow step whose `run:` block intentionally invokes a command expected to fail — for example a negative-path self-validation that asserts a gate catches a synthetic regression — MUST not allow the residual non-zero exit code to propagate to GitHub Actions.
|
|
17
|
+
|
|
18
|
+
For any such step, the `run:` block MUST do one of the following:
|
|
19
|
+
|
|
20
|
+
1. Reset the exit code explicitly after the expected failure:
|
|
21
|
+
```powershell
|
|
22
|
+
& ./some-tool --expect-failure
|
|
23
|
+
$LASTEXITCODE = 0
|
|
24
|
+
```
|
|
25
|
+
2. Or terminate the success path with an explicit zero exit:
|
|
26
|
+
```powershell
|
|
27
|
+
if ($verificationSucceeded) { exit 0 } else { exit 1 }
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
A `pwsh` step terminates with the exit code of the last external command unless the script explicitly resets it or calls `exit`. Negative-path verification steps therefore require an explicit reset or explicit `exit 0`.
|
|
31
|
+
|
|
32
|
+
## Rationale
|
|
33
|
+
|
|
34
|
+
- GitHub Actions interprets a step's process exit code as the step result. A leaked `$LASTEXITCODE` from an intentionally-failing nested command causes a passing verification to report failure.
|
|
35
|
+
- No local toolchain stage executes a workflow's `run:` block, so this defect is invisible to local feature-review. This textual rule is the artifact local review cites when reading workflow YAML.
|
|
36
|
+
|
|
37
|
+
## Enforcement
|
|
38
|
+
|
|
39
|
+
- Local feature-review cites this rule when reviewing diffs that add or modify `pwsh` steps with deliberately-failing nested commands.
|
|
40
|
+
- The feature-review policy rule `modified-workflow-needs-green-run` (see `.agents/skills/feature-review-workflow/SKILL.md`) requires a green workflow run against the branch head before a workflow change can merge, which exercises the exit-code path on the runner.
|
|
41
|
+
|
|
42
|
+
## Scope
|
|
43
|
+
|
|
44
|
+
- This rule applies to any workflow step whose `run:` block uses `shell: pwsh` (or the repo default `pwsh`) and intentionally invokes a failing nested command.
|
|
45
|
+
- It does not change required-check configuration or branch protection.
|
|
@@ -1,15 +1,6 @@
|
|
|
1
|
-
# Converted skill
|
|
2
|
-
|
|
3
|
-
Applied rewrites:
|
|
4
|
-
- None
|
|
5
|
-
|
|
6
1
|
---
|
|
7
2
|
name: commit-message
|
|
8
3
|
description: Generate a conventional commit message from staged Git changes following the repository's commit message conventions.
|
|
9
|
-
allowed-tools:
|
|
10
|
-
- Read
|
|
11
|
-
- "Bash(git log *)"
|
|
12
|
-
- "Bash(git diff *)"
|
|
13
4
|
---
|
|
14
5
|
|
|
15
6
|
# Commit Message Skill
|
|
@@ -26,12 +17,13 @@ Generate a single conventional commit message from staged Git changes or a provi
|
|
|
26
17
|
## Context Gathering
|
|
27
18
|
|
|
28
19
|
1. Use the supplied commit-context artifact first when present.
|
|
29
|
-
2.
|
|
20
|
+
2. When the `drm-copilot` MCP commit-context tool is available for the workflow, collect commit context through that tool and stop if the MCP call fails.
|
|
21
|
+
3. Otherwise inspect read-only staged Git state only:
|
|
30
22
|
- `git diff --cached --stat`
|
|
31
23
|
- `git diff --cached`
|
|
32
24
|
- `git diff --cached --name-only`
|
|
33
25
|
- `git log --oneline -n 20`
|
|
34
|
-
|
|
26
|
+
4. Do not infer intent from unstaged files or unrelated commit history.
|
|
35
27
|
|
|
36
28
|
## Classification
|
|
37
29
|
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
# Converted skill
|
|
2
|
-
|
|
3
|
-
Applied rewrites:
|
|
4
|
-
- None
|
|
5
|
-
|
|
6
1
|
---
|
|
7
2
|
name: csharp-change-budget-router
|
|
8
3
|
description: Budget-first routing contract for C# work: estimate production-file scope, choose small vs large path, enforce orchestration-first routing for larger changes, and use the VS Code extension command surface for promotion lifecycle steps when available.
|
|
@@ -29,7 +24,7 @@ Use this skill when:
|
|
|
29
24
|
## Orchestrated Small-Path Requirements
|
|
30
25
|
|
|
31
26
|
When routed through `csharp-orchestrator`, small path still requires lifecycle scaffolding before implementation:
|
|
32
|
-
- invoke promotion/folder lifecycle steps through `
|
|
27
|
+
- invoke promotion/folder lifecycle steps through the `drm-copilot` MCP tools required by `repo-automation-adapter`. If the MCP server or required tool is unavailable, stop before promotion,
|
|
33
28
|
- promote potential item to GitHub issue with `--work-mode minor-audit`,
|
|
34
29
|
- create active feature folder with `--work-mode minor-audit`,
|
|
35
30
|
- delegate minimal-audit plan creation to `atomic_planner` with `DIRECTIVE: MINIMAL-AUDIT PLAN REQUIRED`,
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
# Converted skill
|
|
2
|
-
|
|
3
|
-
Applied rewrites:
|
|
4
|
-
- Rewrite Claude skill paths to shared skill paths.
|
|
5
|
-
|
|
6
1
|
---
|
|
7
2
|
name: csharp-qa-gate
|
|
8
3
|
description: Final QA gate for C# changes. Executes the full CSharpier -> .NET Analyzers -> Nullable Analysis -> MSTest toolchain, compares against a captured baseline, enforces zero-regression deltas, and produces the required reporting block before the agent declares the change complete.
|
|
@@ -1,8 +1,3 @@
|
|
|
1
|
-
# Converted skill
|
|
2
|
-
|
|
3
|
-
Applied rewrites:
|
|
4
|
-
- None
|
|
5
|
-
|
|
6
1
|
---
|
|
7
2
|
name: evidence-and-timestamp-conventions
|
|
8
3
|
description: 'Evidence storage and timestamp naming conventions for audits and remediation. Use when storing baseline/regression/QA evidence or naming audit artifacts with ISO-8601 timestamps.'
|
|
@@ -1,20 +1,11 @@
|
|
|
1
|
-
# Converted skill
|
|
2
|
-
|
|
3
|
-
Applied rewrites:
|
|
4
|
-
- Rewrite Claude agent manifest paths to Codex agent paths.
|
|
5
|
-
- Rewrite remaining VS Code command IDs to semantic MCP tool usage.
|
|
6
|
-
|
|
7
1
|
---
|
|
8
2
|
name: execute-hard-lock
|
|
9
|
-
description: Place the session in atomic execution mode bound to a specific plan-of-record. Resolves the hard-lock prompt via the
|
|
10
|
-
allowed-tools:
|
|
11
|
-
- mcp__drmCopilotExtension__resolve_execute_hard_lock_prompt
|
|
12
|
-
- Read
|
|
3
|
+
description: Place the session in atomic execution mode bound to a specific plan-of-record. Resolves the hard-lock prompt via the drm-copilot MCP tool, then delegates to the atomic-executor subagent with the resolved text. Use when a caller provides ${plan-path} and ${work-mode} and requires strict plan-following behavior.
|
|
13
4
|
---
|
|
14
5
|
|
|
15
6
|
# Execute Hard Lock
|
|
16
7
|
|
|
17
|
-
Thin wrapper that resolves the hard-lock prompt via the
|
|
8
|
+
Thin wrapper that resolves the hard-lock prompt via the drm-copilot MCP tool and hands the resolved text to the `atomic-executor` subagent as kickoff directives. The resolved prompt is the authoritative instruction set for the session; this skill does not duplicate its contents.
|
|
18
9
|
|
|
19
10
|
## When to Use This Skill
|
|
20
11
|
|
|
@@ -22,7 +13,7 @@ Use this skill when:
|
|
|
22
13
|
|
|
23
14
|
- The caller provides an explicit plan file path (`${plan-path}`) and a selected work mode (`${work-mode}`).
|
|
24
15
|
- Strict plan-following behavior is required (no replanning, no reordering, no bucket tasks).
|
|
25
|
-
- The
|
|
16
|
+
- The drm-copilot MCP server is registered and reachable.
|
|
26
17
|
|
|
27
18
|
## Inputs
|
|
28
19
|
|
|
@@ -37,7 +28,7 @@ Required:
|
|
|
37
28
|
|
|
38
29
|
Call the extension's resolver as the first action:
|
|
39
30
|
|
|
40
|
-
- Tool: `
|
|
31
|
+
- Tool: `mcp__drm-copilot__resolve_execute_hard_lock_prompt`
|
|
41
32
|
- Parameters:
|
|
42
33
|
- `target` (required): the plan-of-record path (`${plan-path}`).
|
|
43
34
|
- `workspace_root` (optional): the workspace root. Omit to default to the current working directory.
|
|
@@ -50,7 +41,7 @@ Use the `Read` tool on the path returned in `artifacts[0]`. Treat the file conte
|
|
|
50
41
|
|
|
51
42
|
### 3. Delegate to atomic-executor
|
|
52
43
|
|
|
53
|
-
|
|
44
|
+
Spawn the `atomic-executor` subagent from `.codex/agents/atomic-executor.toml`. Pass the resolved prompt text as the subagent's kickoff directive, followed by `${plan-path}` and `${work-mode}` as session context. If the `atomic-executor` agent is unavailable, stop with `BLOCKED: execute-hard-lock spawn_agent_unavailable`.
|
|
54
45
|
|
|
55
46
|
The resolved prompt itself already instructs the subagent to perform the mandatory read-proof (`git rev-parse HEAD`, SHA-256 of the plan file, unchecked-task count), preflight validation, and `READY TO BEGIN FROM [P#-T#]` handshake before executing any task. This skill does not reissue those instructions locally — doing so would risk divergence from the canonical template.
|
|
56
47
|
|
|
@@ -67,8 +58,8 @@ Stop immediately and report `BLOCKED: execute-hard-lock <cause>` in any of these
|
|
|
67
58
|
|
|
68
59
|
The three entry points below all produce the same resolved hard-lock prompt for a given plan path. This skill always uses the MCP form:
|
|
69
60
|
|
|
70
|
-
- MCP (used by this skill): `
|
|
71
|
-
- VS Code command: `@command:
|
|
61
|
+
- MCP (used by this skill): `mcp__drm-copilot__resolve_execute_hard_lock_prompt` with `target=<plan-path>`. The extension passes `--output artifacts/hard_lock_prompt.txt` and `--quiet` to the bundled Python resolver.
|
|
62
|
+
- VS Code command: `@command:mcp__drm-copilot__resolve_execute_hard_lock_prompt` (interactive; writes to stdout + clipboard, no file artifact).
|
|
72
63
|
|
|
73
64
|
## Delegation Contract
|
|
74
65
|
|
|
@@ -84,5 +75,5 @@ The `atomic-executor` subagent at [.codex/agents/atomic-executor.toml](.codex/ag
|
|
|
84
75
|
- Do not proceed without a successful MCP resolver response AND a successful `Read` of the artifact.
|
|
85
76
|
- Do not reconstruct the hard-lock contract from any other source (not from this file nor from prior session memory).
|
|
86
77
|
- Do not modify the resolved prompt text before passing it to `atomic-executor`.
|
|
87
|
-
- Do not replan, reorder, or add tasks at this layer
|
|
78
|
+
- Do not replan, reorder, or add tasks at this layer. The subagent owns that contract.
|
|
88
79
|
- Do not create or read secrets unless explicitly authorized.
|