Juan Denis and Claude Opus 4.8
2483541356
fix(storage): create the config file's own dir in save_config
...
save_config() ran os.makedirs(SERVERKIT_CONFIG_DIR) unconditionally rather
than the directory of the file it actually writes (cls.CONFIG_FILE). When a
caller overrides CONFIG_FILE (test_storage_secret_encrypted_at_rest points it
at a pytest tmp dir), creating the real config dir failed on the sandboxed CI
runner and — because the surrounding except swallows it and returns
{success: False} — the file was never written, surfacing as a confusing
FileNotFoundError. Now makedirs(dirname(CONFIG_FILE)); production behavior is
unchanged (there dirname(CONFIG_FILE) == SERVERKIT_CONFIG_DIR). 8/8 encryption
tests pass; full backend suite was 241 passed / 1 failed -> now green.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-15 23:55:03 -04:00
..
2026-01-17 04:22:12 -05:00
2026-06-15 00:52:30 -04:00
2026-03-23 01:46:41 -04:00
2026-06-12 18:35:35 -04:00
2026-06-12 18:35:52 -04:00
2026-06-01 02:39:05 -04:00
2026-06-01 02:39:05 -04:00
2026-06-01 02:39:05 -04:00
2026-01-22 18:11:22 -05:00
2026-03-04 01:53:46 -05:00
2026-03-04 01:53:46 -05:00
2026-05-03 15:57:02 -04:00
2026-03-23 02:27:52 -04:00
2026-03-04 00:02:52 -05:00
2026-03-23 01:58:28 -04:00
2026-03-23 02:27:52 -04:00
2026-06-15 10:47:59 -04:00
2026-06-15 10:47:59 -04:00
2026-05-05 14:03:31 -04:00
2026-06-01 02:39:05 -04:00
2026-03-23 01:58:28 -04:00
2026-06-15 00:01:41 -04:00
2026-05-31 22:39:57 -04:00
2026-04-29 00:39:16 -04:00
2026-04-29 00:39:16 -04:00
2026-03-04 00:02:52 -05:00
2026-03-23 01:58:28 -04:00
2026-03-04 02:34:49 -05:00
2026-06-15 19:55:57 -04:00
2026-03-23 02:18:26 -04:00
2026-05-03 06:12:39 -04:00
2026-03-04 02:34:49 -05:00
2026-06-15 09:19:56 -04:00
2026-03-04 02:34:49 -05:00
2026-01-18 00:40:41 -05:00
2026-01-28 21:12:55 -05:00
2026-01-27 19:35:21 -05:00
2026-06-01 02:22:51 -04:00
2026-05-31 22:39:57 -04:00
2026-06-01 02:27:52 -04:00
2026-03-23 01:58:28 -04:00
2026-02-10 08:09:38 -05:00
2026-03-23 01:58:28 -04:00
2026-03-04 00:02:52 -05:00
2026-03-23 01:58:28 -04:00
2026-05-03 06:28:21 -04:00
2026-06-01 02:27:52 -04:00
2026-01-21 21:31:57 -05:00
2026-03-04 02:34:49 -05:00
2026-03-04 00:02:52 -05:00
2026-06-01 02:39:05 -04:00
2026-01-22 08:51:31 -05:00
2026-06-06 23:29:22 -04:00
2026-03-24 06:10:58 -04:00
2026-03-23 02:19:33 -04:00
2026-06-15 23:20:00 -04:00
2026-01-22 18:11:22 -05:00
2026-01-28 21:12:55 -05:00
2026-03-04 01:53:46 -05:00
2026-05-31 16:08:32 -04:00
2026-03-04 02:34:49 -05:00
2026-03-04 00:02:52 -05:00
2026-06-01 02:39:05 -04:00
2026-06-15 09:19:56 -04:00
2026-01-19 02:35:18 -05:00
2026-03-04 00:02:52 -05:00
2026-03-23 01:58:28 -04:00
2026-06-15 19:43:00 -04:00
2026-05-01 05:52:11 -04:00
2026-05-01 01:54:17 -04:00
2026-05-03 05:10:01 -04:00
2026-05-01 03:37:33 -04:00
2026-05-01 04:33:08 -04:00
2026-05-01 04:42:30 -04:00
2026-05-01 04:33:08 -04:00
2026-05-03 07:07:57 -04:00
2026-06-05 23:04:06 -04:00
2026-01-25 20:01:07 -05:00
2026-03-04 02:34:49 -05:00
2026-02-10 08:09:38 -05:00
2026-01-22 08:51:31 -05:00
2026-06-12 18:35:35 -04:00
2026-06-15 00:52:30 -04:00
2026-06-15 00:52:30 -04:00
2026-06-15 19:55:57 -04:00
2026-06-15 09:19:56 -04:00
2026-03-04 02:34:49 -05:00
2026-03-04 00:02:52 -05:00
2026-03-04 01:37:22 -05:00
2026-06-01 00:47:26 -04:00
2026-06-15 23:55:03 -04:00
2026-03-04 00:02:52 -05:00
2026-06-06 23:29:22 -04:00
2026-01-22 16:44:06 -05:00
2026-01-18 01:03:56 -05:00
2026-06-15 23:28:12 -04:00
2026-06-15 23:28:12 -04:00
2026-06-15 23:20:00 -04:00
2026-01-17 13:37:40 -05:00
2026-05-31 22:39:57 -04:00
2026-01-27 19:35:21 -05:00
2026-06-15 21:59:59 -04:00
2026-05-01 03:37:33 -04:00
2026-01-28 21:12:55 -05:00
2026-06-15 21:00:57 -04:00
2026-06-15 22:06:58 -04:00
2026-06-01 03:04:03 -04:00
2026-06-01 01:57:43 -04:00
2026-06-01 02:27:52 -04:00
2026-06-01 01:45:20 -04:00