BrunoGao
1ae6eb6416
feat(health): stage Contabo production migration ( #360 )
...
Adds a manual-only Contabo canary path, Traefik overlays, fail-closed migration gates, and contract tests.
Refs lingjingwanxiang/ljwx-health#390
Refs lingjingwanxiang/ljwx-health#395
2026-08-02 17:20:07 +08:00
BrunoGao
6833e1253a
feat(ops): prefer cross-zone health replicas ( #359 )
...
Add zone-first and hostname-fallback soft scheduling preferences plus a deploy-gate contract test.
Refs https://github.com/lingjingwanxiang/ljwx-health/issues/390
Refs https://github.com/lingjingwanxiang/ljwx-health/issues/395
2026-08-02 09:17:13 +08:00
BrunoGao
94806b6876
Remove temporary LJWX Health legacy cleanup resources ( #358 )
...
Remove the successful one-shot cleanup hook and its ordinary least-privilege RBAC so Argo prunes the last temporary resources while preserving the audit evidence.
2026-08-01 05:15:05 +08:00
BrunoGao
96db8706b5
Delete retired LJWX Health hook orphans through GitOps ( #357 )
...
Run an exact-name, least-privilege PostSync deletion for the hook objects that Argo does not ordinary-prune. Keep temporary cleanup RBAC tracked for a final GitOps prune after observed deletion.
2026-08-01 05:05:03 +08:00
BrunoGao
188cd35e41
Adopt retired LJWX Health hooks for GitOps pruning ( #356 )
...
Temporarily adopt the exact retired hook object names as empty, permissionless ordinary resources so Argo CD can track and prune them through a follow-up GitOps revision.
2026-08-01 04:59:15 +08:00
BrunoGao
2b2cd69428
Retire legacy LJWX Health PostgreSQL schema paths ( #355 )
...
Retire the duplicate PostgreSQL SQL ConfigMap/init/repair path after verified production adoption, qualified restore, and the repaired N/N-1/N compatibility window. Preserve ClickHouse SQL, immutable audit history, backups, and signed digest-only schema delivery.
2026-08-01 04:49:03 +08:00
BrunoGao
0f7f812907
ops(health): deactivate completed restore drill ( #354 )
2026-08-01 03:40:53 +08:00
BrunoGao
7345fa7342
ops(health): restore latest qualified backup ( #353 )
2026-08-01 03:10:11 +08:00
BrunoGao
45256de506
fix(restore): authorize signed pre-adoption plan ( #352 )
2026-08-01 02:53:14 +08:00
BrunoGao
9f4c1fda01
fix(restore): allow exact k3s API endpoint ( #351 )
2026-08-01 02:35:42 +08:00
BrunoGao
8a7e6469d0
fix(restore): prepare volume modes before ownership ( #350 )
2026-08-01 02:23:29 +08:00
BrunoGao
6b220a414e
ops(health): run pre-adoption schema restore drill ( #349 )
2026-08-01 02:15:21 +08:00
BrunoGao
16d1c987cd
ops(postgres): schedule post-adoption differential backup ( #347 )
2026-08-01 02:08:51 +08:00
BrunoGao
5772d2f3d0
feat(restore): add application-level schema restore drill ( #348 )
...
* ops(health): smoke immutable app after schema restore
* ci: silence trap-only shellcheck paths
2026-08-01 02:07:42 +08:00
BrunoGao
b236ed97ce
chore(ljwx-health): activate restore drill read boundary ( #346 )
2026-07-31 20:02:18 +08:00
BrunoGao
7de60242c5
feat(ljwx-health): project adopted schema release facts ( #345 )
2026-07-31 19:48:23 +08:00
BrunoGao
8dd9827602
fix(ljwx-health): resume completed schema upgrade retries ( #344 )
...
Verify the complete signed schema before retrying adoption-plan upgrades and report exact fingerprint mismatches.
2026-07-31 18:43:21 +08:00
BrunoGao
fc9dbaa9d1
fix(cluster): preserve registry-specific pull credentials ( #343 )
...
Sync Harbor and GHCR Docker credentials from distinct source Secrets, avoid client-side secret annotations, and preserve Harbor-only default ServiceAccount binding.
2026-07-31 18:33:34 +08:00
BrunoGao
f35f8a4c00
fix(ljwx-health): stage signed schema release before adoption ( #342 )
...
Create the immutable signed schema Release ConfigMap at PreSync wave -3 and preserve the ordering in future promotions.
2026-07-31 11:29:41 +08:00
BrunoGao
d02154f0d0
fix(ljwx-health): order schema bootstrap before PreSync job ( #341 )
...
Create bootstrap ServiceAccount and RBAC as wave -3 PreSync hooks before the wave -2 schema adoption Job.
2026-07-31 11:23:31 +08:00
BrunoGao
9d331f95c2
feat(ljwx-health): add isolated schema restore drill foundation ( #340 )
...
* feat(ljwx-health): add isolated schema restore drill foundation
* fix(ljwx-health): verify Cosign v3 custom bindings
* test(ljwx-health): cover production binding envelope
* fix(ljwx-health): isolate restore drill API token
* fix(ljwx-health): split restore drill cross-namespace RBAC
* fix(ljwx-health): annotate trap-only cleanup
2026-07-31 10:21:56 +08:00
BrunoGao
b0a034b238
fix(schema): bootstrap migrator with signed runner image ( #339 )
...
Refs #335 and lingjingwanxiang/ljwx-health#713 .
Use only the signed schema-runner image and resource-scoped Kubernetes API access for the one-time migrator credential bootstrap.
2026-07-31 09:04:38 +08:00
BrunoGao
1aa41d4c34
fix(postgres): make backup verification shell-free ( #338 )
...
Refs #335 and lingjingwanxiang/ljwx-health#713 .
Replace the failed report pod with shell-free verification and preserve the successful pgBackRest recovery chain.
2026-07-31 08:52:07 +08:00
BrunoGao
3ad88f6093
ops(postgres): add Phase 5 pre-adoption backup gate ( #337 )
...
Refs #335 and lingjingwanxiang/ljwx-health#713 .
Run and report the required GitOps-owned pgBackRest backup before schema adoption. The later cleanup PR removes this one-time Job after evidence is archived.
2026-07-31 08:45:03 +08:00
BrunoGao
7f8f3bc42a
feat(ljwx-health): consume signed schema bundles via GitOps ( #336 )
...
Closes #335 foundation slice
Refs lingjingwanxiang/ljwx-health#713
The schema package remains dormant until a validated v2 Release receipt activates it.
2026-07-31 08:20:20 +08:00
BrunoGao
c8b3d519ed
docs(db): classify LJWX Health schema bundle drift ( #334 )
...
Documents canonical-source drift classification for LJWX Health phase #709 .
Refs lingjingwanxiang/ljwx-health#709 .
2026-07-30 21:58:43 +08:00
BrunoGao
4f9185ff41
feat: enforce ljwx-health digest-only promotion ( #332 )
...
Refs #332
2026-07-30 20:21:36 +08:00
BrunoGao
512ada635a
feat(ljwx-health): deploy blueprint operations schema ( #331 )
...
* feat(ljwx-health): deploy blueprint operations schema
* chore: retrigger deploy gate
2026-07-29 05:50:42 +08:00
BrunoGao
6a715dd846
feat(ljwx-health): deploy IA17 tenant blueprint schema ( #330 )
...
* feat(ljwx-health): deploy tenant blueprint schema
* docs(ljwx-health): trace IA17 schema source
2026-07-29 04:22:13 +08:00
BrunoGao
920ee609ac
Merge pull request #329 from lingjingwanxiang/codex/issue-383-ia15-schema
...
feat(ljwx-health): deploy heartbeat current uniqueness
2026-07-28 23:42:47 +08:00
BrunoGao
b0adb9d144
Merge pull request #328 from lingjingwanxiang/codex/issue-383-ia14-columnstore
...
fix(ljwx-health): tolerate columnstore envelope constraint
2026-07-28 22:47:35 +08:00
BrunoGao
0efba2432d
Merge pull request #327 from lingjingwanxiang/codex/issue-383-ia14-schema
...
feat(ljwx-health): deploy resource provenance envelope schema
2026-07-28 22:40:02 +08:00
BrunoGao
fcdeb19fab
feat(ljwx-health): deploy temporal device binding schema ( #326 )
...
Refs https://github.com/lingjingwanxiang/ljwx-health/issues/383
2026-07-28 21:23:46 +08:00
BrunoGao
879aafe92c
feat(ljwx-health): deploy user position lifecycle schema ( #325 )
2026-07-28 20:14:48 +08:00
BrunoGao
549e2da497
fix(ljwx-health): roll out org manager assignment schema ( #324 )
2026-07-28 17:06:11 +08:00
BrunoGao
9230fe7078
fix(ljwx-health): roll out primary membership schema ( #323 )
2026-07-28 15:00:56 +08:00
BrunoGao
ec53059aa5
fix(ljwx-health): roll out health task scope ( #322 )
2026-07-28 13:53:33 +08:00
BrunoGao
35f37c1889
fix(ljwx-health): roll out device self-service scope ( #321 )
...
Refs https://github.com/lingjingwanxiang/ljwx-health/issues/383
2026-07-27 15:42:03 +08:00
BrunoGao
c7dc7bb9e7
fix(ljwx-health): roll out user feedback schema ( #320 )
...
* fix(ljwx-health): roll out user feedback schema
* test(ljwx-health): gate feedback schema rollout
2026-07-27 14:34:40 +08:00
BrunoGao
378e359a39
fix(ljwx-health): apply external alert purpose schema ( #319 )
2026-07-27 01:56:11 +08:00
BrunoGao
c7926295e9
fix(ljwx-health): roll out NO_TRAFFIC reconciliation status ( #318 )
...
Apply the five-value reconciliation status vocabulary through the K3s GitOps schema bundle and fail closed on stale or unvalidated constraints.
Refs: https://github.com/lingjingwanxiang/ljwx-health/issues/349
2026-07-26 10:29:01 +08:00
BrunoGao
12470dc7c5
fix(health): make IA-05 role migration PostgreSQL 18 compatible ( #317 )
...
Refs lingjingwanxiang/ljwx-health#383
2026-07-22 10:11:26 +08:00
BrunoGao
40ade10f6f
feat(health): converge tenant navigation schema ( #316 )
2026-07-22 10:01:32 +08:00
BrunoGao
8a750cb4e7
feat(ljwx-health): deploy authorization mutation grants ( #315 )
...
* feat(ljwx-health): deploy authorization mutation grants
* ci: refresh operations issue contract
2026-07-22 08:32:59 +08:00
BrunoGao
c34655931f
feat(ljwx-health): deploy authorization version facts ( #314 )
2026-07-22 07:15:10 +08:00
BrunoGao
e4936e777a
fix(health): deploy authorization relation RLS schema ( #313 )
...
* fix(health): deploy authorization relation RLS schema
* fix(health): derive relation tenant keys from owners
2026-07-22 06:25:59 +08:00
BrunoGao
4f68d5e9eb
fix(health): deploy mobile subject scope schema ( #312 )
2026-07-20 04:16:59 +08:00
BrunoGao
86fdcda98b
fix(health): preserve underscore in RLS verification ( #311 )
2026-07-19 21:07:14 +08:00
BrunoGao
e69c2bedbf
fix(gitops): trigger health schema hooks on bundle changes ( #310 )
2026-07-19 21:03:20 +08:00
BrunoGao
4bf87e5ba3
fix(health): deploy platform-default RLS policy ( #309 )
2026-07-19 21:00:43 +08:00
BrunoGao
44667c9ac9
fix(incident): start relay through ConfigMap symlink ( #308 )
2026-07-19 20:51:56 +08:00
BrunoGao
43fe777b11
feat(incident): enforce alert acknowledgement SLA ( #307 )
2026-07-19 20:48:46 +08:00
BrunoGao
a6533accc0
Merge pull request #306 from lingjingwanxiang/agent/storage-capacity-alerts-375
...
feat(health): deploy storage capacity alerts
2026-07-19 19:00:50 +08:00
BrunoGao
cb4acc8686
Merge pull request #305 from lingjingwanxiang/agent/health-collection-policy-schema-373
...
feat(health): deploy collection policy schema
2026-07-19 17:49:30 +08:00
BrunoGao
5b845d9c16
Merge pull request #304 from lingjingwanxiang/agent/health-shadow-init-fix-349
...
fix(health): make shadow datastore hooks idempotent
2026-07-19 17:32:59 +08:00
BrunoGao
a7113a98a4
Merge pull request #303 from lingjingwanxiang/agent/health-shadow-canary-349
...
feat(health): deploy governed shadow and score canaries (#349 , #355 )
2026-07-19 16:44:39 +08:00
BrunoGao
a66007da4e
fix(ljwx-health): align MinIO runtime credentials ( #302 )
2026-07-19 14:17:57 +08:00
BrunoGao
0d18d908d2
fix(ljwx-health): pin pre-sync DB identity ( #301 )
2026-07-19 14:00:42 +08:00
BrunoGao
c43fabbcf5
fix(ljwx-health): enforce restricted runtime DB role ( #300 )
2026-07-19 13:57:33 +08:00
BrunoGao
e0448b0683
feat(health): add bigscreen trial observability ( #299 )
2026-07-19 12:23:24 +08:00
BrunoGao
dd8599e1ca
Merge pull request #298 from lingjingwanxiang/agent/bigscreen-restore-allowlist-172
...
feat(health): restore bigscreen tenant-1 canary
2026-07-19 11:08:49 +08:00
BrunoGao
3371005e59
Merge pull request #297 from lingjingwanxiang/agent/bigscreen-rollback-rehearsal-172
...
test(health): rehearse bigscreen legacy rollback
2026-07-19 11:06:20 +08:00
BrunoGao
cf64406ca4
Merge pull request #296 from lingjingwanxiang/agent/bigscreen-allowlist-172
...
feat(health): allowlist tenant 1 for bigscreen cutover
2026-07-19 11:02:56 +08:00
BrunoGao
53135d713f
Merge pull request #295 from lingjingwanxiang/agent/restore-bigscreen-resource-172
...
fix(health): restore 5225 compatibility workload
2026-07-19 10:52:22 +08:00
BrunoGao
622ab4dfd1
Merge pull request #294 from lingjingwanxiang/agent/bigscreen-cutover-172-gitops
...
feat(health): configure safe bigscreen cutover defaults
2026-07-19 10:31:01 +08:00
BrunoGao
a35a5f347e
fix(cert-manager): rotate Cloudflare DNS credentials ( #293 )
...
* fix(cert-manager): rotate Cloudflare DNS credentials
* docs(cert-manager): clarify account token verification
2026-07-12 20:54:25 +08:00
BrunoGao
67b9673ee1
fix(health): rewrite public API gateway prefix ( #292 )
...
* fix(health): rewrite public API gateway prefix
* fix(ci): use cross-repo token for issue validation
2026-07-12 18:46:39 +08:00
BrunoGao
f8a7d98557
ci(health): enforce operations issue contracts ( #290 )
...
* ci(health): enforce operations issue contracts
* fix(ci): authenticate pinned ops gate fetch
* fix(ci): vendor tested operations gate
2026-07-12 18:31:38 +08:00
BrunoGao
ffc13f4287
fix(health): suppress Sa-Token configuration logger ( #291 )
2026-07-12 18:30:33 +08:00
BrunoGao
e13ef26120
fix(health): inject and rotate Sa-Token signing secret ( #289 )
2026-07-12 17:57:23 +08:00
BrunoGao
e0a861b20a
fix(ljwx-health): order schema config before hook ( #288 )
2026-07-11 08:48:39 +08:00
BrunoGao
1cfa358feb
fix(ljwx-health): execute Epic 360 schema rollout ( #287 )
2026-07-11 08:46:36 +08:00
BrunoGao
d325c6da66
feat(ljwx-health): add message chain alert rules ( #286 )
2026-07-11 08:26:57 +08:00
BrunoGao
477eea302f
feat(ops): close LJWX Health alert edge and PITR loops ( #285 )
...
Add the Feishu alert relay, dedicated in-cluster Cloudflare Tunnel, pgBackRest WAL/PITR operations, supporting Argo applications, and reproducible production drills.
2026-07-10 22:59:40 +08:00
BrunoGao
f77e477588
fix(ljwx-health): redact health dependency details ( #284 )
2026-07-10 21:17:20 +08:00
BrunoGao
90b5134afa
rollback(ljwx-health): restore Boot and fix OTLP transport ( #283 )
...
* fix(ljwx-health): use OTLP HTTP transport
* rollback(ljwx-health): restore healthy boot digest
2026-07-10 20:53:26 +08:00
BrunoGao
c98c6532d3
fix(ljwx-health): align TLS with Cloudflare edge ( #282 )
2026-07-10 20:36:40 +08:00
BrunoGao
2713658ad4
feat(ljwx-health): production operations baseline ( #281 )
2026-07-10 20:31:20 +08:00
BrunoGao
0b1838a17d
Merge pull request #275 from lingjingwanxiang/bot/queue-ljwx-platform-24564532535
...
queue(ljwx-platform): 20260417T122602Z-ljwx-platform-sha-dc7ec41
2026-04-17 20:26:05 +08:00
BrunoGao
632490bc09
fix(chat,openclaw): migrate ingress to nginx + omniverseai.net domain
2026-04-09 10:12:24 +08:00
BrunoGao
7adcf10040
fix(omni-website): point ArgoCD source to GitHub instead of Gitea
2026-04-09 10:08:28 +08:00
BrunoGao
1780f0a5b4
fix(omni-website): migrate ingress from traefik to nginx class
2026-04-09 10:04:51 +08:00
BrunoGao
f759285784
fix(n8n): use nginx ingress class for omniverseai.net domain
2026-04-09 09:32:33 +08:00
BrunoGao
6a8a829840
fix(n8n): change domain to n8n.omniverseai.net
2026-04-09 09:25:59 +08:00
BrunoGao
747bffcbdc
fix(n8n): use short sha tag (sha-60f94c9) to avoid pull issues
2026-04-09 09:20:31 +08:00
BrunoGao
74136a4363
fix(n8n): use image.tag instead of digest (chart doesn't support digest)
2026-04-09 09:13:33 +08:00
BrunoGao
4465d1cb8e
chore(n8n): deploy ljwx-n8n@60f94c9 -> sha256:e32ed434a91e9
2026-04-09 09:10:55 +08:00
BrunoGao
888153836d
feat: register omni-website-dev namespace and application in cluster kustomization
2026-04-08 14:34:19 +08:00
BrunoGao
797ddc3566
feat: add omni-website-dev ArgoCD application
2026-04-08 14:33:56 +08:00
BrunoGao
8f319aacd8
feat: add omni-website-dev namespace with quotas and limits
2026-04-08 14:33:47 +08:00
BrunoGao
c035fd62d0
feat: add omni-website dev overlay ingress with TLS
2026-04-08 14:33:38 +08:00
BrunoGao
2015e48026
feat: add omni-website dev overlay kustomization
2026-04-08 14:33:25 +08:00
BrunoGao
be976b90e6
feat: add omni-website base kustomization
2026-04-08 14:33:18 +08:00
BrunoGao
311774230f
feat: add omni-website base ingress manifest
2026-04-08 14:33:11 +08:00
BrunoGao
ec50198cde
feat: add omni-website base service manifest
2026-04-08 14:33:03 +08:00
BrunoGao
dd5fc2ec48
feat: add omni-website base deployment manifest
2026-04-08 14:32:56 +08:00
BrunoGao
4ff90701e2
chore(deploy): update 4 services to latest GHCR digests + add omni-stock/zhihu-engine to service maps
...
Phase 1: Update overlay digests for ljwx-health (3 images) and ljwx-shiti (1 image)
Phase 2: Add omni-stock and zhihu-engine to both service mapping files
2026-04-07 15:41:14 +08:00
BrunoGao
677127d7f7
ci: remove monthly-rollback-drill scheduled workflow
...
No longer using nightly/scheduled workflows per org policy.
2026-04-07 13:22:21 +08:00
BrunoGao
beae975ba8
ci: remove nightly-evidence scheduled workflow
...
No longer using nightly/scheduled workflows per org policy.
2026-04-07 13:22:20 +08:00
BrunoGao
7c18a770b0
ci: remove nightly-auto-repair scheduled workflow
...
No longer using nightly/scheduled workflows per org policy.
2026-04-07 13:22:18 +08:00