Repository navigation
v1.8.0
Added — sprint v1.8 linter v2 + DRY + DX + index
-
Linter v2 (
writer/scripts/lint.py): five new categories —
MARKETING_HYPE(revolutionary / game-changing / world-class / industry-leading /
cutting-edge / best-in-class / groundbreaking / next-generation / state-of-the-art /
unparalleled / unmatched + RU equivalents);EMPTY_CTA(click here / tap here /
learn more / get started without object + RU);WEAK_OPENER(we're excited to /
thrilled to / proud to + RU);VAGUE_BENEFIT(save time / boost productivity /
get more done + RU);WRONG_TENSE_RELEASE(will support/enable/etc. in
release-notes context, severitynit). Total: 28 categories. -
Code-fence skip in linter: lines inside fenced ``` / ~~~ blocks are no longer
scanned. Previouslyskill_skills-update_inputhad 74 lines of false-positive
hits matching marketing words inside JSON examples; now clean. -
Severity tags (
blocker/caution/nit) per hit + aggregate
by_severityin JSON output. Nit-level hits don't escalate the overall
verdict. New CLI flags:--scan-code-blocks(opt-in for calibration files),
--quiet(used bymake lint-all). -
7 new
before-after.mdcalibration files:canon-check,essay-write,
skills-update,style-check,translation-sync,viral-text,cold-email.
Every skill (17/17) now has a calibration file showing the concrete
transformation it produces. -
3 expanded walkthroughs:
viral-post.md(129→234),tone-shift.md(162→276),
image-prompt-cover.md(165→351). Added RU port scenarios, A/B variants,
multi-stage shifts, cross-model comparisons, refinement decision trees,
and per-walkthrough troubleshooting sections. -
Skill tags in
skills.json: closed-dictionarytags: []array per skill
(domain: fiction / non-fiction / marketing / social / product / tech-docs /
ux-copy / visual / outreach; function: editing / generation / audit /
translation / ops).scripts/validate.shvalidates the dictionary. -
docs/SKILL-INDEX.md— auto-generated byscripts/gen-skill-index.py
(make gen-index). Groups all 17 skills by layer, by domain, and by
language.scripts/check-docs-consistency.shgains a 6th sub-check
verifying SKILL-INDEX freshness. -
common/references/— shared cross-skill anti-pattern catalogues:
banned-patterns-hype.md,banned-patterns-preambles.md,
banned-patterns-empty-cta.md.install.shgainsinstall_shared_refs()
to copy them to$PREFIX/common/references/.cold-email,
landing-copy, andrelease-notesbanned-patterns.mdnow cross-link
to the shared files instead of duplicating their content. -
DX:
make lint-all(writer linter across every reference, example, and doc
file — advisory);scripts/install-precommit-hook.sh(installs local
.git/hooks/pre-committhat runs the linter on staged .md + smoke gate, skips
calibration files);.github/PULL_REQUEST_TEMPLATE.mdchecklist extended to
all 5 CI gates + tag-dictionary + gen-readme/gen-index + common/references
consideration.
Changed
writerdescription: "23 categories" → "28 categories" (reflects linter v2).viral-text,release-notes,rfc-writerSKILL.md descriptions: explicit
"Wrapswriter" mention (consistency with other wrappers — moved from v1.7
prep into shipped commit on this branch).cold-email/references/banned-patterns.md,landing-copy/references/banned-patterns.md,
release-notes/references/banned-patterns.md: lead with cross-link to
common/references/shared catalogues.scripts/smoke.sh: writer linter self-test now passes--scan-code-blocks
so calibration BEFORE samples inside ``` fences still trigger neuroslop verdict.