agentme 0.36.0 → 0.37.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.
Files changed (56) hide show
  1. package/.filedist-package.yml +1 -1
  2. package/.xdrs/agentme/bdrs/index.md +2 -1
  3. package/.xdrs/agentme/bdrs/operations/{401-epic-feature-story-planning.md → 401-plan-epic-feature-story.md} +2 -2
  4. package/.xdrs/agentme/bdrs/operations/402-digital-product-roles.md +15 -19
  5. package/.xdrs/agentme/bdrs/operations/403-product-team-composition.md +3 -0
  6. package/.xdrs/agentme/bdrs/operations/404-team-roles-and-specialists.md +61 -82
  7. package/.xdrs/agentme/bdrs/operations/405-digital-product-roles-raci.md +131 -0
  8. package/.xdrs/agentme/bdrs/principles/002-okr-framework.md +1 -1
  9. package/.xdrs/agentme/bdrs/principles/003-product-delivery-value-flow.md +3 -2
  10. package/.xdrs/agentme/edrs/application/101-javascript-project-tooling.md +1 -1
  11. package/.xdrs/agentme/edrs/application/102-golang-project-tooling.md +1 -1
  12. package/.xdrs/agentme/edrs/application/103-python-project-tooling.md +1 -1
  13. package/.xdrs/agentme/edrs/application/127-external-system-adapter-skills.md +2 -0
  14. package/.xdrs/agentme/edrs/application/skills/{251-azure-devops-connector → azure-devops-connector}/SKILL.md +6 -9
  15. package/.xdrs/agentme/edrs/application/skills/{251-azure-devops-connector → azure-devops-connector}/SKILL.test.md +1 -1
  16. package/.xdrs/agentme/edrs/application/skills/{051-create-golang-project → create-golang-project}/SKILL.md +1 -1
  17. package/.xdrs/agentme/edrs/application/skills/create-golang-project/SKILL.test.md +72 -0
  18. package/.xdrs/agentme/edrs/application/skills/{050-create-javascript-project → create-javascript-project}/SKILL.md +23 -24
  19. package/.xdrs/agentme/edrs/application/skills/create-javascript-project/SKILL.test.md +72 -0
  20. package/.xdrs/agentme/edrs/application/skills/{052-create-python-project → create-python-project}/SKILL.md +1 -1
  21. package/.xdrs/agentme/edrs/application/skills/create-python-project/SKILL.test.md +79 -0
  22. package/.xdrs/agentme/edrs/application/skills/{250-github-connector → github-connector}/SKILL.md +5 -8
  23. package/.xdrs/agentme/edrs/application/skills/{250-github-connector → github-connector}/SKILL.test.md +1 -1
  24. package/.xdrs/agentme/edrs/application/skills/{200-run-skill-tests → run-skill-tests}/SKILL.md +4 -4
  25. package/.xdrs/agentme/edrs/application/skills/{200-run-skill-tests → run-skill-tests}/SKILL.test.md +7 -7
  26. package/.xdrs/agentme/edrs/application/skills/{010-select-relevant-xdrs → select-relevant-xdrs}/SKILL.md +1 -1
  27. package/.xdrs/agentme/edrs/application/skills/select-relevant-xdrs/SKILL.test.md +73 -0
  28. package/.xdrs/agentme/edrs/governance/502-contributing-guide-requirements.md +1 -1
  29. package/.xdrs/agentme/edrs/index.md +16 -11
  30. package/.xdrs/agentme/edrs/operations/402-dora-metrics-framework.md +82 -0
  31. package/.xdrs/agentme/edrs/operations/403-dora-deployment-frequency.md +37 -0
  32. package/.xdrs/agentme/edrs/operations/404-dora-lead-time-for-changes.md +41 -0
  33. package/.xdrs/agentme/edrs/operations/405-dora-change-failure-rate.md +42 -0
  34. package/.xdrs/agentme/edrs/operations/406-dora-time-to-restore-service.md +42 -0
  35. package/.xdrs/agentme/edrs/platform/301-monorepo-structure.md +1 -1
  36. package/.xdrs/agentme/edrs/platform/skills/{053-monorepo-setup → monorepo-setup}/SKILL.md +15 -15
  37. package/.xdrs/agentme/edrs/platform/skills/monorepo-setup/SKILL.test.md +80 -0
  38. package/.xdrs/agentme/edrs/principles/012-continuous-xdr-enrichment.md +1 -1
  39. package/.xdrs/agentme/edrs/principles/017-skill-testing.md +4 -4
  40. package/.xdrs/agentme/edrs/principles/articles/001-continuous-xdr-improvement.md +1 -1
  41. package/.xdrs/agentme/edrs/principles/skills/{150-refine-plan-mode → refine-plan-mode}/SKILL.md +2 -8
  42. package/.xdrs/agentme/edrs/principles/skills/{150-refine-plan-mode → refine-plan-mode}/SKILL.test.md +2 -2
  43. package/.xdrs/agentme/edrs/principles/skills/{151-refine-user-story → refine-user-story}/SKILL.md +4 -11
  44. package/.xdrs/agentme/edrs/principles/skills/{151-refine-user-story → refine-user-story}/SKILL.test.md +17 -17
  45. package/.xdrs/agentme/edrs/principles/skills/{400-pr-owner-assistant → resolve-pr-comments}/Makefile +1 -1
  46. package/.xdrs/agentme/edrs/principles/skills/resolve-pr-comments/SKILL.md +662 -0
  47. package/.xdrs/agentme/edrs/principles/skills/resolve-pr-comments/SKILL.test.md +165 -0
  48. package/.xdrs/agentme/edrs/principles/skills/{400-pr-owner-assistant → resolve-pr-comments}/scripts/post-replies-azure-devops.js +3 -3
  49. package/.xdrs/agentme/edrs/principles/skills/{400-pr-owner-assistant → resolve-pr-comments}/scripts/post-replies-azure-devops.test.js +5 -5
  50. package/.xdrs/agentme/edrs/principles/skills/{400-pr-owner-assistant → resolve-pr-comments}/scripts/post-replies-github.js +3 -3
  51. package/.xdrs/agentme/edrs/principles/skills/{400-pr-owner-assistant → resolve-pr-comments}/scripts/post-replies-github.test.js +4 -4
  52. package/.xdrs/agentme/edrs/principles/skills/{400-pr-owner-assistant → resolve-pr-comments}/scripts/update-section.js +84 -3
  53. package/.xdrs/agentme/edrs/principles/skills/{400-pr-owner-assistant → resolve-pr-comments}/scripts/update-section.test.js +108 -1
  54. package/package.json +2 -2
  55. package/.xdrs/agentme/edrs/principles/skills/400-pr-owner-assistant/SKILL.md +0 -633
  56. package/.xdrs/agentme/edrs/principles/skills/400-pr-owner-assistant/SKILL.test.md +0 -174
