Skip to content

fix: status card for request changes and application redirection#1151

Open
MayankBansal12 wants to merge 2 commits intodevelopfrom
refactor/create-application
Open

fix: status card for request changes and application redirection#1151
MayankBansal12 wants to merge 2 commits intodevelopfrom
refactor/create-application

Conversation

@MayankBansal12
Copy link
Member

@MayankBansal12 MayankBansal12 commented Feb 26, 2026

Date: 27-02-26

Developer Name: @MayankBansal12


Issue Ticket Number:-

Description:

  • Add status card for request changes status in /join
  • Fix role mapping in application and redirection after create/edit application
  • Fix error message during create/edit application

Is Under Feature Flag

  • Yes
  • No

Database changes

  • Yes
  • No

Breaking changes (If your feature is breaking/missing something please mention pending tickets)

  • Yes
  • No

Is Development Tested?

  • Yes
  • No

Tested in staging?

  • Yes
  • No

Add relevant Screenshot below ( e.g test coverage etc. )

screencast
create-demo.mp4
image

@coderabbitai
Copy link

coderabbitai bot commented Feb 26, 2026

Walkthrough

This PR extends the application management flow by introducing a "changes_requested" status for handling application revisions, adding automatic role prefilling during onboarding, refactoring form field validation logic, and updating navigation to redirect to application detail pages instead of the join route.

Changes

Cohort / File(s) Summary
Changes Requested Status
app/components/join-steps/status-card.hbs, app/components/join-steps/status-card.js, app/constants/join.js
Introduces new "changes_requested" status with UI feedback block, description, and "Edit Application" button. New status added to APPLICATION_STATUSES constant and feedback getter extended to handle array-based feedback.
Role Prefilling & Image Validation
app/components/new-join-steps/new-step-one.hbs, app/components/new-join-steps/new-step-one.js, app/constants/new-join-form.js
Automatically prefills user role from profile with disabled state indicator, adds imageUrl field with validation rules, and conditionally renders "(auto-applied from profile)" message.
Form Field Handling Refactor
app/components/new-join-steps/base-step.js
Restructures inputHandler to perform granular per-field updates (validateField, updateWordCount, updateErrorMessage) with debounced syncFormValidity; validateField now returns shaped object results; adds image-specific error message in formatError.
Stepper & Navigation Updates
app/components/new-stepper.js, app/controllers/join.js, app/controllers/goto.js
Refactors submit response parsing with improved error handling; redirects to applications.detail instead of join route; adds tracked edit and dev properties to JoinController; simplifies goto controller redirection logic.
Constants & UI Updates
app/constants/urls.js, app/constants/new-signup.js, app/components/signup-steps/step-zero.*, app/styles/new-stepper.module.css
Updates development URLs to fully-qualified format (dev.realdevsquad.com); changes heading constant from "GitHub" to "socials"; adds role-selection-message CSS styling.
Test Updates
tests/integration/components/new-join-steps/new-step-one-test.js, tests/integration/components/new-signup/info-test.js, tests/integration/components/new-stepper-test.js, tests/integration/components/signup-steps/step-zero-test.js
Adds tests for role prefilling and disabled state; updates test expectations for response parsing and redirect targets; replaces hard-coded strings with imported constants.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Possibly related PRs

Suggested reviewers

  • AnujChhikara
  • iamitprakash
  • Hariom01010

Poem

🐰✨ A rabbit hops through forms so new,
With roles prefilled and edits due,
Status changed, where feedback flows,
Image fields and endpoints grow,
Application paths refined with care! 🎉

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Title check ✅ Passed The PR title references both 'status card for request changes' and 'application redirection', which align with the actual changes. The status card for changes_requested is implemented across multiple files, and application redirection logic is updated in new-stepper.js and goto.js.
Description check ✅ Passed The pull request description is related to the changeset, addressing status card for request changes, role mapping fixes, error message handling, and application redirection.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
  • 📝 Generate docstrings (stacked PR)
  • 📝 Generate docstrings (commit on current branch)
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch refactor/create-application
📝 Coding Plan
  • Generate coding plan for human review comments

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@cloudflare-workers-and-pages
Copy link

cloudflare-workers-and-pages bot commented Feb 26, 2026

Deploying www-rds with  Cloudflare Pages  Cloudflare Pages

Latest commit: f33d316
Status: ✅  Deploy successful!
Preview URL: https://42c9a848.www-rds.pages.dev
Branch Preview URL: https://refactor-create-application.www-rds.pages.dev

View logs

@MayankBansal12 MayankBansal12 marked this pull request as ready for review February 27, 2026 21:10
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@app/components/new-join-steps/new-step-one.js`:
- Around line 58-65: The code assumes any existing userRole maps to a key and
sets isRoleAvailable true even when unmapped; change the logic in the block that
uses userRole/USER_ROLE_MAP so you first compute roleKey (from
Object.keys(USER_ROLE_MAP).find(...)) and then only call
this.updateFieldValue('role', roleKey) and set this.isRoleAvailable = true when
roleKey is defined (non-undefined); if roleKey is undefined, do not call
updateFieldValue and ensure this.isRoleAvailable remains false so role buttons
are not disabled. Also keep the checks around this.login.userData?.role
(userRole) as-is.

In `@app/components/new-stepper.js`:
- Around line 171-175: The redirect currently reads applicationId from
data.applicationId and always sets queryParams.dev=true; change it to pull the
id from the nested payload (use data?.application?.id ??
this.onboarding.applicationData?.id) and make queryParams conditional (e.g.
const query = data?.dev ? { dev: true } : {}), then call
this.clearAllStepData(); this.router.transitionTo('applications.detail',
applicationId, { queryParams: query }); update usage around applicationId,
clearAllStepData, and router.transitionTo accordingly.

ℹ️ Review info

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 7c91d6f and 6291200.

📒 Files selected for processing (19)
  • app/components/join-steps/status-card.hbs
  • app/components/join-steps/status-card.js
  • app/components/new-join-steps/base-step.js
  • app/components/new-join-steps/new-step-one.hbs
  • app/components/new-join-steps/new-step-one.js
  • app/components/new-stepper.js
  • app/components/signup-steps/step-zero.hbs
  • app/components/signup-steps/step-zero.js
  • app/constants/join.js
  • app/constants/new-join-form.js
  • app/constants/new-signup.js
  • app/constants/urls.js
  • app/controllers/goto.js
  • app/controllers/join.js
  • app/styles/new-stepper.module.css
  • tests/integration/components/new-join-steps/new-step-one-test.js
  • tests/integration/components/new-signup/info-test.js
  • tests/integration/components/new-stepper-test.js
  • tests/integration/components/signup-steps/step-zero-test.js

AnujChhikara
AnujChhikara previously approved these changes Mar 5, 2026
@MayankBansal12 MayankBansal12 force-pushed the refactor/create-application branch from 2265620 to 5056919 Compare March 17, 2026 18:38
@MayankBansal12 MayankBansal12 changed the title fix: status card for request changes and validation for new join steps fix: status card for request changes and application redirection Mar 17, 2026
@MayankBansal12 MayankBansal12 force-pushed the refactor/create-application branch from 5056919 to f33d316 Compare March 17, 2026 19:58
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.

3 participants