Skip to content

Structural validation still diverges from mcs pack validate #14

Open

Description

@bguidolim

The heuristic and file-reference layers match mcs pack validate (verified against mcs 2026.9.27 on every registered pack). The structural layer, validateTechpackYaml in src/lib/validator.ts, still disagrees with mcs ExternalPackManifest.validate() / the loader on some verdicts. All of these predate #13.

Registry says invalid, mcs accepts (false invalids — fix first)

  • Component description: "" — registry requires a non-empty string; mcs has no such check.
  • Schema maxLength / non-empty limits enforced as errors.
  • Component-level scope: validated.

mcs rejects, registry says active

  • Duplicate copy destination (ManifestError.duplicateDestination).
  • Required fields on doctor checks.
  • Dotted template sectionIdentifier (dotInRawID).
  • installAction decode failures (e.g. mcpServer without name, shorthand without destination).
  • minMCSVersion that doesn't parse or is newer than the current mcs.
  • Non-integer hookTimeout (e.g. 1.5).

Diff ExternalPackManifest.swift at the release tag against validateTechpackYaml, check by check, and add a test per case.

Activity

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions