@stll/oxlint-config 1.7.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.md +3 -3
  2. package/dist/dependabot.d.cts +13 -7
  3. package/dist/dependabot.d.mts +13 -7
  4. package/dist/engine-support.d.cts +4 -5
  5. package/dist/engine-support.d.mts +4 -5
  6. package/dist/index.d.cts +11 -11
  7. package/dist/index.d.mts +11 -11
  8. package/dist/publish-build-target-nuxt-helper.d.cts +3 -4
  9. package/dist/publish-build-target-nuxt-helper.d.mts +3 -4
  10. package/dist/publish-build-target-vite-dts-helper.d.cts +2 -2
  11. package/dist/publish-build-target-vite-dts-helper.d.mts +2 -2
  12. package/dist/publish-build-target-vite-dts-helper2.cjs +47 -4
  13. package/dist/publish-build-target-vite-dts-helper2.cjs.map +1 -1
  14. package/dist/publish-build-target-vite-dts-helper2.mjs +47 -4
  15. package/dist/publish-build-target-vite-dts-helper2.mjs.map +1 -1
  16. package/dist/publish-contract-cli.cjs +2 -2
  17. package/dist/publish-contract-cli.cjs.map +1 -1
  18. package/dist/publish-contract-cli.mjs +2 -2
  19. package/dist/publish-contract-cli.mjs.map +1 -1
  20. package/dist/quarantine-policy.d.cts +9 -9
  21. package/dist/quarantine-policy.d.mts +9 -9
  22. package/dist/toolchain-dependabot.cjs +6 -3
  23. package/dist/toolchain-dependabot.cjs.map +1 -1
  24. package/dist/toolchain-dependabot.mjs +6 -3
  25. package/dist/toolchain-dependabot.mjs.map +1 -1
  26. package/dist/toolchain-guard.cjs +1 -1
  27. package/dist/toolchain-guard.mjs +1 -1
  28. package/dist/toolchain-inputs.cjs +61 -9
  29. package/dist/toolchain-inputs.cjs.map +1 -1
  30. package/dist/toolchain-inputs.mjs +61 -9
  31. package/dist/toolchain-inputs.mjs.map +1 -1
  32. package/dist/toolchain-schema.cjs +10 -0
  33. package/dist/toolchain-schema.cjs.map +1 -1
  34. package/dist/toolchain-schema.mjs +10 -0
  35. package/dist/toolchain-schema.mjs.map +1 -1
  36. package/package.json +5 -5
  37. package/toolchain.json +12 -7
@@ -1188,16 +1188,18 @@ verify_bun_routes() {
1188
1188
  [[ -n "$minimal_path" ]] || minimal_path=/usr/local/bin:/usr/bin:/bin
1189
1189
  root_mise="$(printenv STLL_CLOUD_TEST_ROOT_MISE || true)"
1190
1190
  [[ -n "$root_mise" ]] || root_mise=/root/.local/share/mise
1191
- bun_route 'the setup PATH' env PATH="$PATH" sh
1192
- bun_route 'sh -c' sh
1191
+ # An absolute shell: a PATH entry such as a user-writable mise shims
1192
+ # directory must never supply the program that root runs.
1193
+ bun_route 'the setup PATH' env PATH="$PATH" /bin/sh
1194
+ bun_route 'sh -c' /bin/sh
1193
1195
  bun_route 'bash -lc' "$login_shell" -l
1194
- bun_route 'the minimal system PATH' env -i PATH="$minimal_path" sh
1196
+ bun_route 'the minimal system PATH' env -i PATH="$minimal_path" /bin/sh
1195
1197
  configured_mise="$(printenv MISE_DATA_DIR || true)"
1196
1198
  for mise_root in "$configured_mise" "$OUTPUT_HOME/.local/share/mise" "$root_mise"; do
1197
1199
  [[ -n "$mise_root" ]] || continue
1198
1200
  shims="$mise_root/shims"
1199
1201
  [[ -d "$shims" ]] || continue
1200
- bun_route "mise shims PATH $shims" env PATH="$shims:$PATH" sh
1202
+ bun_route "mise shims PATH $shims" env PATH="$shims:$PATH" /bin/sh
1201
1203
  done
1202
1204
  }
