molecule-core/workspace-server/internal/handlers
fullstack-engineer 0e13a80121
Some checks failed
Block internal-flavored paths / Block forbidden paths (pull_request) Successful in 20s
E2E Staging SaaS (full lifecycle) / E2E Staging SaaS (pull_request) Has been skipped
CI / Shellcheck (E2E scripts) (pull_request) Successful in 40s
Handlers Postgres Integration / detect-changes (pull_request) Successful in 21s
Lint curl status-code capture / Scan workflows for curl status-capture pollution (pull_request) Successful in 18s
CI / Detect changes (pull_request) Successful in 1m8s
E2E API Smoke Test / detect-changes (pull_request) Successful in 1m16s
E2E Staging SaaS (full lifecycle) / pr-validate (pull_request) Successful in 1m1s
E2E Staging Canvas (Playwright) / detect-changes (pull_request) Successful in 1m20s
E2E Chat / detect-changes (pull_request) Successful in 1m21s
Harness Replays / detect-changes (pull_request) Successful in 55s
publish-runtime-autobump / bump-and-tag (pull_request) Has been skipped
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 38s
publish-runtime-autobump / pr-validate (pull_request) Successful in 1m8s
lint-required-no-paths / lint-required-no-paths (pull_request) Successful in 1m42s
qa-review / approved (pull_request) Failing after 35s
Runtime PR-Built Compatibility / detect-changes (pull_request) Successful in 1m26s
gate-check-v3 / gate-check (pull_request) Successful in 48s
security-review / approved (pull_request) Failing after 30s
sop-checklist / all-items-acked (pull_request) Successful in 22s
sop-tier-check / tier-check (pull_request) Successful in 27s
lint-mask-pr-atomicity / lint-mask-pr-atomicity (pull_request) Failing after 2m52s
Lint workflow YAML (Gitea-1.22.6-hostile shapes) / Lint workflow YAML for Gitea-1.22.6-hostile shapes (pull_request) Successful in 2m20s
Lint pre-flip continue-on-error / Verify continue-on-error flips have run-log proof (pull_request) Successful in 3m0s
Ops Scripts Tests / Ops scripts (unittest) (pull_request) Successful in 2m9s
lint-continue-on-error-tracking / lint-continue-on-error-tracking (pull_request) Successful in 3m17s
E2E Chat / E2E Chat (pull_request) Failing after 18s
lint-required-context-exists-in-bp / lint-required-context-exists-in-bp (pull_request) Successful in 3m21s
E2E Staging External Runtime / E2E Staging External Runtime (pull_request) Successful in 5m29s
Harness Replays / Harness Replays (pull_request) Failing after 2m0s
Runtime PR-Built Compatibility / PR-built wheel + import smoke (pull_request) Successful in 3m22s
CI / Python Lint & Test (pull_request) Successful in 7m54s
E2E API Smoke Test / E2E API Smoke Test (pull_request) Successful in 5m59s
Handlers Postgres Integration / Handlers Postgres Integration (pull_request) Successful in 6m38s
E2E Staging Canvas (Playwright) / Canvas tabs E2E (pull_request) Successful in 10m56s
CI / Canvas (Next.js) (pull_request) Successful in 22m58s
CI / Platform (Go) (pull_request) Successful in 23m43s
CI / Canvas Deploy Reminder (pull_request) Has been skipped
CI / all-required (pull_request) Successful in 18s
chore: promote staging→main (chat E2E + accumulated fixes)
Promotes the following staging-only changes to main:

