Skip to content

feat: remove the UAT feature - #188

Merged
NagariaHussain merged 2 commits into
developfrom
chore/remove-uat
Aug 29, 2026
Merged

feat: remove the UAT feature#188
NagariaHussain merged 2 commits into
developfrom
chore/remove-uat

Conversation

@NagariaHussain

Copy link
Copy Markdown
Contributor

Problem

UAT approval is no longer part of how Hive works, but the fields, document methods, task-panel section and board badge were all still in place.

Solution

Removed it end to end:

  • Hive Task: uat_section, uat_status, uat_approved_by, uat_date fields and the approve_uat / reject_uat whitelisted methods.
  • Task panel: the client-facing UAT section with the Approve and Reject buttons.
  • Board: the UAT <status> badge and the showUat / hasClient props that carried it from the project page down to the card.
  • Activity feed: the uat_status change label, and uat_status from the surfaced-fields list.
  • Types: UAT_STATUSES, UATStatus, uatStatusTheme and the three HiveTask fields.
  • E2E: the UAT assertion in client-experience.spec.ts.

The uat_* columns stay on tabHive Task — Frappe does not drop a column when its field is removed — so old values remain readable in the database. Say the word if you want a patch that drops them.

Testing

bench migrate, frontend typecheck, lint and build all clean. Playwright: client-experience, tasks and projects specs, 21 passed.

🤖 Generated with Claude Code

https://claude.ai/code/session_014AupF7Eoc6JnGv1gaiQY6G

UAT approval is dropped from Hive: the `uat_section`, `uat_status`,
`uat_approved_by` and `uat_date` fields on Hive Task, the `approve_uat`
and `reject_uat` document methods, the panel section clients acted on,
the board badge and the activity-feed label.

The `uat_*` columns stay on `tabHive Task` — Frappe does not drop a
column when its field goes — so the old values remain readable in the
database until someone chooses to drop them.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014AupF7Eoc6JnGv1gaiQY6G
@greptile-apps

greptile-apps Bot commented Aug 29, 2026

Copy link
Copy Markdown

Greptile Summary

The PR removes the obsolete UAT workflow across the Hive Task schema, backend methods, project activity, task panel, boards, shared frontend types, and end-to-end coverage.

  • Removes UAT fields and approval/rejection document methods.
  • Removes UAT controls, badges, props, query fields, status helpers, and activity labels.
  • Updates affected end-to-end tests, including the app-switcher trigger locator.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains.

Important Files Changed

Filename Overview
bwh_hive/bwh_hive/doctype/hive_task/hive_task.json Removes the four UAT metadata fields from the Hive Task DocType while retaining the remaining task schema.
bwh_hive/bwh_hive/doctype/hive_task/hive_task.py Removes generated UAT field annotations and the approval and rejection document methods.
bwh_hive/bwh_hive/api.py Stops surfacing UAT status changes in project activity results.
frontend/src/components/tasks/TaskPanel.vue Removes the UAT status display, approval controls, document method bindings, and related state.
frontend/src/components/tasks/TaskBoardCard.vue Removes UAT badges and their supporting prop and theme dependency from task cards.
frontend/src/pages/ProjectDetailPage.vue Stops requesting UAT status and passing client-presence state through the project task board.
frontend/src/pages/TasksPage.vue Stops requesting UAT status for the shared task workspace.
frontend/src/types.ts Removes the UAT status vocabulary and UAT properties from the shared HiveTask type.
e2e/tests/client-experience.spec.ts Removes the obsolete expectation that clients can approve UAT from a read-only task panel.
e2e/tests/app-switcher.spec.ts Replaces a markup-coupled sidebar trigger locator with an accessible role-and-name locator.

Reviews (2): Last reviewed commit: "fix: anchor the app-switcher spec on a r..." | Re-trigger Greptile

`data-slot="sidebar-header"` is a frappe-ui internal, which the
no-markup-locators guard rejects. The header trigger carries the
workspace title, so its role and name are enough.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014AupF7Eoc6JnGv1gaiQY6G
@NagariaHussain
NagariaHussain merged commit 6411af8 into develop Aug 29, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant