weichen
db8585b558
merge: record feature/member-permissions-doc-2026-09-24 into dev ancestry — 内容已由 member-permissions-doc-land 等价落地 dev;记录原分支历史归属 (tree unchanged)
2026-09-25 20:23:58 +00:00
weichen
64a28c9842
merge: record feature/doc-review-lifecycle-2026-09-25 into dev ancestry — 交付内容已由 doc-review-lifecycle-land 等价落地 dev;本归并仅记录原分支历史归属 (tree unchanged)
2026-09-25 20:23:25 +00:00
weichen
cc519e3806
merge: candidate single-binary-design-land-2026-09-26 into dev
2026-09-25 20:22:59 +00:00
weichen
6733205d58
docs(design): 非容器化单二进制三环境交付方案(自 single-binary-deploy-design 分支落地;CURRENT 认领行已废弃不入)
2026-09-25 20:22:45 +00:00
weichen
23ee0f028d
merge: candidate member-permissions-doc-land-2026-09-26 into dev
2026-09-25 20:22:16 +00:00
weichen
6e76a35943
docs(system-design): 修复 README t20 设计文档迁址后的失效链接(remediation→system-design)
2026-09-25 20:21:43 +00:00
weichen
86881bef6e
docs(system-design): 新增项目成员权限总览(对话/任务/补充/文档三权整合)
...
- 三层正交模型:系统角色能力矩阵 / 项目成员角色 / 文档三权(author-reviewer-approver)
- 四类核心动作权限矩阵:发起对话、执行任务、补充信息、文档编制与修改(deny_only_submit)
- 认证与路由分层、管理台两类 gate、前端 capabilities fail-closed 消费方式
- 如实标注已知缺口:member/viewer 服务端不区分写、visibility 键仅前端消费、system:* 未拆分
- 更新 system-design/README.md 索引与目录清单
task: member-permissions-doc-2026-09-24
2026-09-25 20:20:58 +00:00
weichen
75ff922b6e
merge: candidate dialogue-office-expansion-land-2026-09-26 into dev
2026-09-25 20:20:39 +00:00
weichen
af327950bd
docs(plan): 对话办公能力全景盘点与 P0–P3 整改计划
...
盘点 32 ActionKey 与 HTTP 169 路由对话边界,明确假成功/dry-run 与 UI 专属红线;分期消除假成功、live 化 intentflow、查询真源与新写意图扩展。
2026-09-25 20:20:25 +00:00
weichen
117ef7d826
merge: candidate doc-review-lifecycle-land-2026-09-26 into dev
2026-09-25 20:17:35 +00:00
weichen
6c815b2958
fix(land): 适配 dev 现行结构 — gov()/authorizer() 访问器、去 app/docnotify stream 依赖(arch 基线)、测试 stub 重名
2026-09-25 20:17:20 +00:00
weichen
05b822d9c0
docs(evidence): doc-review-lifecycle-land re-validation 摘要
2026-09-25 20:17:11 +00:00
weichen
985bc55fa5
docs(matrix): docgov 三权流转落地证据与 U11 live 基线键说明;附 re-validation 证据
2026-09-25 20:16:36 +00:00
weichen
b5a782bb38
feat(chat): dialogue triggers for comments/reopen/pending-supplements with mistouch guards
...
Wire intent→coordinator DocResolver confirm cards→action_executor kinds for comment, reopen, pending-supplements query, and real submit-review execution.
2026-09-25 20:14:10 +00:00
weichen
2e56ba9719
feat(docgov): complete review lifecycle gaps for lock/notify/comment/reopen
...
Defer locked-period supplements to a pending ledger, route duty-holder
notifications, persist stage-scoped comments, and prefer Approver for reopen.
2026-09-25 20:08:56 +00:00
weichen
6adf694f74
merge: candidate matrix-closeout-r3-2026-09-26 into dev
2026-09-25 19:05:04 +00:00
weichen
f0b23d345a
docs(matrix): update u9u12 and web-sysadmin row footnotes per P8/P9 evidence
...
- intent-plan-u9u12: per-key live rollout landed (7 keys to real engines,
5 per-key flags default off, TierConfirm; dev c5027788 ); ops-side flag
enablement + PI evidence follow-up noted
- web-sysadmin: residual closeout complete (ui.* whitelist consumers wired
to public site-status + banner; Playwright real-run PASS via docker image;
KB ops deferred out-of-repo with rationale; dev 4bdbb0da )
- rows keep status=done; footnote facts only; docs apply receipts r3
2026-09-25 19:04:34 +00:00
weichen
2391aaa7ec
merge: candidate cleanup-audit-r3-2026-09-25 into dev
2026-09-25 18:43:24 +00:00
weichen
8ffb83e373
docs(current): register P11/P12 closeout rows via docs apply receipt
2026-09-25 18:42:36 +00:00
weichen
3f63753b63
docs(ops): P12 redline boundary audit (read-only)
...
- FAV live off (FAV_DEGRADED_READ unset, default false); no observation window running
- SWBOOT-10 fail-closed confirmed (ERR_EXECUTION_MODE_DISABLED in catalog.go L209);
L5/L6 authorization application registered as pending-auth
- D7 ADR still pending-compliance-signoff; record retention physical delete blocked
- PI narrative flag PI_CHANGE_REPORT_NARRATIVE off in dev process env; dev-resident
enablement request registered for user decision (not implemented)
- MULTI_INTENT_PLAN_TIER not full; F4-B/F7-1/I6/I7 untouched
2026-09-25 18:24:52 +00:00
weichen
30957daf40
merge: candidate cleanup-audit-p11-2026-09-25 into dev
2026-09-25 18:14:06 +00:00
weichen
748eb686ae
docs(ops): P11 cleanup audit - 19 ready worktrees cleared, blocked classified
...
- ready batch: worktree remove + branch -d all clean, no force
- blocked split: keep branches with unmerged features (doc-review-lifecycle,
dialogue-office-expansion, member-permissions-doc, single-binary-design,
promote/sync test branches); regenerable caches logged; unique logs to
archive before removal
- CURRENT stale in_progress rows deferred to closeout audit P14
- copy-kb-to-localpg.sh: never existed; migrate_shared_kb.sh already registered
2026-09-25 18:12:54 +00:00
weichen
3cefd5b142
merge: candidate backlog-triage-p10-2026-09-25 into dev
2026-09-25 17:20:39 +00:00
weichen
9ac4e37847
docs(ops): P10 backlog triage record (B5+A5 implement; A6/D5/R1/R4-R7 no-go evidence)
2026-09-25 17:20:22 +00:00
weichen
20afeb186b
chore: requeue marker after DIRTY_TREE (node_modules symlink removed)
...
Queue item e1b8dd58 failed on source-tree dirt from a web/node_modules
symlink used for npm test; the symlink is removed and the tree is clean.
Empty commit advances head so the queue accepts a fresh item.
2026-09-25 17:16:36 +00:00
weichen
53d1be5349
feat(quote,squad): B5 input validation + review invariants; A5 non-critical step degradation
...
P10 backlog triage (implement B5+A5; A6 already fixed in-tree, D5 keep shared
KB, R1 separate task, R4/R5/R6/R7 no-go with evidence):
- quote: ValidateInput (empty names/hours, negative/NaN/Inf fail-closed);
reviewSummary invariants (line sums = total; buffer 20%/margin 40%/tax 7%
rate self-consistency) enforced before Excel write
- squad: StepSpec.Critical *bool (nil=critical default); non-critical step
failure marks step degraded + gov audit, workflow continues, final status
degraded with DegradedSteps list; critical failure semantics unchanged
- tests: 5 new cases (quote 3 + squad 2), full short suite green, arch-check pass
2026-09-25 17:10:35 +00:00
weichen
4bdbb0da6f
merge: candidate websysadmin-residual-r2-2026-09-25 into dev
2026-09-25 16:35:19 +00:00
weichen
923da11ab4
feat(server): public /maintenance/site-status route + tests; P9 evidence
...
- isPublicRoute exempts site-status (anonymous banner polling)
- httptest coverage: anonymous 200 + site_notice payload; route table guards
- test report + playwright evidence (docker mcr playwright v1.63 noble vs real dev stack, 1 passed)
2026-09-25 16:33:58 +00:00
weichen
914d0aa39d
feat(maintenance): wire sysadmin ui.* whitelist settings to public site status
...
- sysadmin.Service.GetSettingValue: whitelist read-through (DB > env > default)
- maintenance.Service: SiteSettingsProvider injection; StatusView carries notice/readOnly; new CurrentSiteStatus + GET /api/v1/maintenance/site-status
- composition root wires ui.maintenance_notice / ui.read_only_mode into maintenance site settings
- MaintenanceBanner: persistent notice banner + read-only mode strip
- chore(web): drop dead 'dirty' var in EnvSettingsSection (baseline TS6133 build blocker)
- KB ops actions: deferred out-of-repo (shared infra container side); documented in task record
2026-09-25 16:33:56 +00:00
weichen
cc998c05ce
merge: candidate dialogue-office-p0-2026-09-25 into dev
...
Resolve server.go ActionServices wiring on accessor-style Server (Workflow via adaptChatWorkflow).
2026-09-25 15:42:05 +00:00
weichen
c5027788ea
merge: candidate u9u12-keys-rollout-2026-09-25 into dev
2026-09-25 14:39:51 +00:00
weichen
f9ce771954
feat(intentflow): per-key live rollout for remaining U9-U12 validated_only keys
...
- 5 independent flags (MULTI_INTENT_U11_LIVE_REVIEW/FINAL/PROPOSAL, U12_LIVE_SWITCH/RESTART), default OFF; no full rollout
- DocGovLiveActionKeys/RunControlLiveActionKeys become flag-driven functions; baseline keys unchanged
- DocGovOwner routes review.approve/reject, final.approve/reject, proposal.decide to real engine with slot-driven reason/approve parsing and idempotent receipts
- RunControlOwner routes workflow.switch -> ActivateWorkflow and run.restart -> fresh CreateAndStart run
- policy: 7 keys promoted from TierFull to TierConfirm (real execution still gated per-key)
- tests: default-off isolation, per-key independence, live state advance reviewing->approving, dry-run zero-advance when flag off
2026-09-25 14:38:42 +00:00
weichen
da0186c739
docs(remediation): 将对话办公 P0 验证记录挂入 INDEX
2026-09-25 14:38:06 +00:00
weichen
0ab4a8bd2d
feat(server): 接线对话 workflow.run 并补 P0 验证记录
...
server 侧窄端口适配 projectworkflow,消除 chat→projectworkflow 边界违规;记录单测与 arch-check 证据,PI 全链路待补证。
2026-09-25 14:37:11 +00:00
weichen
9a540fa54a
docs(chat): 注明 ActionServices.Workflow 合入接线点
...
app/server 写路径被并行任务占用,生产接线延后;未接线时诚实失败。
2026-09-25 13:19:52 +00:00
weichen
ce694baef1
feat(coordinator): P0 消除对话主链路假成功
...
claim/submit 经 DocResolver+确认卡后 PendingAction 真写 docgov;proposal 默认分支改澄清;workflow.switch 诚实拒绝(UI专属);workflow.run 确认后走 CreateWorkflowRun(ActionServices.Workflow 由合入时接线)。
2026-09-25 13:19:36 +00:00
weichen
9f7bbc25a0
merge: candidate server-image-field-closeout-r4-2026-09-25 into dev
2026-09-25 13:19:00 +00:00
weichen
0634ffb8ee
fix(storage): deterministic ID ordering in memory-mode ListProjectRefs
...
Memory CAS iterated memoryRefs map (random order) while PG path uses
ORDER BY id ASC; asset dedup-hint 'first reference unflagged' logic
depends on stable order. Flaky TestUploadProjectAsset_DedupHint
reproduced 2/20 rounds before fix, green 30/30 after.
2026-09-25 13:17:25 +00:00
weichen
a9c9a9182e
refactor(server): remove 24 mirrored Runtime fields via nil-safe accessors; fix Shutdown-vs-background-loop DATA RACE and goose 00071 duplicate version
...
- Server no longer mirrors app.Runtime services (gov/svc/pwSvc/...): 574 call sites now use accessors in runtime_accessors.go
- backgroundLoop (mutex+sync.Once) stops sweeper/publisher/reminder/wsGC goroutines race-free (baseline 44161d2a reproduced DATA RACE; now green under -race)
- goose 00071 duplicate (dialogue merge 1da17a28 brought two 00071): context-conflict-adjudications renumbered to 00072; dev DB applied only through 00070 so zero data migration
- task_finalize tests build minimal app.Runtime; test injection via serverTestOverrides + setOverride* (explicit-nil markers for fail-closed cases)
2026-09-25 13:17:22 +00:00
weichen
7cfd6851f6
merge: candidate security-redline-fp-r2-2026-09-25 into dev
2026-09-25 12:53:32 +00:00
weichen
7bdb045272
fix(intent): 收紧安全红线正则动词与桥接,消除正常撰写请求误拦
...
裸单字「改/换」加无界桥接会把「整改/角色」等正常撰写句误判为
SECURITY_FORBIDDEN。改为复合动词 + 短窗不跨标点桥接,受控名词须与写动词共现;补误报负例回归。
2026-09-25 12:53:08 +00:00
weichen
44161d2ad2
merge: candidate t20-s3-lock-split-2026-09-25 into dev
2026-09-25 06:53:29 +00:00
weichen
340342faf8
feat(concurrency): T20 S3 B3 - per-docID lock split for docgov/docrevision, hydrate out of cross-doc critical path (stage A)
2026-09-25 06:52:55 +00:00
weichen
d93c1ab3d6
merge: candidate t20-s4-image-batch-2026-09-25 into dev
2026-09-25 05:42:56 +00:00
weichen
35f845168b
feat(infra): T20 S4 image batch - non-root appuser, compose resource limits, unified extensions init mount (I1/I4)
2026-09-25 05:42:05 +00:00
weichen
42436f754d
merge: candidate t20-b5-chat-observability-2026-09-25-r2 into dev
2026-09-25 05:26:59 +00:00
weichen
5201f14173
feat(ctxmgr,server): T20-B5 chat turn compensation observability + orphan sweeper
2026-09-25 05:26:29 +00:00
weichen
088ff307c0
merge: candidate t20-s2-config-pool-2026-09-25-r2 into dev
2026-09-25 04:46:53 +00:00
weichen
2abc23ac65
feat(db,server): T20-S2 hardening batch B1/B4/B7 (XFF trust, pool statement_timeout, shutdown drain)
2026-09-25 04:45:49 +00:00
weichen
c0e556b167
merge: candidate t20-s1-small-fixes-2026-09-25 into dev
2026-09-25 04:25:31 +00:00