- feat(e2e): stabilize Playwright chat tests for desktop + mobile (PR #1142)
- feat(workspace): broadcast and talk-to-user platform abilities
- feat(adapter-base): ProviderRegistry type + resolve_provider_routing
- fix(staging): OFFSEC-010 CP config wiring + CWE-78 rows.Err fixes
- fix(staging): restore goAsync tracking in dispatch calls
- fix(ci): needs-based all-required sentinel
- fix(canvas): load chat history in MobileChat (closes #1062)

Merge-conflict resolutions:
- ThemeToggle.tsx: take staging (INDEX_SIZE_ERR test fix)
- MobileChat.tsx + test: take staging (shared hooks refactor)
- workspace_broadcast.go: take main (OFFSEC-015 org isolation)
- org_helpers.go + tests: combine both (CWE-78 guard + rows.Err)
- secrets.go: take staging (descriptive rows.Err log messages)
- workspace.go: combine (goAsync tracking + SaaS tier hard-gate)
- cp_provisioner.go: combine (OFFSEC-010 comments + main formatting)
- ci.yml: combine (mc#774 trackers + all-required needs cleanup)
- test_a2a_offsec003_sanitization.py: delete (redundant per mc#62d38667)
2026-05-15 15:20:52 -07:00
..
testdata fix(post-suspension): migrate github.com/Molecule-AI refs to git.moleculesai.app (Class G #168) 2026-05-07 13:08:15 -07:00
a2a_corpus_test.go test(a2a): protocol-shape replay corpus gate (#2345 follow-up) 2026-04-30 01:26:02 -07:00
a2a_proxy_helpers_test.go fix(handlers/a2a_proxy_helpers_test): remove unused in/out variables in two tests 2026-05-13 18:36:21 +00:00
a2a_proxy_helpers.go fix(handlers): synchronize async DB users in race tests 2026-05-14 09:37:52 -07:00
a2a_proxy_preflight_test.go fix(handlers): synchronize async DB users in race tests 2026-05-14 09:37:52 -07:00
a2a_proxy_test.go fix(handlers): synchronize async DB users in race tests 2026-05-14 09:37:52 -07:00
a2a_proxy.go fix(staging): restore goAsync tracking in 5 dispatch calls + move config seeding pre-Start 2026-05-14 21:27:52 +00:00
a2a_queue_expiry_test.go test: add handler test coverage — workspace_crud, mcp_tools, org_layout, hub, a2a queue 2026-05-13 18:04:00 +00:00
a2a_queue_status_test.go feat(a2a): per-queue-id status endpoint + per-message TTL (RFC #2331 Tier 1) 2026-04-29 20:21:17 -07:00
a2a_queue_status.go feat(a2a): per-queue-id status endpoint + per-message TTL (RFC #2331 Tier 1) 2026-04-29 20:21:17 -07:00
a2a_queue_test.go chore: promote staging→main (chat E2E + accumulated fixes) 2026-05-15 15:20:52 -07:00
a2a_queue.go fix(handlers): resolve TestExpandWithEnv_LiteralDollar and TestAppendYAMLBlock_BothEmpty 2026-05-14 01:12:35 +00:00
activity_since_id_test.go feat(activity): since_id cursor on GET /activity (#2339 PR 3) 2026-04-29 22:51:52 -07:00
activity_since_secs_test.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
activity_test.go feat(workspace): add broadcast and talk-to-user platform abilities 2026-05-15 12:03:08 -07:00
activity.go feat(workspace): add broadcast and talk-to-user platform abilities 2026-05-15 12:03:08 -07:00
admin_delegations_test.go feat(delegations): operator dashboard endpoint over the durable ledger (RFC #2829 PR-4) 2026-05-04 20:58:17 -07:00
admin_delegations.go feat(delegations): operator dashboard endpoint over the durable ledger (RFC #2829 PR-4) 2026-05-04 20:58:17 -07:00
admin_memories_cutover_test.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
admin_memories_test.go fix(handlers): unblock Platform (Go) CI — sqlmock budget-check + test loopback 2026-04-22 19:40:06 -07:00
admin_memories.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
admin_plugin_drift_test.go feat(plugins): plugin drift detector + queue + admin apply endpoint (#123) 2026-05-10 00:39:50 +00:00
admin_plugin_drift.go fix: resolve SourceResolver naming conflict, SSRF guard placement, and multiple test regressions 2026-05-10 06:05:11 +00:00
admin_queue_test.go fix(handlers/admin_queue_test): wire sqlmock to make DropStale tests pass 2026-04-24 04:40:19 +00:00
admin_queue.go fix(handlers/admin_queue): remove unused db import 2026-04-24 02:22:16 +00:00
admin_schedules_health_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
admin_schedules_health.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
admin_test_token_test.go test(admin_test_token): pin ADMIN_TOKEN IDOR-fix (#112) gate behavior 2026-04-30 02:59:08 -07:00
admin_test_token.go fix(security): close IDOR gaps on /admin/test-token and /orgs/:id/allowlist 2026-04-20 23:29:27 +00:00
admin_workspace_images_test.go fix(workspace-server): respect MOLECULE_IMAGE_REGISTRY in imagewatch + admin_workspace_images (RFC #229 P2-4) 2026-05-10 04:21:27 -07:00
admin_workspace_images.go fix(workspace-server): respect MOLECULE_IMAGE_REGISTRY in imagewatch + admin_workspace_images (RFC #229 P2-4) 2026-05-10 04:21:27 -07:00
agent_git_identity_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
agent_git_identity.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
agent_message_persistence_gate_test.go test(mcp): comprehensive coverage for send_message_to_user persistence + AST gate (reno-stars followup) 2026-05-05 14:52:32 -07:00
agent_message_writer_test.go feat(workspace): add broadcast and talk-to-user platform abilities 2026-05-15 12:03:08 -07:00
agent_message_writer.go feat(workspace): add broadcast and talk-to-user platform abilities 2026-05-15 12:03:08 -07:00
agent_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
agent.go refactor(events): migrate 18 files to typed EventType constants (RFC #2945 PR-B-1) 2026-05-05 19:05:03 -07:00
approvals_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
approvals.go fix(handlers): add rows.Err() checks across approvals, tokens, instructions 2026-05-14 23:22:18 +00:00
artifacts_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
artifacts.go fix(security): replace err.Error() with generic messages in handler responses (#1193) 2026-04-21 00:56:03 +00:00
audit_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
audit.go fix: guard HMAC slice truncation in audit chain verification (fixes #1332) (#1339) 2026-04-21 07:52:11 +00:00
budget_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
budget.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
bundle_test.go fix(test): align bundle import expectations 2026-05-13 23:49:13 +00:00
bundle.go fix(bundle): reject imports without a bundle name 2026-05-13 23:49:13 +00:00
channels_test.go chore: promote main→staging v6 (sync all main fixes) 2026-05-14 12:41:58 +00:00
channels.go chore: sync staging to main — 1188 commits, 5 conflicts resolved (#1743) 2026-04-23 18:30:18 +00:00
chat_files_poll_test.go fix(chat-uploads): activity rows commit atomically with PutBatch 2026-05-05 21:34:28 -07:00
chat_files_test.go feat(saas): close 4th default-tier site + lift org_import asymmetry + tests (#2910) 2026-05-05 11:38:22 -07:00
chat_files.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
chat_history_test.go feat(messagestore): MessageStore interface + Postgres impl (RFC #2945 PR-D) 2026-05-05 23:38:14 -07:00
chat_history.go feat(messagestore): MessageStore interface + Postgres impl (RFC #2945 PR-D) 2026-05-05 23:38:14 -07:00
checkpoints_integration_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
checkpoints_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
checkpoints.go fix(security): replace err.Error() with generic messages in handler responses (#1193) 2026-04-21 00:56:03 +00:00
class1_ast_gate_test.go test(handlers): generic Class 1 leak AST gate (#2867 PR-A) 2026-05-05 13:01:34 -07:00
config_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
config.go fix(security): cap webhook + config PATCH bodies (H3/H4) 2026-04-19 01:23:03 -07:00
container_files_delete_test.go chore: sync staging to main — 1188 commits, 5 conflicts resolved (#1743) 2026-04-23 18:30:18 +00:00
container_files_test.go fix(handlers): add empty/dot-only path guard to validateRelPath 2026-04-24 07:17:26 +00:00
container_files.go fix(tests): path validation before docker check + a2a queue mock in tests 2026-04-24 11:07:43 +00:00
delegation_executor_integration_test.go fix(handlers): update executeDelegation calls in integration tests 2026-05-14 03:28:28 +00:00
delegation_extract_response_text_test.go fix(handlers/discovery): nil-guard in filterPeersByQuery + test coverage for #730 2026-05-12 18:13:53 +00:00
delegation_inbox_push_test.go feat(delegations): result-push to caller inbox behind feature flag (RFC #2829 PR-2) 2026-05-04 20:50:46 -07:00
delegation_ledger_integration_test.go fix(ci): repair scheduled main janitors and track masks 2026-05-12 17:03:29 -07:00
delegation_ledger_test.go fix(ci): repair scheduled main janitors and track masks 2026-05-12 17:03:29 -07:00
delegation_ledger_writes_test.go feat(delegations): wire ledger Insert+SetStatus from production code paths (RFC #2829 #318) 2026-05-05 02:26:06 -07:00
delegation_ledger_writes.go feat(delegations): wire ledger Insert+SetStatus from production code paths (RFC #2829 #318) 2026-05-05 02:26:06 -07:00
delegation_ledger.go fix(ci): repair scheduled main janitors and track masks 2026-05-12 17:03:29 -07:00
delegation_list_test.go chore: promote staging→main (chat E2E + accumulated fixes) 2026-05-15 15:20:52 -07:00
delegation_sweeper_test.go feat(delegations): stuck-task sweeper with deadline + heartbeat-staleness rules (RFC #2829 PR-3) 2026-05-04 20:55:13 -07:00
delegation_sweeper.go feat(delegations): stuck-task sweeper with deadline + heartbeat-staleness rules (RFC #2829 PR-3) 2026-05-04 20:55:13 -07:00
delegation_test.go fix(delegation): write delegation_id into response_body column 2026-05-14 12:18:07 +00:00
delegation.go fix(ci): repair delegation list and merge queue tests 2026-05-14 14:19:42 +00:00
derive_provider_drift_test.go fix(workspace-server): vendor upstream derive-provider.sh + close 12-prefix drift 2026-05-02 23:51:23 -07:00
discovery_filter_test.go fix(handlers/discovery): nil-guard in filterPeersByQuery + test coverage for #730 2026-05-12 18:13:53 +00:00
discovery_test.go fix(handlers/discovery): nil-guard role in filterPeersByQuery (mc#731) 2026-05-12 17:50:17 +00:00
discovery.go fix(handlers): add rows.Err() checks after all scan loops 2026-05-13 15:49:57 +00:00
eic_tunnel_pool_setup.go perf(workspace-server,canvas): EIC tunnel pool + canvas Promise.all (closes core#11) 2026-05-06 23:17:58 -07:00
eic_tunnel_pool_test.go perf(workspace-server,canvas): EIC tunnel pool + canvas Promise.all (closes core#11) 2026-05-06 23:17:58 -07:00
eic_tunnel_pool.go fix(eic-tunnel-pool): capture poolJanitorInterval at pool construction 2026-05-07 16:01:11 -07:00
events_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
events.go fix(handlers): add rows.Err() checks after all scan loops 2026-05-13 15:49:57 +00:00
external_connection_test.go fix(workspace-server): emit Gitea/PyPI URLs for external user instructions (RFC #229 P2-5) 2026-05-10 04:23:46 -07:00
external_connection.go fix(external-workspace): pin molecule-ai-workspace-runtime>=0.1.999 in OpenClaw snippet (#1143) 2026-05-15 07:35:57 +00:00
external_rotate_test.go feat(ui): add Kimi CLI tab to external workspace connect modal 2026-05-12 13:41:33 -07:00
external_rotate.go fix(runtime): accept kimi as external workspace runtime 2026-05-12 13:28:13 -07:00
github_token_test.go fix(platform): /github-installation-token returns 501 on missing config (#388) 2026-05-11 06:21:02 +00:00
github_token.go fix(platform): /github-installation-token returns 501 on missing config (#388) 2026-05-11 06:21:02 +00:00
handlers_additional_test.go feat(workspace): add broadcast and talk-to-user platform abilities 2026-05-15 12:03:08 -07:00
handlers_extended_test.go refactor(handlers): Delete() delegates to CascadeDelete helper 2026-05-08 15:47:51 -07:00
handlers_test.go feat(workspace): add broadcast and talk-to-user platform abilities 2026-05-15 12:03:08 -07:00
hermes_messages_test.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
hermes_messages.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
hibernation_test.go refactor(workspace-status): typed constants + AST-based drift gate 2026-04-30 10:41:41 -07:00
instructions_test.go ci: update instructions handler test expectations 2026-05-14 16:25:55 -07:00
instructions.go fix(handlers): add rows.Err() checks across approvals, tokens, instructions 2026-05-14 23:22:18 +00:00
local_e2e_dev_dept_test.go test(org-external): integration test against local bare-git + e2e against live Gitea (PR-B + PR-C) 2026-05-08 05:30:04 -07:00
mcp_test.go feat(workspace): add broadcast and talk-to-user platform abilities 2026-05-15 12:03:08 -07:00
mcp_tools_memory_legacy_shim_test.go Memory v2 PR-6: backward-compat shim — legacy tools route to v2 2026-05-04 08:01:41 -07:00
mcp_tools_memory_legacy_shim.go Memory v2 PR-6: backward-compat shim — legacy tools route to v2 2026-05-04 08:01:41 -07:00
mcp_tools_memory_v2_test.go Memory v2 fixup I1+I4: expires_at validation + audit JSON marshal 2026-05-04 08:57:58 -07:00
mcp_tools_memory_v2.go Memory v2 fixup I1+I4: expires_at validation + audit JSON marshal 2026-05-04 08:57:58 -07:00
mcp_tools_test.go test: add handler test coverage — workspace_crud, mcp_tools, org_layout, hub, a2a queue 2026-05-13 18:04:00 +00:00
mcp_tools.go fix(mcp): write delegation activity row so canvas Agent Comms shows task text 2026-05-09 20:44:06 +00:00
mcp.go fix(handlers): OFFSEC-001 — scrub req.Method from dispatchRPC default error 2026-05-12 08:28:39 +00:00
memories_test.go feat(memories): PATCH /workspaces/:id/memories/:id endpoint for edits 2026-05-04 21:00:47 -07:00
memories_v2_test.go fix(memory-v2): namespace dropdown labels use display names not UUID prefixes (#2988) 2026-05-05 18:46:50 -07:00
memories_v2.go fix(memory-v2): namespace dropdown labels use display names not UUID prefixes (#2988) 2026-05-05 18:46:50 -07:00
memories.go feat(memories): PATCH /workspaces/:id/memories/:id endpoint for edits 2026-05-04 21:00:47 -07:00
memory_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
memory.go fix(security): replace err.Error() with generic messages in handler responses (#1193) 2026-04-21 00:56:03 +00:00
mock_runtime_test.go feat(workspace-server): mock runtime + mock-bigorg org template 2026-05-07 08:40:37 -07:00
mock_runtime.go feat(workspace-server): mock runtime + mock-bigorg org template 2026-05-07 08:40:37 -07:00
native_session_test.go feat(runtime): native_session skips a2a_queue enqueue — primitive #5 of 6 2026-04-26 23:34:04 -07:00
native_status_mgmt_test.go refactor(workspace-status): typed constants + AST-based drift gate 2026-04-30 10:41:41 -07:00
org_external_integration_test.go harden(org-external): token via http.extraHeader, .complete cache marker, ref '..' deny, naming cleanup 2026-05-08 05:54:54 -07:00
org_external_test.go harden(org-external): token via http.extraHeader, .complete cache marker, ref '..' deny, naming cleanup 2026-05-08 05:54:54 -07:00
org_external.go fix(staging): resolve 3 go vet failures 2026-05-13 09:50:45 +00:00
org_helpers_loadWorkspaceEnv_test.go fix(platform): add CWE-22 guard to loadWorkspaceEnv (closes #321) 2026-05-11 11:36:14 +00:00
org_helpers_pure_test.go chore: promote staging→main (chat E2E + accumulated fixes) 2026-05-15 15:20:52 -07:00
org_helpers_security_test.go merge: resolve conflicts with main — keep CWE-78 guard + rows.Err() checks 2026-05-14 21:09:07 +00:00
org_helpers_test.go [core-be-agent] fix(security#321): CWE-22 path traversal guards in loadWorkspaceEnv 2026-05-11 03:34:55 +00:00
org_helpers_walk_test.go fix(handlers/discovery): nil-guard in filterPeersByQuery + test coverage for #730 2026-05-12 18:13:53 +00:00
org_helpers.go chore: promote staging→main (chat E2E + accumulated fixes) 2026-05-15 15:20:52 -07:00
org_import_force_removed_test.go fix(org-import): remove force=true bypass of required-env preflight 2026-04-29 03:23:23 -07:00
org_import_helpers_test.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
org_import_idempotency_test.go test(org_import): tighten sqlmock regex on lookupExistingChild (#2872 PR-B) 2026-05-06 16:43:42 -07:00
org_import_reconcile_test.go fix(org-import): reconcile mode + audit-event emission 2026-05-08 15:04:47 -07:00
org_import.go fix(canvas): resolve Zustand selector anti-patterns causing React #185 re-render loops 2026-05-14 15:29:04 +00:00
org_include_symlink_test.go test(org-include): pin symlink-based subtree composition contract 2026-05-07 20:42:38 -07:00
org_include_test.go fix(platform-go-ci): align test mocks with schema drift + org_id context contract (#1755) 2026-04-23 07:14:33 +00:00
org_include.go feat(org-import): !external cross-repo subtree resolver (Phase 3a, internal#77 / task #222) 2026-05-08 05:17:55 -07:00
org_path_test.go fix: resolve pre-existing handler test failures (sqlmock, symlink, MCP, ssh-keygen) 2026-05-12 01:42:02 +00:00
org_persona_env_test.go fix(lint): resolve 64 pre-existing golangci-lint violations in workspace-server 2026-05-12 23:47:36 -07:00
org_plugin_allowlist_test.go fix(platform-go-ci): align test mocks with schema drift + org_id context contract (#1755) 2026-04-23 07:14:33 +00:00
org_plugin_allowlist.go fix(handlers): resolveInsideRoot dot-clean + nil-db defensive guards 2026-05-14 16:35:32 +00:00
org_prompt_ref_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
org_provision_concurrency_test.go feat(org-import): make provision concurrency configurable via env 2026-05-04 16:33:49 -07:00
org_test.go fix(handlers): remove duplicate test declarations — sync main with staging 2026-05-14 12:16:48 +00:00
org_tokens_test.go fix(platform-go-ci): align test mocks with schema drift + org_id context contract (#1755) 2026-04-23 07:14:33 +00:00
org_tokens.go fix(platform): unblock SaaS workspace registration end-to-end 2026-04-21 03:06:46 -07:00
org_workspace_required_env_test.go fix(org): add per-workspace RequiredEnv preflight check (#232) 2026-05-11 21:15:49 +00:00
org.go fix(canvas): resolve Zustand selector anti-patterns causing React #185 re-render loops 2026-05-14 15:29:04 +00:00
pending_uploads_integration_test.go test(chat-uploads): integration test for cross-table atomicity (#149 follow-up) 2026-05-05 21:57:56 -07:00
pending_uploads_test.go fix(chat-uploads): activity rows commit atomically with PutBatch 2026-05-05 21:34:28 -07:00
pending_uploads.go feat(rfc): poll-mode chat upload — phase 1 platform staging layer 2026-05-05 04:22:24 -07:00
plugins_atomic_tar_test.go fix(handlers): remove duplicate test declarations — sync main with staging 2026-05-14 12:16:48 +00:00
plugins_atomic_tar.go feat(plugins): atomic install — stage→snapshot→swap→marker (docker path) 2026-05-08 08:22:52 -07:00
plugins_atomic_test.go fix(canvas): resolve Zustand selector anti-patterns causing React #185 re-render loops 2026-05-14 15:29:04 +00:00
plugins_atomic.go feat(plugins): atomic install — stage→snapshot→swap→marker (docker path) 2026-05-08 08:22:52 -07:00
plugins_classifier_test.go feat(plugins): hot-reload classifier — skip restart on SKILL-content-only updates 2026-05-08 08:26:05 -07:00
plugins_classifier.go feat(plugins): hot-reload classifier — skip restart on SKILL-content-only updates 2026-05-08 08:26:05 -07:00
plugins_findrunning_ssot_test.go fix(workspace-server): SSOT-route container check + 422 on external runtimes 2026-05-06 22:58:20 -07:00
plugins_helpers_pure_test.go fix(handlers): add database/sql import to workspace_dispatchers_test.go 2026-05-13 18:37:09 +00:00
plugins_install_eic_test.go fix(handlers): repair instructions test compile 2026-05-14 08:20:32 -07:00
plugins_install_eic.go fix(plugins): SaaS (EC2-per-workspace) install/uninstall via EIC SSH 2026-05-07 15:42:51 -07:00
plugins_install_external_test.go fix(runtime): accept kimi as external workspace runtime 2026-05-12 13:28:13 -07:00
plugins_install_pipeline_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
plugins_install_pipeline.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
plugins_install.go feat(plugins): plugin drift detector + queue + admin apply endpoint (#123) 2026-05-10 00:39:50 +00:00
plugins_listing.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
plugins_sources.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
plugins_test.go fix(handlers): repair instructions test compile 2026-05-14 08:20:32 -07:00
plugins_tracking_test.go feat(plugins): workspace_plugins tracking table — version-subscription foundation 2026-05-08 08:52:35 -07:00
plugins_tracking.go fix(handlers): resolveInsideRoot dot-clean + nil-db defensive guards 2026-05-14 16:35:32 +00:00
plugins.go fix(runtime): accept kimi as external workspace runtime 2026-05-12 13:28:13 -07:00
provlog_emit_test.go feat(workspace-server): structured logging at provisioning boundaries 2026-05-05 12:30:11 -07:00
registry_test.go fix(runtime): accept kimi as external workspace runtime 2026-05-12 13:28:13 -07:00
registry.go fix(runtime): accept kimi as external workspace runtime 2026-05-12 13:28:13 -07:00
restart_context_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
restart_context.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
restart_signals_test.go fix(handlers): synchronize async DB users in race tests 2026-05-14 09:37:52 -07:00
restart_signals.go fix(handlers): synchronize async DB users in race tests 2026-05-14 09:37:52 -07:00
restart_template_test.go chore(manifest): prune to 4 actively-supported runtimes 2026-05-02 19:21:47 -07:00
restart_template.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
runtime_image_pin_test.go feat(provisioner): digest-pin workspace images via runtime_image_pins (#2272 layer 1) 2026-05-03 02:30:00 -07:00
runtime_image_pin.go feat(provisioner): digest-pin workspace images via runtime_image_pins (#2272 layer 1) 2026-05-03 02:30:00 -07:00
runtime_overrides_test.go feat(runtime): native_scheduler skip — primitive #3 of 6 2026-04-26 22:47:00 -07:00
runtime_overrides.go feat(runtime): native_scheduler skip — primitive #3 of 6 2026-04-26 22:47:00 -07:00
runtime_provision_timeouts_test.go feat(workspace-server): surface provision_timeout_ms in workspace API (#2054 phase 2) 2026-04-26 06:37:45 -07:00
runtime_provision_timeouts.go refactor(handlers): apply simplify findings on PR #2094 2026-04-26 06:40:15 -07:00
runtime_registry_test.go feat(kimi): Kimi as first-class BYO-compute runtime + delegation retry fix 2026-05-13 09:01:30 -07:00
runtime_registry.go feat(kimi): Kimi as first-class BYO-compute runtime + delegation retry fix 2026-05-13 09:01:30 -07:00
saas_default_tier_test.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
sanitize_filename_test.go feat(rfc): poll-mode chat upload — phase 1 platform staging layer 2026-05-05 04:22:24 -07:00
schedules_handler_test.go fix(handlers): resolve all sqlmock v1.5.2 API errors in schedules_handler_test.go 2026-05-14 16:35:32 +00:00
schedules_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
schedules.go fix(security): replace err.Error() with generic messages in handler responses (#1193) 2026-04-21 00:56:03 +00:00
secrets_test.go feat(workspace-server): PUT /provider endpoint for explicit LLM provider (#196) 2026-04-30 22:25:48 -07:00
secrets.go fix(handlers): restore rows.Err() checks in secrets.go — 6 scan loops 2026-05-14 20:21:17 +00:00
security_regression_685_686_687_688_test.go feat(saas): close 4th default-tier site + lift org_import asymmetry + tests (#2910) 2026-05-05 11:38:22 -07:00
socket_test.go fix(test/handlers): correct newSocketHandlerWithDB signature — drop *sql.DB param 2026-05-12 18:40:42 -07:00
socket.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
sse_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
sse.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
ssrf_test.go test(ssrf): pin dev-mode RFC-1918 allow contract (follow-up to #2103) 2026-04-26 10:32:33 -07:00
ssrf.go fix(platform/ssrf): allow RFC-1918 in MOLECULE_ENV=development 2026-04-26 10:14:47 -07:00
template_files_eic_dispatch_test.go fix(workspace files API): EIC parity for ListFiles + DeleteFile (closes #2999 PR-A) 2026-05-05 20:18:05 -07:00
template_files_eic_shells_test.go fix(workspace files API): EIC parity for ListFiles + DeleteFile (closes #2999 PR-A) 2026-05-05 20:18:05 -07:00
template_files_eic_test.go fix(workspace files API): EIC parity for ListFiles + DeleteFile (closes #2999 PR-A) 2026-05-05 20:18:05 -07:00
template_files_eic.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
template_import_test.go [core-be-agent] 2026-05-09 21:58:34 +00:00
template_import.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
templates_test.go test(handlers): cover ListFiles symlink skip 2026-05-14 13:17:16 -07:00
templates.go fix(handlers): skip symlinks in ListFiles WalkDir callback (OFFSEC-010) 2026-05-14 20:12:33 +00:00
terminal_diagnose_test.go fix(handlers): remove duplicate test declarations; skip SSH tests gracefully 2026-05-14 04:56:19 +00:00
terminal_diagnose.go fix(handlers/terminal): fix unwrapGoError separator — use LastIndex("(") not ") " 2026-05-12 19:27:32 +00:00
terminal_test.go fix(handlers): repair instructions test compile 2026-05-14 08:20:32 -07:00
terminal.go fix(handlers): resolveInsideRoot dot-clean + nil-db defensive guards 2026-05-14 16:35:32 +00:00
tokens_sqlmock_test.go test(handlers): sqlmock coverage for tokens.go (closes #1819) 2026-04-26 02:50:42 -07:00
tokens_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
tokens.go fix(handlers): add rows.Err() checks across approvals, tokens, instructions 2026-05-14 23:22:18 +00:00
traces_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
traces.go fix(go): replace $1 literal with resp.Body.Close() in 7 files (#1247) 2026-04-21 03:18:21 +00:00
transcript_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
transcript.go tech-debt: rename molecule-monorepo-net -> molecule-core-net 2026-05-09 20:51:48 +00:00
viewport_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
viewport.go fix(security): replace err.Error() with generic messages in handler responses (#1193) 2026-04-21 00:56:03 +00:00
webhooks_test.go fix(platform-go-ci): align test mocks with schema drift + org_id context contract (#1755) 2026-04-23 07:14:33 +00:00
webhooks_workflow_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
webhooks.go fix: multiple platform handler bug fixes 2026-04-20 05:01:01 +00:00
workspace_abilities.go feat(workspace): add broadcast and talk-to-user platform abilities 2026-05-15 12:03:08 -07:00
workspace_bootstrap_test.go refactor(workspace-status): catch missed literal in workspace_bootstrap.go + add literal-drift gate 2026-04-30 10:51:01 -07:00
workspace_bootstrap.go refactor(events): migrate 18 files to typed EventType constants (RFC #2945 PR-B-1) 2026-05-05 19:05:03 -07:00
workspace_broadcast_test.go fix(broadcast): OFFSEC-015 — scope recipients to sender's org 2026-05-15 12:30:03 -07:00
workspace_broadcast.go fix(broadcast): OFFSEC-015 — scope recipients to sender's org 2026-05-15 12:30:03 -07:00
workspace_budget_test.go feat(workspace): add broadcast and talk-to-user platform abilities 2026-05-15 12:03:08 -07:00
workspace_create_name_integration_test.go fix(workspace): replace asyncio.get_event_loop().run_until_complete with asyncio.run() (#307) (#498) 2026-05-11 15:37:34 +00:00
workspace_create_name_test.go fix(workspace): replace asyncio.get_event_loop().run_until_complete with asyncio.run() (#307) (#498) 2026-05-11 15:37:34 +00:00
workspace_create_name.go fix(platform): clear golangci-lint findings 2026-05-12 22:53:22 -07:00
workspace_crud_helpers_test.go test(handlers/workspace_crud): add workspace_crud_helpers_test.go — 7 cases for validateWorkspaceDir 2026-05-12 10:16:26 +00:00
workspace_crud_test.go fix(handlers): workspace_crud_test.go compile errors + routing fixes 2026-05-14 16:42:59 +00:00
workspace_crud_validators_test.go fix(handlers): resolve remaining build/test failures on fix/904-handler-test-blockers 2026-05-14 02:05:37 +00:00
workspace_crud.go fix(canvas): resolve Zustand selector anti-patterns causing React #185 re-render loops 2026-05-14 15:29:04 +00:00
workspace_dispatchers_test.go fix(handlers): add database/sql import to workspace_dispatchers_test.go 2026-05-13 18:37:09 +00:00
workspace_dispatchers.go fix(staging): restore goAsync tracking in 5 dispatch calls + move config seeding pre-Start 2026-05-14 21:27:52 +00:00
workspace_metrics_test.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
workspace_metrics.go chore: open-source restructure — rename dirs, remove internal files, scrub secrets 2026-04-18 00:24:44 -07:00
workspace_namespace_cleanup_test.go Memory v2 fixup I5: workspace purge cleans up plugin namespace 2026-05-04 09:20:37 -07:00
workspace_preflight_test.go chore: code-review cleanup on today's shipped PRs 2026-04-20 16:04:57 -07:00
workspace_preflight.go chore: code-review cleanup on today's shipped PRs 2026-04-20 16:04:57 -07:00
workspace_provision_auto_test.go fix(handlers): synchronize async DB users in race tests 2026-05-14 09:37:52 -07:00
workspace_provision_concurrent_repro_test.go test(provision): tighten Assertion 4 message to name both failure modes 2026-05-01 20:14:39 -07:00
workspace_provision_panic_test.go test(provision): harden panic tests with re-raise guard + assert broadcast count 2026-05-01 20:11:11 -07:00
workspace_provision_shared_test.go fix(provisioner): export MOLECULE_MODEL (canonical model env) + read it first; drop stray brace in delegation_test.go 2026-05-10 03:11:41 -07:00
workspace_provision_shared.go refactor(events): migrate 18 files to typed EventType constants (RFC #2945 PR-B-1) 2026-05-05 19:05:03 -07:00
workspace_provision_test.go fix: preserve Claude Code provider registry in generated configs 2026-05-14 17:33:22 -07:00
workspace_provision.go chore: promote staging→main (chat E2E + accumulated fixes) 2026-05-15 15:20:52 -07:00
workspace_restart_async_test.go Move /restart Stop into the async goroutine 2026-04-30 19:35:29 -07:00
workspace_restart_coalesce_test.go fix(test): drain coalesceRestart goroutines before t.Cleanup (Class H, #170) 2026-05-07 13:13:13 -07:00
workspace_restart_stop_retry_test.go fix(restart): retry cpProv.Stop with backoff + flag exhaustion as LEAK-SUSPECT 2026-05-01 23:36:38 -07:00
workspace_restart_test.go fix(runtime): accept kimi as external workspace runtime 2026-05-12 13:28:13 -07:00
workspace_restart.go fix(runtime): accept kimi as external workspace runtime 2026-05-12 13:28:13 -07:00
workspace_test.go feat(workspace): add broadcast and talk-to-user platform abilities 2026-05-15 12:03:08 -07:00
workspace.go chore: promote staging→main (chat E2E + accumulated fixes) 2026-05-15 15:20:52 -07:00
workspaces_insert_allowlist_test.go test(handlers): allowlist INSERT INTO workspaces sites — close bulk-create regression class (#2867 class 1) 2026-05-05 11:15:16 -07:00