Repository navigation
Open shifts: fold into Roster and add more ways to find, share and fill shifts - #3483
Conversation
…ter and list view Open shifts becomes Roster's second tab (Team moves to More), the desktop rail loses its Shifts slot, and the page leads with your requests and hours, then the next shifts that fit your roster with a Request button. Phones get a day-by-day list with the calendar one tap away; from 1024px they sit side by side. The browse window widens to four weeks. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CZwGiwt7eXkD4fwyFM83gY
…ated tests Adds Share with a colleague and Add to calendar on a shift's page, a row on Roster's Month page counting open shifts that fit your roster, posting one shift on several dates, Post again, and Who could do this for managers. Navigation, side-menu, search and back-trail tests follow the fold into Roster. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CZwGiwt7eXkD4fwyFM83gY
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CZwGiwt7eXkD4fwyFM83gY
|
This pull request has been ignored for the connected project Preview Branches by Supabase. |
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars. ⚙️ Run configuration
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
🏁 CodeAnt Quality Gate ResultsCommit: ✅ Overall Status: PASSEDQuality Gate Details
|
Merging this PR will degrade performance by 63.54%
|
| Benchmark | BASE |
HEAD |
Efficiency | |
|---|---|---|---|---|
| ❌ |
medication-entities: medicationEntityMatchesInText |
4.2 ms | 11.6 ms | -63.54% |
Tip
Investigate this regression by commenting @codspeedbot fix this regression on this PR, or directly use the CodSpeed MCP with your agent.
Comparing claude/open-shifts-expansion-hj3sp1 (65773d5) with main (7346bbe)
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CZwGiwt7eXkD4fwyFM83gY
Announce share and posting progress through screen-reader-only live regions, keep the Request pill on one type step, and stop a class name reading as a result count in the roster-failed branch. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CZwGiwt7eXkD4fwyFM83gY
|
CodSpeed Performance Analysis reports one regressed benchmark on 0aad6cd. That isn't caused by this PR. The benchmarks cover clinical search, ranking and chunking code, and this PR changes none of it (only Open shifts and Roster UI, navigation and tests). On the previous commit (0c2e9cc) the same benchmarks showed a 29% improvement. CodSpeed also warns that the comparison ran in different runtime environments, so this looks like measurement noise. There is no fix to port. I can't re-run the check from here, so I'm leaving it as is and still watching the PR. Generated by Claude Code |
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CZwGiwt7eXkD4fwyFM83gY
There was a problem hiding this comment.
BigSimmo has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.
🤖 CodeAnt AI — Review Status
|
Thanks for using CodeAnt! 🎉We're free for open-source projects. if you're enjoying it, help us grow by sharing. Share on X · |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
PR Summary by QodoIntegrate Open shifts into Roster and expand shift workflows
AI Description
Diagram
High-Level Assessment
Files changed (27)
|
|
CodSpeed's Generated by Claude Code |
|
Code review by qodo was updated up to the latest commit b752fb4 |
Keeps both sides of the Roster month page: main's trimmed first page and this branch's Open shifts row. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CZwGiwt7eXkD4fwyFM83gY
…g matches The none-match message now sits above the day sections instead of replacing them, so hidden shifts can be shown in place without changing filters. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CZwGiwt7eXkD4fwyFM83gY
|
Code review by qodo was updated up to the latest commit 94b2c73 |
A second unanswered post kept the first attempt's time and shift list, so a quick third tap could send a duplicate before the team was read again. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01CZwGiwt7eXkD4fwyFM83gY
|
Code review by qodo was updated up to the latest commit 49a075c |
|
CodSpeed on 49a075c flags Generated by Claude Code |
Code Review ✅ Approved 4 closed / 4 findings🟡 Medium risk · Manager multi-date posting issues up to 14 separate shift requests; partial failures could leave an incomplete set of live openings. Moves Open shifts into Roster as a tab with a four-week browse view, a fits-your-roster list, share and add-to-calendar actions, and manager multi-date posting with a who-could-do-this helper. Resolved the undefined
✅ 4 closed✅ Bug:
|
| Auto-apply | Compact |
|
|
Was this helpful? React with 👍 / 👎 | Gitar
User description
Requested by Josh · project thread
Summary
Before: Open shifts was its own area with its own Browse, Requests and Alerts tabs and a "Shifts" slot in the desktop rail. On a phone, a tall calendar came first. The list looked 14 days ahead.
After: Open shifts is Roster's second tab (Month, Open shifts, Swaps; Team moves to More, and Month's top card still opens "Who is on"). The page opens with your requests and fortnight hours in one strip, then "Fits your roster", the next shifts with no clash and no roster flag, each with a Request button that opens the confirm sheet. Phones get a day-by-day list with the calendar one tap away. From 1024 px the list and calendar sit side by side, and tapping a day scrolls the list. The window is four weeks. The desktop rail loses its Shifts slot.
Also added, with no database change:
How:
src/lib/work-frame/areas.tsmakes theopen-shiftsmode draw Roster's frame with an Open shifts tab whose paths cover all doctor-facing Open shifts pages. Manager pages sit in Roster's More. The oldopenarea stays only as an id for help, example data and AI Search. New helpers live insrc/lib/open-shifts/share.ts,post-plan.tsandwho-could.ts, all unit tested.Areas touched: Personal practice, App experience, Answer engine
Not in this PR: "Take back your own request" needs a database change and is in its own draft PR, #3485.
Screenshots (example data, phone 390 and 320 px, desktop 1440 px) are in the project files under
work-mode-plan-2026-10-12/open-shifts-mockup/.Verification
npx tsc --noEmit -p .: clean after merging latest mainsrc/components/open-shifts,src/lib/open-shiftsandsrc/lib/work-frame: cleannpm run test:focusedover every changed file after merging main: 162 of 163 files passed first time; the one failure (a help link label reading "Open Open shifts") is fixed in the last commit and its test file passesverify:ui) is left to CI.Risk and rollout
Notes
🤖 Generated with Claude Code
https://claude.ai/code/session_01CZwGiwt7eXkD4fwyFM83gY
Generated by Claude Code
CodeAnt-AI Description
Move Open shifts into Roster and expand shift discovery and posting
What Changed
Impact
✅ Open shifts alongside Roster✅ Faster discovery of shifts that fit your roster✅ Fewer duplicate posts after an uncertain response💡 Usage Guide
Checking Your Pull Request
Every time you make a pull request, our system automatically looks through it. We check for security issues, mistakes in how you're setting up your infrastructure, and common code problems. We do this to make sure your changes are solid and won't cause any trouble later.
Talking to CodeAnt AI
Got a question or need a hand with something in your pull request? You can easily get in touch with CodeAnt AI right here. Just type the following in a comment on your pull request, and replace "Your question here" with whatever you want to ask:
This lets you have a chat with CodeAnt AI about your pull request, making it easier to understand and improve your code.
Example
Preserve Org Learnings with CodeAnt
You can record team preferences so CodeAnt AI applies them in future reviews. Reply directly to the specific CodeAnt AI suggestion (in the same thread) and replace "Your feedback here" with your input:
This helps CodeAnt AI learn and adapt to your team's coding style and standards.
Example
Retrigger review
Ask CodeAnt AI to review the PR again, by typing:
Check Your Repository Health
To analyze the health of your code repository, visit our dashboard at https://app.codeant.ai. This tool helps you identify potential issues and areas for improvement in your codebase, ensuring your repository maintains high standards of code health.