# Keep product knowledge current

> Verified against the product on 2026-10-06

## From code to help

Cactus reads connected repositories, examines their code, and builds a map of your product. Each saved version is tied to the repository versions behind it. That map starts the help-page build; for how Cactus writes and publishes pages, see [Generate and manage help pages](https://cactus.heycactus.ai/generate-and-manage-help-pages).

## Repository change states

| Shown as | What it means |
| --- | --- |
| Added | The repository change added this file. |
| Modified | The repository change changed this file. |
| Deleted | The repository change removed this file. |

## Trace the product map

The product map captures your product’s customer-facing capabilities and how they connect. Each entry has a name, kind, and summary, and points to the code behind it. Each saved version is tied to the repository versions it was built from, so you can trace an entry back to that code snapshot.

## Sources for product knowledge

Connected repositories give Cactus product code for its map. You can also attach a web page or a team note as evidence. Cactus reads a web page when you attach it; a note is saved as supplied.

## Follow repository changes

When Cactus processes a repository push, it checks the changed files against the saved product map. It updates entries tied to changed or deleted files, and entries in directories where files were added. Cactus saves the updated map and refreshes the help pages affected by those changes. Other pages are left alone.

## When Cactus redraws

On a first build, Cactus creates a product map from scratch. After a push, it creates a fresh map instead of updating the saved one when it can’t safely reconcile the changes:

- There’s no saved product map.
- The linked repositories don’t match the ones tied to the saved map.
- Cactus has no code copy to compare, or can’t read the changes.
- The saved map’s repository version isn’t an ancestor of the pushed version.
- The push changes more than 30% of a repository’s files.
- The repository’s workspace configuration changes, or Cactus can’t read its workspace files.

## When a web source changes

Cactus checks an attached web page when someone opens help built on it or asks a question that involves it. Checks happen on demand, not on a schedule. Cactus may use a recent observation or read the page again.

When a fresh read finds different text, Cactus marks every live help section that relies on the page as stale and refreshes the related product knowledge. That refresh can rewrite the affected help.
