Skip to content

feat: preserve cross-project agents in New Team (refs #3073) - #3102

Merged
mblua merged 4 commits into
mainfrom
feat/3073-new-team-project-agent-labels
Oct 19, 2026
Merged

mblua merged 4 commits into
mainfrom
feat/3073-new-team-project-agent-labels

Conversation

@mblua

@mblua mblua commented Oct 18, 2026 •

Copy link
Copy Markdown
Owner

New Team retains each selected agent's source project through the IPC request, so the landed import backend copies the selected foreign Agent Matrix rather than resolving a destination homonym. Foreign agents show a dimmed @sourceProject suffix; destination-local agents show their name alone.

The optional IPC arguments preserve existing callers. The modal rejects missing identity and duplicate portable references before creation, preserves source-bound coordinator/repository assignments, and keeps existing context alerts. The real discovery/store test verifies waiting and one close while preserving the existing best-effort reload policy: a discovery failure can still leave the view stale.

Validated head: dc4b998cd54772e73d3ac9cace9e1f188265fdd6, integrated with main at f08b2734dbe60a40f3341f7d27b727d8e10ecc0e. The merge had no conflicts or manual source edits. The target-relative change remains the seven approved frontend/type/test paths (282 additions, 12 deletions).

Validation:

  • Frontend on the exact head with Node 22.23.3/npm 11.6.2: typecheck, dependencies, test debt, changed duplication and cognitive baseline PASS; full suite 274 files / 4,178 tests PASS, exit 0 in 263 seconds. Existing 234 focused cases remain in the full suite. Tool/input hashes are unchanged and known run processes settled.
  • Rust 1.98.1 locked all-target check PASS. Corrected locked lib/bin/test execution on a704376702f72dd6bee7aa6b7e38050091c2c6be: 6,729 passed, zero failed, 32 ignored across 32 parent harnesses; all three required layering guards PASS. Child subprocess summaries are excluded from totals.
  • Independent Rust review qualified reuse of those executions on the validated head: complete Rust/build inputs, detector scripts, locks and configuration are byte-identical across the tested head, current target and integrated head. This is derived evidence, not a claim that Rust was executed again on the new head.
  • Complete structural SCC sets, 1,211 module pairs and committed arc record are unchanged; arc/cycle checks PASS. The current-target PRE qualification and measured POST remain separately identified.
  • Independent focused architecture/source review PASS; Rust source and final-proof qualification PASS. No findings or baseline changes.

Earlier failed and cancelled results remain preserved. Five Rust cases failed with fixtures beneath real .ac ancestry; the single authorized run using an isolated temp root passed those cases and the full suite. An invalid frontend preflight downloaded Node 26 into a shared cache and its suite was cancelled; the known process chain was settled before the single corrected Node 22 pass. Those earlier executions are not relabeled as successful, and no broader exclusive-cause claim is made.

Evidence: room-shared/i3068-validation/P03/integrated-mainf08/, with corrected frontend report/manifest hashes 4b389eb885b9cd5fa276c81e524385bdfbbe27d0978e21ab6c3b790716b92905 / 77152be4cac944033f72217f4b51f687b22dc92ac4c3811ecd6a787e5cf88ffc. Full PR CI remains required for this exact published head via the existing ci:full label. No distribution build, release or version bump is requested.

Closes #3073

@mblua mblua added the ci:full Run the full PR regression gates on this PR label Oct 18, 2026
@mblua

mblua commented Oct 18, 2026

Copy link
Copy Markdown
Owner Author

Step 9.5 base-drift review: target advanced from integrated a4c18bfa66aad051627378ae885798af405ed59e to 970c907972be62dd642c0d3d8219a70b206da4ff. Both independent reviewers returned UNRELATED_SAFE_TO_REUSE for unchanged PR head b07dff7263be9008f634ae8ff33bc0a60fbb1147, with no material doubt.

Incoming paths:

  • src-tauri/src/commands/config.rs: additive rail diagnostic types, command and tests.
  • src-tauri/src/lib.rs: registration of the new append_rail_diagnostic command only.
  • src-tauri/src/logging.rs: additional tests only.
  • src-tauri/src/web/commands.rs: new diagnostic dispatch arm and test, existing arms unchanged.
  • remote-resources/blocking-menus/v1/settings-blocking-menus.json: independent Codex trust-menu pattern.

There is no overlap with P03's seven frontend paths and no changed existing command used by New Team. The delta changes no frontend source, manifest, lockfile, workflow or relevant build configuration. Reviewers checked symbols/call paths rather than inferring safety from filenames; merge-tree is conflict-free. Local evidence remains valid for the exact PR head. The later main Rust graph belongs to main's own changes; no P03 Rust or structural delta is introduced. Required and triggered PR checks must still pass before merge.

@mblua

mblua commented Oct 18, 2026

Copy link
Copy Markdown
Owner Author

CI run 39089324848, attempt 1, on exact head b07dff7263be9008f634ae8ff33bc0a60fbb1147 completed with one failing frontend test: ProjectPanel.context-menu.test.tsx:2054, “prevents an old same-session reclamp callback from moving or cleaning the reopened menu”, expected one RAF callback and observed two (clamp, tick). Frontend total: 4108 passed / 1 failed. All other executed jobs in this run passed.

The complete original frontend log and run metadata are preserved. This is not the local Node26 storage-hook failure and no debt classifier accepted it. The failing test and ProjectPanel source are unchanged by P03, but shared imports mean that fact alone does not prove the cause is unrelated. No root cause or flaky classification is claimed.

Under the bounded recurrence rule, one rerun of only failed job 117562485792 was requested on the same SHA and configured conditions. No source, test, environment, runner, workflow or threshold changed. Other green jobs are reused. Merge remains blocked until the actual rerun and every required/applicable triggered check are green.

The earlier PR run 39089324334 was cancelled when superseded by the full-tier run; its unexpanded matrix placeholders are retained as historical cancelled-run entries, not successful checks. Their corresponding concrete jobs in the full run completed successfully.

@sonarqubecloud

Copy link
Copy Markdown

@mblua

mblua commented Oct 19, 2026

Copy link
Copy Markdown
Owner Author

Stale-base triage for target advancement from f08b2734dbe60a40f3341f7d27b727d8e10ecc0e to acc62cc34ab85145e217e01c64a5241cdcd6380d (PR #3115, two commits): independent review classified UNRELATED_DELTA for the unchanged feature head dc4b998cd54772e73d3ac9cace9e1f188265fdd6.

Incoming paths:

  • src/sidebar/components/ProjectPanel.tsx
  • src/sidebar/components/ProjectPanel.working-tint.test.tsx
  • src/sidebar/components/RoomGroupRail.tsx
  • src/sidebar/components/room-session.test.ts
  • src/sidebar/components/room-session.ts
  • src/sidebar/stores/team-idle-watcher.test.ts
  • src/sidebar/stores/team-idle-watcher.ts
  • src/sidebar/watchdog/non-stop-watchdog-client.test.ts
  • src/sidebar/watchdog/non-stop-watchdog-client.ts
  • src/sidebar/watchdog/rail-watchdog-parity.test.tsx

The ten incoming files (418 additions/352 deletions) share no path with P03's seven files and do not use its changed symbols. The shared IPC/type additions are optional and additive; incoming consumers use unchanged types/APIs. The two ProjectPanel hunks only pass proj.path into roomIsActive; the NewTeamModal import/mount and creation/discovery contract are unchanged. No Rust/build/package/lock/config/workflow inputs changed. A non-checkout merge-tree calculation was clean (tree edeb784d17a1f1cc08472aa4e4d40d84c6a5884b).

The delta digest is 3b20c6199385a1e2b8c7d15cbfa8e14b387013649134d8fce49e20a17d3c1db5; independent report digest 02fb3b43d0d4716cd3b91d0d2513fdb222caa8b16e6fe744bd1c8956cae75164.

Retaining the exact validated feature head and its CI under the documented unrelated-delta landing policy; no branch update or CI restart. The strict freshness rule does not justify unnecessary integration under that policy's admin-merge path. This does not claim green CI or waive any required/applicable check: all must pass on this exact head before merge.

@mblua

mblua commented Oct 19, 2026

Copy link
Copy Markdown
Owner Author

Final landing triage: subsequent target advancement from acc62cc34ab85145e217e01c64a5241cdcd6380d to bb635181019040986c4e9d8304b0f7b71f28c729 (PR #3066/#3060) was independently classified UNRELATED_DELTA.

Four incoming paths (501 additions/3 deletions): src-tauri/src/commands/ac_discovery.rs, src-tauri/src/lib.rs, src-tauri/src/web/commands.rs, src-tauri/tests/spawn_search_path_inventory.rs. The API/helper/route additions have no frontend consumer and leave existing discover_project, list_all_agents, create_team and entity-creation routes unchanged; only removed lines are replaced spawn-inventory counts. No overlap with P03 paths or build/config/lock/workflow changes. A non-checkout merge-tree calculation is clean.

Delta digest e50b46e82cf3a5ecadeeeabf47d346f86be8ef212359a22745e2d4f6071fd97e; independent review digest e34585fbde78240ac01118592c1ba38f42489e17c7be95f0d440d95d858cfae4. This extends the already documented unrelated PR #3115 delta.

The unchanged validated head dc4b998cd54772e73d3ac9cace9e1f188265fdd6 completed full CI run 39179217461 successfully. All 14 required contexts are satisfied; all 23 check runs and the Snyk status on that exact head are successful. Reusing that green head under the documented unrelated-delta landing policy. The newer main Rust tree differs; this does not claim input equality or a separate execution on the eventual merged tree.

@mblua
mblua merged commit 0f953c5 into main Oct 19, 2026
24 checks passed
@mblua
mblua deleted the feat/3073-new-team-project-agent-labels branch October 19, 2026 01:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci:full Run the full PR regression gates on this PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

P03: preserve selected source identity and label foreign agents in New Team

1 participant