v3.6.0 merges the changes from release/v3.6.0 that have evidence from their test week and folds in every report from the past week that could ship without a test period. Twenty branch changes had no evidence yet; they move to the next test branch, together with this week's changes that need a test period.
From the test branch
- A permission or classifier denial is reported to the user and its observations carried in report-back or handoff mode; only a transient failure is retried, and a classifier denial gets at most one identical retry, never a different tool.
- The validator packs the bundle last and checks that it round-trips; it fails on version-control metadata in a staged skill.
- Review Step 1 quotes the prompt verdict from the prompt's text; Step 7 verifies an unconfirmed timestamp write; Step 3 buckets observations on the listed skill name and checks routing before the presence check.
- The helper claims each id atomically and never overwrites an archived file; the scan and the id guards count numbered files only and name lost entries left by an interrupted write.
- The session-start scan ships as
scripts/session-start-scan.sh, prints the active principles' headings, strips a byte order mark and counts closed headers.
Review rounds since the branch was cut
scripts/skill-load.shruns the per-skill lookup of open observations and writes its checkpoint line in one command, in the same batch as the skill load.- Lookups match on the bare skill name, and
skill:is written as the bare name. - Files a review does not install are handled by their owner: workspace files the review owns are written directly, and a state file another process reads is staged as a patch with the live file's size and hash.
- The review drains a user-scoped observation inbox and records each fan-out cluster's seed state before dispatch.
- The authoring guide covers the description's several readers, exempts counts about the skill's own log from the examples rule, and allows one dated form: "Last verified YYYY-MM-DD · Re-test:
<command>".
This week's reports
- The reconciliation gate treats a failed frontmatter normalisation as an error, never a match.
- The sample session-start hook offers the review when the last one is seven days old, with a note on hook interpreters on Windows.
- The review's fan-out counts partitions, not observations.
- The validator keeps a file's line endings when it quotes the name on pack, and reports n/a, not 0, for a reference no pointer names by section.
- A deferral probes that the deferred action can be taken at all.
- Every always-loaded instruction file is checked as a source of the workspace path.
- Phrase checks over hard-wrapped Markdown search within a block.
- The hostile-test list asks for a proven-green baseline and an assertion of which guard rejected.
- Renaming a hosted skill is handled as a migration.
- A classifier objection follows the content, so a write-up of the activation text can be refused too.
- The YAML shape scan says what it flags and what it misses; the observation write path covers editing tools that refuse unread files.
Repository
.claude-plugin/plugin.jsoncarries a description and keywords written for discovery, mirrored in the marketplace entry.- The tessl manifest and publish workflow, and the two logo images, are removed.
- The README's quick install is two steps, install by either route and then activate, and its figures are refreshed.
Thank you
This release credits 16 people as co-authors: @tldah4558-prog, @minorum, @dispather, @qveys, @notbucki, @willdarbey123-netizen, @TheLeschU, @Akki-97, @kolla23, @rubemmnf, @rlucho, @bapinoko-sudo, @minu0508, @chibuzorokoh, @maneirag-prog and @Fablex95.