Niko qa
Niko Memory Bank System - QA Phase - Post-Implementation Semantic ReviewFrom its SKILL.md
npx -y skills add Texarkanine/slobac --skill niko-qaAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.9 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it
QA Phase - Post-Implementation Semantic Review
This command performs a structured semantic review of the code just implemented against the original plan. It catches over-engineering, incomplete implementations, pattern violations, and implementation debris that mechanical checks (lint/build/test) cannot detect.
Step 1: Load Memory Bank Files
Read:
memory-bank/active/tasks.mdmemory-bank/active/projectbrief.mdmemory-bank/systemPatterns.mdmemory-bank/active/activeContext.mdmemory-bank/active/progress.mdmemory-bank/active/creative/
Step 2: QA Workflow
-
Verify Prerequisites
- Check
memory-bank/active/tasks.mdfor build phase completion - Read the original implementation plan to establish the review baseline
- For Level 3-4: Read creative phase documents for design intent
- Check
-
Review the code just implemented against the original plan and apply these constraints:
-
KISS: Simplify over-engineered logic; flatten unnecessary abstractions or indirection layers introduced during the build. If a simpler construct achieves the same outcome, prefer it. Do not preserve complexity merely because it was part of the initial implementation approach.
-
DRY: Consolidate any duplicate code, boilerplate, or redundant patterns introduced during iterative development into clean, reusable constructs. Cross-reference new code against existing utilities and helpers to avoid reinventing what the codebase already provides.
-
YAGNI: Prune speculative code, "just-in-case" variables, unused parameters, and features not explicitly required by the plan. If it wasn't asked for, it doesn't ship.
-
Completeness: Verify every requirement from the original plan was actually implemented - not stubbed, TODO'd, commented-as-pseudocode, or hand-waved. Treat any
// TODOor placeholder value introduced during this session as a blocking deficiency, not a future suggestion. -
Regression: Confirm no existing architectural patterns were broken - naming conventions, casing, error handling strategies, import styles, file structure, and established abstractions must remain consistent across all affected projects. New code must be indistinguishable in style from surrounding code and integrate as a natural extension of existing architecture, not an accretion layer.
-
Integrity: Replace any hardcoded shortcuts, magic numbers, placeholder strings, or debug artifacts (
console.log,print("HERE")) introduced as temporary scaffolding. If it was a means to an end during development, it does not survive into the final commit. -
Documentation: Verify that any project documentation (README files, doc comments, memory bank persistent files, configuration docs, user-facing guides) affected by the code changes was updated alongside those changes. Treat missing documentation updates as an incomplete implementation — same severity as a missing requirement.
-
-
Apply Fixes or Fail
- Trivial fixes (debug artifacts, naming inconsistencies, dead code, magic numbers): fix directly, re-run lint/build/test after each.
- Substantive issues (missing requirements, wrong approach, broken contracts, incomplete implementations): do NOT fix. Record as a FAIL finding with enough detail for the next Build or Plan cycle to act on it.
- The line: if the fix requires understanding design intent or making a decision between approaches, it's not QA's job. Fail and route back.
-
Generate QA Report
- Summarize findings and corrections applied
- Write validation status to
memory-bank/active/.qa-validation-status - Update
memory-bank/active/tasks.mdwith QA results
-
Handle Results
- On PASS (clean or all issues fixed): Good job!
- On FAIL (issues requiring build changes): Return to the Build phase to fix the issues.
- On FAIL (fundamental plan issue discovered): Return to the Plan phase to revise the plan.
Step 3: Log Progress
🚨 Printing this notice is NOT the end of this phase. After printing, continue immediately to the next step - do not stop.
Update memory-bank/active/progress.md to record completion of the QA phase.
When QA review is complete, print:
PASS
# QA Result
✅ PASS
1. **Findings** - bulleted list of each semantic finding and the fix applied (or why it blocks)
FAIL
# QA Result
❌ FAIL
1. **Findings** - bulleted list of each semantic finding and the fix applied (or why it blocks)
## Next Steps
(the next command, if any, based on the current complexity-level's workflow & QA result)
Step 4: Phase Transition
- If operator input is required: stop and wait for them.
- If operator input is not required: load the appropriate complexity level-specific Niko workflow file, then use its Phase Mappings to execute the next phase.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.