# Alpha 1

- [D] Logging
- [D] Server-managed triples
  - [D] PATCH
  - [D] PUT + POST
- [D] Single-subject rule
  - [D] PATCH
  - [D] PUT + POST
- [D] Prefer headers
- [D] LDP-NR
- [D] Direct and Indirect containers
- [D] Referential integrity
- [D] Tombstone
  - [D] Set
  - [D] Retrieve
  - [D] Delete
- [D] Refactor toolbox
- [D] GUnicorn
- [D] Initial tests
  - [D] Framework + config
  - [D] HTTP layer
  - [D] Toolbox
  - [D] LDP layer
- [D] Bootstrap


# Alpha 2

- [D] Messaging SPI
- [D] Refactor structure and flow
- [D] Support PUT and PATCH for LDP-NR metadata
- [D] Reformat documentation
- [W] Hyrax compliance
- [D] Versioning
  - [D] Create version
  - [D] Retrieve version info
  - [D] Retrieve version
  - [D] Revert to version
  - [D] Slug behavior
  - [D] Avoid duplicate versions
  - [D] Delete version
  - [D] Tests
- [D] Delete vs. purge
  - [D] Resurrect
  - [D] Resurrect recursive
- [D] Configurable store back ends
  - [D] Framework
  - [D] Add embedded DB (PoC)
- [D] Hash URIs
  - [D] PUT+POST
  - [D] GET
  - [D] PATCH
  - [D] DELETE (Purge)

# Alpha 3

- [D] Use named graphs

# Alpha 4

- [W] Reorganize pairtrees
- [D] Fix basic Hyrax workflows
  - [D] Simple ingest
  - [D] Batch ingest
  - [D] Update
  - [D] Delete
- [D] BDB backend

# Alpha 5

- [D] LMDB Back End

# Alpha 6

- [ ] Basic admin tools
- [ ] Term query API
- [ ] Optimize queries
- [ ] Optimize store
- [ ] Complete revert to version and resurrect

# Alpha 7

- [ ] Migration tool
- [ ] Complete header handling
  - [ ] Accept
  - [ ] If-None-Match
  - [ ] If-Modified-Since
  - [ ] Range
  - [ ] Limit
  - [ ] (PUT) Digest
  - [ ] Others
- [ ] Query API

# Alpha 8

- [ ] Separate read-only graph/resource generation from RW graph/res generation
- [ ] Move server-managed triples to separate graph in simple layout
- [ ] Fixity checks

# Alpha 9

- [ ] Full provenance layout
- [ ] AuthN/Z
  - [ ] Authentication
  - [ ] WebAC
- [ ] Blank nodes