Metadata-Version: 2.5
Name: troven
Version: 0.1.1
Summary: Git-native CLI for tracking change intents and speculative development
Author: rdarder
License-Expression: MIT
License-File: LICENSE
Requires-Python: >=3.10
Description-Content-Type: text/markdown

# Troven

> **Troven** is a Git-native CLI for tracking **change intents** and speculative development in software projects.

It maintains both **positive knowledge** (accepted changes) and **rejection knowledge** (dead ends, discarded hypotheses, benchmark findings) in structured, conflict-free records.

---

## The Four Verbs

| Command | Action |
| :--- | :--- |
| `troven create <name> [--from <base>]` | Start a new troven worktree and initialize its record. |
| `troven open [<id>]` | Open an active or rejected troven in a worktree. |
| `troven accept [<id>] [--into <branch>]` | Fast-forward merge changes into target branch, recording outcome. |
| `troven reject [<id>]` | Archive branch to `refs/archive/troven/<id>`, recording rejection verdict. |

### Exploration & Visibility

| Command | Action |
| :--- | :--- |
| `troven list [--status <state>]` | Hierarchical DAG view of all active, accepted, and rejected trovens. |
| `troven show [<id>]` | Print full markdown record for a troven. |

---

## Installation

```bash
# Editable install via pip or uv:
pip install -e .
# or
uv tool install --editable .
```

---

## Record Format (`.troven/<id>.md`)

Every troven is backed by a conflict-free markdown file:

```markdown
---
version: 1
id: 2026-08-30-fast-lexer-simd
parent: 2026-08-30-fast-lexer
forked_from: null
status: active
base_branch: master
base_commit: 8f3c1a2d
target_ref: null
created_at: "2026-08-30T14:22:00-03:00"
resolved_at: null
---

## Summary

<!-- REQUIRED before accept or reject. Agent or user fills this in. -->

---

## Details

<!-- Optional append-only log. -->
```
