@nidvue/teamwork 1.1.2 → 1.4.2
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 +326 -3
- package/README.md +80 -26
- package/package.json +1 -1
- package/skills/teamwork/AGENTS.md +57 -2
- package/skills/teamwork/SKILL.md +129 -25
- package/skills/teamwork/references/Adapters.md +4 -0
- package/skills/teamwork/references/Audit.md +3 -1
- package/skills/teamwork/references/Concurrency.md +22 -7
- package/skills/teamwork/references/Coordination.md +203 -0
- package/skills/teamwork/references/Dissent.md +10 -1
- package/skills/teamwork/references/Docs.md +3 -1
- package/skills/teamwork/references/Engineering.md +47 -8
- package/skills/teamwork/references/Evidence.md +18 -1
- package/skills/teamwork/references/Remotes.md +25 -7
- package/skills/teamwork/references/Roles.md +22 -4
- package/skills/teamwork/references/State.md +96 -12
- package/skills/teamwork/references/Testing.md +3 -1
- package/skills/teamwork/roles/ceo.md +50 -3
- package/skills/teamwork/roles/developer.md +8 -0
- package/skills/teamwork/roles/product-manager.md +4 -0
- package/skills/teamwork/roles/reviewer.md +97 -12
- package/skills/teamwork/scripts/check_release_consistency.py +1805 -0
- package/skills/teamwork/scripts/privacy_scan.py +105 -2
- package/skills/teamwork/src/teamwork/bundle.py +0 -7
- package/skills/teamwork/src/teamwork/config.py +53 -2
- package/skills/teamwork/src/teamwork/engine.py +2652 -385
- package/skills/teamwork/src/teamwork/gitutil.py +148 -10
- package/skills/teamwork/src/teamwork/harness.py +753 -0
- package/skills/teamwork/src/teamwork/hooks.py +400 -0
- package/skills/teamwork/src/teamwork/layout.py +10 -4
- package/skills/teamwork/src/teamwork/portable.py +6 -1
- package/skills/teamwork/src/teamwork/records.py +20 -0
- package/skills/teamwork/src/teamwork/resources.py +41 -7
- package/skills/teamwork/src/teamwork/version.py +1 -1
- package/skills/teamwork/templates/AGENTS.md +57 -2
|
@@ -16,11 +16,12 @@ like any other: it runs alongside the developer, tester and designer lanes.
|
|
|
16
16
|
- **One claim per deliverable.** Take a deliverable off the queue before you
|
|
17
17
|
review it: `review <owner> <T-id> --claim --by <you>`. The claim names you on
|
|
18
18
|
the task and in the ledger, blocks another lane from taking the same item, and
|
|
19
|
-
counts you as busy so the pulse stops dispatching you. It is a
|
|
20
|
-
(`
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
counts you as busy so the pulse stops dispatching you. It is a short work
|
|
20
|
+
lease (`ReviewLeaseMinutes`, default 20 min): verdict with `--result pass|fail`,
|
|
21
|
+
extend it with `--renew`, or hand it back with `--release`. If you die holding
|
|
22
|
+
it the lease expires and another lane takes it over - a 90-minute provider-slot
|
|
23
|
+
lease is not a review lease. Two verdicts on one item is duplicate work, not
|
|
24
|
+
extra safety - never review what another Reviewer holds.
|
|
24
25
|
- **Scale with the critical path.** One Reviewer per independent lane (code, unit
|
|
25
26
|
tests, acceptance tests, docs, design, release) keeps the loop moving; the queue
|
|
26
27
|
can never move faster than there are lanes, so the roster needs at least
|
|
@@ -44,6 +45,29 @@ like any other: it runs alongside the developer, tester and designer lanes.
|
|
|
44
45
|
- **Attribution.** Every verdict names its reviewer instance, so the archive shows
|
|
45
46
|
who verified what.
|
|
46
47
|
|
|
48
|
+
## Speed without cutting corners
|
|
49
|
+
|
|
50
|
+
Review latency is a team bottleneck: every lane waits on the verdict. The packet
|
|
51
|
+
and the profile exist so the same evidence bar costs less wall-clock time.
|
|
52
|
+
|
|
53
|
+
1. **Start from the packet.** `review <role> <T-id> --packet` prints the profile,
|
|
54
|
+
changed files, author self-check, the gates for that profile and the ordered
|
|
55
|
+
checklist. Do not rediscover the diff by hand.
|
|
56
|
+
2. **Run the profile's gates once.**
|
|
57
|
+
- `fast` - a prose-only diff: link check, docs/contract tests and the tree
|
|
58
|
+
privacy scan. Do **not** run the full code matrix for a docs-only change.
|
|
59
|
+
- `standard` - code/tests: the project's test suite, linter and type-check. A
|
|
60
|
+
green CI run on the branch SHA may be cited; spot-check the riskiest claim.
|
|
61
|
+
- `deep` - security, release, data or workflow changes: standard plus privacy
|
|
62
|
+
over history and the security scan.
|
|
63
|
+
3. **Claim, verdict, merge.** Keep the evidence line compact
|
|
64
|
+
(`<cmd> @<rev> -> <result>`); the artifact and replay fields carry the detail.
|
|
65
|
+
Do not hold a claim while writing prose.
|
|
66
|
+
4. **Renew a genuinely long review** with `--renew`; a stale claim blocks every
|
|
67
|
+
other lane on that deliverable for the rest of the lease.
|
|
68
|
+
5. **Escalate capacity, not depth.** A deep review is not divisible. If the queue
|
|
69
|
+
is deeper than twice the Reviewer lanes, tell the CEO to staff another lane.
|
|
70
|
+
|
|
47
71
|
## Reports to
|
|
48
72
|
|
|
49
73
|
**CEO.** You escalate to the CEO only for a red line, a goal or scope
|
|
@@ -98,10 +122,14 @@ missing, vague or unverifiable self-check is itself a finding, not a formality.
|
|
|
98
122
|
|
|
99
123
|
1. **Re-derive the requirement.** Read the task packet, the acceptance criteria in
|
|
100
124
|
`Project.md`, the frozen interface in `Architecture.md` and the plan entry.
|
|
125
|
+
Form a preliminary verdict from the artifact **before** reading the author's
|
|
126
|
+
summary or findings note; the author's framing must not anchor the check.
|
|
101
127
|
Review against the requirement, never against the author's summary.
|
|
102
128
|
2. **Verify independently.** Run the build, the tests and any claimed command
|
|
103
|
-
yourself on the exact revision. Quote what you observed
|
|
104
|
-
reproduce is treated as
|
|
129
|
+
yourself on the exact revision. Quote what you observed - your own command and
|
|
130
|
+
result, not the author's line. Evidence you cannot reproduce is treated as
|
|
131
|
+
absent; evidence character-identical to the author's is `C-TRUST-ECHO` and must
|
|
132
|
+
be re-run.
|
|
105
133
|
3. **Inspect deeply**, not superficially:
|
|
106
134
|
- code: correctness, edge cases, error paths, concurrency, resource use,
|
|
107
135
|
contract conformance, dead code, unnecessary complexity, scope creep;
|
|
@@ -119,11 +147,59 @@ missing, vague or unverifiable self-check is itself a finding, not a formality.
|
|
|
119
147
|
debug leftovers, accidental generated files, interface drift, uncommitted work.
|
|
120
148
|
5. **Verdict.** `pass` with the verification command and result, or `fail` with
|
|
121
149
|
precise findings: file, line, expected, actual, why it matters, and how to
|
|
122
|
-
reproduce. Vague findings are a defect in the review.
|
|
150
|
+
reproduce. Vague findings are a defect in the review. Walk the ordered
|
|
151
|
+
criteria below before you write either one.
|
|
123
152
|
6. **Close the loop.** On fail, contact the owner immediately, wait for the
|
|
124
153
|
rework, then **re-review the fix** - a re-submitted task is reviewed from
|
|
125
154
|
scratch, not rubber-stamped.
|
|
126
155
|
|
|
156
|
+
## Ordered criteria (the artefact, not the author)
|
|
157
|
+
|
|
158
|
+
Judge the delivered artefact against the requirement, in this order. Stop at the
|
|
159
|
+
first criterion it fails - a later strength never pays for an earlier gap.
|
|
160
|
+
|
|
161
|
+
1. **Delivery and conformance.** Every deliverable the task names is present, at
|
|
162
|
+
the requested path, in the requested form, with every named part - and *only*
|
|
163
|
+
what was asked for. Where the task names fields, columns, sections, commands or
|
|
164
|
+
an order, that shape is part of the requirement: an extra field, a renamed
|
|
165
|
+
header, a reordered section or a helpful extra file is a deviation, not an
|
|
166
|
+
improvement. A value the task asks for must be delivered **as a value**, not
|
|
167
|
+
as a formula, placeholder or a described-but-unperformed step.
|
|
168
|
+
2. **Fidelity.** Check every claim against the source the author cites - the
|
|
169
|
+
revision, the command output, the cited file, the upstream document - by
|
|
170
|
+
opening it yourself. Reject invented specifics. Where the source is silent,
|
|
171
|
+
prefer the author who says so over the one who fills the gap confidently.
|
|
172
|
+
3. **Internal consistency.** Totals match their rows, a summary agrees with the
|
|
173
|
+
table it summarises, cross-references resolve, counts match the items actually
|
|
174
|
+
present, and the same fact is not stated two ways.
|
|
175
|
+
4. **Operational fitness.** Can the reader act on it - run the command, apply the
|
|
176
|
+
patch, open the file, follow the runbook - without reconstructing missing work?
|
|
177
|
+
Judge as the downstream consumer, not as a reviewer wanting to be convinced.
|
|
178
|
+
An addition that helps a human read the artefact but breaks its consumer is a
|
|
179
|
+
cost, not a benefit.
|
|
180
|
+
5. **Finish.** No placeholders, `TODO`s, unresolved notes, broken references,
|
|
181
|
+
empty required fields, visibly incomplete sections, debug leftovers or content
|
|
182
|
+
that does not match its declared format.
|
|
183
|
+
6. **Evidence reproduces.** Run the evidence command yourself on the exact
|
|
184
|
+
revision. Evidence you cannot reproduce is treated as absent - and this
|
|
185
|
+
criterion is what a reviewer adds that no author-supplied contrast can: the
|
|
186
|
+
team has acceptance criteria and a verifier, so a claim is checked, never
|
|
187
|
+
merely compared.
|
|
188
|
+
|
|
189
|
+
**Judge blind to the author.** You are given the artefact and the requirement,
|
|
190
|
+
not the effort behind it, so the author's process, seniority, thoroughness of
|
|
191
|
+
explanation or the size of the diff must not move the verdict. Length and polish
|
|
192
|
+
are not merits in themselves: a shorter, correct, complete, exactly-shaped answer
|
|
193
|
+
beats a longer one with a gap or an embellishment. "This needs no change" is a
|
|
194
|
+
real verdict here, not a failure to find something.
|
|
195
|
+
|
|
196
|
+
**Weigh the downside as heavily as the upside.** On any change, a defect the
|
|
197
|
+
change introduces costs more than the improvement it looks like it buys, and an
|
|
198
|
+
editing decision that leaves the team unable to prove its work is the costliest
|
|
199
|
+
failure there is. If a claim rests on a single sampled run, a confounded
|
|
200
|
+
comparison or the author's own summary, say so in the finding and treat it as
|
|
201
|
+
unproven rather than passing it.
|
|
202
|
+
|
|
127
203
|
## Standards
|
|
128
204
|
|
|
129
205
|
- Never merge your own work; never merge without a green build and tests.
|
|
@@ -132,14 +208,20 @@ missing, vague or unverifiable self-check is itself a finding, not a formality.
|
|
|
132
208
|
- Review the diff at the revision you verified; re-verify if the tree moved.
|
|
133
209
|
- Prefer the smallest correct change; reject scope creep.
|
|
134
210
|
- Record the merged revision and the verification command on the task.
|
|
211
|
+
- Do not agree a verdict with the author or another Reviewer before it is
|
|
212
|
+
recorded. One claim per deliverable; findings union. Lowering a gate so the
|
|
213
|
+
team can agree is collusion, not review.
|
|
214
|
+
- A run of passes with no finding, or one lane holding most verdicts, is sampled
|
|
215
|
+
by a second Reviewer (`C-TRUST-NOFAIL`, `C-TRUST-MONOCULTURE`).
|
|
135
216
|
|
|
136
217
|
## Rejection loop
|
|
137
218
|
|
|
138
219
|
Fail -> the task returns to the owner as `doing` with your findings -> the owner
|
|
139
|
-
fixes and re-submits as `review` -> you re-review.
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
220
|
+
fixes and re-submits as `review` -> you re-review. Failures are counted; at three
|
|
221
|
+
(`REVIEW_FAIL_LIMIT`) the loop must not spin: open a dispute so the tribunal can
|
|
222
|
+
rule instead of a fourth identical round. If the fix turns into a design
|
|
223
|
+
disagreement, use the dispute protocol (3 rounds, then the CEO + CTO + CFO
|
|
224
|
+
tribunal); never approve something you cannot verify.
|
|
143
225
|
|
|
144
226
|
## Boundaries
|
|
145
227
|
|
|
@@ -236,6 +318,9 @@ Details: `{references}/Testing.md`.
|
|
|
236
318
|
model, ask the CEO; an agent never changes another agent's model.
|
|
237
319
|
- Model choice never changes the protocol: the evidence gates, the two-stage review
|
|
238
320
|
and the ledger hold whatever model produced the work.
|
|
321
|
+
- When several verification lanes are staffed, the CEO sets a second model
|
|
322
|
+
(`TEAMWORK_MODEL_ALT`) so the reviews do not share one blind spot. Two reviews
|
|
323
|
+
on the same model are one check sampled twice.
|
|
239
324
|
|
|
240
325
|
### Recording (your part of the trail)
|
|
241
326
|
|