Backend, sync, infra, docs: ETag, API versioning, k8s, web scaffold, Android 16, domain stubs
- Backend: ShallowEtagHeaderFilter for /api/v1/*, API-VERSIONING.md, README (tenant, CORS, Flyway, ETag) - k8s: backend-deployment.yaml (Deployment, Service, Secret/ConfigMap) - Web: scaffold with directory pull, 304 handling, touch-friendly UI - Android 16: ANDROID-16-TARGET.md; BuildConfig STUN/signaling, SMOAApplication configures InfrastructureManager - Domain: CertificateManager revocation stub, ReportService signReports, ZeroTrust/ThreatDetection minimal docs - TODO.md and IMPLEMENTATION_STATUS.md updated; communications README for endpoint config Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
82
backend/src/main/resources/db/migration/V1__baseline.sql
Normal file
82
backend/src/main/resources/db/migration/V1__baseline.sql
Normal file
@@ -0,0 +1,82 @@
|
||||
-- SMOA Backend baseline schema (H2 and PostgreSQL compatible)
|
||||
-- For existing DBs created with ddl-auto: update, run: flyway baseline -baselineVersion=1
|
||||
|
||||
CREATE TABLE IF NOT EXISTS directory_entries (
|
||||
id VARCHAR(255) NOT NULL PRIMARY KEY,
|
||||
name VARCHAR(255) NOT NULL,
|
||||
title VARCHAR(255),
|
||||
unit VARCHAR(255) NOT NULL,
|
||||
phone_number VARCHAR(255),
|
||||
extension VARCHAR(255),
|
||||
email VARCHAR(255),
|
||||
secure_routing_id VARCHAR(255),
|
||||
role VARCHAR(255),
|
||||
clearance_level VARCHAR(255),
|
||||
last_updated BIGINT NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS orders (
|
||||
order_id VARCHAR(255) NOT NULL PRIMARY KEY,
|
||||
order_type VARCHAR(255) NOT NULL,
|
||||
title VARCHAR(255) NOT NULL,
|
||||
content CLOB NOT NULL,
|
||||
issued_by VARCHAR(255) NOT NULL,
|
||||
issued_to VARCHAR(255),
|
||||
issue_date TIMESTAMP NOT NULL,
|
||||
effective_date TIMESTAMP NOT NULL,
|
||||
expiration_date TIMESTAMP,
|
||||
status VARCHAR(255) NOT NULL,
|
||||
classification VARCHAR(255),
|
||||
jurisdiction VARCHAR(255),
|
||||
case_number VARCHAR(255),
|
||||
updated_at BIGINT NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS evidence (
|
||||
evidence_id VARCHAR(255) NOT NULL PRIMARY KEY,
|
||||
case_number VARCHAR(255) NOT NULL,
|
||||
description CLOB NOT NULL,
|
||||
evidence_type VARCHAR(255) NOT NULL,
|
||||
collection_date TIMESTAMP NOT NULL,
|
||||
collection_location VARCHAR(255) NOT NULL,
|
||||
collection_method VARCHAR(255) NOT NULL,
|
||||
collected_by VARCHAR(255) NOT NULL,
|
||||
current_custodian VARCHAR(255) NOT NULL,
|
||||
storage_location VARCHAR(255),
|
||||
updated_at BIGINT NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS credentials (
|
||||
credential_id VARCHAR(255) NOT NULL PRIMARY KEY,
|
||||
holder_id VARCHAR(255) NOT NULL,
|
||||
credential_type VARCHAR(255) NOT NULL,
|
||||
issuer VARCHAR(255),
|
||||
issued_at BIGINT,
|
||||
expires_at BIGINT,
|
||||
payload_json CLOB,
|
||||
updated_at BIGINT NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS reports (
|
||||
report_id VARCHAR(255) NOT NULL PRIMARY KEY,
|
||||
report_type VARCHAR(255) NOT NULL,
|
||||
title VARCHAR(255) NOT NULL,
|
||||
format VARCHAR(255),
|
||||
generated_date BIGINT NOT NULL,
|
||||
generated_by VARCHAR(255) NOT NULL,
|
||||
content BLOB,
|
||||
metadata_json CLOB,
|
||||
updated_at BIGINT NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS sync_audit_log (
|
||||
id BIGINT GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
|
||||
resource_type VARCHAR(255) NOT NULL,
|
||||
resource_id VARCHAR(255) NOT NULL,
|
||||
operation VARCHAR(255) NOT NULL,
|
||||
success BOOLEAN NOT NULL,
|
||||
principal VARCHAR(255),
|
||||
timestamp TIMESTAMP NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_sync_audit_timestamp ON sync_audit_log(timestamp);
|
||||
Reference in New Issue
Block a user