@@ -1,174 +0,0 @@
1
- ---
2
- skill: 400-pr-owner-assistant
3
- skill-version: "2.3.0"
4
- ---
5
-
6
- ## Test Scenarios
7
-
8
- ### Scenario 1: End-to-end GitHub PR review, happy path
9
-
10
- **Trigger / Input**
11
-
12
- "Let's review this PR: https://github.com/acme/widgets/pull/482" (run from a clean, up to
13
- date local clone of `acme/widgets`, which has 2 open comments).
14
-
15
- **Expected Behaviour**
16
-
17
- The skill: (1) parses the URL host as `github.com` and activates `github-connector`; (2)
18
- Phase 1 fetches PR #482 metadata and every comment via the connector's read commands; (3)
19
- Phase 2 confirms the local repo matches `acme/widgets` and offers to check out the PR
20
- branch; (4) Phase 3 creates `.tmp/review-pr-482.md` with one templated section per open
21
- comment, fully populated before any question is asked -- writing the summary automatically
22
- without asking for confirmation, rendering each section's `source` field as a clickable
23
- markdown link to the matching file in the local checkout (never a provider URL),
24
- populating `source-lines` with the commented line(s) plus padding read from the checked-out
25
- file, `diff-hunk-raw` verbatim from the connector, `author-raw` verbatim from the connector,
26
- `comment-url` verbatim from the connector, `possible-user-intention` (an under-20-word,
27
- silently generated read of the author's likely concern) alongside the existing `type`, and
28
- `possible-follow-ups` (2-4 candidate next actions), and recording the verbatim comment text
29
- and any existing replies under `comment-raw`/`replies-raw`; (5) Phase 4 opens noting every
30
- drafted item is only ever sent later, during Phase 5 -- never mid-walkthrough -- then walks
31
- each of the 2 comments one at a time, rendering its full focus card (comment, code,
32
- criticality/type/possible-user-intention, possible-follow-ups) before asking the human to
33
- choose an action for that single comment; (6) for each, drafts the reply/fix text and shows
34
- the mandatory confirmation titled with the comment's short title, author, and exact reply
35
- text, persisting it as `pending-reply: drafted` once confirmed -- nothing is sent at this
36
- point; (7) Phase 5 gathers both now-drafted comments, renders a consolidated preview table
37
- (id, title, action, resolve-on-apply) followed by each row's exact draft text, runs the
38
- pre-flight commit/push gate (finding the worktree and remote already clean, so it proceeds
39
- silently), then applies both together via a single apply-all batch confirmation -- resolving
40
- comment 1's thread as requested -- and reports the final summary by action taken and send
41
- status.
42
-
43
- **Simulated Human Responses**
44
- 1. "Yes, check out the PR branch."
45
- 2. "For comment 1: confirm criticality, action = reply. Yes, resolve the thread once
46
- applied." (accepts the drafted text unedited)
47
- 3. "For comment 2: confirm criticality, action = fix. Use this reply text instead:
48
- 'Renamed per your suggestion, thanks!'" (replaces the drafted text with free text)
49
- 4. (Phase 5) "Apply all now."
50
-
51
- **Assertions**
52
-
53
- - [ ] Skill activates `github-connector` because the URL host is `github.com`.
54
- - [ ] Skill does not skip Phase 2 workspace validation before creating the tracking file.
55
- - [ ] Skill creates `.tmp/review-pr-482.md` with a templated section per fetched open
56
- comment only -- already-resolved comments are never recorded.
57
- - [ ] Skill fully populates every comment's section -- including `possible-follow-ups` and
58
- `diff-hunk-raw` -- before Phase 4 asks its first triage question.
59
- - [ ] Skill writes the tracking file's PR summary automatically, without asking the human to
60
- confirm or edit it first.
61
- - [ ] Skill renders each section's `source` field as a markdown link to the matching local
62
- file, relative to the tracking file's own location (file:line-range text for
63
- file-scoped comments, `(PR conversation)` text with no link otherwise) -- never a link
64
- to the provider's website.
65
- - [ ] Skill asks about exactly one comment at a time in Phase 4, never batching multiple
66
- comments' triage questions into a single ask.
67
- - [ ] Skill shows the mandatory confirmation -- titled with the comment's short title,
68
- author, and exact reply text -- before persisting each draft in Phase 4, and neither
69
- applies nor posts anything during Phase 4.
70
- - [ ] Skill persists both comments as `pending-reply: drafted` at the end of Phase 4, with
71
- neither one sent to the provider yet.
72
- - [ ] Skill's Phase 5 renders a consolidated preview table (one row per drafted comment:
73
- id, title, action, resolve-on-apply) followed by each row's exact draft text shown
74
- below the table.
75
- - [ ] Skill's Phase 5 runs the pre-flight commit/push gate and, finding the worktree and
76
- remote clean, proceeds straight to applying without asking anything about git.
77
- - [ ] Skill applies both comments' drafts together in a single apply-all batch confirmation
78
- in Phase 5, resolving comment 1's thread as requested.
79
- - [ ] Skill suffixes comment 1's reply -- accepted unedited -- with
80
- `(pr-owner-assistant skill - using defaults)` before posting it.
81
- - [ ] Skill suffixes comment 2's reply -- replaced with human-supplied free text -- with
82
- `(pr-owner-assistant skill - guided)` before posting it.
83
- - [ ] Skill records the section's original comment text under `comment-raw` and any existing
84
- thread replies under `replies-raw`, never under the old `comment`/`replies` names.
85
- - [ ] Skill populates `source-lines` with the commented line(s) padded +-3 lines, each line
86
- prefixed with its absolute line number.
87
- - [ ] Skill populates `author-raw` and `comment-url` verbatim from the connector.
88
- - [ ] Skill populates `possible-user-intention` with an under-20-word inference silently,
89
- with no dedicated confirmation prompt of its own.
90
-
91
- ### Scenario 2: Suggested-fix detection drives accept/evolve/decline framing
92
-
93
- **Trigger / Input**
94
-
95
- Phase 3 populates 3 comments, each containing a fenced `suggestion` block in `comment-raw`:
96
- comment 1 proposes a correct rename with no side effects; comment 2 proposes a fix that is
97
- right in direction but leaves an edge case unhandled; comment 3 proposes a change that would
98
- silently break an unrelated caller.
99
-
100
- **Expected Behaviour**
101
-
102
- Phase 3 extracts each `suggested-fix` verbatim from its fenced block and records a
103
- `suggested-fix-assessment` with rationale: `accept-as-is` for comment 1, `evolve-with-changes`
104
- for comment 2, `not-recommended` for comment 3. In Phase 4, each focus card renders the
105
- `suggested-fix`/`suggested-fix-assessment` pair right after `diff-hunk-raw`/`source-lines`.
106
- For comment 1, the human applies the suggestion verbatim as a `fix` with no inline code
107
- comment (the rename is self-evident, no rationale needed). For comment 2, the human applies
108
- an evolved fix that also handles the edge case, and the skill adds a short inline code
109
- comment at the changed lines explaining why the fix goes beyond the original suggestion.
110
- For comment 3, the human declines with `wontfix`, and the skill's drafted rationale
111
- explains why the suggestion isn't safe to apply, plus a short inline code comment at the
112
- affected lines pointing back to that rationale.
113
-
114
- **Simulated Human Responses**
115
- 1. "For comment 1: action = fix, apply the suggestion as-is."
116
- 2. "For comment 2: action = fix, but also handle the empty-input case the suggestion
117
- missed."
118
- 3. "For comment 3: action = wontfix -- that suggestion would break the other caller of this
119
- function."
120
-
121
- **Assertions**
122
-
123
- - [ ] Skill records a `suggested-fix` verbatim from each comment's fenced `suggestion`
124
- block, independent of which connector fetched it.
125
- - [ ] Skill records `suggested-fix-assessment: accept-as-is` for comment 1,
126
- `evolve-with-changes` for comment 2, and `not-recommended` for comment 3, each with a
127
- short rationale.
128
- - [ ] Skill renders `suggested-fix` and `suggested-fix-assessment` in the focus card right
129
- after `diff-hunk-raw`/`source-lines`, for all 3 comments.
130
- - [ ] Skill applies comment 1's fix verbatim with no added inline code comment, since the
131
- rationale is self-evident.
132
- - [ ] Skill adds a short inline code comment at comment 2's changed lines explaining why the
133
- fix evolves beyond the original suggestion.
134
- - [ ] Skill adds a short inline code comment at comment 3's affected lines explaining why
135
- the suggested fix was declined, matching the `wontfix` rationale.
136
-
137
- ### Scenario 3: Phase 5 preview table, apply-all batch, and the commit/push gate
138
-
139
- **Trigger / Input**
140
-
141
- Phase 5 begins with 3 comments at `pending-reply: drafted` (2 `reply`, 1 `fix`). The local
142
- worktree has one uncommitted change and 2 local commits not yet on the remote tracking
143
- branch. The human chooses apply-all; the connector reports a transient failure applying the
144
- 2nd item only.
145
-
146
- **Expected Behaviour**
147
-
148
- Phase 5 renders the consolidated preview table (3 rows) with each row's exact draft text
149
- shown below it, then runs the pre-flight git check. Finding both the uncommitted change and
150
- the 2 unpushed commits, it shows a reminder that other participants won't see this code
151
- until pushed, advises the human to add/commit/push manually -- never running any git command
152
- itself -- and waits for explicit confirmation before applying anything. Once confirmed, it
153
- applies item 1 successfully, hits the transient failure on item 2 (reporting it plainly
154
- without losing item 1's already-applied state), and continues on to apply item 3
155
- successfully.
156
-
157
- **Simulated Human Responses**
158
- 1. "Apply all now."
159
- 2. "I've committed and pushed -- go ahead."
160
-
161
- **Assertions**
162
-
163
- - [ ] Skill renders all 3 items in the preview table with exact draft text shown below it,
164
- before asking how to proceed.
165
- - [ ] Skill's pre-flight git check detects both the uncommitted change and the 2 unpushed
166
- local commits, and shows a reminder plus advice to add/commit/push manually.
167
- - [ ] Skill never runs `git add`, `git commit`, or `git push` itself, regardless of what the
168
- check finds.
169
- - [ ] Skill waits for explicit human confirmation after the reminder before applying any
170
- item.
171
- - [ ] Skill's mid-batch failure on item 2 does not discard or reapply item 1's
172
- already-applied result.
173
- - [ ] Skill continues on to apply item 3 after item 2's failure, and reports a per-item
174
- outcome (applied, applied, failed) at the end.