feat: add llms.txt standard support for AI agent discoverability (#784)
Cherry-picked website/, scripts/generate-llms-full.sh, and deploy-docs.yml from joyshmitz's PR. Fixed workflow to trigger on main branch instead of docs/docusaurus-site. Features: - Docusaurus documentation site with llms.txt support - Environment-variable driven config (defaults to steveyegge org) - Automated llms-full.txt generation from docs - GitHub Pages deployment workflow Co-authored-by: joyshmitz <joyshmitz@users.noreply.github.com> 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> Executed-By: beads/crew/dave Rig: beads Role: crew
This commit is contained in:
62
website/docs/recovery/circular-dependencies.md
Normal file
62
website/docs/recovery/circular-dependencies.md
Normal file
@@ -0,0 +1,62 @@
|
||||
---
|
||||
sidebar_position: 4
|
||||
title: Circular Dependencies
|
||||
description: Detect and break dependency cycles
|
||||
---
|
||||
|
||||
# Circular Dependencies Recovery
|
||||
|
||||
This runbook helps you detect and break circular dependency cycles in your issues.
|
||||
|
||||
## Symptoms
|
||||
|
||||
- "circular dependency detected" errors
|
||||
- `bd blocked` shows unexpected results
|
||||
- Issues that should be ready appear blocked
|
||||
|
||||
## Diagnosis
|
||||
|
||||
```bash
|
||||
# Check for blocked issues
|
||||
bd blocked
|
||||
|
||||
# View dependencies for a specific issue
|
||||
bd show <issue-id>
|
||||
|
||||
# List all dependencies
|
||||
bd dep tree
|
||||
```
|
||||
|
||||
## Solution
|
||||
|
||||
**Step 1:** Identify the cycle
|
||||
```bash
|
||||
bd blocked --verbose
|
||||
```
|
||||
|
||||
**Step 2:** Map the dependency chain
|
||||
```bash
|
||||
bd show <issue-a>
|
||||
bd show <issue-b>
|
||||
# Follow the chain until you return to <issue-a>
|
||||
```
|
||||
|
||||
**Step 3:** Determine which dependency to remove
|
||||
Consider: Which dependency is least critical to the workflow?
|
||||
|
||||
**Step 4:** Remove the problematic dependency
|
||||
```bash
|
||||
bd dep remove <dependent-issue> <blocking-issue>
|
||||
```
|
||||
|
||||
**Step 5:** Verify the cycle is broken
|
||||
```bash
|
||||
bd blocked
|
||||
bd ready
|
||||
```
|
||||
|
||||
## Prevention
|
||||
|
||||
- Think "X needs Y" not "X before Y" when adding dependencies
|
||||
- Use `bd blocked` after adding dependencies to check for cycles
|
||||
- Keep dependency chains shallow when possible
|
||||
66
website/docs/recovery/database-corruption.md
Normal file
66
website/docs/recovery/database-corruption.md
Normal file
@@ -0,0 +1,66 @@
|
||||
---
|
||||
sidebar_position: 2
|
||||
title: Database Corruption
|
||||
description: Recover from SQLite database corruption
|
||||
---
|
||||
|
||||
# Database Corruption Recovery
|
||||
|
||||
This runbook helps you recover from SQLite database corruption in Beads.
|
||||
|
||||
## Symptoms
|
||||
|
||||
- SQLite error messages during `bd` commands
|
||||
- "database is locked" errors that persist
|
||||
- Missing issues that should exist
|
||||
- Inconsistent state between JSONL and database
|
||||
|
||||
## Diagnosis
|
||||
|
||||
```bash
|
||||
# Check database integrity
|
||||
bd status
|
||||
|
||||
# Look for corruption indicators
|
||||
ls -la .beads/beads.db*
|
||||
```
|
||||
|
||||
If you see `-wal` or `-shm` files alongside `beads.db`, a transaction may have been interrupted.
|
||||
|
||||
## Solution
|
||||
|
||||
:::warning
|
||||
Back up your `.beads/` directory before proceeding.
|
||||
:::
|
||||
|
||||
**Step 1:** Stop the daemon
|
||||
```bash
|
||||
bd daemon stop
|
||||
```
|
||||
|
||||
**Step 2:** Back up current state
|
||||
```bash
|
||||
cp -r .beads .beads.backup
|
||||
```
|
||||
|
||||
**Step 3:** Rebuild from JSONL (source of truth)
|
||||
```bash
|
||||
bd doctor --fix
|
||||
```
|
||||
|
||||
**Step 4:** Verify recovery
|
||||
```bash
|
||||
bd status
|
||||
bd list
|
||||
```
|
||||
|
||||
**Step 5:** Restart daemon
|
||||
```bash
|
||||
bd daemon start
|
||||
```
|
||||
|
||||
## Prevention
|
||||
|
||||
- Avoid interrupting `bd sync` operations
|
||||
- Let the daemon handle synchronization
|
||||
- Use `bd daemon stop` before system shutdown
|
||||
45
website/docs/recovery/index.md
Normal file
45
website/docs/recovery/index.md
Normal file
@@ -0,0 +1,45 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
title: Recovery Overview
|
||||
description: Diagnose and resolve common Beads issues
|
||||
---
|
||||
|
||||
# Recovery Overview
|
||||
|
||||
This section provides step-by-step recovery procedures for common Beads issues. Each runbook follows a consistent format: Symptoms, Diagnosis, Solution (5 steps max), and Prevention.
|
||||
|
||||
## Common Issues
|
||||
|
||||
| Issue | Symptoms | Runbook |
|
||||
|-------|----------|---------|
|
||||
| Database Corruption | SQLite errors, missing data | [Database Corruption](/recovery/database-corruption) |
|
||||
| Merge Conflicts | JSONL conflicts during sync | [Merge Conflicts](/recovery/merge-conflicts) |
|
||||
| Circular Dependencies | Cycle detection errors | [Circular Dependencies](/recovery/circular-dependencies) |
|
||||
| Sync Failures | `bd sync` errors | [Sync Failures](/recovery/sync-failures) |
|
||||
|
||||
## Quick Diagnostic
|
||||
|
||||
Before diving into specific runbooks, try these quick checks:
|
||||
|
||||
```bash
|
||||
# Check Beads status
|
||||
bd status
|
||||
|
||||
# Verify daemon is running
|
||||
bd daemon status
|
||||
|
||||
# Check for blocked issues
|
||||
bd blocked
|
||||
```
|
||||
|
||||
:::tip
|
||||
Most issues can be diagnosed with `bd status`. Start there before following specific runbooks.
|
||||
:::
|
||||
|
||||
## Getting Help
|
||||
|
||||
If these runbooks don't resolve your issue:
|
||||
|
||||
1. Check the [FAQ](/reference/faq)
|
||||
2. Search [existing issues](https://github.com/steveyegge/beads/issues)
|
||||
3. Open a new issue with diagnostic output
|
||||
65
website/docs/recovery/merge-conflicts.md
Normal file
65
website/docs/recovery/merge-conflicts.md
Normal file
@@ -0,0 +1,65 @@
|
||||
---
|
||||
sidebar_position: 3
|
||||
title: Merge Conflicts
|
||||
description: Resolve JSONL merge conflicts
|
||||
---
|
||||
|
||||
# Merge Conflicts Recovery
|
||||
|
||||
This runbook helps you resolve JSONL merge conflicts that occur during Git operations.
|
||||
|
||||
## Symptoms
|
||||
|
||||
- Git merge conflicts in `.beads/*.jsonl` files
|
||||
- `bd sync` fails with conflict errors
|
||||
- Different issue states between clones
|
||||
|
||||
## Diagnosis
|
||||
|
||||
```bash
|
||||
# Check for conflicted files
|
||||
git status
|
||||
|
||||
# Look for conflict markers
|
||||
grep -l "<<<<<<" .beads/*.jsonl
|
||||
```
|
||||
|
||||
## Solution
|
||||
|
||||
:::warning
|
||||
JSONL files are append-only logs. Manual editing requires care.
|
||||
:::
|
||||
|
||||
**Step 1:** Identify conflicted files
|
||||
```bash
|
||||
git diff --name-only --diff-filter=U
|
||||
```
|
||||
|
||||
**Step 2:** For each conflicted JSONL file, keep both versions
|
||||
```bash
|
||||
# Accept both changes (append-only is safe)
|
||||
git checkout --ours .beads/issues.jsonl
|
||||
git add .beads/issues.jsonl
|
||||
```
|
||||
|
||||
**Step 3:** Force rebuild to reconcile
|
||||
```bash
|
||||
bd doctor --fix
|
||||
```
|
||||
|
||||
**Step 4:** Verify state
|
||||
```bash
|
||||
bd list
|
||||
bd status
|
||||
```
|
||||
|
||||
**Step 5:** Complete the merge
|
||||
```bash
|
||||
git commit -m "Resolved beads merge conflicts"
|
||||
```
|
||||
|
||||
## Prevention
|
||||
|
||||
- Sync before and after Git operations
|
||||
- Use `bd sync` regularly
|
||||
- Avoid concurrent modifications from multiple clones
|
||||
74
website/docs/recovery/sync-failures.md
Normal file
74
website/docs/recovery/sync-failures.md
Normal file
@@ -0,0 +1,74 @@
|
||||
---
|
||||
sidebar_position: 5
|
||||
title: Sync Failures
|
||||
description: Recover from bd sync failures
|
||||
---
|
||||
|
||||
# Sync Failures Recovery
|
||||
|
||||
This runbook helps you recover from `bd sync` failures.
|
||||
|
||||
## Symptoms
|
||||
|
||||
- `bd sync` hangs or times out
|
||||
- Network-related error messages
|
||||
- "failed to push" or "failed to pull" errors
|
||||
- Daemon not responding
|
||||
|
||||
## Diagnosis
|
||||
|
||||
```bash
|
||||
# Check daemon status
|
||||
bd daemon status
|
||||
|
||||
# Check sync state
|
||||
bd status
|
||||
|
||||
# View daemon logs
|
||||
cat .beads/daemon.log | tail -50
|
||||
```
|
||||
|
||||
## Solution
|
||||
|
||||
**Step 1:** Stop the daemon
|
||||
```bash
|
||||
bd daemon stop
|
||||
```
|
||||
|
||||
**Step 2:** Check for lock files
|
||||
```bash
|
||||
ls -la .beads/*.lock
|
||||
# Remove stale locks if daemon is definitely stopped
|
||||
rm -f .beads/*.lock
|
||||
```
|
||||
|
||||
**Step 3:** Force a fresh sync
|
||||
```bash
|
||||
bd doctor --fix
|
||||
```
|
||||
|
||||
**Step 4:** Restart daemon
|
||||
```bash
|
||||
bd daemon start
|
||||
```
|
||||
|
||||
**Step 5:** Verify sync works
|
||||
```bash
|
||||
bd sync
|
||||
bd status
|
||||
```
|
||||
|
||||
## Common Causes
|
||||
|
||||
| Cause | Solution |
|
||||
|-------|----------|
|
||||
| Network timeout | Retry with better connection |
|
||||
| Stale lock file | Remove lock after stopping daemon |
|
||||
| Corrupted state | Use `bd doctor --fix` |
|
||||
| Git conflicts | See [Merge Conflicts](/recovery/merge-conflicts) |
|
||||
|
||||
## Prevention
|
||||
|
||||
- Ensure stable network before sync
|
||||
- Let sync complete before closing terminal
|
||||
- Use `bd daemon stop` before system shutdown
|
||||
Reference in New Issue
Block a user