Skip to content

T-2THY-deny-state-path-bypass

State: planning/proposed · Impact: low · Complexity: medium

Turn the fleet-bypass guard from a warning into an error once every internal app is migrated. The template copies the deny config in T-GQ9Y.

For Rust this changes only local runs: CI clippy already runs with -D warnings, so the warn level fails CI today. The oxlint flip is the part that changes CI.

LocationRole today
Root clippy.toml, [workspace.lints.clippy]disallowed_methods = "warn" once T-1KOY lands
solutions/determined/crates/determined-platform/clippy.tomlRepeats the banned list
.oxlintrc.jsonno-restricted-imports and no-restricted-properties at warn
TS hits outside every app18, none in an app this task depends on: packages/ts/detect-runners/src/{cache,config,config-command,trust-command,clean-command,cli}.ts, packages/ts/cli-tool/{trust/store.ts,devlink/ops.ts,config/tests/paths.test.ts}, packages/ts/waypost/src/{cli,serve}.ts, packages/ts/repo-cleaner/{resolve.ts,tests/config.test.ts}, scripts/{sdlc-install,install-desktop-apps}.ts, solutions/determined/packages/photo-annotator/src/machine.ts, apps/ontological-legacy/.claude/hooks/*.js
apps/ontological-legacyIts own Cargo workspace, so the root [workspace.lints] does not reach it

disallowed_methods = "deny" in the workspace lints and the oxlint rule at error.

  1. Fix or annotate the 18 TS hits above. Real state that bypasses fleet (the detect-runners cache, the cli-tool trust store) moves to fleet; a ~/.claude or content path gets an oxlint-disable-next-line with a reason.
  2. Confirm clippy and oxlint report zero unannotated hits.
  3. Flip both levels.
AreaNote
Cargo.toml, .oxlintrc.jsonLevels
  • AC-1: A new dirs::data_dir() call outside fleet fails cargo clippy.
  • AC-2: A new os.homedir() call outside packages/ts/fleet fails oxlint.
  • Hits inside the apps; the phase-2 tasks migrate those.
  • apps/ontological-legacy’s own lint table; the app is superseded.
  • The template’s lint config (T-GQ9Y).
  • T-1KOY for the guard.
  • Every internal app migration: T-GXNH, T-UU4J, T-AAR2, T-KOTJ, T-JPFC, T-TLET.
  • T-LJLH, which gates phase 4 of the milestone.
  • Starting at warn lets the guard land before every app is migrated.

T-1KOY, T-GXNH, T-UU4J, T-AAR2, T-KOTJ, T-JPFC, T-TLET, T-LJLH


← Back to Tasks