- Add errand-repository.ts port with ErrandRepository, ErrandWithAlias, ErrandStatus types - Add DrizzleErrandRepository adapter with create, findById (left-joins agents for alias), findAll (optional projectId/status filters, desc by createdAt), update, delete - Wire exports into repositories/index.ts and repositories/drizzle/index.ts - Add migration 0035_faulty_human_fly.sql (CREATE TABLE errands) and drizzle snapshot - Add 13 tests covering CRUD, filtering, ordering, agentAlias join, cascade/set-null FK behaviour - Update docs/database.md to document the errands table and ErrandRepository Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
93 lines
1.8 KiB
TypeScript
93 lines
1.8 KiB
TypeScript
/**
|
|
* Repository Port Interfaces
|
|
*
|
|
* Re-exports all repository port interfaces.
|
|
* These are the PORTS in hexagonal architecture.
|
|
* Implementations in ./drizzle/ are ADAPTERS.
|
|
*/
|
|
|
|
export type {
|
|
InitiativeRepository,
|
|
CreateInitiativeData,
|
|
UpdateInitiativeData,
|
|
} from './initiative-repository.js';
|
|
|
|
export type {
|
|
PhaseRepository,
|
|
CreatePhaseData,
|
|
UpdatePhaseData,
|
|
} from './phase-repository.js';
|
|
|
|
export type {
|
|
TaskRepository,
|
|
CreateTaskData,
|
|
UpdateTaskData,
|
|
} from './task-repository.js';
|
|
|
|
export type {
|
|
AgentRepository,
|
|
AgentStatus,
|
|
CreateAgentData,
|
|
} from './agent-repository.js';
|
|
|
|
export type {
|
|
MessageRepository,
|
|
MessageParticipantType,
|
|
MessageType,
|
|
MessageStatus,
|
|
CreateMessageData,
|
|
UpdateMessageData,
|
|
} from './message-repository.js';
|
|
|
|
export type {
|
|
PageRepository,
|
|
CreatePageData,
|
|
UpdatePageData,
|
|
} from './page-repository.js';
|
|
|
|
export type {
|
|
ProjectRepository,
|
|
CreateProjectData,
|
|
UpdateProjectData,
|
|
} from './project-repository.js';
|
|
|
|
export type {
|
|
AccountRepository,
|
|
CreateAccountData,
|
|
} from './account-repository.js';
|
|
|
|
export type {
|
|
ChangeSetRepository,
|
|
CreateChangeSetData,
|
|
CreateChangeSetEntryData,
|
|
ChangeSetWithEntries,
|
|
} from './change-set-repository.js';
|
|
|
|
export type {
|
|
LogChunkRepository,
|
|
} from './log-chunk-repository.js';
|
|
|
|
export type {
|
|
ConversationRepository,
|
|
CreateConversationData,
|
|
} from './conversation-repository.js';
|
|
|
|
export type {
|
|
ChatSessionRepository,
|
|
CreateChatSessionData,
|
|
CreateChatMessageData,
|
|
} from './chat-session-repository.js';
|
|
|
|
export type {
|
|
ReviewCommentRepository,
|
|
CreateReviewCommentData,
|
|
} from './review-comment-repository.js';
|
|
|
|
export type {
|
|
ErrandRepository,
|
|
ErrandWithAlias,
|
|
ErrandStatus,
|
|
CreateErrandData,
|
|
UpdateErrandData,
|
|
} from './errand-repository.js';
|