Files
claude-skills/.tasks/STATUS.md
vitya 6c83a35d6d feat(using-projects-meta): v1.1.0 — mandatory Step 0 freshness gate
Cross-machine workflows broke silently when the agent reasoned on a stale
MCP cache, or hit sha-based optimistic-lock 422s on shared-wiki writes
because another host had pushed minutes earlier. Codify the missing
pre-flight as Step 0:

  1. Always probe mcp__projects-meta__meta_status first.
  2. If cache_age_minutes > 10 OR errors_count > 0 → run
     `node ~/.local/projects-meta-mcp/dist/sync.js` before any read.
  3. For shared-wiki WRITES (knowledge_ingest, knowledge_promote) →
     unconditional `git -C ~/projects/projects-wiki pull --ff-only`
     (sha-lock will reject the commit otherwise; failure is opaque).
  4. Tasks-mutations: sync via dist/sync.js is enough (no local clone
     of target tasks repo).
  5. Sync 401/403 → STOP, send user to ~/.config/projects-mcp/auth.toml
     to rotate gitea_token. No silent retry.

10-minute cache window chosen as the read threshold — balances
multi-machine drift detection against unnecessary Gitea round-trips.

Common mistakes + Red flags expanded to call out the new failure modes.
README mirrors the rule for human readers. Wiki concept page
projects-meta-skills.md gets a "Freshness gate (v1.1.0)" subsection.

Closes [using-projects-meta-freshness-gate].

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 00:33:05 +03:00

