> ## 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.

# Rocks

> View, create, and manage quarterly goals (Rocks) with status, progress, SMART scoring, action items, and team assignments.

The Rocks screen is accessible at `/lo/rocks` and displays the quarterly goals (referred to as Rocks) for the selected quarter and fiscal year, with status breakdowns and progress indicators.

## Overview

The `GoalDashboardPage` defaults to the current quarter (computed as `Q${Math.ceil((month+1)/3)}`) and current year. Users can filter by quarter (Q1–Q4) and fiscal year. The page fetches goals via `useQuarterlyGoals` and displays four summary cards: total goals, completed goals, at-risk goals, and average progress percentage. An at-risk alert banner appears when any goal has `at_risk` status. Each goal is listed as a card showing title, owner avatar, due date, status badge, and a progress bar. A guided tour (`rockManagementTour`) is available via a help button. The `QuarterlyGoalDialog` opens to create a new goal.

## Who it's for

Requires `LO_PERMISSIONS.DASHBOARD_VIEW` (`lo.dashboard.view`) via the shared `LOViewGuard`. Creating goals additionally requires `lo.goals.create`.

## Before you start

* `lo.dashboard.view` permission required.
* Goals are scoped to the active organization.

## Steps

<Steps>
  <Step title="Navigate to Rocks">Go to `/lo/rocks`. The page loads goals for the current quarter and year.</Step>
  <Step title="Filter by quarter or year">Use the quarter selector (Q1–Q4) and year selector to view goals for a different period.</Step>
  <Step title="Review summary cards">Check total, completed, at-risk, and average progress stats at the top.</Step>
  <Step title="View a goal">Select a goal card to navigate to its detail page at `/lo/rocks/:rockId`.</Step>
  <Step title="Add a new goal">Select the "+" button to open the `QuarterlyGoalDialog` and create a new goal.</Step>
  <Step title="Take the guided tour">Select the help button to start the `rockManagementTour`.</Step>
</Steps>

## Key concepts

* **Rock**: the in-code term for a quarterly goal (`QuarterlyGoal` type, route path `/lo/rocks`).
* **Status values**: `not_started`, `in_progress`, `at_risk`, `complete`.
* **progress\_percentage**: a numeric field on each `QuarterlyGoal`.

## Creating a rock

The path `/lo/rocks/new` is not defined in `src/routes/lo.tsx` and is not a standalone screen. The `:rockId` parameter route (`/lo/rocks/:rockId`) would match a literal path `/lo/rocks/new`, but `new` is not a valid UUID, so the component would render a "Goal not found" state. New Rocks are created via the `QuarterlyGoalDialog` modal from the `/lo/rocks` list page.

To create a new Rock: go to `/lo/rocks` and select the "+" button to open the `QuarterlyGoalDialog`.

## Viewing a rock

The Rock Details screen is accessible at `/lo/rocks/:rockId` and displays a single quarterly goal's full detail, including progress, action items, team assignments, SMART score, and review history.

The `GoalDetailPage` reads `rockId` from URL params (kept as `:rockId` for backward compatibility, used as `goalId` internally) and fetches the goal via `useQuarterlyGoals`, plus related actions (`useGoalActions`) and assignments (`useGoalAssignments`). The page renders a `SMARTScoreBadge`, status badge, progress bar, owner avatar, and due date. Three tabs — **Progress**, **Actions**, and **Tasks** — allow viewing progress history, managing action items via `GoalActionsEditor`, and viewing linked platform tasks via `SourceTasksPanel`. Dialogs provide edit (`QuarterlyGoalDialog`), completion (`GoalCompletionDialog`), and review (`GoalReviewDialog`) workflows. A "Revalidate SMART" button triggers client-side SMART validation via `validateSMARTGoal`. If the goal is not found, a "Goal not found" card is shown.

Permissions: `lo.dashboard.view` required; editing additionally requires `lo.goals.edit`. The goal identified by `:rockId` must exist in the active organization.

1. Open a goal: navigate to `/lo/rocks/:rockId` or select a goal from the Rocks list.
2. Review progress: the Progress tab shows the current `progress_percentage` and status. The `SMARTScoreBadge` displays the SMART quality score.
3. Manage action items: switch to the Actions tab and use `GoalActionsEditor` to add or update action items.
4. View linked tasks: switch to the Tasks tab to see platform tasks linked to this goal via `SourceTasksPanel`.
5. Edit the goal: select the Edit button to open `QuarterlyGoalDialog` in edit mode.
6. Mark complete: select the complete button to open `GoalCompletionDialog`.
7. Add a review: select the review button to open `GoalReviewDialog`.
8. Revalidate SMART score: select "Revalidate SMART" to rerun `validateSMARTGoal` against the current goal data.

**Key concepts:**

* **SMART score**: computed by `validateSMARTGoal`; displayed via `SMARTScoreBadge`.
* **rockId / goalId**: URL param is `:rockId` for backward compatibility; used internally as `goalId`.
* **Tabs**: `progress`, `actions`, `tasks` — tab state is synced to the URL via `useTabUrlState`.

## Related

<Columns cols={2}>
  <Card title="Leadership" icon="compass" href="/lo/overview">
    Leadership core 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/lo.tsx
  * src/cores/lo/pages/GoalDashboardPage.tsx
  * src/cores/lo/pages/GoalDetailPage.tsx
  * src/cores/lo/hooks/useQuarterlyGoals.ts
  * src/cores/lo/hooks/useGoalActions.ts
  * src/cores/lo/hooks/useGoalAssignments.ts
  * src/cores/lo/utils/validateSMARTGoal.ts
</Accordion>
