docs(ops): close kb-host-auth task and release integration slot
Record rebuild smoke: kb_ready=true and redacted online DSN in container. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
+3
-3
@@ -6,14 +6,14 @@
|
||||
## 焦点
|
||||
|
||||
1. **partial/deferred 全量收口**:W1 CI/E2E **done**;续 W2–W7;§7 四项决策已确认
|
||||
2. **运维**:nightly `DATA_DIR=dev` 已对齐;**进行中** KB 宿主机分层加载 / fail-closed(`fix/kb-host-auth-layered-load`)
|
||||
2. **运维**:nightly `DATA_DIR=dev` 已对齐;KB 宿主机分层加载 / fail-closed **done**(`fix/kb-host-auth-layered-load`)
|
||||
3. **红线**:禁止整支 merge FAV;不默认升 `MULTI_INTENT_PLAN_TIER=full`(升 `confirm` 须 W4 闭环后独立授权);`SEMANTIC_SUMMARY_REPLACE` 不随 W2 开启;FAV live 顺序 staging→artifact→publication、每级观察窗证据驱动(下限 ≥7 天)、`FAV_DEGRADED_READ=false`;flag 默认 off;项目 143 只读
|
||||
|
||||
## 并行认领
|
||||
|
||||
| owner | task | branch | worktree | mutex | status |
|
||||
|-------|------|--------|----------|-------|--------|
|
||||
| Cursor | 2026-09-17-kb-host-auth-fix | fix/kb-host-auth-layered-load | - | infra | in_progress |
|
||||
| Cursor | 2026-09-17-kb-host-auth-fix | fix/kb-host-auth-layered-load | - | infra | done |
|
||||
| Cursor | 2026-09-17-w1-ci-e2e-green-nightly | feature/w1-ci-e2e-green-nightly | - | ci | done |
|
||||
| Cline | 2026-09-16-partial-deferred-completion | docs/partial-deferred-completion-plan | - | architecture-docs | done |
|
||||
| Cursor | 2026-09-16-intent-plan-playwright-dual-tab | feature/intent-plan-cards-playwright | .worktrees/feature-intent-plan-cards-playwright | web | done |
|
||||
@@ -111,7 +111,7 @@
|
||||
|
||||
| holder | phase | since | scope | queue |
|
||||
|--------|-------|-------|-------|-------|
|
||||
| Cursor | merging | 2026-09-17 | fix/kb-host-auth-layered-load | - |
|
||||
| - | idle | - | - | - |
|
||||
|
||||
**phase**: `idle` | `merging` | `smoke` | `e2e`
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
title: "修复 KB 宿主机错误口令与静默离线降级"
|
||||
status: in_progress
|
||||
status: done
|
||||
created: 2026-09-17
|
||||
updated: 2026-09-17
|
||||
owner: Cursor
|
||||
@@ -33,16 +33,16 @@ mutex: infra
|
||||
|
||||
1. [x] 分层 Load + 默认口令清空
|
||||
2. [x] NormalizeKBHostForRuntime
|
||||
3. [x] kb 客户端脱敏 + RequireOnline
|
||||
3. [x] kb 客户端脱敏 + RequireOnline(EnsureOnline;不 Fatalf)
|
||||
4. [x] health `kb_ready` + E2E/nightly 门禁
|
||||
5. [ ] 合入 `dev` 冒烟
|
||||
5. [x] 合入 `dev` 冒烟(rebuild + `/health` `kb_ready=true`)
|
||||
|
||||
## 验收标准
|
||||
|
||||
- [x] `config.Load("")` 分层合并后口令来自根 `.env`(单测临时文件 + live 布尔校验)
|
||||
- [x] 宿主机 `shuimu-kb-shared` → `127.0.0.1`
|
||||
- [x] 宿主机 `shuimu-kb-shared` → `127.0.0.1`;容器内保留 compose DNS
|
||||
- [x] 错口令/空口令离线且日志无明文密码;`KB_ALLOW_OFFLINE=1` 可降级
|
||||
- [ ] 合 `dev` 后 `go test -short ./internal/config ./internal/kb` + health 冒烟
|
||||
- [x] 合 `dev` 后 short 测 PASS;dev rebuild 后 `kb_ready=true`,日志 `online=true dsn=...:***@shuimu-kb-shared...`,无 `shared_kb_secret_pass`
|
||||
|
||||
## 相关链接
|
||||
|
||||
@@ -52,3 +52,4 @@ mutex: infra
|
||||
## 证据 / 备注
|
||||
|
||||
根因:`Load` 优先单文件 `configs/.env.dev`(故意省略 `KB_DB_PASSWORD`),保留错误默认 `shared_kb_secret_pass`;Compose 本已分层,宿主机 `go test` 未对齐。
|
||||
合入后容器日志:`[kb] online=true dsn=postgres://regkb:***@shuimu-kb-shared:5432/regulations?sslmode=disable`;health `kb_ready=true`。
|
||||
|
||||
@@ -63,14 +63,27 @@ live kb host=127.0.0.1 port=5432 password_set=true
|
||||
- **实际输出**: `Online()==false`;包测试 PASS
|
||||
- **评价判定**: PASS(降级用例,非产品冒充在线)
|
||||
|
||||
### 用例 E:dev 容器 rebuild 冒烟
|
||||
|
||||
- **测试输入**: `./scripts/env-service.sh dev rebuild`;`curl -sf http://127.0.0.1:8080/health`
|
||||
- **实际输出**:
|
||||
```text
|
||||
{"status":"ok", ..., "kb_ready":true, "shared_kb_port":5432, "database_ready":true, ...}
|
||||
[kb] online=true dsn=postgres://regkb:***@shuimu-kb-shared:5432/regulations?sslmode=disable
|
||||
shared_kb_secret_pass 出现次数: 0
|
||||
```
|
||||
- **评价判定**: PASS
|
||||
- **性能与耗时**: rebuild ~14s;health 立即可用
|
||||
|
||||
## 六、 自动化测试套件汇总 (Test Suite Execution)
|
||||
|
||||
```text
|
||||
go test -short ./internal/config ./internal/kb
|
||||
go test -short ./internal/config ./internal/kb ./internal/server
|
||||
ok chat-agent-system/internal/config
|
||||
ok chat-agent-system/internal/kb
|
||||
ok chat-agent-system/internal/server
|
||||
```
|
||||
|
||||
## 七、 测试结论与后续优化建议 (Conclusion & Next Steps)
|
||||
|
||||
达到合并标准:配置 SSOT 与 Compose 分层对齐;E2E/nightly 预检 + `KB_REQUIRE_ONLINE` 避免静默离线冒充 PASS。后续可在试运行巡检中把 `kb_ready` 纳入 dashboard,但不必改 `/health` 的 HTTP 200 语义。
|
||||
达到合并标准:配置 SSOT 与 Compose 分层对齐;E2E/nightly 预检 + `EnsureOnline` 避免静默离线冒充 PASS;容器内 `kb_ready=true` 且 DSN 已脱敏。后续可在试运行巡检中把 `kb_ready` 纳入 dashboard,但不必改 `/health` 的 HTTP 200 语义。
|
||||
|
||||
Reference in New Issue
Block a user