Repository navigation
v1.52.1 — Skill audit: correct claims, per-platform install, drift gate
Fixed
- The skill documented three flags that do not exist.
q --use(the globaldbcli --use <name> qform is the real one),q --collection(a MongoDB snippet'starget:is the only collection source), andaudit tail --recovery-ref(it lives onaudit show). The same wrongaudit tail --recovery-refis corrected indocs/user(en/zh, Markdown and HTML). - The
designartifact example failed its own validator. It is replaced with one that validates clean, and the naming rules it has to satisfy are now documented: lowercase kebab-case for design names versus SQL identifiers for tables and columns, endpoints referencing a model rather than a table, strict objects, descriptions that must not contain SQL keywords, and the size limits. Structural violations reportINVALID_ARTIFACT, a code the severity table did not list. - Stale lists corrected against the CLI.
--recoverycoverslintanddiff; verification subject kinds includetable(whatverify constraintwrites); the Redis permission table includesXLEN/XREAD/XRANGE/XREVRANGE/XADD/XDEL/LREM;audit showlists--briefand--for-agent; the snippet guard emitsLIMIT 1001, fetching one extra row to detect truncation. Elasticsearch supportsq, and the 10 000 bound belongs toquery—export --no-limitstreams via the scroll API.schema --helpclaimed--sample-sizedefaults to 50; it is 100. designwas unreachable from the skill entry point.SKILL.mddid not mention it at all, so an agent asked to design or review a schema would hand-write DDL and bypass the review-onlyproposecontract. It now has a command row, both workflows, and a guardrail that a proposed plan is never executed.- Six drifts between the English and Traditional Chinese skills. The most serious dropped the permission-tier semantics (multi-statement SQL rejected below
admin, snippets free of write and DDL keywords,$out/$mergerequiringdata-admin). The MongoDB connection guidance also disagreed between languages — field-by-field is the recommendation, full URI the escape hatch — and the zh-TW side was missing the env-refs MongoDB exception, theuri-wins-silently gotcha,--slow-msonqueryandq, and theproxy analyzeaction guidance. - Cursor and Windsurf installs were the Claude skill verbatim. Windsurf does not parse frontmatter, so roughly 900 characters of
description:were read as rule text; Cursor readsdescription/globs/alwaysApplyand received none of them. Both platforms keepreference.mdoutside the primary file's directory, so every mention of it resolved to nothing.dbcli skill --installnow shapes the file per platform — Cursor as an Agent Requested rule, Windsurf with the frontmatter stripped and the description kept as prose — and repoints the reference path. Recognizing an existing dbcli install no longer depends on the frontmatter, so a Windsurf reinstall stops backing up dbcli's own file. See ADR 0006.
Added
reference.mdhas an index. 3300 lines previously offered no way in but a full read or a guessed grep, and the skill pointed at it in prose ("reference.md Redis section"). Those pointers are real anchors now, and a test derives the anchors from the headings so a renamed heading cannot break them silently.
Changed
- The bilingual parity gate compares content, not just shape. It checked heading levels, fence counts, table rows, and a curated token list for mere presence — every drift above kept that structure intact. It now compares per-section counts of every code token and list item; run against 1.52.0 it reports 48 problems it used to pass. Its success message no longer reads as "the docs are aligned" when it only checked the skeleton.
- The skill entry point carries less that an agent cannot act on. The always-loaded
descriptiondrops from 990 to 626 characters with every trigger branch intact, release markers such as(v1.23)and an internal ticket id are gone (an agent has exactly one installed version), and theproxyrow's flag wall becomes an anchor.
Full Changelog: v1.52.0...v1.52.1