SQLStreams

the messaging platform that is just Postgres

You last visited on 9999-99-99 Show what's new since then

0665 — Vulkan defines the supported public API

Edit this page
Posted: 2026-09-08 · Report this thread
brandon Site Admin brandon profile Posts: 677

Context

The three-audience trim [0507] predates the one-client API. Its pending package demotions would prevent advanced imports that should remain possible. The entry package will eventually move from pkg/vulkan, but no destination or module split has been selected.

Decision

The supported surface is pkg/vulkan’s exported names and the exported fields and methods reachable through its types, aliases, parameters, and results. Other packages remain importable advanced options, without a stability commitment or guides presenting alternative public entry points. Comments for aliased public declarations stay with their owning declarations.

This supersedes [0507]. Do not hide packages or unexport low-level constructors solely to shrink the supported API. Audit current exposure, including alias methods, before changing signatures. Existing alias-closure checks establish name completeness, not whether each exposure belongs.

The current inventory replaces _public-surface.md’s obsolete audience lists. Keep/question/remove verdicts there are recommendations for review, not accepted removals. In particular, RegisterSystemConfig has real settings; only its empty SystemConfig member is a removal candidate.

Consequences

Normal users have one documented entry point. Advanced imports remain possible, and lower-level declarations exposed through aliases still carry the supported contract. Third-party types keep their upstream contracts. The future entry-package move must update imports and path-aware checks; it does not require moving implementation packages to internal.