feat: #1686 add Container Config tab skeleton #1705

Merged
hongming merged 1 commits from feat/1686-container-config-tab into main 2026-05-23 06:50:04 +00:00
Owner

Summary

  • Adds a Canvas side-panel Container tab for the #1686 Track B container/runtime surface.
  • Keeps it separate from EC2 compute shape editing: no instance type, root volume, display mode, GPU, or OS controls are shown here.
  • Shows read-only runtime/container fields from existing canvas node data where available: runtime image, workspace access, max concurrent tasks, mounted container path, privileges, delivery mode, session controls, status, active tasks.

Comprehensive testing performed

  • canvas: npm test -- --run src/components/__tests__/SidePanel.tabs.test.tsx src/components/tabs/__tests__/ContainerConfigTab.test.tsx src/store/__tests__/canvas.test.ts src/store/__tests__/canvas-topology.test.ts
  • canvas: npm run build

Local-postgres E2E run

N/A: Canvas-only read-only tab skeleton. No backend schema, SQL, or Postgres behavior changed.

Staging-smoke verified or pending

Pending: PR CI will run the Canvas and staging-canvas checks. No live staging deploy has been triggered from this feature branch.

Root-cause not symptom

#1686 Track B requested a separate Container Config tab so runtime/container settings do not get mixed into the EC2 compute/display shape editor. This adds that separate surface and keeps it read-only until backend edit endpoints exist.

Five-Axis review walked

  • Correctness: The tab is added to the typed panel tab union, SidePanel render switch, and ARIA tab tests.
  • Readability: New component is a single small read-only view with local row helpers.
  • Architecture: Uses existing canvas node data and avoids a new backend endpoint for a skeleton surface.
  • Security: Does not expose raw host workspace paths or secrets; displays the mounted container path /workspace only.
  • Performance: No new network call; render-only component.

No backwards-compat shim / dead code added

No compatibility shim or dead code added. Existing Config tab remains unchanged; Container tab is a new sibling tab.

Memory/saved-feedback consulted

No saved memory was needed for this slice. Used live #1686 comments, merged PR #1701 state, and repo-local code/tests.

