Walk every org move on app.dev.jaah.ai in a browser

Task 5773 · Done · Coder · created · updated

## Defect The operator "Change org…" flow (epic #5680) is merged and deployed to dev: develop 3a3d25558, Jaah Deploy run 38152997151, every job green including apply (dev). But nobody has used it on dev. Child #5699 ran the dialog walk only on a local stack, because app.dev.jaah.ai did not answer from its node. The finish runner #5700 got the same result: `curl` to app.dev / dev / api.dev.jaah.ai/api/health returned 000 (timeout). Today the only evidence for AC1 and AC3–AC14 is API tests plus a local walk. ## Fix No code change is expected. Run this task on a node that reaches app.dev.jaah.ai: check `curl -s -o /dev/null -w '%{http_code}' https://app.dev.jaah.ai/api/health` returns 200 FIRST. If it does not, fail fast with that output; do not settle. Sign in as the operator login `jaah/debug/main/operator-login` (switch to its Operator membership). Then walk the steps under "Done means" in the browser, exactly as #5699's body lays them out: - Setup: grant `is_superadmin` to that login's Org B and Gmind memberships on the user edit page. Seed a Gmind project with one task in every state, one slot, a project-only credential, and a credential shared with a SECOND seeded Gmind project. - DEV DATA IS NOT DISPOSABLE. Move ONLY entities you seeded. If a manifest lists any released, left-behind or dropped item you did not seed, cancel. If a check exposes a defect, fix it minimally in your PR and name it. ## Done means - AC1: as operator, **Change org…** shows in the ⋯ menu and on the detail page of Projects, Nodes, Multi-Node Hosts, Credentials, Cloud connections, Accounts, Node groups, Automations (crons/triggers move via Automations) and Playbooks. As Gmind owner it shows nowhere, and the move call returns 403 in the network tab. - AC2: the picker leaves out the current org and shows Operator disabled with its reason; manifest counts match the project pages; the R1.6 note shows; a wrong name leaves Move disabled with its reason. Screenshots at 1280px and 390px. - AC3, AC5–AC8, AC12–AC14: move the seeded project Gmind → Org B and back. Record the global filter A then B on Tasks/Projects/Credentials/Automations/Audit Sessions, that old URLs still open, Worktrees before/after, branches on origin via `jaah-forge`, Audit showing ONE entry, and both orgs' activity. - AC9/AC10: move an idle seeded node and a seeded Multi-Node Host, then move them back. A node with a live runner shows the blocker with a stop link. - AC11: move one seeded object of each of the 8 kinds and check A's and B's lists. - The report embeds each screenshot and records each observation. - Project instruction: note anything broken or awkward and file it as a task with itemized 1–2 sentence suggestions. Out of scope: do NOT change the transfer engine, rules or API contracts beyond a minimal named fix for a defect the walk exposes. Do NOT move any entity that existed before the test. Do NOT add flags, bulk moves or user moves.

Outcome

Walked all org moves on app.dev.jaah.ai: AC1–3, 7, 9–14 pass; AC5/6/8 blocked (no slot possible on dev tenant plans). Host move failed on NodeLink: fixed in PR #5020, deployed, re-walked green. 16 follow-ups in report (task filing refused, R30). mem-2 used.

Pull request

Artifacts

Activity

  • Ready
  • Runner started
  • Runner ended (done)