# Tasks and results

> A task describes the goal. Its results can be code, a document or a running preview.

Source: https://usefiretower.com/docs/concepts-results

One task can produce several kinds of result

Task **Fix and explain the checkout timeout**

↓ Work happens in sessions and workspaces

**Code change** A branch and pull request

**Artifact** A saved visual explanation

**Preview** The running application

Choose the result the task needs. Not every task needs a repository or a preview.

## From request to code

**Task**

The goal given to an agent. It can start as your request or an issue from a connected tracker.

**Repository**

The git project an agent works on. A workspace checks out working files from it.

**Branch**

A line of changes in git. A separate git-backed workspace gives work its own branch.

**Pull / merge request**

The reviewable change submitted to your git host. Your team reviews and merges it through its normal process.

## Artifact versus preview

|  | Artifact | Preview |
| --- | --- | --- |
| What it is | A saved, versioned result | A running service in a workspace |
| Example | A report or website prototype | The app the agent is building |
| What it depends on | The stored artifact and its access policy | The running service and its worker |

An artifact is not the running application. A preview is not an archive. Save or export the outputs you need before ending the workspace.

Put it into practice [Start from an issue](https://usefiretower.com/docs/trackers) [Review and ship](https://usefiretower.com/docs/review) [Review an artifact](https://usefiretower.com/docs/artifacts)
