Development

Staff decisions in Phases 1 to 2

Every decision program staff make in Phases 1 to 2 of the Tests page, one card per workflow, in the order they meet them: queue and assign; property and building, with the multifamily income qualification application; household income; then contractor registration (Phase 2). Phase 1.5 has no staff decision. Each decision that reaches another portal has a card in that portal's column: the confirmed type and the LEA- or MEA- code in the customer portal, the code used on a project application, and the registration decision in the contractor portal.

Pick a step
Dashed: shown to the other person, the project stays put

Drawn 16 October 2026 from staff portal #254 and #261, cut to Phases 1 to 2 and given the hand-backs to the other portals at Matt's request, checked against this portal's main (My queue, the record pages, the code and link modules, and the Tests page's phase files). Decisions and approvals are yellow diamonds (Matt, 19 October). The numbers give the saved walkthrough order. Diamonds are decisions. Solid arrows are handoffs; dashed arrows share information.

The same chart as a list

  1. Open My queue — Every decision waiting on you, oldest first.
    • My queue is the first entry in the left-hand menu. Its number shows how many decisions are waiting, and updates about once a minute while the page is open.
    • The table opens on Assigned to: Me. Staff can switch it to Nobody or Anyone.
    • Staff can filter by the table's own columns: Assigned to, Entity, Program and Status.
    • Rows are oldest first.
    • When nothing matches, the table says "Nothing waiting".
    • When one queue cannot be read, the table says so where its rows would be, and still shows every other row.
    • Anyone signed in can take every action on this chart (#183). Settings → Roles and the payment-review team record who holds which seat; they do not limit who can press a button.
    • Qualifications is no longer in the left-hand menu. Its work is in tabs on the application.
    • This chart covers Phases 1 to 2 of the Tests page. Phase 1.5 (existing customers) asks staff only to find a customer and check the code; it has no decision.
    Hands off to step 1, Pick a row.
  2. Pick a row — Filter by Entity; the row opens the record.
    • No decision is made from the row. Clicking it opens the record, with its decision at the top of the page or on the named tab.
    • Entity choices: Application, Contractor registration, Property, Building documents, Building qualification, Household income qualification, Reservation request, Correction, Information request, Ownership claim, Focus Core rebate, Appeal, Signed document.
    • Entity "Property" also lists every building's documents waiting on staff.
    • Only applications, building qualifications, property type checks and contractor registrations can be assigned. Every other row sits in a shared queue that nobody owns.
    Waits on step 0, Open My queue. Hands off to step 3, Confirm the property type; step 5, Decide the building qualification; step 7, Review building and unit documents; step 8, Decide an ownership claim; step 13, Decide a household income qualification; step 9, Approve the income qualification application; step 15, Decide a contractor registration.
  3. Assign a record — Give a record to a person or a team.
    • An application is assigned from "Assign" in its page head. It goes to a person or a team, with an optional comment.
    • A building qualification, a property type check and a contractor registration are assigned from their own page, with "Save assignment".
    • Assigning emails the person, or each member of the team.
    • My queue's Assigned to: Me lists what is assigned to you or your team.
    • The Teams page makes teams and moves people between them.
    • Settings → Review team emails each new multifamily application to a group, then reminds and escalates. Assigning the application ends that routing.
  4. Decision: Confirm the property type — Check the building, then confirm its type.
    • A type cannot be rejected today. Staff confirm it, or correct it and confirm.
    • The property page has a Confirm the type card.
    • A map button opens the address in Google Maps; Street View is one click on the yellow figure.
    • Staff choose the type: single-family, multifamily or manufactured.
    • Confirming keeps the type as it is. Changing it corrects what the household chose, under the staff member's name.
    • Who confirmed the type, and when, is on the property's timeline.
    • It comes to My queue as Entity "Property". It can be assigned.
    • The button is "Confirm this type".
    Waits on step 1, Pick a row. Hands off to Confirm → step 4, Owner sees the type confirmed.
  5. Owner sees the type confirmed — The customer portal reads the confirmation.
    • Confirming writes the property's type, "confirmed" and who confirmed it, when, on the shared property row. Nothing is sent: the customer portal reads the same row.
    • The customer portal shows it in its own words: "Confirmed by program staff". Until then it reads "Awaiting confirmation by program staff".
    • If staff corrected the type, the owner sees the corrected type.
    Waits on step 3, Confirm the property type → Confirm.
  6. Decision: Decide the building qualification — Approve, market rate, send back or deny; approval issues the code.
    • The decisions sit at the top of the building qualification's "Income qualification progress" tab.
    • Buttons: "Approve", "Market rate (HOMES market rate only)", "Assign", "Send back for more information", "Deny". The page has no Begin review: #149 removed it. Begin review stays on the application.
    • Deny, Send back and Market rate need a note, kept on the record with the staff member's name.
    • Before approving, the 50%-of-occupied-units rule counts the building from its units. On the housing program path, the portal checks the procedure's three conditions instead and names any that is outstanding.
    • Approval gives the building a code with an expiry: LEA- for low income, MEA- for moderate income. A building that already holds an unexpired code keeps it.
    • Market rate is refused while the 50% rule is met at low or moderate income. It gives an internal HEA- code that only staff ever see.
    • It comes to My queue as Entity "Building qualification". It can be assigned.
    Waits on step 1, Pick a row. Hands off to step 6, Decide proof of ownership; Approve → step 10, Owner sees the building's code.
  7. Decision: Decide proof of ownership — Approve, send back or deny who owns the building.
    • On the building qualification's "Ownership" tab.
    • Buttons: "Approve proof of ownership", "Assign", "Send back for more information", "Deny proof of ownership".
    • A send-back goes to the account, with a note that starts "Proof of ownership:".
    • It comes to My queue with its building qualification. It can be assigned with it.
    Waits on step 5, Decide the building qualification.
  8. Decision: Review building and unit documents — Approve, deny or send tenant documents back.
    • On the property's Homes and documents page, and the building's progress card.
    • Buttons: "Approve these documents" or "Confirm these documents" with a tier, "Deny", and "Confirm the building's documents cover this unit".
    • "Send back to the account" needs a reason, which the owner reads. "Take the confirmation back" undoes a confirmation.
    • Deny needs a reason.
    • It comes to My queue as Entity "Building documents". Entity "Property" lists it too.
    Waits on step 1, Pick a row.
  9. Decision: Decide an ownership claim — Confirm or turn down a claim to hold a building.
    • On the ownership claim's own page.
    • Choose Confirm or Turn down, then "Save decision".
    • Turn down needs a reason, which the person who made the claim reads.
    • It comes to My queue as Entity "Ownership claim".
    Waits on step 1, Pick a row.
  10. Decision: Approve the income qualification application — Approve once the rule is met; that decides the building.
    • Begin review sits in the page head, before the decisions.
    • Approve is first and green. Send back for more information and Deny follow Assign, in red.
    • Approve is always shown. Until the 50%-of-occupied-units rule is met, its pop-up says what is missing, the button is disabled, and the server refuses.
    • "See the working" opens the 50%-of-occupied-units rule for the building.
    • The Income qualification review tab carries the building qualification's own actions, so staff never leave the application to decide it.
    • Approving decides the building's qualification and issues its LEA- or MEA- code.
    • This is a multifamily building's application, not a single-family household's income tier.
    • It comes to My queue as Entity "Application". with Program "Multifamily Income Qualification".
    Waits on step 1, Pick a row. Hands off to Approve → step 10, Owner sees the building's code.
  11. Owner sees the building's code — LEA- or MEA- code, with its valid-until date.
    • Approving the building qualification, or the multifamily income qualification application, issues the building's code in the same save.
    • The code is LEA- (low income) or MEA- (moderate income) plus ten digits, with an expiry. It goes in the shared table the customer and contractor portals read, so nothing is sent.
    • A market-rate building gets an internal HEA- code instead. It is never put in that table, so the owner and contractors never see it.
    • A building that already holds an unexpired code keeps it. A new code marks the old one replaced.
    • Phase 3's first test checks it: the owner opens the approved building and sees Approved, with its code and valid-until date.
    Waits on step 5, Decide the building qualification → Approve; step 9, Approve the income qualification application → Approve. Hands off to step 11, Applicant uses the code on a project.
  12. Applicant uses the code on a project — The building's code is the link to its income qualification.
    • On the customer portal, the HOMES or HEAR multifamily project's form asks for the "Income-qualified confirmation code". The applicant types the building's code there.
    • A contractor can also look a building up by its code on the contractor portal and start a project from it (Phase 3 tests).
    • Staff do not pick the link: the code the applicant entered is the link (#166).
    Waits on step 10, Owner sees the building's code. Hands off to step 12, Check the code on the project application.
  13. Decision: Check the code on the project application — Approve is refused until the code holds.
    • On the project application, Approve is refused until the code the applicant entered is a code this program issued, for this project's own building.
    • It must also be the building's current code (not replaced and not expired), and still backed by an approved income qualification.
    • Each refusal names the problem, such as "belongs to a different property" or "expired on" a date.
    • A HOMES or HEAR multifamily project carries one measure. Approve is refused while it carries more than one, naming them.
    • The rest of the project decision belongs to later phases and is not on this chart.
    Waits on step 11, Applicant uses the code on a project.
  14. Decision: Decide a household income qualification — A single-family household's income tier.
    • On the household's qualification page, or the application's "Income qualification review" tab.
    • Outcomes use the customer portal's words: Approved, Corrections required, Ineligible, Denied and Rejected. "Record this tier" sets the tier.
    • Every outcome except Approved needs a note, which the household reads.
    • Approved needs a tier and a SPECTRUM method. For a homeowner it also needs "Homeownership verified" ticked.
    • Rejected is allowed only after Ineligible or Denied.
    • It comes to My queue as Entity "Household income qualification".
    Waits on step 1, Pick a row. Hands off to Approve → step 14, Household sees its code.
  15. Household sees its code — Approval gives the household its LEA- or MEA- code.
    • Approving writes the status, tier, method and the household's code on the household's own row. The customer portal owns that row; the staff portal writes only those columns.
    • A household sees its code only once its status is approved. A contractor can look it up only then.
    • Every other outcome's note is shown to the household on its account.
    • Approving again at the same tier keeps the code. A new tier gets a new number.
    Waits on step 13, Decide a household income qualification → Approve.
  16. Decision: Decide a contractor registration — Approve, deny or send back a contractor.
    • On the contractor's registration page, reached from Contractors.
    • Buttons: "Approve", "Deny", "Send back". There is no Mark in review (#139).
    • Approve needs a certification tick. Any outstanding items are waived under the staff member's name.
    • The page shows the Do Not Pay check. A result of “could_not_check” is not a pass, and clearing a match is recorded on the contractor portal, not here.
    • Deny needs a reason. Send back needs a reason and what the contractor must supply, and leaves it "Corrections required".
    • The decision goes to the contractor portal.
    • It comes to My queue as Entity "Contractor registration". It can be assigned.
    Waits on step 1, Pick a row. Hands off to Decide → step 16, Contractor sees the decision.
  17. Contractor sees the decision — The decision is written on the contractor portal's own row.
    • The staff portal sends the decision to the contractor portal, which records it on the company's row. Nothing is copied back: staff read the same row.
    • Approve goes through the contractor portal's own approval rule, which refuses while it lists anything outstanding. Where waivers are allowed, approving with the certification waives each one under the staff member's name.
    • Phase 2 tests check the result: an approved company can start a project and gets an email; a denied one shows Not approved with the reason and cannot start a project.
    • Send back leaves it "Corrections required" for the contractor to fix.
    Waits on step 15, Decide a contractor registration → Decide.

Explanatory notes

Edit board

Changes are saved together. Cancel discards the draft.

Columns

Columns run left to right in this order. Drag a column by its handle to move it. A column can be removed once no card is in it. Up to 6 columns.