38 Commits
Author SHA1 Message Date
Brooke Kuhlmann 3685770d07 Updated requester to log and fail SSL, connection, and timeout errors
Necessary to log debug information and gracefully handle failures. Other errors might need to be tracked in the future but, for now, these are the most common.

Reek has been updated to ignore the logger `#call` method because keeping exception logic in a single place is nice for quick lookup. The data clump smell is also being ignored because we have to repeat passing in custom headers (at least for now).

RuboCop has also been updated to ignore the longer parameter list. This is an unfortunte side effect of the HTTP gem which uses multiple keyword arguments for making requests and so this design carries over into our implementation. Ignoring for now.

Milestone: minor
2025-08-06 12:30:57 -06:00
Brooke Kuhlmann 21c0cc86be Removed model endpoint notes
Accidentially forgot to remove these engineering notes during the original implementation work. They are not needed.

Milestone: patch
2025-08-06 11:32:26 -06:00
Brooke Kuhlmann e9dd1aa4a9 Added client models endpoint
Necessary to provide access to the models endpoint via a single object.

Milestone: minor
2025-07-29 16:00:51 -06:00
Brooke Kuhlmann 388509d5dd Added model endpoint
Necessary to perform API request, parse the response, validate the response, and hydrate into a whole value object for further processing.

Milestone: minor
2025-07-29 16:00:51 -06:00
Brooke Kuhlmann 50121aa873 Added container model registration
Necessary to register the new model and contract for use by the endpoint.

Milestone: minor
2025-07-29 16:00:51 -06:00
Brooke Kuhlmann 252a28ef30 Added model
Necessary to provide a whole value object as the output from the API response.

Milestone: minor
2025-07-29 16:00:51 -06:00
Brooke Kuhlmann dcf0e870fb Added model contract
Necessary to validate the HTTP response from the Core server.

Milestone: minor
2025-07-29 16:00:51 -06:00
Brooke Kuhlmann 8247ad5005 Fixed Zeitwerk loader
This cropped up due to Zeitwerk 2.7.3 which introduced a breaking change to the Object API.

Milestone: patch
2025-05-28 17:09:56 -06:00
Brooke Kuhlmann 9b47c7bae0 Added client custom inspection
Necessary to reduce verbosity of output when inspecting the client.

Milestone: minor
2025-05-19 08:21:40 -06:00
Brooke Kuhlmann 174d6ace3c Added endpoints custom inspection
Necessary to reduce object inspection verbosity especially with Dry Schema objects.

Milestone: minor
2025-05-19 08:21:40 -06:00
Brooke Kuhlmann 8c7e3ffb6b Added primary Object API
Necessary to obtain an API client with access to all endpoints.

Milestone: minor
2025-05-05 17:00:55 -06:00
Brooke Kuhlmann 386a36e829 Added client
Necessary to provide a single object with access to all endpoints.

Milestone: minor
2025-05-05 17:00:55 -06:00
Brooke Kuhlmann 1c6e8f84dd Added endpoints dependencies
Necessary for automatic injection. This will soon be used by the client (not yet implemented).

Milestone: minor
2025-05-05 17:00:55 -06:00
Brooke Kuhlmann d650ee9784 Added endpoints container
Necessary to register all endpoints for eventual injection into to the client.

Milestone: minor
2025-05-05 17:00:55 -06:00
Brooke Kuhlmann 2f5938a808 Refactored requester to inject dependencies
Reduces duplication by injecting what is already registered.

Milestone: patch
2025-05-05 17:00:55 -06:00
Brooke Kuhlmann 175795b2b2 Added container settings registration
Necessary to provide application wide access to the configuration which will soon be shared by the newly renamed requester and client (not implemented yet).

Milestone: minor
2025-05-05 17:00:55 -06:00
Brooke Kuhlmann 25086e5594 Updated client as requester
Necessary to make space for a new client object that will provide access to all API endpoints. The rename help denote that this object is purely for low level HTTP API requests.

Milestone: minor
2025-05-05 17:00:55 -06:00
Brooke Kuhlmann 24abe66d76 Fixed HTTP container registration
Use of the root scope is not necessary and can be safely removed.

Milestone: patch
2025-04-22 16:47:44 -06:00
Brooke Kuhlmann 0e579ea701 Added setup endpoint
Necessary to handle the request and response of the setup API endpoint.
2025-04-22 14:24:34 -06:00
Brooke Kuhlmann f635aa4cd7 Added log endpoint
Necessary to handle the request and response of the log API endpoint.
2025-04-22 14:24:34 -06:00
Brooke Kuhlmann a941c8f180 Added firmware endpoint
Necessary to handle the request and response of the firmware API endpoint.
2025-04-22 14:24:34 -06:00
Brooke Kuhlmann 2da39573fc Added display endpoint
Necessary to handle the request and response of the display API endpoint.
2025-04-22 14:24:33 -06:00
Brooke Kuhlmann 9b6446c5bb Added current screen endpoint
Necessary to handle the request and response to the current screen API endpoint.
2025-04-22 14:24:33 -06:00
Brooke Kuhlmann 9fe24d3b94 Added application dependencies
Necessary to configure all dependencies listed within the container for automatic injection as desired.
2025-04-22 14:24:33 -06:00
Brooke Kuhlmann 7c8db493fd Added application container
Necessary to register common application dependencies for potential injection as desired.
2025-04-22 14:24:33 -06:00