## Summary - Adds a Canvas side-panel Container tab for the #1686 Track B container/runtime surface. - Keeps it separate from EC2 compute shape editing: no instance type, root volume, display mode, GPU, or OS controls are shown here. - Shows read-only runtime/container fields from existing canvas node data where available: runtime image, workspace access, max concurrent tasks, mounted container path, privileges, delivery mode, session controls, status, active tasks. ## Comprehensive testing performed - [x] `canvas: npm test -- --run src/components/__tests__/SidePanel.tabs.test.tsx src/components/tabs/__tests__/ContainerConfigTab.test.tsx src/store/__tests__/canvas.test.ts src/store/__tests__/canvas-topology.test.ts` - [x] `canvas: npm run build` ## Local-postgres E2E run N/A: Canvas-only read-only tab skeleton. No backend schema, SQL, or Postgres behavior changed. ## Staging-smoke verified or pending Pending: PR CI will run the Canvas and staging-canvas checks. No live staging deploy has been triggered from this feature branch. ## Root-cause not symptom #1686 Track B requested a separate Container Config tab so runtime/container settings do not get mixed into the EC2 compute/display shape editor. This adds that separate surface and keeps it read-only until backend edit endpoints exist. ## Five-Axis review walked - Correctness: The tab is added to the typed panel tab union, SidePanel render switch, and ARIA tab tests. - Readability: New component is a single small read-only view with local row helpers. - Architecture: Uses existing canvas node data and avoids a new backend endpoint for a skeleton surface. - Security: Does not expose raw host workspace paths or secrets; displays the mounted container path `/workspace` only. - Performance: No new network call; render-only component. ## No backwards-compat shim / dead code added No compatibility shim or dead code added. Existing Config tab remains unchanged; Container tab is a new sibling tab. ## Memory/saved-feedback consulted No saved memory was needed for this slice. Used live #1686 comments, merged PR #1701 state, and repo-local code/tests.
hongming added 1 commit 2026-05-23 06:33:12 +00:00
Add container config tab skeleton
Lint shellcheck (arm64 pilot) / shellcheck-arm64 (pilot) (pull_request) Waiting to run
Block internal-flavored paths / Block forbidden paths (pull_request) Successful in 12s
CI / Detect changes (pull_request) Successful in 21s
CI / Python Lint & Test (pull_request) Successful in 12s
E2E Chat / detect-changes (pull_request) Successful in 30s
E2E API Smoke Test / detect-changes (pull_request) Successful in 31s
Handlers Postgres Integration / detect-changes (pull_request) Successful in 13s
Harness Replays / detect-changes (pull_request) Successful in 17s
E2E Staging Canvas (Playwright) / detect-changes (pull_request) Successful in 24s
Lint forbidden tenant-env keys / Scan workspace_secrets writers for forbidden env keys (pull_request) Successful in 15s
Lint no tenant GITEA or GITHUB token write / Scan for repo-host token write into tenant workspace surface (pull_request) Successful in 12s
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 11s
gate-check-v3 / gate-check (pull_request) Successful in 15s
sop-checklist / review-refire (pull_request) Has been skipped
sop-tier-check / tier-check (pull_request) Successful in 11s
CI / Platform (Go) (pull_request) Successful in 3s
CI / Shellcheck (E2E scripts) (pull_request) Successful in 9s
lint-required-no-paths / lint-required-no-paths (pull_request) Successful in 1m37s
E2E Chat / E2E Chat (pull_request) Successful in 23s
E2E API Smoke Test / E2E API Smoke Test (pull_request) Successful in 4s
Harness Replays / Harness Replays (pull_request) Successful in 4s
Handlers Postgres Integration / Handlers Postgres Integration (pull_request) Successful in 9s
E2E Staging Canvas (Playwright) / Canvas tabs E2E (pull_request) Successful in 4s
CI / Canvas (Next.js) (pull_request) Successful in 6m57s
CI / all-required (pull_request) Successful in 9m8s
qa-review / approved (pull_request) Refired via /qa-recheck by core-qa
security-review / approved (pull_request) Refired via /security-recheck by core-security
CI / Canvas Deploy Reminder (pull_request) Has been skipped
sop-checklist / all-items-acked (pull_request) acked: 7/7
sop-checklist / na-declarations (pull_request) N/A: (none)
audit-force-merge / audit (pull_request) Successful in 14s
2be87e66a9
hongming requested review from core-qa 2026-05-23 06:33:27 +00:00
hongming requested review from core-security 2026-05-23 06:33:28 +00:00
hongming added the tier:medium label 2026-05-23 06:33:28 +00:00
core-qa approved these changes 2026-05-23 06:44:44 +00:00
core-qa left a comment
Member

QA approval for #1686 Container Config tab skeleton. Scope is Canvas-only, read-only, separate from compute/display shape editing. Local tests/build and PR CI implementation jobs are green.

QA approval for #1686 Container Config tab skeleton. Scope is Canvas-only, read-only, separate from compute/display shape editing. Local tests/build and PR CI implementation jobs are green.
core-security approved these changes 2026-05-23 06:44:46 +00:00
core-security left a comment
Member

Security approval for #1686 Container Config tab skeleton. No backend access expansion, no new network call, no secrets, and host workspace_dir is not surfaced; mounted path is fixed to /workspace.

Security approval for #1686 Container Config tab skeleton. No backend access expansion, no new network call, no secrets, and host workspace_dir is not surfaced; mounted path is fixed to /workspace.
Member

/sop-ack comprehensive-testing verified local canvas tests/build and PR CI
/sop-ack local-postgres-e2e N/A canvas-only change
/sop-ack staging-smoke staging-canvas PR check passed
/sop-ack root-cause container config separated from compute/display editing
/sop-ack five-axis-review reviewed correctness readability architecture security performance
/sop-ack no-backwards-compat no shim or dead code
/sop-ack memory-consulted live issue/repo context sufficient

/sop-ack comprehensive-testing verified local canvas tests/build and PR CI /sop-ack local-postgres-e2e N/A canvas-only change /sop-ack staging-smoke staging-canvas PR check passed /sop-ack root-cause container config separated from compute/display editing /sop-ack five-axis-review reviewed correctness readability architecture security performance /sop-ack no-backwards-compat no shim or dead code /sop-ack memory-consulted live issue/repo context sufficient
hongming merged commit 5cc570a18f into main 2026-05-23 06:50:04 +00:00
hongming deleted branch feat/1686-container-config-tab 2026-05-23 06:50:08 +00:00
Sign in to join this conversation.
4 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: molecule-ai/molecule-core#1705