@kkdev92/vscode-ext-kit - v4.1.1
    Preparing search index...

    Function assertManifestMatches

    • Fails when package.json and the declarations in src disagree.

      VS Code reads the manifest before an extension's code runs, so the two can never collapse into one file — the Command Palette and the Settings UI need titles and descriptions that only the manifest can carry, and a handler's argument types are something only src can express. What overlaps is small and mechanical: ids, types, defaults, enum values, scopes.

      This treats src as the authority for that overlap. A failure names what the manifest is missing and prints the JSON to paste, so the fix is always "update the manifest", never "go and change the code to match".

      It reports every mismatch in one throw and has no test-runner dependency. It does not validate unrelated contribution points, activation events, localization files or whether VS Code accepts the complete manifest; retain a packaging/Extension Host lane for those concerns.

      Parameters

      Returns void

      it('the manifest agrees with what src declares', () => {
      assertManifestMatches(JSON.parse(readFileSync('package.json', 'utf8')), {
      settings: [Settings, EditorSettings],
      commands: Object.values(Contracts),
      views: Object.values(VIEWS),
      });
      });

      when anything disagrees, listing every disagreement at once