WeKnora deployment source with the reviewed wiki identity, summary and recovery fixes
Anydoc / anydoc parser engine (push) Canceled after 0s
App / Format, vet, test, and build (push) Canceled after 0s
CLI / test (macos-latest / go 1.26) (push) Canceled after 0s
CLI / test (ubuntu-latest / go 1.26) (push) Canceled after 0s
CLI / test (windows-latest / go 1.26) (push) Canceled after 0s
Build and Push Docker Image / build-ui (push) Canceled after 0s
Build and Push Docker Image / build-docreader (push) Canceled after 0s
Build and Push Docker Image / build-sandbox (push) Canceled after 0s
Build and Push Docker Image / build-app (amd64, linux/amd64, ubuntu-latest) (push) Canceled after 0s
Build and Push Docker Image / build-app (arm64, linux/arm64, ubuntu-24.04-arm) (push) Canceled after 0s
DocReader / Python tests and Go client tests (push) Canceled after 0s
Build & Publish (dsh-weknora) / Typecheck, test, pack (push) Canceled after 0s
Build & Publish (dsh-weknora) / End-to-end inside dsh (pinned) (push) Canceled after 0s
Build & Publish (dsh-weknora) / End-to-end inside dsh (latest, advisory) (push) Canceled after 0s
Frontend / Test, type-check, and build (push) Canceled after 0s
Go Lint Cache / warm lint cache (.) (push) Canceled after 0s
Go Lint Cache / warm lint cache (cli) (push) Canceled after 0s
Go Lint Cache / warm lint cache (client) (push) Canceled after 0s
Build & Publish (mcp-server) / Test (Python 3.10) (push) Canceled after 0s
Build & Publish (mcp-server) / Test (Python 3.11) (push) Canceled after 0s
Build & Publish (mcp-server) / Test (Python 3.12) (push) Canceled after 0s
Build & Publish (mcp-server) / Test (Python 3.13) (push) Canceled after 0s
Build and Push Docker Image / merge (push) Canceled after 0s
Build & Publish (dsh-weknora) / Publish to npm (push) Canceled after 0s
Build & Publish (mcp-server) / Build sdist + wheel (push) Canceled after 0s
Build & Publish (mcp-server) / Publish to PyPI (push) Canceled after 0s

This commit is contained in:
yawan
2026-09-22 16:19:06 +08:00
commit f7fc992f57
3929 changed files with 1006607 additions and 0 deletions
@@ -0,0 +1,34 @@
CREATE TABLE IF NOT EXISTS resumable_uploads (
id VARCHAR(36) PRIMARY KEY,
tenant_id BIGINT NOT NULL REFERENCES tenants(id),
owner_id VARCHAR(36) NOT NULL REFERENCES users(id),
kind VARCHAR(32) NOT NULL CHECK(kind IN ('knowledge','digital-human')),
target_id VARCHAR(36) NOT NULL,
name TEXT NOT NULL,
size BIGINT NOT NULL CHECK(size > 0 AND size <= 21474836480),
"offset" BIGINT NOT NULL DEFAULT 0,
chunk_size BIGINT NOT NULL DEFAULT 4194304,
sha256 VARCHAR(64) NOT NULL DEFAULT '',
fingerprint VARCHAR(128) NOT NULL DEFAULT '',
state VARCHAR(24) NOT NULL DEFAULT 'uploading',
error TEXT NOT NULL DEFAULT '',
options JSONB NOT NULL DEFAULT '{}',
result JSONB NOT NULL DEFAULT '{}',
ingest_offset BIGINT NOT NULL DEFAULT 0,
part INTEGER NOT NULL DEFAULT 0,
expires_at TIMESTAMPTZ NOT NULL,
lease_until TIMESTAMPTZ,
lease_token VARCHAR(36) NOT NULL DEFAULT '',
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
);
CREATE INDEX IF NOT EXISTS resumable_upload_owner ON resumable_uploads(tenant_id,owner_id,created_at DESC);
CREATE INDEX IF NOT EXISTS resumable_upload_queue ON resumable_uploads(state,lease_until,created_at);
CREATE INDEX IF NOT EXISTS resumable_upload_expiry ON resumable_uploads(expires_at);
CREATE TABLE IF NOT EXISTS resumable_upload_chunks (
upload_id VARCHAR(36) NOT NULL REFERENCES resumable_uploads(id) ON DELETE CASCADE,
"offset" BIGINT NOT NULL,
size BIGINT NOT NULL CHECK(size > 0 AND size <= 4194304),
sha256 VARCHAR(64) NOT NULL,
PRIMARY KEY(upload_id,"offset")
);