fix(deploy): bind port immediately and warm up models in backgroundRunning
Andrej Janchevski
93b17d3
HF Spaces marked the container unhealthy ("Launch timed out, workload
was not healthy after 30 min") because gunicorn only bound :7860 after
the checkpoint download and the --preload ModelRegistry init (COINs
graph metrics) had finished.
- entrypoint.sh: drop the blocking snapshot_download pre-warm and
--preload; exec gunicorn straight away
- ModelRegistry.start_background_initialize() runs initialize() in a
daemon thread from ApiConfig.ready(); get() raises 503
MODEL_UNAVAILABLE until ready
- /health always returns 200 with status ok | warming_up | error and a
warmup progress object
- frontend: WarmupBanner polls /health and shows a loading state;
apiError reads the error envelope; SystemStatus reads models_loaded
- docs: backend README, api.yaml, architecture / lifecycle docs
docs(deploy): refresh for the post-launch deployment iteration
Andrej Janchevski
5ed6f37
Captures the architecture and operational decisions made during the
local Docker bring-up: the unified RESEARCH_ROOT / CHECKPOINTS_ROOT
layout, the single preloaded gunicorn worker, the AppConfig skip-list
for management commands, the share_memory and TransE-init dim-
expansion monkey-patches around experiment.prepare(), the MultiProx
symmetry safeguard, the bundled Loader caches that keep cold-start
RAM under control, and the WSL2 / shm_size requirements for running
the container locally.
Also corrects every HF Hub reference to the case-sensitive Bani57
namespace (account is registered as "Bani57", not "bani57"), and
clarifies the HF_TOKEN env var as recommended (read-scope token
lifts anonymous rate limits and roughly triples cold-start download
throughput; required only for private repos).
docs: add technical documentation set
Andrej Janchevski
175b650
Lays out a docs/ tree in Diataxis layout and rewires the three
README files (top-level, src/backend, src/frontend) as thin routing
layers that delegate the depth to docs/.
- docs/glossary.md owns every domain term (COINs, MultiProxAn, query
structure, SSE, inference lock, state blob, HF Space, …); other
docs link in on first mention rather than redefining.
- docs/explanation/{architecture,research-methods,inference-lifecycle}.md
cover container topology, what each demo computes scientifically,
and the boot/lazy-load/lock sequence. Mermaid diagrams for the
request flow and container lifecycle.
- docs/reference/{api,sse-protocol,backend-services,frontend-modules}.md
describe endpoints, the streaming wire format, every Python service
module, and every frontend store / composable / component group.
- docs/guides/{local-development,deploy}.md walk through setting up
website_c locally and publishing a release to the HF Space (with
Space secrets, checkpoint refresh, and ro…