69 lines
2.2 KiB
Markdown
69 lines
2.2 KiB
Markdown
# 2026-07-10 R9 Send-file sandbox evidence gate
|
|
|
|
## Decision
|
|
|
|
Local development still cannot log in to iSphere/IMPlatformClient, so real file upload must not be enabled from local-only evidence.
|
|
|
|
R9 prepares a one-pass online/internal sandbox package for collecting the missing evidence. The package is intentionally operator-driven:
|
|
|
|
- it does not click, type, upload, hook, inject, or send automatically;
|
|
- the operator manually sends exactly one approved sandbox file;
|
|
- before/after read-only recorder output and completed operator fields are returned for validation;
|
|
- production `isphere_send_file` remains blocked until the returned package passes validation.
|
|
|
|
## Package
|
|
|
|
Builder:
|
|
|
|
```powershell
|
|
powershell -NoProfile -ExecutionPolicy Bypass -File scripts\package-send-file-sandbox-gate.ps1
|
|
```
|
|
|
|
Verifier:
|
|
|
|
```powershell
|
|
powershell -NoProfile -ExecutionPolicy Bypass -File scripts\verify-send-file-sandbox-gate-package.ps1
|
|
```
|
|
|
|
Expected generated zip:
|
|
|
|
```text
|
|
runs\send-file-sandbox-gate-package.zip
|
|
```
|
|
|
|
## Returned-package validator
|
|
|
|
Use this after an online/internal sandbox operator returns a zip:
|
|
|
|
```powershell
|
|
powershell -NoProfile -ExecutionPolicy Bypass -File scripts\validate-returned-send-file-sandbox-package.ps1 -ZipPath <returned-zip> -Strict
|
|
```
|
|
|
|
The validator checks only sanitized booleans/counts/metadata:
|
|
|
|
- target fields are present;
|
|
- `ISPHERE_SEND_FILE_ALLOWED_DIR` is recorded;
|
|
- `sandbox_file_path`, `file_sha256`, `file_size_bytes`, and `idempotency_key` are present;
|
|
- before and after recorder output exists;
|
|
- operator timestamps are present;
|
|
- file upload/sent-record evidence is present;
|
|
- duplicate second file send was not attempted;
|
|
- `production_file_send_enabled=false`.
|
|
|
|
## Current status
|
|
|
|
No returned R9 package has been reviewed in this repository state.
|
|
|
|
`isphere_send_file` remains preview/idempotency/audit only:
|
|
|
|
- `send_file_preview_tool_present=true`
|
|
- `send_file_duplicate_detected=true`
|
|
- `send_file_conflict_blocked=true`
|
|
- `send_file_production_enabled=false`
|
|
|
|
## Next decision
|
|
|
|
If a returned package passes `strict_file_gate_pass`, the next implementation round may design a gated file-upload connector path.
|
|
|
|
If no returned package is available, keep file sending at preview only and continue local-safe rounds.
|