Skip to content

fix(skill): read bounded frontmatter independently of document size #318

Closed

Description

@abruption

Problem

installed_skill_metadata() rejects an entire SKILL.md when its size exceeds 16,384 bytes, even when the small leading metadata section is valid.

This is reproducible with the released compatibility snapshots:

  • v0.3.2: 16,459 bytes;
  • v0.3.3: 18,824 bytes.

Both yield unknown installed version/runtime-min metadata through the existing reader. This predates the v0.3.3 snapshot update in #302 / #303; it should not be addressed by shortening or privately rewriting the canonical skill.

Proposed bounded fix

Read and validate only the bounded leading frontmatter section. Do not read an arbitrarily large body, execute instructions/YAML tags, change skill-management ownership, or modify the canonical snapshot. Malformed, truncated, over-budget or unreadable metadata remains unknown.

Acceptance

  • Recognize the real released v0.3.2 and v0.3.3 metadata despite their total document sizes.
  • Cover a valid bounded header with a large body, an over-budget/truncated header, missing/malformed metadata, UTF-8/line boundaries and unreadable files.
  • Preserve existing notice/doctor compatibility and manager-owned installation behavior.
  • Regenerate standalone source; run relevant tests and independent CLI review before creating the separate implementation PR.

Assigned to v1.2.1 by owner approval. No merge, publication, installation or operations authorization.

Activity

  1. added this to the v1.2.1 milestone on Oct 19, 2026
  2. added
    bugSomething isn't working
    priority:P2Planned reliability, acceptance or feature work; priority does not authorize implementation.
    on Oct 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingpriority:P2Planned reliability, acceptance or feature work; priority does not authorize implementation.

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions