Integrate suffixed encrypted storage across extraction, review, training, and inference. Add shared-password web authentication with two-hour sessions, private request logging, and an isolated profile-building pipeline.
Fix encrypted dataset discovery at training entrypoints and duplicate CSV imports. Add synthetic storage, authentication, and log checks; update documentation and frontend assets.
Address Sourcery review feedback - use client.base_url instead of
hardcoding http://127.0.0.1:8005 so the error message stays in sync
if the base URL configuration changes.
Add _check_api_server() that probes GET /v1/models before the test loop
starts. When the server is not running, the user now gets a clear error
message with the exact command to start it instead of a cryptic
connection-refused traceback.
Co-Authored-By: Octopus <liyuan851277048@icloud.com>