1203
1205
  replace_image_buns() {
@@ -1224,7 +1226,8 @@ replace_image_buns() {
1224
1226
  [[ -d "$candidate" ]] && continue
1225
1227
  [[ "$(readlink -f -- "$candidate")" == "$(readlink -f -- "$BUN_DIR/bun")" ]] || ln -sfnT -- "$BUN_DIR/bun" "$candidate"
1226
1228
  done
1227
- done < <(printf '%s' "$PATH" | tr : '\n')
1229
+ # The trailing newline lets read return the last PATH entry too.
1230
+ done < <(printf '%s\n' "$PATH" | tr : '\n')
1228
1231
  }
1229
1232
  install_runtimes() (
1230
1233
  if [[ ! -s /etc/ssl/certs/ca-certificates.crt ]]; then
@@ -1264,7 +1267,6 @@ install_runtimes() (
1264
1267
  ln -sfnT -- "$NODE_DIR/bin/npx" /usr/local/bin/npx
1265
1268
  ln -sfnT -- "$BUN_DIR/bun" /usr/local/bin/bun
1266
1269
  replace_image_buns
1267
- verify_bun_routes
1268
1270
  )
1269
1271
 
1270
1272
  dependency_install() {
@@ -1338,7 +1340,8 @@ sync_dependencies() {
1338
1340
  prepare_dependency_state
1339
1341
  expected="$(dependency_hash)"
1340
1342
  if [[ -f "$DEPENDENCY_STAMP" ]]; then IFS= read -r installed < "$DEPENDENCY_STAMP" || true; fi
1341
- [[ "$installed" == "$expected" ]] && return
1343
+ # The stamp describes an installation; without node_modules there is none.
1344
+ [[ "$installed" == "$expected" && -d "$REPO_ROOT/node_modules" ]] && return
1342
1345
  rm -f -- "$DEPENDENCY_STAMP"
1343
1346
  dependency_install || fail 'bun.lock mismatch; dependency installation failed'
1344
1347
  write_dependency_stamp
@@ -1362,6 +1365,8 @@ if [[ "$MODE" == install ]]; then
1362
1365
  step services install_services
1363
1366
  step tools install_tools
1364
1367
  step shell install_shell_environment
1368
+ # Login routes read the installed profile, so they are checked after it.
1369
+ step routes verify_bun_routes
1365
1370
  step dependencies install_dependencies
1366
1371
  @PREPARE_STEP@
1367
1372
  exit 0
@@ -1562,7 +1567,7 @@ const releasedSessionStartHook = (script) => ({
1562
1567
  fi`
1563
1568
  }]
1564
1569
  });
1565
- const sessionStartHook = (script) => ({
1570
+ const releasedTemporaryFileHook = (script) => ({
1566
1571
  matcher: "",
1567
1572
  hooks: [{
1568
1573
  type: "command",
@@ -1603,6 +1608,52 @@ $cloud_shell_exports"
1603
1608
  fi`
1604
1609
  }]
1605
1610
  });
1611
+ const sessionStartHook = (script) => ({
1612
+ matcher: "",
1613
+ hooks: [{
1614
+ type: "command",
1615
+ command: `if [ "\${CLAUDE_CODE_REMOTE:-}" = "true" ]; then
1616
+ cloud_setup_incomplete() {
1617
+ printf '%s\\n' 'Cloud setup could not establish a verified session environment. From the repository root, run bash .agents/cloud-setup.sh install and then bash .agents/cloud-setup.sh start. Do not assume pinned tools or services are ready until start succeeds.'
1618
+ printf '%s\\n' "cloud-setup: $1" >&2
1619
+ exit 0
1620
+ }
1621
+ if [ -n "\${CLAUDE_ENV_FILE:-}" ]; then
1622
+ cloud_session_exports="$(${script} session)" || cloud_setup_incomplete 'startup failed; run install'
1623
+ else
1624
+ ${script} start >&2 || cloud_setup_incomplete 'startup failed; run install'
1625
+ exit 0
1626
+ fi
1627
+ if [ -n "\${CLAUDE_ENV_FILE:-}" ]; then
1628
+ if [ ! -s ${cloudShellProfilePath} ]; then
1629
+ cloud_setup_incomplete 'cloud shell profile is unavailable; run install'
1630
+ fi
1631
+ cloud_shell_exports="$(cat ${cloudShellProfilePath})" || cloud_setup_incomplete 'cloud shell profile could not be read; run install'
1632
+ [ -n "$cloud_shell_exports" ] || cloud_setup_incomplete 'cloud shell profile is unavailable; run install'
1633
+ if [ -e "$CLAUDE_ENV_FILE" ] || [ -L "$CLAUDE_ENV_FILE" ]; then
1634
+ [ -f "$CLAUDE_ENV_FILE" ] && [ ! -L "$CLAUDE_ENV_FILE" ] || cloud_setup_incomplete 'session environment must be a regular file; check its path and rerun start'
1635
+ fi
1636
+ cloud_env_snapshot="\${CLAUDE_ENV_FILE}.stll-cloud"
1637
+ case "$cloud_env_snapshot" in
1638
+ *"'"*) cloud_setup_incomplete 'session environment path must not contain a single quote; check its path and rerun start' ;;
1639
+ esac
1640
+ if [ -n "$cloud_session_exports" ]; then
1641
+ cloud_session_exports="$cloud_session_exports
1642
+ $cloud_shell_exports"
1643
+ else
1644
+ cloud_session_exports="$cloud_shell_exports"
1645
+ fi
1646
+ cloud_env_temporary="$(umask 077; mktemp "\${cloud_env_snapshot}.XXXXXX")" || cloud_setup_incomplete 'session environment could not be prepared; check its write access and rerun start'
1647
+ printf '%s\\n' "$cloud_session_exports" > "$cloud_env_temporary" || { rm -f -- "$cloud_env_temporary"; cloud_setup_incomplete 'session environment could not be prepared; check its write access and rerun start'; }
1648
+ mv -f -- "$cloud_env_temporary" "$cloud_env_snapshot" || { rm -f -- "$cloud_env_temporary"; cloud_setup_incomplete 'session environment could not be persisted; check its write access and rerun start'; }
1649
+ cloud_env_source=". '$cloud_env_snapshot'"
1650
+ if [ ! -f "$CLAUDE_ENV_FILE" ] || ! grep -Fqx -- "$cloud_env_source" "$CLAUDE_ENV_FILE"; then
1651
+ printf '\\n%s\\n' "$cloud_env_source" >> "$CLAUDE_ENV_FILE" || cloud_setup_incomplete 'session environment could not be persisted; check its write access and rerun start'
1652
+ fi
1653
+ fi
1654
+ fi`
1655
+ }]
1656
+ });
1606
1657
  const currentMainSessionStartHook = (script) => ({
1607
1658
  matcher: "",
1608
1659
  hooks: [{
@@ -1629,7 +1680,8 @@ const cloudSessionStartHook = sessionStartHook(`bash "$CLAUDE_PROJECT_DIR/${clou
1629
1680
  const previousCloudSessionStartHooks = [
1630
1681
  releasedSessionStartHook(`bash ${cloudSetupPath}`),
1631
1682
  releasedSessionStartHook(`bash "$CLAUDE_PROJECT_DIR/${cloudSetupPath}"`),
1632
- currentMainSessionStartHook(`bash "$CLAUDE_PROJECT_DIR/${cloudSetupPath}"`)
1683
+ currentMainSessionStartHook(`bash "$CLAUDE_PROJECT_DIR/${cloudSetupPath}"`),
1684
+ releasedTemporaryFileHook(`bash "$CLAUDE_PROJECT_DIR/${cloudSetupPath}"`)
1633
1685
  ];
1634
1686
  const cloudAttribution = {
1635
1687
  commit: "",