pub mod database;
pub mod file_storage;
pub mod migrations;

/// Stable identifier for the seeded Default profile (see migration v6).
/// The Default profile cannot be renamed or deleted — guarded by SQLite triggers.
pub const DEFAULT_PROFILE_ID: &str = "00000000-0000-0000-0000-000000000001";

pub use database::{
    add_profile_term, archive_inbox_older_than, archive_task,
    complete_subtask_and_check_parent, complete_task, count_transcripts,
    create_profile, create_task_list, create_template, delete_implementation_rule,
    delete_profile, delete_profile_term, delete_task, delete_task_list,
    delete_template, delete_transcript, get_implementation_rule, get_profile,
    get_setting, get_task_by_id, get_transcript, import_task_lists, import_templates,
    init, init_readonly, insert_implementation_rule, insert_subtask, insert_task,
    insert_transcript, list_archived_tasks, list_feedback_examples,
    list_implementation_rules, list_profile_terms, list_profiles, list_recent_completions,
    list_recent_errors, list_subtasks, list_task_lists, list_tasks, list_templates,
    list_transcripts, list_transcripts_paged, log_error, mark_implementation_rule_fired,
    prune_error_log, record_feedback, search_transcripts, set_implementation_rule_enabled,
    set_setting, set_task_energy, unarchive_task, uncomplete_task, update_profile,
    update_task, update_task_list, update_template, update_transcript,
    update_transcript_meta, DailyCompletionCount, ErrorLogRow, FeedbackRow,
    FeedbackTargetType, ImplementationRuleRow, ImportSummary, InsertTranscriptParams,
    ProfileRow, ProfileTermRow, RecordFeedbackParams, TaskListRow, TaskRow, TemplateRow,
    TranscriptRow,
};
pub use file_storage::{app_data_dir, crashes_dir, database_path, logs_dir, recordings_dir};
