docs: integrate static frontend architecture

This commit is contained in:
brother7 committed 2026-08-16 21:02:42 +08:00
1 parent b14b4fced7
commit bb50d06d1d
13 files changed
+243 -82

No files matched your search

+12 -4
View File
@@ -19,19 +19,27 @@ The project exists to give organizations an Alibaba Cloud ACK-deployable AI crea
- This project does not aim to be a model-training, dataset, or labeling platform.
- It is not a public social sharing site; assets stay account and organization scoped.
- In the current version it is not a horizontally auto-scaled multi-region SaaS: one Web replica until generated assets move to shared OSS.
- In the current version it is not a horizontally auto-scaled multi-region
SaaS: the static Web is stateless, but Go remains one replica until generated
and uploaded assets move to shared OSS.
## Core Constraints
- Same-origin browser authentication through signed, chunked `zhinian_session` cookies with per-request account/organization/sessionVersion revalidation.
- Production persistence fails closed: explicit RDS PostgreSQL through a server-only adapter; local JSON is development/test only.
- Production persistence fails closed: explicit RDS PostgreSQL through the Go
PostgreSQL Adapter; local JSON is development/test only.
- Production Web is a static export on Nginx. Browser runtime requests stay
same-origin and all API/file/auth behavior belongs to Go.
- Cross-instance concurrency stays in PostgreSQL: `claim_generation_jobs` for job claims and `billing_post_wallet_entry` for wallet idempotency; no process-local lock replacements.
- Chinese-first product surfaces; production deployment targets Alibaba Cloud ACK.
## Quality Bar
A good solution should preserve current HTTP/Cookie/authorization behavior, keep provider, billing, and storage semantics idempotent and tenant-scoped, pass the executable contract tests under `contracts/`, and remain reversible through a single-writer cutover.
A good solution should preserve current HTTP/Cookie/authorization behavior,
keep provider, billing, and storage semantics idempotent and tenant-scoped,
pass the executable contracts under `contracts/`, and keep the static Web/Go
runtime boundary mechanically testable.
## Last Reviewed
2026-08-14
2026-08-16