references to ../ds4/ files in the project are not allowed due to other people not having ds4 checked out #53

Closed
opened 2026-07-28 11:09:46 +00:00 by hugo · 1 comment
Owner

only separate validation code is allowed to use ../ds4/ paths, where we explicitely want to validate against something happening in ds4. but everything else is only allowed to access files in the project directory or in the application support for the app itself. so for examples models must be referenced in the application support folder, not in ../ds4/

right now there are lots of references outside this project, especially to model files, which is bad, as that will prevent people from running app or tests. Yes, ds4 is our golden master with regards to behaviour, but the project must be self-contained (crate references are of course fine, as they are a normal thing of a rust project, what is not ok is to reference files outside project or application support for the project).

only separate validation code is allowed to use ../ds4/ paths, where we explicitely want to validate against something happening in ds4. but everything else is only allowed to access files in the project directory or in the application support for the app itself. so for examples models must be referenced in the application support folder, not in ../ds4/ right now there are lots of references outside this project, especially to model files, which is bad, as that will prevent people from running app or tests. Yes, ds4 is our golden master with regards to behaviour, but the project must be self-contained (crate references are of course fine, as they are a normal thing of a rust project, what is not ok is to reference files outside project or application support for the project).
hugo added the bugcritical labels 2026-07-28 11:09:46 +00:00
Author
Owner

Implemented in 9cf1c70. Removed every hard-coded sibling-DS4 checkout dependency from source and native code. Model-backed validation and Metal tests now resolve the same managed artifacts used by the app under ~/Library/Application Support/de.rfc1437.ds4server/models, Pro and GLM tests no longer fall back to ../ds4, and the native browser profile moved from ~/.ds4/browser to DS4Server's Application Support directory. The DS4-only steering oracle now requires an explicit DS4_STEERING_FILE when manually enabled. Added regression coverage for all owned runtime paths and a source-tree audit that rejects future ../ds4 dependencies. DS4 model/token oracle behavior is unchanged. Passed cargo fmt, Clippy with warnings denied, make bundle, and the full suite (145 passed, 12 hardware/model tests ignored).

Implemented in 9cf1c70. Removed every hard-coded sibling-DS4 checkout dependency from source and native code. Model-backed validation and Metal tests now resolve the same managed artifacts used by the app under ~/Library/Application Support/de.rfc1437.ds4server/models, Pro and GLM tests no longer fall back to ../ds4, and the native browser profile moved from ~/.ds4/browser to DS4Server's Application Support directory. The DS4-only steering oracle now requires an explicit DS4_STEERING_FILE when manually enabled. Added regression coverage for all owned runtime paths and a source-tree audit that rejects future ../ds4 dependencies. DS4 model/token oracle behavior is unchanged. Passed cargo fmt, Clippy with warnings denied, make bundle, and the full suite (145 passed, 12 hardware/model tests ignored).
hugo closed this issue 2026-07-28 16:34:34 +00:00
Sign in to join this conversation.