Repository navigation
Register machine routes in one place - #579
Merged
Merged
Conversation
SaladDay
force-pushed
the
aos/machine-route-registration
branch
from
October 8, 2026 15:38
3abfd96 to
ae40f8f
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Machine routes were split between the API, server mux and Runtime gateway, with different HTTP error bodies and incomplete generated documentation. Register every
/api/v1route once in the API, inject the existing transport handlers, and return the shared error envelope from authentication, routing, WebSocket handshakes and native downloads. Publish the existing HTTP operations in the machine schema and correct the proxy documentation.Preserve credential checks and their order, connection authority rechecks, canonical paths, standard method/HEAD behavior, prefix redirects, successful downloads, range/conditional requests and cache headers. The public and administration schemas remain unchanged. Remove the separate server/gateway registrations and forwarding handler. Undeclared extension methods use the common router’s 405 rejection before authentication or upgrade.
Validation: 745 database integration cases with no skips; 2,282 focused cases with four platform/external-environment skips; additional HTTP/auth/path/download/schema checks, module build/vet, generation freshness and 22 website checks. Rebase validation passed 81 focused cases and 16 generator cases. No native execution behavior changed or live model qualification was run.
Fresh independent review and focused follow-up review found no remaining issues. The official-client check now verifies initial Session activity against its queued Turn, preserving exact replay/retrieve checks without assuming two database inserts occur within one second. A complete run against the pinned SDK and real service passed.