251148c3ff
## Summary - add repository-wide quality tooling and verification scaffolding, including CI workflows, pnpm workspace setup, ESLint/Prettier/markdown checks, and generated-output verification helpers - reorganize skill sources and generation flow by introducing canonical `_source` variants, generator/manifests, reusable helper abstractions, and shared web-automation/browser utilities - clean up and expand documentation so the root README flows into docs and skill docs, with clearer development, reviewer, installer, and workflow guidance ## Notable changes - docs flow and consistency cleanup across `README.md`, `docs/README.md`, and related docs - new scripts for `check`, docs verification, generated-file verification, shell portability, and safe directory replacement - refactors in Atlassian and web-automation skill runtimes to reduce duplication and centralize reusable code - changelog, development documentation, and CI surface updates ## Test Plan - [ ] `pnpm run check` - [ ] review generated/manifests and skill sync outputs - [ ] smoke-check docs flow from `README.md` to `docs/README.md` to skill docs ## Notes - this branch currently includes tracked `skills/web-automation/shared/node_modules` content that should be reviewed carefully as potentially noisy/accidental committed artifacts Co-authored-by: Stefano Fiorini <stefano.fiorini@firsthorizon.com> Reviewed-on: #1
145 lines
4.6 KiB
Markdown
145 lines
4.6 KiB
Markdown
<!-- ⚠️ GENERATED FILE – do not edit directly. Edit the canonical source in skills/do-task/_source/cursor/ and run `pnpm run sync:pi`. -->
|
||
# Task Plan: [Short Title]
|
||
|
||
> **Variant guardrail (Cursor):** Sub-skills (`brainstorming`, `test-driven-development`, `verification-before-completion`, `finishing-a-development-branch`, `using-git-worktrees`) MUST be invoked through workspace discovery from `.cursor/skills/superpowers/skills/<skill>/SKILL.md` or `~/.cursor/skills/superpowers/skills/<skill>/SKILL.md`. Reviewer invocations MUST use `--mode=ask --trust --output-format json`. `jq` is a hard prerequisite.
|
||
|
||
## Metadata
|
||
|
||
| Field | Value |
|
||
|-------|-------|
|
||
| Created | YYYY-MM-DD |
|
||
| Slug | YYYY-MM-DD-<slug> |
|
||
| Runtime | cursor |
|
||
| Reviewer CLI | codex \| claude \| cursor \| opencode \| pi |
|
||
| Reviewer Model | <model> |
|
||
| MAX_ROUNDS | 10 |
|
||
| Branch Strategy | current-branch \| worktree |
|
||
| Branch Name | <current branch name, or new branch name when worktree is used> |
|
||
| Worktree Path | <absolute path to worktree dir; blank when Branch Strategy = current-branch> |
|
||
| Status | draft |
|
||
|
||
### Status Enum (authoritative)
|
||
|
||
| Value | Meaning |
|
||
|-------|---------|
|
||
| `draft` | Newly created; plan review not yet started |
|
||
| `plan-approved` | Plan review loop returned APPROVED |
|
||
| `implementation-in-progress` | Phase 6 executing |
|
||
| `implementation-approved` | Phase 8 review loop returned APPROVED; awaiting commit |
|
||
| `pushed` | Committed + pushed to remote |
|
||
| `local-only` | Committed locally; user declined push |
|
||
| `aborted-plan-review` | MAX_ROUNDS reached in Phase 5; user aborted |
|
||
| `aborted-impl-review` | MAX_ROUNDS reached in Phase 8; user aborted |
|
||
| `aborted-verification` | Phase 7 retries exhausted; user aborted |
|
||
| `failed` | Hard tooling failure |
|
||
|
||
---
|
||
|
||
## Prompt
|
||
|
||
<!-- Exact user prompt, verbatim. -->
|
||
|
||
## Interpretation
|
||
|
||
<!-- Short restatement of goal + out-of-scope items. -->
|
||
|
||
## Assumptions
|
||
|
||
<!-- Anything we're assuming and needs confirmation. Empty list OK after clarifying questions. -->
|
||
|
||
## Files
|
||
|
||
<!-- Files expected to be created / modified / deleted. Paths are absolute or repo-relative. -->
|
||
|
||
| Action | Path | Why |
|
||
|--------|------|-----|
|
||
| | | |
|
||
|
||
## Approach
|
||
|
||
<!-- 3-10 bullets describing implementation order. -->
|
||
|
||
## TDD Approach
|
||
|
||
<!-- One of:
|
||
(a) **TDD applies** — list the failing test(s) to write first, then implementation, then confirm green.
|
||
(b) **TDD auto-skipped** — reason must be exactly one of:
|
||
- `pure-documentation`
|
||
- `pure-comment-whitespace-rename`
|
||
(c) **TDD user-approved skip** — user explicitly approved skipping TDD for this task.
|
||
Record the approval timestamp (ISO-8601) and the specific reason (e.g., `pure-config-addition`).
|
||
-->
|
||
|
||
## Acceptance Criteria
|
||
|
||
- [ ] <criterion 1>
|
||
- [ ] <criterion 2>
|
||
|
||
## Verification
|
||
|
||
<!-- Commands to run:
|
||
lint: <cmd>
|
||
typecheck: <cmd>
|
||
tests: <cmd>
|
||
-->
|
||
|
||
## Rollback
|
||
|
||
<!-- How to undo: `git revert <hash>`, or manual steps if the change is not easily revertable. -->
|
||
|
||
---
|
||
|
||
## Runtime State
|
||
|
||
<!-- Updated by the skill at runtime. Used to detect resume and to persist reviewer session IDs across rounds. -->
|
||
|
||
```yaml
|
||
plan_review_round: 0
|
||
implementation_review_round: 0
|
||
CODEX_PLAN_SESSION_ID:
|
||
CODEX_IMPL_SESSION_ID:
|
||
CURSOR_PLAN_SESSION_ID:
|
||
CURSOR_IMPL_SESSION_ID:
|
||
OPENCODE_PLAN_SESSION_ID:
|
||
OPENCODE_IMPL_SESSION_ID:
|
||
last_phase_entered:
|
||
last_round_ts:
|
||
last_scan_outcome_plan:
|
||
last_scan_outcome_impl:
|
||
verification_attempts: 0
|
||
tests_added_count: 0
|
||
tdd_used: false
|
||
```
|
||
|
||
## Review History
|
||
|
||
<!-- Append one entry per reviewer round, both loops. -->
|
||
|
||
| Timestamp (ISO-8601) | Loop | Round | Verdict | Summary |
|
||
|----------------------|------|-------|---------|---------|
|
||
| | | | | |
|
||
|
||
## Final Status
|
||
|
||
<!-- Filled at the terminal outcome (phase 9/10). Populate at least:
|
||
- Terminal status (one of the 10 Status enum values)
|
||
- Commit hash (if any)
|
||
- Plan-review rounds used / MAX_ROUNDS
|
||
- Implementation-review rounds used / MAX_ROUNDS
|
||
- TDD used (true|false)
|
||
- Tests added count
|
||
- Verification attempts used
|
||
- Last round ISO-8601 timestamp
|
||
- Notes (anything the user should know when revisiting)
|
||
-->
|
||
|
||
---
|
||
|
||
## Guardrails (do NOT remove)
|
||
|
||
- This file is the single persistent artifact for `do-task`. Do not split it or delete it on success.
|
||
- `Status` must always match one of the 10 enum values.
|
||
- `Runtime State` is updated by the skill, not by the user.
|
||
- Review History is append-only.
|
||
- `last_scan_outcome_plan` and `last_scan_outcome_impl` record the most recent secret-scan result for each loop. They are informational; the scan itself runs per-payload with no caching.
|