lorekeeper-pm — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited lorekeeper-pm (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Product management workflow for the Lorekeeper project.
lorekeeper-devBacklog hygiene: Keep active backlog small (max 5 tickets). Push rest to S:proposal. When scoping down, update RICE scores and note rationale.
git config --local user.name "Akane (PM)"
git config --local user.email "[email protected]"Enforced by commit-msg hook. See commit-convention skill for full details.
Full ticket lifecycle, numbering, scripts → load backlog-management skill.Tickets live in backlogs/ as LKPR-N-slug.md. Completed → backlogs/done/. Numbering: sequential (highest+1), never fill gaps.
Once per week, pull up to 10 proposal tickets into active backlog:
backlogs/proposal/ — pick high-value, unblocked itemsS:ready, set priority. Commit on chore/backlog branchmain — auto-approved, no review needed. Jason squash-merges.When Jason sets a new goal mid-sprint: 1) Analyze → map friction to fixes → estimates. 2) Get greenlight. 3) Execute: update statuses, commit on chore/backlog, PR.
./scripts/lorekeeper-backlog.sh | grep "Next ticket number" — get next LKPR-Ncp backlogs/TEMPLATE.md backlogs/LKPR-NEXT-<slug>.md[LKPR-0] chore: add LKPR-N <short title>Status and priority tracked via GitHub Issue labels. Specs in markdown files.
gh issue list --label "S:Ready" --repo Jessinra/Lorekeeper
gh issue edit LKPR-30 --add-label "S:In-progress" --remove-label "S:Ready"Weekly sync: Pull all issue labels → update markdown status fields → commit on chore/backlog → PR → auto-merge.
Run from repo root: python3 scripts/gh_reconcile.py
Checks: Merged PRs not marked S:Done, S:Done issues still open, duplicate issues, markdown vs GitHub label mismatch, missing/invalid labels. Options: --fix-done, --fix-labels, --deep.
See references/reconciliation-and-pitfalls.md for full deep mode, datafix workflow, and common pitfalls.
Dev submits via PR — never direct commits to main. PM reviews on GitHub, comments inline, approves or requests changes. PM squash-merges on approval, moves ticket to done.
uv run pytest, uv run ruff check src testsstatus: review/done, resolved_date if doneIf anything missing — send back with specific ask.
P0:critical — Blocking other work or data loss. Only for bug & critical fixes.P1:high — High impact, urgent. Next sprint.P2:medium — Medium impact, improvement. When capacity allows.P3:low — Small impact, polish. Nice-to-have.references/reconciliation-and-pitfalls.md — Full deep mode, datafix workflow, and historical lessons~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.