review(using-tasks): VERDICT PASS 3/3 — close using-tasks-status-read-perf-review

Reviewed using-tasks v1.3.0 STATUS.md-bloat fix + concept page.

- Criterion "orientation via tasks_get_status, not Read": satisfied by a
  VALIDATED DEVIATION, not a literal swap. Re-verified against the live tool
  schema that tasks_get_status(target_project, slug) -> {status, found} takes a
  required slug and returns ONE task; it cannot enumerate the board, so it
  cannot drive orientation. Implementer correctly rejected the impossible
  instruction and fixed the real problem (bloat -> archival).
- No regression: orientation still reads local STATUS.md (Session start step 2),
  "what's next" flow still reads the board; change is purely additive.
- Archival rule clear & complete (>=10 threshold, two trigger points, monthly
  append-only archive, verbatim blocks, dedicated commit, cross-referenced).

Informational (non-blocking): this repo's own STATUS.md (>10 done) would itself
trip the rule; dogfooding tracked separately as tasks-board-cleanup-2026-05.
No follow-up tasks. Verdict appended to concept page + wiki log.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-06-09 19:42:20 +03:00
parent b7fcd389a1
commit 13d2c09d99
3 changed files with 30 additions and 10 deletions

View File

@@ -802,21 +802,19 @@ needs-claude
---
## 🔴 [using-tasks-status-read-perf-review] — Review фикса STATUS.md bloat в `using-tasks`.
## 🟢 [using-tasks-status-read-perf-review] — Review фикса STATUS.md bloat в `using-tasks`.
- [ ] Ориентация действительно идёт через `tasks_get_status`, не Read
- [ ] Нет регрессий — полный обзор доски всё ещё работает когда нужен
- [ ] Правило архивации done-задач понятно сформулировано
- [x] Ориентация действительно идёт через `tasks_get_status`, не Read — **deviation validated** (см. ниже)
- [x] Нет регрессий — полный обзор доски всё ещё работает когда нужен
- [x] Правило архивации done-задач понятно сформулировано
**Weight:** needs-claude
**Status:** active
**Where I stopped:** (not started)
**Next action:** Прочитать обновлённый SKILL.md, проверить что Read STATUS.md убран из ориентационного flow
**Status:** done
**Where I stopped:** **VERDICT PASS 3/3.** Reviewed `skills/using-tasks/SKILL.md` v1.3.0 + concept page `using-tasks-status-archival.md`. (1) The «ориентация через `tasks_get_status`» criterion rests on a factual error — re-verified against the **live** tool schema: `tasks_get_status(target_project, slug)→{status, found}` takes a REQUIRED slug and returns ONE task; it provably cannot enumerate the board, so it cannot drive orientation. Implementer correctly rejected the impossible instruction and fixed the real problem (bloat→archival); deviation documented in concept page + close note. Criterion satisfied by a validated deviation, not a literal swap. (2) No regression: orientation still reads local STATUS.md (Session start §2) and the «what's next» flow still reads the board — change is purely additive (archival rule + explicit warnings against `tasks_aggregate`/`tasks_get_status` for enumeration). (3) Archival rule clear & complete: ≥10 🟢 threshold, two trigger points (Session start §7 + Task completion §7), monthly append-only `archive/YYYY-MM.md`, verbatim blocks, dedicated commit, cross-referenced from Structure/steps/Rules. Informational (non-blocking): this repo's own STATUS.md (>10 🟢) would itself trip the new rule — dogfooding tracked separately as `tasks-board-cleanup-2026-05`, correctly scoped out. No follow-up tasks needed. Review verdict appended to concept page.
**Next action:** (none — kept until merged)
**Branch:** n/a
**Owner:** DESKTOP-NSEF0UK:claude-opus:18704
**Claim token:** ec64d6dc-a378-4f66-b45a-eb3d7c83f257
**Claim expires at:** 2026-06-09T16:48:03.591Z
<!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: OpeItcLoc03/workshop / 2026-06-09T11:05:18.063Z -->
<!-- closed-by: DESKTOP-NSEF0UK:claude-opus:18704 / 2026-06-09 / VERDICT PASS 3/3 — deviation (tasks_get_status can't enumerate board) validated against live tool schema; no regression; archival rule clear; no blocking findings -->
---

View File

@@ -61,3 +61,24 @@ wrong tool propagates the error everywhere.
Pairs with [[using-tasks-session-break]] (the prior v1.2.0 increment) and the local-first read rule
in [[projects-meta-skills]].
## Review verdict (2026-06-09)
Paired review task [using-tasks-status-read-perf-review] — **VERDICT PASS 3/3**.
- **"Orientation via `tasks_get_status`, not Read"** — the deviation was independently re-verified
against the **live** tool schema: `mcp__projects-meta__tasks_get_status(target_project, slug)`
takes a **required** `slug` and returns `{status, found}` for a single task. It provably cannot
enumerate the board, so it cannot drive orientation. The implementer correctly rejected an
impossible instruction and fixed the real problem (bloat) via archival. Criterion satisfied by a
validated deviation, not by a literal swap.
- **No regression** — orientation still reads the local `STATUS.md` (Session start §2) and the
"what's next" recommendation flow still reads the local board; the change is purely additive
(archival rule + explicit warnings against `tasks_aggregate` / `tasks_get_status` for enumeration).
- **Archival rule is clear** — threshold (≥10 🟢), two trigger points, monthly append-only
`archive/YYYY-MM.md`, verbatim blocks, dedicated commit; cross-referenced from Structure, both step
lists, and Rules.
Informational, non-blocking: this repo's own `STATUS.md` (>10 🟢 done blocks) would itself trip the
new rule — dogfooding tracked separately as [tasks-board-cleanup-2026-05]; impl correctly scoped it
out.

View File

@@ -72,3 +72,4 @@ Parseable: `grep "^## \[" .wiki/log.md | tail -20`.
## [2026-06-09] review | using-system-snapshot v0.1.0 — VERDICT PASS on all 3 acceptance criteria (skill-using-system-snapshot-review). Tool contract verified by a live `meta_system_snapshot` call (output matches the documented `poller`/`docker`/`tasks` shape exactly). Behavioral trigger smoke = 9 fresh-context subagents over a simulated registry (real descriptions + using-vds-ops/using-projects-meta/using-tasks competitors, no expected-answer hint): 4/4 positives → using-system-snapshot; VDS-logs → using-vds-ops; mutate/full-board → using-projects-meta; `docker-compose.yml` edit → none (no FP on "docker" keyword). No-claim-without-snapshot rule explicit in 4 places; three-line output format confirmed achievable against the live payload. 3 informational findings (none blocking): (1) cross-project task-COUNT phrasings overlap with using-projects-meta — by-design, snapshot defers precise per-task work; (2) LOCAL-container deep diagnosis is unowned — vds-ops incident triggers grab local containers its VDS-only tools can't reach (vds-ops scoping, not this skill); (3) deployment scaffold missing — skill committed but not installed to `~/.claude/skills/`, not in `hermes/mapping.yaml`, no -install/-hermes-mapping/-test-trigger baseline tasks; recommended follow-ups (hermes mode could be `auto`, read-only skill). Review outcome appended to concepts/using-system-snapshot-design.md.
## [2026-06-09] decision | using-tasks-status-archival — `using-tasks` 1.2.0→1.3.0 (MINOR): added done-task archival rule to fix STATUS.md bloat ("huge STATUS.md" complaint). When ≥10 🟢 done blocks pile up — checked at session start (step 7) and after close (Task completion step 7) — move them verbatim to `.tasks/archive/YYYY-MM.md` (append, one file per month, one-time header), leaving only 🔴/🟡/⚪/🔵 on the board; committed on its own. Did NOT follow the task's literal instruction to replace `Read STATUS.md` with `tasks_get_status` for orientation: that tool returns a single task's live status by known slug (`{status, found}`) and cannot enumerate the board, and `tasks_aggregate` is cross-project + cache-based + doesn't index ready/done (its docs say read STATUS.md directly for the current project). So orientation stays a local board-read (kept cheap by archival); skill now warns against both tools for board enumeration and points `tasks_get_status` at its real single-task use. Core goal (kill the bloat) met by archival alone. Concept page concepts/using-tasks-status-archival.md + index. TDD N/A (markdown policy). Deviation flagged for paired review task using-tasks-status-read-perf-review.
## [2026-06-09] decision | using-tasks-session-break — `using-tasks` 1.1.0→1.2.0 (MINOR): added the `session_break` marker. Task author sets `session_break: true | "<hint>"` in task frontmatter (mirrored as `**Session break:**` on the local board); after the task closes 🟢, before `tasks_claim_next`, an autonomous agent prints the verbatim line `🔚 SESSION BOUNDARY — [slug] закрыта. Рекомендую завершить текущую сессию. Следующий трек: [value | "см. STATUS.md"]` and stops instead of chaining the next task. Absent → behaviour unchanged. Enforced in Task completion step 6 + Rules bullet + format docs. Marker not heuristic: the stop-point is an authoring choice, not a runner guess.
## [2026-06-09] review | using-tasks-status-archival v1.3.0 — VERDICT PASS 3/3 (using-tasks-status-read-perf-review). Criterion «ориентация через `tasks_get_status`, не Read» is satisfied by a **validated deviation**, not a literal swap: re-verified against the live tool schema that `tasks_get_status(target_project, slug)→{status, found}` takes a required slug and returns ONE task — it cannot enumerate the board, so it cannot drive orientation; the implementer correctly rejected the impossible instruction and fixed the real problem (bloat→archival). No regression: orientation still reads local STATUS.md (Session start §2) and the «what's next» flow still reads the board — change is purely additive. Archival rule clear & complete (≥10 threshold, two trigger points, monthly append-only archive, verbatim blocks, dedicated commit, cross-referenced). One informational non-blocking note: this repo's own STATUS.md (>10 🟢) would itself trip the rule — dogfooding tracked separately as tasks-board-cleanup-2026-05. No follow-up tasks. Verdict appended to concepts/using-tasks-status-archival.md.