107 lines
7.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Task Board
_Updated: 2026-04-30_
<!--
Canonical layout. One block per task. Per-task deep context lives in
.tasks/<task-slug>.md (created by using-tasks when a task becomes active
or paused). Historical Done entries dropped — git log is the history.
Status legend:
🔴 Active — only one at a time
🟡 Paused — in progress, resumable
⚪ Ready — defined, not started
🟢 Done — kept until merged
🔵 Blocked — waiting on external input
-->
## 🟢 [bootstrap-recommend-superpowers] — project-bootstrap recommends superpowers plugin if missing
**Status:** done
**Where I stopped:** Step 5.6 added to `skills/project-bootstrap/SKILL.md` (read `~/.claude/plugins/installed_plugins.json`, print install command + upstream link if `superpowers@claude-plugins-official` key missing); version bumped 1.0.0 → 1.1.0; README workflow numbering updated; skill reinstalled to `~/.claude/skills/project-bootstrap/` and `dist/project-bootstrap.skill` rebuilt; log entry added
**Next action:** (none — kept until merged)
**Branch:** master
---
## 🟢 [mac-support-scripts] — fix install.sh / build.sh for stock macOS
**Status:** done
**Where I stopped:** patched both scripts to drop `mapfile` (bash 4+) and `find -printf` (GNU find) — replaced with portable shell glob + `basename` + `sort`; verified on git-bash (16 skills discovered, install dry-run + build smoke-test passed); wiki concept page `install-portability.md` added; index + log updated
**Next action:** (none — kept until merged)
**Branch:** master
---
## 🟡 [skill-readmes] — write English README.md for every skill + translate root README
**Status:** paused
**Where I stopped:** infra-skill cluster done — READMEs for `project-bootstrap`, `setup-wiki`, `setup-tasks`, `using-wiki`, `using-tasks`; root README translated; cross-links between all five skills wired up
**Next action:** continue with the next batch — suggest the caveman cluster (`caveman`, `caveman-commit`, `caveman-review`, `caveman-help`, `caveman-compress`, `compress`) since they form a coherent group; or jump to `active-platform`, `find-skills`, `setup-context7`, `using-context7`, `using-markitdown` if the caveman cluster needs deduplication first (see `compress-dedup` task)
**Branch:** master
---
## ⚪ [compress-dedup] — resolve compress vs caveman-compress duplication
**Status:** ready
**Where I stopped:** (not started) — noticed during initial migration that both skills ship identical `scripts/` subtrees (`compress.py`, `cli.py`, `detect.py`, `validate.py`, `benchmark.py`)
**Next action:** `diff -r skills/compress skills/caveman-compress`; decide if one is canonical and the other should be removed (or aliased)
**Branch:** (not started)
---
## ⚪ [install-ps1] — PowerShell-native install.ps1
**Status:** ready
**Where I stopped:** (not started) — `install.sh` already works in git-bash on Windows, so this is convenience for PS-only users
**Next action:** mirror `scripts/install.sh` logic in PowerShell (copy `skills/<name>/``~/.claude/skills/<name>/`, support `$env:CLAUDE_SKILLS_DIR` override)
**Branch:** (not started)
---
## ⚪ [archive-roundtrip-test] — smoke-test for .skill archive shape
**Status:** ready
**Where I stopped:** (not started) — caught the PowerShell-Compress-Archive backslash bug manually; a smoke-test would catch the next regression automatically
**Next action:** add a script that builds `dist/<name>.skill`, unzips into a temp dir, and `diff -r` against `skills/<name>/`. Fail on any difference. Run from CI or pre-commit if we add one
**Branch:** (not started)
---
## ⚪ [active-platform-tuning] — tune active-platform triggers based on real usage
**Status:** ready
**Where I stopped:** (not started) — current triggers are best-guess; haven't observed real misfires/missed-fires yet
**Next action:** keep a tally of times the skill should have triggered but didn't (or vice versa); revise the description / trigger list after ~5 real signals. Also add WSL handling explicitly if it comes up
**Branch:** (not started)
---
## ⚪ [active-platform-eval] — run formal skill-creator eval loop on active-platform
**Status:** ready
**Where I stopped:** (not started) — depends on having ~5 real interactions logged for tuning context
**Next action:** invoke `skill-creator` to set up an eval set for `active-platform`; benchmark current vs revised description
**Branch:** (not started)
**Blocker:** waits on `active-platform-tuning` to gather signals first
---
## ⚪ [skills-grouping-revisit] — revisit flat vs grouped skills/ layout if count grows past ~30
**Status:** ready
**Where I stopped:** (not started) — current 14 skills fit fine in flat `skills/`; threshold for revisiting is ~30
**Next action:** when triggered (skill count crosses threshold), evaluate variant B (grouped by family) vs variant C (flat + manifest) from the original brainstorm in `.wiki/concepts/repo-layout.md`
**Branch:** (not started)
## 🟢 [using-projects-meta-freshness-gate] — добавить Step 0 freshness check в using-projects-meta
**Status:** done
**Where I stopped:** Step 0 добавлен в `using-projects-meta/SKILL.md` (cache_age>10мин или errors>0 → `dist/sync.js` для read; shared-wiki write — безусловный `git pull --ff-only`; 401/403 → auth.toml rotation); зеркалирован в README; bump 1.0.0→1.1.0; rebuild+install OK; description trimmed до 924 chars после регрессии (полное Step 0 в description ~1450 chars сломало парсинг — harness зафолбэкнулся на H1, скилл потерял все триггеры); Common mistakes + Red flags расширены; concept page + log обновлены; new feedback memory `skill_description_length_limit`
**Next action:** (none — kept until merged)
**Branch:** master
---
## 🟢 [projects-meta-skills] — setup-projects-meta + using-projects-meta — пара скиллов для projects-meta-mcp
**Status:** done
**Where I stopped:** оба скилла v1.0.0 написаны (8-phase setup + using policy с local-first и two-step mutation), README обоим, собраны в `dist/`, установлены в `~/.claude/skills/`, видны в `Skill` tool listing; concept-страница `projects-meta-skills.md` добавлена в `.wiki/`; path-canon `~/projects/projects-wiki/` починен в скиллах после wiki-path-mismatch fix (upstream commit 621a69f); якоря MCP подтянулись после ручного pull
**Next action:** (none — kept until merged); требуется restart Claude Code чтобы новые скиллы стали активными в новой сессии (build/install уже сделаны)
**Branch:** master
<!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: projects-meta-mcp / 2026-04-29T20:28:04.101Z -->
<!-- closed-by: OpeItcLoc03@DESKTOP-NSEF0UK / 2026-04-29T21:26:01.923Z / note: setup-projects-meta + using-projects-meta v1.0.0 shipped; path-canon ~/projects/projects-wiki/ fixed after wiki-path-mismatch resolution -->
---