Repository navigation
chore(release): km 1.10.0 - #46
Merged
Merged
Conversation
setup.md listed the ci and staleness workflows as what km init --team writes, and said nothing of the workflow that moves the pins of mounted brains. It now names main-guard and bump-mounted-pins with its script, and a new section says what bump-mounted-pins does and what the maintainer sets up before the first mount, taken from the workflow's header: the GitHub App (Contents and Actions: read), the environment mounted-pins restricted to main and created before the first run, its secrets CI_APP_CLIENT_ID and CI_APP_PRIVATE_KEY, allowing Actions to create pull requests, "Require approval of the most recent reviewable push", and the optional variable MOUNTED_PINS_RUNNER. The upgrade step says what km upgrade adds to a team brain and to pass on its warning about the environment; the doctor step says the environment note is the maintainer's to fix. Dependabot is named for the km pin and the action pins only; no sentence in the skill or the README said it moves the mounted pins.
With one paragraph per line, a line count measures paragraphs, not size. Measured on the hard-wrapped files (4777eb7), the reference files averaged 69 bytes a line and SKILL.md 76: - The core's 500-line limit was about 38,000 bytes, three times CORE_BYTES (12,000), so it never bound; it goes, CORE_BYTES stays. - The contents-list rule for reference files over 100 lines split them at 3,433 to 3,702 bytes (under) against 8,064 to 13,599 (over). CONTENTS_BYTES = 6,000 keeps that split with room on both sides. New: no line in a Markdown file under skills/ may exceed 1,900 characters, since the Read tool cuts a line after 2,000 and the rest of the paragraph is never seen. Characters, as the tool counts them. The longest line today is 1,875 (queue.md, Open PRs step). skill_smoke shows each check bites: a core padded past CORE_BYTES, brains.md without its contents list, and a 1,901-character line fail, while a 1,000-character line of two-byte characters passes. Disabling each check, or counting the line in bytes, fails the smoke test.
A team brain gets bump-mounted-pins, a workflow with its script that moves the pins of the mounted brains by pull request in place of Dependabot's submodule updates, and km doctor notes its environment; km upgrade adds both and keeps a shipped copy current. The team ci workflow also runs on workflow_dispatch, so a pull request a workflow opens gets its check, and km upgrade adds the trigger. The skill's setup reference describes the new workflow and its maintainer setup, km's Markdown is one paragraph per line, and the skill inventory measures size in bytes and line length in characters instead of lines, without the retired paragraph check. Without the bump no brain or plugin install would see these.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release km 1.10.0. Merging this PR is the release (CI tags
v1.10.0once main is green). It ships the four changes merged since v1.9.0 (the retired paragraph check,workflow_dispatchin the team ci workflow, thebump-mounted-pinsworkflow and script, Markdown one paragraph per line) and three commits here:docs(skill):skills/km/reference/setup.mdnames main-guard and bump-mounted-pins (with its script) among whatkm init --teamwrites, adds a short section "Mounted pins on a team brain" (what it does; the maintainer's setup before the first mount, taken from the workflow header: GitHub App with Contents and Actions read, environmentmounted-pinsrestricted tomaincreated before the first run, secretsCI_APP_CLIENT_IDandCI_APP_PRIVATE_KEY, Actions allowed to create pull requests, "Require approval of the most recent reviewable push", optionalMOUNTED_PINS_RUNNER; the header stays the source for details), says whatkm upgradeadds to a team brain, and that a doctor note whose fix is in the repository settings is the maintainer's. No sentence inskills/or the README said Dependabot moves the mounted pins; the Dependabot lines (km pin, action pins) stay, one now adds "or another action".test(skill): line limits replaced. The core's 500-line limit goes: at the hard-wrapped 76 bytes per line it was about 38,000 bytes, three timesCORE_BYTES(12,000, kept), so it never bound. The contents-list rule becomesCONTENTS_BYTES = 6000: the old 100-line rule split the reference files at 3,433 to 3,702 bytes (under) against 8,064 to 13,599 (over), and 6,000 keeps that split. New: no line in a Markdown file underskills/over 1,900 characters (the Read tool cuts at 2,000); longest today is 1,875 inqueue.md(Open PRs step), so the next growth there means splitting it.skill_smoke.shmutation-checks each new check (a padded core,brains.mdwithout its contents list, a 1,901-character line fail; a 1,000-character line of two-byte characters passes), and disabling each check or counting bytes fails the smoke test.chore(release):src/km/__init__.py,.claude-plugin/plugin.json, README examples (pyproject reads the version from__init__; no CHANGELOG in this repo).Evals
claude plugin eval . --trust-plugin --case doctor --scaffold --no-publish --ablation none --allow-tools Bash Write Edit(setup.md maps to thedoctorrow; no case covers init or upgrade): doctor 1.00, 3/3 runs, both graders (reads-reference, runs-km-doctor) passed every run, $0.83, 131 s. Caveat: the run started on the first version of the setup.md section; the simplify and review folds shortened that section while it ran, so not every run read the final text. No grader changed, so no baseline.Review
/simplify(reuse, simplification, efficiency, altitude) applied: the new setup.md section no longer copies the five setup steps verbatim (one sentence naming the items, the header stays the source), the repeated "before the first mount" warnings in init and upgrade became pointers, the doctor rule is general (a note fixed in repository settings),textbound once in the inventory loop, oneprintfidiom for filler. Skipped: trimming the calibration comment (the numbers are the point of the change); reading the skill files once instead of twice in the line check (negligible, and the scan covers all ofskills/); also scanningsrc/km/templates/**/*.mdor adding a line check tokm validate(outside this PR; templates are under 1,500 characters today), worth a follow-up./code-reviewapplied: the CORE_BYTES mutation pads 12,001 bytes so it cannot go stale when the core shrinks; the section no longer says the workflow "does nothing" on a brain with mounts that is not set up; lines are split at\nonly and read as bytes (universal newlines would split at a lone\r);## Contentsmust be a heading line; the sync sentence says "usually" the workflow's PR (a hand-made pin PR stays fine). Skipped: UTF-16 counting of astral characters (the skill's text is BMP; the 100-character margin covers ordinary use);--skillpointing elsewhere widens the rglob (default and smoke point atskills/km).All smoke tests pass locally.
Rerun on the final head 023dc5a:
doctor1.00, 3 of 3 runs, $0.78.