Skip to content

Releases: scarletkc/seiso

seiso v0.2.0

Choose a tag to compare

@github-actions github-actions released this 28 Sep 09:28
37399b9

Heuristic rules, clearer checks, and more platforms

seiso 0.2.0 adds nine heuristic preview rules, prebuilt binaries for macOS and
Linux arm64, and fixes for problems found while using seiso on real projects.
The default rule set is unchanged: KND001, KND002, LNK001, SUP001, and SUP002
run by default, and the new rules run only with --preview.

New

  • Heuristic preview rules: deployment-state assertions (STL002),
    unconstrained versions (STL004), rationale before a procedure (RAT001), long
    preambles (ORD001), exceptions before the main flow (ORD002), conflicting
    section responsibilities (MIX001), excluded-scope headings (VOX002),
    production narration (VOX003), and evaluative claims without evidence
    (EVD001). seiso rule <CODE> explains each one with examples.
  • Section classification: seiso parse reports each section's heuristic
    role with its source evidence, as described in the
    section reference.
  • Platforms: the PyPI and npm packages include prebuilt binaries for macOS
    on Apple silicon and Intel and for Linux arm64, in addition to Linux x64 and
    Windows x64.

Improved

  • seiso check explains a named path or a workspace that selects no document:
    it is not Markdown, .gitignore ignores it, the configuration excludes it or
    does not include it, or it contains no Markdown files. A command-line rule
    selector that names only preview rules warns when preview is off.
  • seiso init writes at the repository root, excludes existing issue and pull
    request templates, dependency directories, and adopted texts such as a code
    of conduct, and maps contributing, security, and support guides to howto.
  • Chinese and Japanese prose that names English identifiers keeps its
    language: detection ignores inline code and link destinations and counts
    Latin words instead of letters.
  • LNK002 reads heading attribute lists such as {#install} as anchors.
  • STL001 no longer repeats a value that STL003 or STL004 reports, and VOX003 no
    longer reports a notice that a page is generated or maintained by someone.
    VOX001 also reports phrases that relay what the requester confirmed or
    authorized, such as the user confirmed and 经用户确认.
  • The parse cache adds its own .gitignore and CACHEDIR.TAG and removes
    entries older than a week.
  • seiso rule accepts lowercase codes, and an unknown rule or selector names
    the installed version.
  • Frontmatter errors report file line numbers, and text output ends with the
    number of diagnostics.

Upgrade notes

  • With --config PATH, the workspace is the repository around the calling
    directory, and the configuration's patterns apply from that root. A
    configuration stored in a subdirectory could previously check nothing.
  • The default include also matches .markdown files. Add them to exclude
    to keep them unchecked.
  • A suppression that named STL001 for a version or commit value now needs
    STL004 or STL003, and SUP002 reports the unused STL001 code. All three
    STL rules are in preview.
  • Diagnostic messages changed for several rules and now end with periods.
    Scripts should match the code field rather than message text.
  • Existing parse cache entries are rebuilt once.

Known limitations

  • Alpine and other musl-based Linux, and Windows on arm64, have no prebuilt
    binary; install with cargo install seiso.
  • Preview rules can change before promotion. Each rule becomes stable only
    after meeting the
    evaluation policy.

Changelog

Changes since v0.1.0:

  • docs: drop agent branch prefixes and add README badges (#4) (a681a5a)
  • feat: add M3 heuristic rules and section classification (#5) (c38e29c)
  • refactor(scripts): group maintenance tools by responsibility (#7) (82889b9)
  • docs: record usage audit findings for follow-up fixes (7d08bcf)
  • fix: address high-priority usage audit findings (#20) (a189535)
  • fix(rules): reduce known preview false positives (#21) (6ba9b60)
  • fix: name the installed version when a rule is unknown (#23) (0d553c6)
  • build(release): ship binaries for macOS and Linux arm64 (#25) (bb34163)
  • docs: replace unsupported README claims and stale setup details (#24) (4902a83)
  • chore(release): prepare v0.2.0 (#26) (37399b9)

Full diff

seiso v0.1.0

Choose a tag to compare

@github-actions github-actions released this 27 Sep 19:50
cc93e11

First public release

seiso 0.1.0 is the first public release of the Markdown convention and linter
for project docs written by AI and read by humans and agents. The earlier
0.0.0 packages were placeholders; install 0.1.0 as described in the
README.

What's included

  • Convention: every document declares one kind, such as readme, howto,
    reference, adr, or changelog, through frontmatter or path mappings in
    seiso.toml. The
    convention
    defines each kind's contract.
  • Commands: seiso init writes a configuration with suggested kind
    mappings, seiso check reports diagnostics, and seiso rule explains a rule
    with examples. seiso policy, seiso index, and seiso parse inspect
    effective policies, the workspace index, and the document model.
  • Stable rules, enabled by default: KND001 and KND002 for document kinds,
    LNK001 for missing local link targets, and SUP001 and SUP002 for invalid and
    unused suppressions.
  • Preview rules, enabled with --preview: stale values (STL001, STL003),
    pointers (PTR001, PTR002, PTR003), link anchors (LNK002), duplicated facts
    and ownership (DUP001, DUP002, DUP003, OWN001, OWN002), design-choice
    headings (RAT002), and conversation remnants (VOX001).
  • Output: text, concise, JSON, SARIF, and GitHub annotations. --fix
    removes confirmed unused suppressions, and parse results are cached between
    runs.
  • Integrations: a Claude Code PostToolUse hook (seiso hook claude-code),
    a pre-commit hook, and CI gates, described in
    integrations.
  • Distribution: seiso on crates.io and PyPI and @scarletkc/seiso on
    npm, each providing the seiso executable.

Known limitations

  • Prebuilt binaries cover Linux x64 and Windows x64. Other platforms build
    from source with a Rust toolchain.
  • Preview rules can change before promotion. Each rule becomes stable only
    after meeting the
    evaluation policy.

Changelog

  • Initial commit (2aba395)
  • docs: init (4264223)
  • feat: implement M0 parsing and configuration foundation (9a38955)
  • ci: run formatting and clippy checks only on Linux (9fdcac1)
  • build: prepare 0.0.0 distributions for Cargo PyPI and npm (aad957d)
  • fix: include and verify licenses in source distributions (dff577f)
  • build: publish npm distribution under scarletkc scope (38ecb02)
  • docs: position seiso as a Markdown convention for AI-written docs (87df911)
  • test: verify M0 parser against pinned real-world corpus (9a1fce5)
  • feat: implement M1 checks and promote validated rules (b5651d2)
  • feat: implement M2 workspace checks and evaluation (267b3f1)
  • ci: streamline checks and bound workflow execution (af927f2)
  • ci: run corpus comparisons for rule pull requests (242461c)
  • ci: keep evaluation manual and performance regression advisory (3391582)
  • perf: set practical hook budget and opt in to preview stress (4721bee)
  • test: report benchmark changes without a regression gate (d47ccc2)
  • docs: record successful M2 CI acceptance (960f308)
  • build: unify seiso package and automate registry releases (9978f7d)
  • refactor(core): separate workspace loading and rule evaluation (34468ae)
  • refactor(release): validate and publish distributions independently (b128495)
  • fix(evaluation): replay protocol receipts at their accepted revision (3e6bf3f)
  • docs: separate current contracts from design history and roadmap (d2943a3)
  • docs: organize guides and references with English headings (29eb4c9)
  • ci: limit documentation changes to document checks (252a06d)
  • feat(release): complete alpha beta and rc publishing (6458618)
  • feat: support prerelease publishing and scope documentation CI (#2) (5de12a5)
  • fix(build): package only root-level README, LICENSE, and manifest (8277e65)
  • docs: add logo, badges, and registry metadata (4850b6b)
  • docs: add contributor guide (9733ffb)
  • ci: classify the contributor guide as documentation (47c9d4e)
  • ci: check pull request titles (a520b9b)
  • chore(release): prepare v0.1.0 (#3) (cc93e11)