> ## Documentation Index
> Fetch the complete documentation index at: https://docs.encoreos.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Chores

> Assign and track resident chore tasks across Recovery Housing episodes.

The Chores screen lets staff assign and track chore tasks for residents at `/rh/chores`.

## Overview

The Chores screen displays a paginated table of chore assignment records for the current organization, showing the chore name, assigned date, status (rendered with a colored badge), and completed date. Staff can create a new chore assignment using the "Assign Chore" button, which opens an inline dialog. The table is limited to the 20 most recently due records in the current view. Records are sourced from the `rh_chore_assignments` table and ordered by `due_date` ascending.

## Who it's for

Protected by `RH_PERMISSIONS.DASHBOARD_VIEW` (`rh.dashboard.view`) via the shared `RHViewGuard` on all RH routes. No additional per-route permission gate is visible in the component for `/rh/chores`.

## Before you start

* Your account must have the `rh.dashboard.view` permission.
* Chore definitions must exist before assignments can be created.

## Steps

<Steps>
  <Step title="Navigate to Chores">
    Open Recovery Housing and select Chores from the navigation, or go to `/rh/chores` directly.
  </Step>

  <Step title="Review the chore assignment list">
    The table shows up to 20 chore assignments sorted by due date, with columns for Chore, Assigned Date, Status, and Completed date.
  </Step>

  <Step title="Assign a new chore">
    Click "Assign Chore" to open the assignment dialog and select the chore, resident/episode, and due date.
  </Step>

  <Step title="Track completion">
    Once a chore is completed, update its status through the assignment dialog or detail view; the Completed column will reflect the date.
  </Step>
</Steps>

## Key concepts

<AccordionGroup>
  <Accordion title="Chore status">
    Each assignment has a `status` value rendered by `ChoreStatusBadge`. Status values and their workflow meaning should be confirmed with your program SME.
  </Accordion>

  <Accordion title="Table limit">
    The current view renders the first 20 records (`.slice(0, 20)`) ordered by `due_date`. Additional records are not paginated in the current implementation.
  </Accordion>

  <Accordion title="Empty state">
    If no chore assignments exist, the table renders "No chore assignments found."
  </Accordion>
</AccordionGroup>

## Related

<Columns cols={2}>
  <Card title="Recovery Housing" icon="house" href="/rh/references">
    Recovery Housing references and overview.
  </Card>

  <Card title="Governance & parity" icon="scale-balanced" href="/governance/index">
    Documentation coverage and governance.
  </Card>
</Columns>

<Note>
  This page documents shipped product behavior. It is not medical, legal, or
  billing advice. Verify against your organization's policies and applicable
  regulations before using it for clinical, compliance, or billing decisions.
  Protected health information (PHI) shown in the product is governed by your
  tenant's access controls and is never exposed in this documentation.
</Note>

<Accordion title="Documentation sources">
  * src/routes/rh.tsx
  * src/cores/rh/pages/ChoresPage.tsx
  * src/cores/rh/hooks/useChoreAssignments.ts
  * src/platform/permissions/constants.ts
</Accordion>
