WeiCHEN
50fd582595
merge: feature/agentctl-macos-2026-09-22 (head_sha tip)
2026-09-22 22:00:24 +08:00
WeiCHEN
52c7828339
merge: feature/docgov-vocabulary-2026-09-22
...
Keep contracts/vocabulary with G1 uow/workspace duty ports; chat stays decoupled.
2026-09-22 21:58:16 +08:00
WeiCHEN
e558192813
merge: feature/loading-perf-closeout-2026-09-22
2026-09-22 21:56:09 +08:00
WeiCHEN
e6f101a811
merge: feature/docrev-ui-rerun-2026-09-22
2026-09-22 21:54:56 +08:00
WeiCHEN
7e405546ec
merge: feature/track-t-strengthen-2026-09-22
2026-09-22 21:54:48 +08:00
WeiCHEN
57111ca075
merge: feature/rdev-closeout-2026-09-22
2026-09-22 21:54:40 +08:00
WeiCHEN
6984f96c19
merge: feature/workflow-def-unidirect-2026-09-22
2026-09-22 21:53:52 +08:00
WeiCHEN
4662e39541
merge: feature/web-api-client-2026-09-22
2026-09-22 21:53:45 +08:00
WeiCHEN
265de19725
merge: feature/chat-app-decouple-2026-09-22
2026-09-22 21:53:38 +08:00
WeiCHEN
0779db4634
docs(ops): pin loading-perf head_sha to tip
2026-09-22 21:53:35 +08:00
WeiCHEN
3e1d00b2e3
merge: feature/t20-lowrisk-hardening-2026-09-22
2026-09-22 21:53:30 +08:00
WeiCHEN
2c80129421
merge: feature/g1-exception-clearance-2026-09-22
2026-09-22 21:53:25 +08:00
WeiCHEN
e207dc1e71
docs(status): close FEATURE-MATRIX initial-load special section
...
Mark U1/U3/U7 measured closeout on schema 61; keep whole-machine reboot
claim out of scope.
2026-09-22 21:53:20 +08:00
WeiCHEN
c37988f075
merge: feature/redline-evidence-2026-09-22
2026-09-22 21:53:20 +08:00
WeiCHEN
c89c07f977
docs(ops): add initial-load closeout test report
...
Record schema-61 n=20 waterfall, throttle, and U7 form evidence; note Edge
channel exception for Playwright Chromium download sandbox.
2026-09-22 21:53:19 +08:00
WeiCHEN
a17da2aa13
merge: feature/t20-design-items-2026-09-22
2026-09-22 21:52:34 +08:00
WeiCHEN
f96c5277fd
test(e2e): fix UI_PHASE evidence isolation for docrev UI rerun
2026-09-22 21:51:33 +08:00
WeiCHEN
17f6e4dd2d
test(web): close initial-load perf harness for U1/U3/U7 evidence
2026-09-22 21:51:32 +08:00
WeiCHEN
9a5b8a5ed5
docs(ops): finalize T20 W4 design decisions packaging
2026-09-22 21:51:21 +08:00
WeiCHEN
684008e3a5
feat(trace): strengthen T2/T3 evidence and access-log design
2026-09-22 21:51:19 +08:00
WeiCHEN
10c5a295a2
feat(rdev): nightly four-workflow expansion and proposal title alignment
2026-09-22 21:51:18 +08:00
WeiCHEN
4ae878e4c5
docs(ops): complete redline evidence packs without capability release
2026-09-22 21:51:15 +08:00
WeiCHEN
6a6c4230be
merge: feature/agentctl-macos-2026-09-22 (macOS process platform)
2026-09-22 21:48:36 +08:00
WeiCHEN
6b9d3cc69a
docs(ops): fill agentctl-macos head_sha tip
2026-09-22 21:48:23 +08:00
WeiCHEN
6bce3a4ff8
docs(ops): freeze G1 head_sha at implementation tip
...
Point short-term head_sha at feat+fix tip 45c21ef9 so docs pin
commits do not chase a self-referential SHA.
2026-09-22 21:47:00 +08:00
WeiCHEN
c17594aaa2
docs(ops): pin G1 short-term head_sha to tip
2026-09-22 21:46:51 +08:00
WeiCHEN
13d5f8cdaa
docs(ops): clarify G1 tip SHAs in short-term closeout
2026-09-22 21:46:20 +08:00
WeiCHEN
2f1c66bf4d
docs(ops): record agentctl-macos verification and head_sha
2026-09-22 21:46:11 +08:00
WeiCHEN
dcd4867ad0
docs(ops): pin G1 clearance head_sha to final tip
2026-09-22 21:45:21 +08:00
WeiCHEN
a85d06a6b4
docs(ops): finalize G1 clearance short-term after branch restore
...
Correct branch ownership note now that this worktree alone holds
feature/g1-exception-clearance-2026-09-22; retain macOS lease exception.
2026-09-22 21:45:21 +08:00
WeiCHEN
668ed249ef
docs(ops): pin docgov-vocabulary head_sha to tip
2026-09-22 21:44:57 +08:00
WeiCHEN
993b3dcbae
docs(ops): pin workflow-def-unidirect head_sha to tip
2026-09-22 21:44:57 +08:00
WeiCHEN
381b56dafc
refactor(docgov): converge shared lifecycle vocab into contracts
...
Introduce internal/contracts/vocabulary for state/role/error sentinels,
alias through docgov, and retarget hot production consumers so
coordinator no longer imports docgov for vocabulary-only use.
2026-09-22 21:44:57 +08:00
WeiCHEN
ad96f67442
refactor(workflowdef): make definition/runtime deps unidirectional
...
Keep registry key validation local to workflowdef with composition-root
injection, adapt FlatCatalog for projectworkflow, and drive the
orchestrator through LiveInstancePort views instead of projectinstance.
2026-09-22 21:44:57 +08:00
WeiCHEN
ade6c2eefc
docs(ops): pin G1 short-term head_sha to tip
2026-09-22 21:44:39 +08:00
WeiCHEN
041f9dff62
docs(ops): note G1 tip branch after name collision
...
Record macOS hooks bypass and that engine-split holds the original
feature branch name; tip lives on feature/g1-exception-clearance-w1a-tip.
2026-09-22 21:44:39 +08:00
WeiCHEN
47fdeb1655
feat(agentctl): add macOS process platform layer
...
Replace Linux /proc hard dependency with Darwin ps+sysctl while keeping
zombie/group/boot three-value semantics fail-closed for unreadable PIDs.
2026-09-22 21:44:28 +08:00
WeiCHEN
3afd214679
docs(ops): pin G1 clearance task head_sha to tip
2026-09-22 21:42:58 +08:00
WeiCHEN
7c25b3b59e
docs(ops): record W1-A G1 exception clearance short-term task
...
Capture scope, macOS agentctl /proc lease exception, and arch/vet/short
evidence for the U3 sql_write and U4 path clearance batch.
2026-09-22 21:42:58 +08:00
WeiCHEN
45c21ef96e
fix(workspace): compare realpaths when enforcing artifact roots
...
macOS TempDir resolves /var to /private/var; EvalSymlinks the data root
before Rel so fencing writes are not false path-escape failures.
2026-09-22 21:42:58 +08:00
WeiCHEN
9c7a5be209
feat(arch): clear G1 U3/U4 sql_write and path exceptions
...
Move document_records duty-slot writes into docgov, project ledger
heads through docgov/freedoc ports, and workspace deliverable I/O
through DeliverableStore so arch-check baseline drops to sql_write:1
path:13.
2026-09-22 21:40:12 +08:00
WeiCHEN
485572dce2
docs(ops): T20 W4 hardening design decisions
...
Record recommended approaches, risks, acceptance, and product/env
blockers for audit-remainder design items; cross-link F5/I8 to lowrisk.
2026-09-22 21:29:47 +08:00
WeiCHEN
319d632b24
docs(ops): pin T20 closeout tip SHA
2026-09-22 21:29:11 +08:00
WeiCHEN
b09ab2e4a6
docs(ops): closeout T20 hardening PASS/SKIP checklist
...
Record per-item PASS evidence, verification summary, and macOS
agentctl exception for the W2 low-risk hardening batch.
2026-09-22 21:28:41 +08:00
WeiCHEN
2d19ecb745
docs(ops): pin web-api-client head_sha to feat tip
2026-09-22 21:28:40 +08:00
WeiCHEN
8c24d105fc
docs(ops): pin chat-app-decouple head_sha to tip
2026-09-22 21:27:44 +08:00
WeiCHEN
9229b94c32
docs(ops): T20 W4 design decisions for hardening backlog
...
Record recommended approaches, risks, acceptance, and product/env
blockers for B1/B3–B5/B7/B11, F1/F4/F7/F8, I1/I4/I6; cross-link F5/I8
to t20-lowrisk without duplicating.
2026-09-22 21:27:25 +08:00
WeiCHEN
9db5f149dd
docs(ops): align web-api-client head_sha with feature tip
2026-09-22 21:27:16 +08:00
WeiCHEN
9db2462604
docs(ops): note macOS agentctl lease exception for redline batch
...
Record the /proc Lease crash workaround and freeze the evidence tip SHA.
2026-09-22 21:26:59 +08:00
WeiCHEN
14fab66ac6
docs(ops): restore macOS agentctl commit exception
2026-09-22 21:26:51 +08:00
WeiCHEN
d8c012ba58
docs(ops): set web-api-client head_sha to tip
2026-09-22 21:26:45 +08:00
WeiCHEN
1da2f17b16
docs(ops): record web-api-client batch F task and lease exception
2026-09-22 21:26:45 +08:00
WeiCHEN
681ca1b95e
feat(web): unify API client with auth, errors, and limited retry
...
Route web/src/api modules through shared apiFetch so Bearer headers,
typed error envelopes, and GET/HEAD transient retries live in one place
without swallowing domain failures used by existing error cards.
2026-09-22 21:26:44 +08:00
WeiCHEN
e43adb1666
docs(ops): record chat-app-decouple tip SHA
2026-09-22 21:26:29 +08:00
WeiCHEN
bc873f4400
docs(ops): redline evidence batch without capability release
...
Record SWBOOT L1–L4 (no real repo write), FAV ObserveShadow gates and
observation-window prerequisites, D7 Track E ID-only checklist, and stronger
PI narrative fallback negatives while keeping all redline flags off.
2026-09-22 21:26:27 +08:00
WeiCHEN
b33753d717
refactor(chat): break chat→app cycle with narrow ports
...
Invert chat dependencies onto composition-root adapters, replace
AssembleRequest coordinator embeds with local DTOs, and drop the
chat→app/* allowlist edges so arch-check can enforce the boundary.
2026-09-22 21:25:59 +08:00
WeiCHEN
a2eabe01b1
refactor(chat): break chat→app import cycle via owned ports
...
Invert chat dependencies on chatflow/intentflow/stageflow through
composition-root adapters; replace AssembleRequest coordinator embeds
with local DTOs and tighten the module-boundaries allowlist.
2026-09-22 21:25:44 +08:00
WeiCHEN
3ab9cb5583
docs(ops): pin T20 hardening head SHA and commit list
...
Record local tip and four implementation commits for handoff.
2026-09-22 21:24:33 +08:00
WeiCHEN
6de09a1a96
docs(ops): record T20 low-risk hardening task and verification
...
Task short-term for W2 batch scope, macOS agentctl exception, and local go/npm evidence.
2026-09-22 21:24:20 +08:00
WeiCHEN
472ec6497f
fix(web): plan-card catch, removeTurn on finish, pane ErrorBoundary, CRLF SSE frames
...
T20-F2/F3/F5/F6: reset stuck executing cards, reclaim AbortControllers via removeTurn, wrap chat/doc panes, and split SSE on CRLF blank lines as well as LF.
2026-09-22 21:24:20 +08:00
WeiCHEN
0c4baad4a2
fix(infra): align ready health, drop events shared-net, pin Go 1.27.1, short-skip docker smoke
...
T20-I2/I3/I5/I8: dev compose /api/v1/ready, main events networks match test/dev, Dockerfile golang:1.27.1-bookworm, and testing.Short skip for pi-agent docker build.
2026-09-22 21:24:20 +08:00
WeiCHEN
f12e2ed155
fix: reclaim cancelFns, TTL idemLocks, cache scope probe, invalidate C1, SSE subscribe order
...
Close T20-B2/B6/B8/B9/B10 low-risk leaks: map-backed cancel reclaim, idempotency lock TTL in cleanupLoop, sync.Once information_schema probe, InvalidateLayer after chat memory upsert, and Subscribe before SSE headers.
2026-09-22 21:24:20 +08:00
WeiCHEN
364ed7f1a3
merge: feature/dev-prod-ready-test-promotion-2026-09-22 (gate closeout docs)
CI / go-vet-and-short-test (push) Failing after 0s
CI / backup-restore-drill (push) Failing after 0s
CI / web (push) Failing after 0s
2026-09-22 21:02:32 +08:00
WeiCHEN
822e21680e
docs(ops): close schema-61 gate and test promotion evidence
...
Record production_ready refresh at schema 61, rc-v1.1.0-beta.1
promotion, and test deploy smoke; mark the task done with cleanup pending.
2026-09-22 21:02:20 +08:00
WeiCHEN
591ea60174
merge: feature/dev-prod-ready-test-promotion-2026-09-22 (PI DATA_DIR mount fix)
CI / go-vet-and-short-test (push) Failing after 0s
CI / backup-restore-drill (push) Failing after 0s
CI / web (push) Failing after 0s
2026-09-22 19:40:48 +08:00
WeiCHEN
63f8cfebe7
fix(test): pin real-PI DATA_DIR to runner-mounted data/dev
...
go test under internal/server previously preferred package-local
data/test, so materials never reached the pi-agent bind mount and
intake quality gates failed closed on empty sandboxes.
2026-09-22 19:40:28 +08:00
WeiCHEN
063ee1630f
merge: feature/status-reconcile-2026-09-22 (task closeout)
2026-09-22 15:00:17 +08:00
WeiCHEN
525a9ad450
docs(ops): close status-reconcile task after local dev merge
2026-09-22 15:00:06 +08:00
WeiCHEN
38ed539f10
merge: feature/status-reconcile-2026-09-22 (legacy registry reconcile)
2026-09-22 14:58:30 +08:00
WeiCHEN
068ad5df60
docs(ops): reconcile legacy task registry with fresh-clone reality
2026-09-22 14:57:44 +08:00
WeiCHEN
fcf00e7d1a
chore(scripts): fix backfill script import and run projection for ws_intake
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
9d40a91f9d
feat(web): sync workflow docs from server and persist task artifact in chat
...
Pass doc_id on task runs, merge server deliverable state by task_key,
fetch controlled document content when opening non-template docs, and
map metadata.artifact after refresh.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
68765023a2
feat(api): add workflow document list, content read, and backfill script
...
Expose project controlled documents from DocGov, serve authenticated
output.md content by doc_id, and add idempotent backfill for run_1789111889557885000.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
238f1d9346
feat(agent): unify async task FinalizeTaskRun projection to chat and runs
...
Extend taskrun executors to return full TaskRunResult, finalize assistant
placeholder content with artifact metadata, and map quality_failed terminal
state instead of metadata-only updates.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
91b257393e
docs(test): add longtask P0 observer and materials test report
...
Archive automated regression results for stream materials, observer disconnect,
project asset upload, and ResolveMaterials assembly.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
bbd1218922
feat(web): asset upload, task run observer, and session lineage on tasks
...
Upload binary attachments as project assets, subscribe by run_id after refresh,
and pass session_id/project_id through long-task requests.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
e139b2b267
feat(api): observer task runs decoupled from SSE lifecycle
...
Add POST/GET/POST cancel task run APIs, background worker with event replay,
workspace reconcile, runner child cancel, and chat message metadata updates.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
908d4bdb2e
feat(agent): project asset upload and squad materials assembly
...
Register uploads via CAS, resolve project asset pools into task materials
with server-side extraction, and propagate asset_id through the bizdev/squad chain.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
6f3a4d4c80
fix(api): pass materials through task/stage stream handlers
...
Stream SSE path now forwards Materials to ExecuteTask/ExecuteStage, and
TestTaskStream_MaterialsInjection targets the real /tasks/run/stream endpoint.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
70493a3ed5
feat(web): wire project list and create to server API
...
Login syncs projects from GET /api/v1/projects; create project uses POST with server-assigned id while preserving local sessions and templates.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
636eb0ccf1
fix(web): align workbench user ids with auth seed
...
Unify MOCK_USERS with backend auth (admin id=1), merge session identity on login, and migrate demo seeds/tests to id 2/3/4 for 张工/李/王.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
a8c8cba447
fix(web): keep draft when send preflight fails
...
Return accepted/error from handleSendMessage, clear InputArea only on success, and surface thinking/streaming feedback.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
f9c4f9b01b
fix(web): add secure-context-safe clientTurnId helper
...
Provide RFC 4122 v4 fallback via getRandomValues for LAN HTTP pages where randomUUID is unavailable.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN
eea28f0be4
feat(task): inject uploaded documents into task materials and enable LAN host access
...
- backend: add Materials field to TaskRunRequestDTO and forward to ExecuteTask
- backend: add TestTaskStream_MaterialsInjection test case in taskstream_test.go
- web: serialize materials in buildTaskRequest and add unit test
- web: improve isSameMessage identity comparison in messageIdentity.ts
- web: configure host: '0.0.0.0' in vite.config.ts for LAN collaboration access
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
cc2aa33b10
docs(test): chat turn idempotency automated test report
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
7ab5041c59
refactor(web): stop persisting full message list to localStorage
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
d17fae0a5d
feat(web): isolate stream runtime by session and turn
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
ad2147445c
chore(deploy): 三环境 Compose 构建真实 app 镜像并补齐法规库运维
...
将 dev/test/main 的 app 服务从占位容器改为 Dockerfile 多阶段构建,增加 healthcheck 与 .regulations 只读挂载;新增法规库备份/恢复脚本并同步 env-service 目录初始化与 gitignore。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
f5ead1dcd5
feat(web): send stable client_turn_id and resume turns after disconnect
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
f4e4357ddb
fix(agent): Chat Agent 全链路 P0-P5 整改
...
封堵鉴权旁路与导出 IDOR,DocGov 改服务端身份;对话层 PendingAction 接真实 docgov/taskrun;修复流式租约假死与会话级任务流;加固配置/doc_id/NULL;补齐 slog 与测试;前端 ErrorBoundary 与受控文档重试。
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
a1cb4aade0
feat(api): gate chat stream on chat_turns with session serial execution
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:22 +00:00
WeiCHEN and Cursor
c887bc0480
feat(db): add chat_turns idempotency table
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:21 +00:00
WeiCHEN and Cursor
93ae180159
chore(db): add ten-project chat seed migration and generator script
...
Provide SQL migration and Python helper to import review demo sessions
and seed messages from tenProjectsSeed.json into Postgres.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:21 +00:00
WeiCHEN and Cursor
62ab734021
fix(web): guard chat window fetch races on session switch
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:21 +00:00
WeiCHEN and Cursor
cda534a75d
feat(web): improve chat attachments, unread marks, and session UX
...
Support richer attachment payloads in input area, local read-id cache for
unread badges, and expand private-shared and chronology test coverage.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:21 +00:00
WeiCHEN and Cursor
7c830146f5
test(web): cover real temp vs server message identity
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:21 +00:00
WeiCHEN and Cursor
6f4e8c0933
feat(web): align project templates with official reference skeletons
...
Replace ad-hoc markdown stubs with reference-system template baselines,
free-text device type input, and add template quality regression tests.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:21 +00:00
WeiCHEN and Cursor
e1a9b302ba
fix(web): merge live and history by serverId and clientTurnId
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:21 +00:00
WeiCHEN and Cursor
a9fe69ac16
fix(workflow): reconcile version conflicts in review mode and UI retry
...
Auto-adopt current workflow selection version in review/demo backend
paths, and retry frontend workflow switch after refreshing project version.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:21 +00:00
WeiCHEN and Cursor
c4ef72506f
feat(api): return user_message_id in SSE turn_ack and done
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-09-13 02:50:21 +00:00