Skip to content

fix: Remove undocumented APIs#531

Merged
razor-x merged 2 commits into
mainfrom
claude/blueprint-undocumented-filters-efemvj
Jul 24, 2026
Merged

fix: Remove undocumented APIs#531
razor-x merged 2 commits into
mainfrom
claude/blueprint-undocumented-filters-efemvj

Conversation

@razor-x

@razor-x razor-x commented Jul 24, 2026

Copy link
Copy Markdown
Member

Summary

This PR removes manual filtering of undocumented routes, namespaces, endpoints, and parameters from the codegen process. Instead, the blueprint is now built with the omitUndocumented option enabled, which filters out undocumented items before codegen runs.

Key Changes

  • Updated blueprint generation: Modified codegen/smith.ts to use createBlueprint with omitUndocumented: true option instead of relying on the @seamapi/smith blueprint plugin, which doesn't support this option
  • Simplified route codegen: Removed all isUndocumented checks from codegen/lib/routes.ts:
    • Removed filters for undocumented namespaces and routes in getClients()
    • Removed filters for undocumented endpoints in client method creation
    • Removed filters for undocumented parameters
    • Simplified getTopLevelClientNamespaces() to work with pre-filtered data
  • Removed undocumented resource files: Deleted 11 resource files that were marked as undocumented:
    • unmanaged_acs_access_group.rb, unmanaged_acs_credential.rb, unmanaged_acs_user.rb
    • bridge_client_session.rb, bridge_connected_systems.rb
    • acs_credential_pool.rb, acs_credential_provisioning_automation.rb
    • customer.rb, customization_profile.rb, enrollment_automation.rb
    • magic_link.rb, phone_session.rb, staff_member.rb
  • Updated resource index: Removed requires for deleted undocumented resources from lib/seam/routes/resources/index.rb
  • Updated dependencies: Bumped @seamapi/blueprint to ^0.61.0 and @seamapi/types to 1.975.0

Implementation Details

The change centralizes undocumented item filtering at the blueprint level rather than scattering it throughout the codegen logic. This approach is cleaner and ensures consistency across all generated code, as the blueprint itself only contains documented items before codegen processes it.

https://claude.ai/code/session_01AQChf9iyLCNXNhNbfH5rB2

claude added 2 commits July 24, 2026 15:21
Bump @seamapi/blueprint to ^0.61.0 (and @seamapi/types to 1.975.0, the
minimum that satisfies blueprint 0.61.0's undocumented-reference
validation) and build the blueprint with the omitUndocumented option so
undocumented routes, namespaces, endpoints, parameters, resources, and
properties are dropped before codegen runs.

The @seamapi/smith blueprint plugin does not forward omitUndocumented to
createBlueprint, so smith.ts now calls createBlueprint directly. With
undocumented entities already stripped from the blueprint, the manual
isUndocumented filters in the route codegen are removed.

This also drops undocumented resource classes and properties that the
previous codegen emitted (resources were never filtered before), matching
the documented API surface.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AQChf9iyLCNXNhNbfH5rB2
Bump @seamapi/blueprint and @seamapi/smith to ^1.0.0. The smith blueprint
plugin now forwards omitUndocumented to createBlueprint, so smith.ts passes
omitUndocumented: true to the plugin instead of calling createBlueprint
directly. Generated output is unchanged.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AQChf9iyLCNXNhNbfH5rB2
@razor-x razor-x changed the title Remove undocumented API filtering from codegen fix: Remove undocumented APIs Jul 24, 2026
@razor-x
razor-x marked this pull request as ready for review July 24, 2026 16:30
@razor-x
razor-x merged commit 61cd84f into main Jul 24, 2026
17 checks passed
@razor-x
razor-x deleted the claude/blueprint-undocumented-filters-efemvj branch July 24, 2026 16:32
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.

2 participants