<feed xmlns='http://www.w3.org/2005/Atom'>
<title>doot.git/internal/store/availability_test.go, branch master</title>
<subtitle>doot — personal productivity web app
</subtitle>
<id>https://git.terst.org/doot.git/atom?h=master</id>
<link rel='self' href='https://git.terst.org/doot.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.terst.org/doot.git/'/>
<updated>2026-07-16T06:24:06+00:00</updated>
<entry>
<title>Add availability_blocks CRUD to the store layer</title>
<updated>2026-07-16T06:24:06+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-07-16T06:24:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/doot.git/commit/?id=ec45580c839cb94135c6c11c4aecaea255c8f2b7'/>
<id>urn:sha1:ec45580c839cb94135c6c11c4aecaea255c8f2b7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add schema for task budgets and availability blocks</title>
<updated>2026-07-16T06:08:23+00:00</updated>
<author>
<name>Peter Stone</name>
<email>thepeterstone@gmail.com</email>
</author>
<published>2026-07-16T06:08:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.terst.org/doot.git/commit/?id=310d17b25d8dbcd8e930148334e7bd7bb144f407'/>
<id>urn:sha1:310d17b25d8dbcd8e930148334e7bd7bb144f407</id>
<content type='text'>
Creates migrations/025_task_budgets_and_availability.sql with:
- New availability_blocks table for manual weekly availability templates
- estimated_minutes column on native_tasks for time budgeting
- budget_tracked flag on projects and labels for opt-in tracking

Fixes pre-existing bug in sqlite_test.go's setupTestStoreWithNativeTasks where
project_id column was missing from the schema, causing test failures.

Updates all hand-rolled test helpers (sqlite_test.go, native_tasks_test.go)
to include the new columns, and adds availability_test.go with newAvailabilityTestStore
helper for Task 4's availability CRUD tests.

All store tests pass, including the two that were previously failing
(TestGetNativeTasksByDateRange_ExcludesOverdue, TestGetOverdueNativeTasks_IncludesOnlyPastDue).

Co-Authored-By: Claude Sonnet 5 &lt;noreply@anthropic.com&gt;
Claude-Session: https://claude.ai/code/session_01PQaPGQVSfmKUiHXB87qRTC
</content>
</entry>
</feed>
