Commit 4d522d6
Francisco
feat: enforce secure file generation with mandatory tempfile.tempdir and path confinement
Mandate import tempfile; tempfile.tempdir = "/app/generated_files" as first line in all file-generating scripts
Enforce all file I/O to use /app/generated_files/ exclusively — no relative paths or /tmp
Require explicit file verification via os.path.exists() after save
Update code_interpreter tool definition with non-negotiable rules for docx, xlsx, and plot generation
Align with system-wide sticky instruction to eliminate silent failures
Remove ambiguity: all file outputs are now guaranteed to be saved, verified, and upload-ready
This change transforms file generation from error-prone to deterministic — enabling reliable, secure, production-grade document and asset creation within the sandbox.1 parent f49f5cf commit 4d522d6
3 files changed
Lines changed: 34 additions & 18 deletions
File tree
- src/api/entities_api
- orchestration/instructions
- platform_tools/definitions
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
413 | 413 | | |
414 | 414 | | |
415 | 415 | | |
416 | | - | |
| 416 | + | |
417 | 417 | | |
418 | 418 | | |
419 | 419 | | |
| |||
Lines changed: 2 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
| 2 | + | |
2 | 3 | | |
3 | 4 | | |
4 | 5 | | |
| |||
Lines changed: 31 additions & 16 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
7 | | - | |
8 | | - | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
14 | | - | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
19 | 32 | | |
20 | 33 | | |
21 | 34 | | |
22 | 35 | | |
23 | 36 | | |
24 | 37 | | |
25 | 38 | | |
26 | | - | |
27 | | - | |
28 | | - | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
29 | 44 | | |
30 | 45 | | |
31 | 46 | | |
| |||
0 commit comments