Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@joan-anthropic
Copy link
Contributor

  • Create v1.0 manifest schema without dxt_version field
  • Remove schemas_loose directory and use passthrough() instead
  • Update latest schema to v1.0
  • Generate v1.0 JSON schema exports
  • Update package.json exports (remove schemas-loose, add v1.0 schema)
  • Update all tests to use v1.0 manifest version
  • All tests passing

- Create v1.0 manifest schema without dxt_version field
- Remove schemas_loose directory and use passthrough() instead
- Update latest schema to v1.0
- Generate v1.0 JSON schema exports
- Update package.json exports (remove schemas-loose, add v1.0 schema)
- Update all tests to use v1.0 manifest version
- All tests passing
@joan-anthropic joan-anthropic requested a review from a team October 31, 2025 22:56
joan-anthropic and others added 5 commits October 31, 2025 16:02
- Update LATEST_MANIFEST_SCHEMA to LatestMcpbManifestSchema in pack.ts and validate.ts
- Fix test imports to use LatestMcpbManifestSchema alias
- Add type annotations to fix implicit any type errors
- All tests now passing (109/109)

πŸ€– Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
- Remove explicit any type annotations (use inference)
- Auto-fix import/export sorting
- Auto-fix prettier formatting issues

πŸ€– Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
- Rename `any` to `vAny` for consistency with version naming (v0_1, v0_2, etc.)
- Rename `latest` to `vLatest` to match the pattern
- Makes the exports more semantically clear and consistent

πŸ€– Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
- Remove .refine() from v0.1, v0.2, v0.3 schemas (validation now happens via preprocessing)
- Add preprocessing to normalize dxt_version to manifest_version
- Create wrapper schemas with required manifest_version for discriminatedUnion
- Use z.discriminatedUnion for O(1) version detection instead of O(n) union
- Add McpbManifest type alias for backward compatibility (deprecated)
- Significantly improves TypeScript performance and type inference

This addresses the performance issue where z.union() with 4 complex schemas
creates types that TypeScript can't handle efficiently. The discriminated union
allows Zod to quickly determine which schema to validate against based on the
manifest_version field.

πŸ€– Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
- Revert McpbManifest -> McpbManifestAny rename
- Keep original McpbManifest export name from 1.2.0
- Ensures no breaking changes for consumers

πŸ€– Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants