# Project Constants

Pre-computed task tracker and project values. Referenced by skills and agents.

**Last Updated:** <DATE>

---

## Project Identity

| Constant              | Value                   | Description                                        |
| --------------------- | ----------------------- | -------------------------------------------------- |
| PROJECT_NAME          | <PROJECT_NAME>          | Project display name                               |
| PROJECT_KEY           | <PROJECT_KEY>           | Project identifier                                 |
| PROJECT_KEY_LOWERCASE | <PROJECT_KEY_LOWERCASE> | Lowercased PROJECT_KEY — derived, do not edit      |
| PROJECT_DESCRIPTION   | <PROJECT_DESCRIPTION>   | Project description                                |
| CONFLUENCE_ENABLED    | <CONFLUENCE_ENABLED>    | Enable Confluence publishing (boolean: true/false) |

<!-- Migration: DOC_PLATFORM is deprecated. If found, map Confluence→true, Local→false -->

---

## Task Tracker Constants

| Constant             | Value           | Description                                                                  |
| -------------------- | --------------- | ---------------------------------------------------------------------------- |
| TRACKER_TYPE         | <TRACKER_TYPE>  | JIRA \| GitHub \| Linear \| none                                             |
| TRACKER_URL          | <TRACKER_URL>   | Task tracker instance URL                                                    |
| BOARD_ID             | <BOARD_ID>      | Agile board ID                                                               |
| BOARD_NAME           | <BOARD_NAME>    | Board display name                                                           |
| ASSIGNEE_ID          | <ASSIGNEE_ID>   | Default assignee ID                                                          |
| ASSIGNEE_NAME        | <ASSIGNEE_NAME> | Default assignee name                                                        |
| TRACKER_SYNC_ENABLED | false (derived) | Set by preflight, not user-configurable. true when tracker preflight passes. |

---

<!-- START:CONFLUENCE — Remove this section if CONFLUENCE_ENABLED != true -->

## Confluence Constants

| Constant               | Value                    | Description        |
| ---------------------- | ------------------------ | ------------------ |
| CONFLUENCE_SPACE_KEY   | <CONFLUENCE_SPACE_KEY>   | Space key          |
| CONFLUENCE_SPACE_ID    | <CONFLUENCE_SPACE_ID>    | Space numeric ID   |
| CONFLUENCE_SPACE_NAME  | <CONFLUENCE_SPACE_NAME>  | Space display name |
| CONFLUENCE_HOMEPAGE_ID | <CONFLUENCE_HOMEPAGE_ID> | Homepage page ID   |
| LABEL_PREFIX           | <LABEL_PREFIX>           | Label prefix       |

<!-- END:CONFLUENCE -->

---

## Repository Paths

> Machine-local paths are not stored in this file. See `.claude/project-paths.local.md` (copy from `project-paths.local.md.example` on first checkout — gitignored, machine-specific).

---

## Application Paths

| Constant      | Value           | Description                          |
| ------------- | --------------- | ------------------------------------ |
| FRONTEND_PATH | <FRONTEND_PATH> | Frontend source root (if applicable) |
| BACKEND_PATH  | <BACKEND_PATH>  | Backend source root (if applicable)  |

---

## Branch Configuration

| Branch                        | Purpose                 |
| ----------------------------- | ----------------------- |
| <MAIN_BRANCH>                 | Production (protected)  |
| <DEV_BRANCH>                  | Integration (protected) |
| feat/<PROJECT_KEY>-XXX-name   | Feature development     |
| hotfix/<PROJECT_KEY>-XXX-name | Emergency fixes         |

### Branch Names (Constants)

| Constant    | Value         | Description             |
| ----------- | ------------- | ----------------------- |
| DEV_BRANCH  | <DEV_BRANCH>  | Integration branch name |
| MAIN_BRANCH | <MAIN_BRANCH> | Production branch name  |

---

## Quality Gate Configuration

| Gate   | Backend Command         | Frontend Command         |
| ------ | ----------------------- | ------------------------ |
| Tests  | <BACKEND_TEST_CMD>      | <FRONTEND_TEST_CMD>      |
| Lint   | <BACKEND_LINT_CMD>      | <FRONTEND_LINT_CMD>      |
| Format | <BACKEND_FORMAT_CMD>    | <FRONTEND_FORMAT_CMD>    |
| Types  | <BACKEND_TYPECHECK_CMD> | <FRONTEND_TYPECHECK_CMD> |

<!-- Type check examples by language:
  Python (mypy):   uv run mypy .        or  mypy .
  Python (pyright): uv run pyright      or  pyright
  TypeScript:      npx tsc --noEmit     or  tsc --noEmit
  Go:              go vet ./...
  If N/A, validate-quality auto-detects from config files (mypy.ini, pyrightconfig.json, pyproject.toml, tsconfig.json).
-->

### Command Constants

| Constant          | Value               | Description                        |
| ----------------- | ------------------- | ---------------------------------- |
| TEST_COMMAND      | <TEST_COMMAND>      | Primary test command               |
| LINT_COMMAND      | <LINT_COMMAND>      | Lint command for this project      |
| TYPECHECK_COMMAND | <TYPECHECK_COMMAND> | Typecheck command for this project |

---

## Project Configuration

| Constant             | Value                  | Description                                              |
| -------------------- | ---------------------- | -------------------------------------------------------- |
| PROJECT_TYPE         | <PROJECT_TYPE>         | Project type level (1-5) — source of truth               |
| DEV_RIGOR            | <DEV_RIGOR>            | Auto-derived from project type (do not set directly)     |
| CONFLUENCE_SPACE_KEY | <CONFLUENCE_SPACE_KEY> | Confluence space key (n/a when CONFLUENCE_ENABLED=false) |

Type mapping: 1-2=lite, 3=standard, 4-5=strict
Override per-session with: --rigor lite|standard|strict

---

## Learning Configuration

| Constant          | Value               | Description                                             |
| ----------------- | ------------------- | ------------------------------------------------------- |
| LEARNING_AUTONOMY | <LEARNING_AUTONOMY> | Learning autonomy level (observer\|advisor\|autonomous) |

---

## Standards Repository

| Constant              | Value                   | Description                   |
| --------------------- | ----------------------- | ----------------------------- |
| STANDARDS_REPO_URL    | <STANDARDS_REPO_URL>    | GitHub repo URL for standards |
| STANDARDS_REPO_BRANCH | <STANDARDS_REPO_BRANCH> | Branch to pull from           |

**Defaults:**

- `STANDARDS_REPO_URL`: `https://github.com/evolvconsulting/evolv-coder-standards`
- `STANDARDS_REPO_BRANCH`: `main`

---

## Loop & Retry Configuration

> Controls iteration limits for retry/rework loops across skills. See audit inventory for full details.

| Constant                  | Value    | Description                                                                               |
| ------------------------- | -------- | ----------------------------------------------------------------------------------------- |
| MAX_GATE_RETRIES          | 3        | Max re-runs for review gates (spec-review, design-review, validate-review, deploy-review) |
| MAX_APPROVAL_ROUNDS       | 10       | Max approval iterations (spec-criteria, spec-discovery)                                   |
| MAX_AGENT_LOOP_ITERATIONS | 5        | Default for agent:loop primitive (orchestrate)                                            |
| MAX_AGENT_LOOP_HARD_CAP   | 10       | Absolute ceiling for agent:loop                                                           |
| MAX_SPRINT_TASK_RETRIES   | 2        | Max retries per task in dev-sprint                                                        |
| LOOP_EXHAUSTION_ACTION    | escalate | What happens at max: escalate (to user) or fail                                           |

---

## Code Review Configuration

| Constant           | Value                | Description                                       |
| ------------------ | -------------------- | ------------------------------------------------- |
| CODE_REVIEW_PLUGIN | <CODE_REVIEW_PLUGIN> | PR code review plugin: installed \| not-installed |

Set by `/start-project` preflight. Determines review mechanism in `/validate-code`:
Greptile (if MCP configured) > code-review plugin (if installed) > ECK reviewer agents (fallback)

---

<!-- START:OVERRIDES — Remove if no backend overrides configured -->

## Plugin & Backend Overrides

| Constant                 | Value                      | Description                            |
| ------------------------ | -------------------------- | -------------------------------------- |
| TRACKER_BACKEND_OVERRIDE | <TRACKER_BACKEND_OVERRIDE> | Custom tracker backend (empty=default) |
| DOC_BACKEND_OVERRIDE     | <DOC_BACKEND_OVERRIDE>     | Custom docs backend (empty=default)    |

<!-- END:OVERRIDES -->
