Skip to main content

CODITECT Data Dictionary

Governance: ADR-148, ADR-118

Purpose: Field-level documentation for all tables in CODITECT's four-tier database architecture. For high-level architecture overview, see DATABASE-SCHEMA.md.

Auto-generated by: scripts/generate-data-dictionary.py (J.24.1.3)


Quick Reference

DatabaseTierTablesBackupDocumentation
platform.db112RegenerableJump
org.db215DAILYJump
sessions.db382RegenerableJump
projects.db411With codeJump

Total: 120 tables across 4 databases


Legend

SymbolMeaning
PKPrimary Key
FKForeign Key
UQUnique Constraint
NNNOT NULL
FTSFull-Text Search Index

Tier 1: platform.db

Purpose: Component metadata index (agents, skills, commands, scripts) Location: ~/.coditect-data/context-storage/platform.db Backup: Regenerable Tables: 12

Table: capabilities

Purpose: Component capability tags for semantic search

Related Tables:

  • components (FK: component_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
component_idTEXTFK→components--
capabilityTEXTNN--
capability_typeTEXTNN--

Indexes

IndexColumnsUnique
idx_capabilities_typecapability_type-
idx_capabilities_componentcomponent_id-

Table: component_composability

Purpose: Table in platform.db

Related Tables:

  • components (FK: component_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
component_idTEXTFK→components--
target_idTEXT---
relationshipTEXTNN--

Indexes

IndexColumnsUnique
idx_composability_targettarget_id-
idx_composability_componentcomponent_id-

Table: component_relationships

Purpose: Dependencies between components

Related Tables:

  • components (FK: source_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
source_idTEXTFK→components--
target_idTEXT---
relationship_typeTEXTNN--
notesTEXT---

Indexes

IndexColumnsUnique
idx_comp_rel_targettarget_id-
idx_comp_rel_sourcesource_id-

Purpose: FTS5 full-text search index for components

Fields

FieldTypeConstraintsDefaultDescription
idTEXT---
nameTEXT---
typeTEXT---
descriptionTEXT---
capabilitiesTEXT---
triggersTEXT---

Table: component_search_config

Purpose: Table in platform.db

Fields

FieldTypeConstraintsDefaultDescription
kTEXTPK, NN--
vTEXT---

Table: component_search_content

Purpose: Table in platform.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
c0TEXT---
c1TEXT---
c2TEXT---
c3TEXT---
c4TEXT---
c5TEXT---

Table: component_search_data

Purpose: Table in platform.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
blockBLOB---

Table: component_search_docsize

Purpose: Table in platform.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
szBLOB---

Table: component_search_idx

Purpose: Table in platform.db

Fields

FieldTypeConstraintsDefaultDescription
segidTEXTPK, NN--
termTEXTPK, NN--
pgnoTEXT---

Table: component_usage_stats

Purpose: Table in platform.db

Related Tables:

  • components (FK: component_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
component_idTEXTFK→components--
invocation_countINTEGER-0-
success_countINTEGER-0-
failure_countINTEGER-0-
avg_duration_msINTEGER---
last_usedTEXT---
updated_atTEXT-CURRENT_TIMESTAMP-

Table: components

Purpose: Master registry of all CODITECT framework components

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
typeTEXTNN--
nameTEXTNN--
versionTEXT---
statusTEXT-'operational'-
pathTEXTNN--
categoryTEXT---
subcategoryTEXT---
descriptionTEXT---
complexityTEXT-'medium'-
maturityTEXT-'production'-
confidenceREAL-0.5-
documentation_qualityTEXT-'partial'-
content_hashTEXT---
indexed_atTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-
llm_providerTEXT---
llm_modelTEXT---
llm_temperatureREAL-0.7-
llm_max_tokensINTEGER-4096-
tools_listTEXT---
a2a_schemaTEXT---
token_budget_recommendedINTEGER-0-
token_budget_maximumINTEGER-0-
invocation_methodTEXT---
parallel_safeINTEGER-1-
vendor_nameTEXT---
vendor_urlTEXT---

Indexes

IndexColumnsUnique
idx_components_llm_providerllm_provider-
idx_components_llm_modelllm_model-
idx_components_statusstatus-
idx_components_categorycategory-
idx_components_typetype-

Table: triggers

Purpose: Usage triggers that activate components

Related Tables:

  • components (FK: component_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
component_idTEXTFK→components--
trigger_typeTEXTNN--
descriptionTEXTNN--

Indexes

IndexColumnsUnique
idx_triggers_componentcomponent_id-

Tier 2: org.db (CRITICAL)

Purpose: Organizational knowledge (decisions, learnings, error solutions) Location: ~/.coditect-data/context-storage/org.db Backup: DAILY (CRITICAL) Tables: 15

Table: cloud_sync_state

Purpose: Table in org.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
table_nameTEXTNN--
last_sync_cursorTEXT---
last_push_atTEXT---
last_pull_atTEXT---
pending_push_countINTEGER-0-
conflict_countINTEGER-0-
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-

Table: decisions

Purpose: Architectural and design decisions with rationale

Related Tables:

  • messages (FK: message_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
message_idINTEGERFK→messages--
project_pathTEXT---
decision_typeTEXTNN--
decisionTEXTNN--
rationaleTEXT---
alternatives_consideredTEXT---
confidenceREAL-0.5-
tagsTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
tenant_idTEXT---
user_idTEXT---
team_idTEXT---
project_idTEXT---
cloud_idTEXT---
synced_atTEXT---
sync_statusTEXT-'pending'-
scopeTEXT-'global'-

Indexes

IndexColumnsUnique
idx_decisions_project_idproject_id-
idx_decisions_scopescope-
idx_decisions_cloud_idcloud_id-
idx_decisions_syncsync_status, synced_at-
idx_decisions_projecttenant_id, project_id-
idx_decisions_usertenant_id, user_id-
idx_decisions_tenanttenant_id-

Table: error_solutions

Purpose: Known error patterns and their solutions

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
error_hashTEXT---
error_typeTEXTNN--
error_signatureTEXTNN--
error_contextTEXT---
solutionTEXTNN--
solution_codeTEXT---
languageTEXT---
success_countINTEGER-1-
failure_countINTEGER-0-
last_usedTEXT-CURRENT_TIMESTAMP-
created_atTEXT-CURRENT_TIMESTAMP-
tenant_idTEXT---
user_idTEXT---
team_idTEXT---
project_idTEXT---
cloud_idTEXT---
synced_atTEXT---
sync_statusTEXT-'pending'-
scopeTEXT-'global'-

Indexes

IndexColumnsUnique
idx_error_solutions_project_idproject_id-
idx_error_solutions_scopescope-
idx_error_solutions_cloud_idcloud_id-
idx_error_solutions_syncsync_status, synced_at-
idx_error_solutions_projecttenant_id, project_id-
idx_error_solutions_usertenant_id, user_id-
idx_error_solutions_tenanttenant_id-

Table: kg_edges

Purpose: Knowledge graph edges (ADR-151)

Related Tables:

  • kg_nodes (FK: to_node → id)
  • kg_nodes (FK: from_node → id)

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
edge_typeTEXTNN--
from_nodeTEXTNN, FK→kg_nodes--
to_nodeTEXTNN, FK→kg_nodes--
propertiesTEXT---
tenant_idTEXT---
created_atTEXTNNstrftime('%Y-%m-%dT%H:%M:%SZ', 'now')-

Indexes

IndexColumnsUnique
idx_kg_edges_pairfrom_node, to_node-
idx_kg_edges_tenanttenant_id-
idx_kg_edges_toto_node-
idx_kg_edges_fromfrom_node-
idx_kg_edges_typeedge_type-

Table: kg_nodes

Purpose: Knowledge graph nodes (ADR-151)

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
node_typeTEXTNN--
subtypeTEXT---
nameTEXTNN--
propertiesTEXT---
embeddingBLOB---
tenant_idTEXT---
project_idTEXT---
created_atTEXTNNstrftime('%Y-%m-%dT%H:%M:%SZ', 'now')-
updated_atTEXTNNstrftime('%Y-%m-%dT%H:%M:%SZ', 'now')-
source_tableTEXT---
source_idTEXT---

Indexes

IndexColumnsUnique
idx_kg_nodes_updatedupdated_at-
idx_kg_nodes_sourcesource_table, source_id-
idx_kg_nodes_projecttenant_id, project_id-
idx_kg_nodes_tenanttenant_id-
idx_kg_nodes_subtypesubtype-
idx_kg_nodes_typenode_type-

Table: kg_nodes_fts

Purpose: FTS5 full-text search index for kg_nodes

Type: FTS5 Virtual Table

Indexed Columns

  • name
  • properties

Table: kg_nodes_fts_config

Purpose: FTS5 full-text search index for kg_nodes_config

Type: FTS5 Virtual Table

Indexed Columns

  • k
  • v

Table: kg_nodes_fts_data

Purpose: FTS5 full-text search index for kg_nodes

Type: FTS5 Virtual Table

Indexed Columns

  • id
  • block

Table: kg_nodes_fts_docsize

Purpose: FTS5 full-text search index for kg_nodes_docsize

Type: FTS5 Virtual Table

Indexed Columns

  • id
  • sz

Table: kg_nodes_fts_idx

Purpose: FTS5 full-text search index for kg_nodes_idx

Type: FTS5 Virtual Table

Indexed Columns

  • segid
  • term
  • pgno

Table: local_identity

Purpose: Table in org.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
tenant_idTEXTNN--
user_idTEXTNN--
team_idTEXT---
default_project_idTEXT---
auth_sourceTEXT-'local'-
token_expires_atTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-

Table: project_tracks

Purpose: Table in org.db

Related Tables:

  • projects (FK: project_id → project_id)

Fields

FieldTypeConstraintsDefaultDescription
project_idTEXTPK, NN, FK→projects--
track_letterTEXTPK, NN--
track_nameTEXTNN--
track_fileTEXTNN--
tierINTEGERNN--
progress_pctREAL-0.0-
statusTEXTNN'active'-

Indexes

IndexColumnsUnique
idx_project_tracks_lettertrack_letter-
idx_project_tracks_projectproject_id-

Table: projects

Purpose: Registered project metadata

Fields

FieldTypeConstraintsDefaultDescription
project_idTEXTPK--
slugTEXTNN--
nameTEXTNN--
descriptionTEXT---
scopeTEXTNN--
tenant_idTEXT---
ownerTEXTNN--
plan_locationTEXTNN--
tracks_configTEXT---
statusTEXTNN'active'-
created_atTEXTNNstrftime('%Y-%m-%dT%H:%M:%SZ', 'now')-
updated_atTEXTNNstrftime('%Y-%m-%dT%H:%M:%SZ', 'now')-
metadataTEXT---
cloud_synced_atTEXT---
cloud_project_uuidTEXT---

Indexes

IndexColumnsUnique
idx_projects_slugslug-
idx_projects_tenanttenant_id-
idx_projects_statusstatus-
idx_projects_scopescope-

Table: schema_migrations

Purpose: Table in org.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
migration_nameTEXTNN--
versionTEXTNN--
applied_atTEXTNN--
statusTEXTNN'applied'-

Table: skill_learnings

Purpose: Accumulated skill improvement learnings

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
session_idTEXTNN--
skill_nameTEXTNN--
outcomeTEXT---
effectiveness_scoreINTEGER---
errorsTEXT---
analyzed_atTEXTNN--
tenant_idTEXT---
user_idTEXT---
team_idTEXT---
project_idTEXT---
cloud_idTEXT---
synced_atTEXT---
sync_statusTEXT-'pending'-
scopeTEXT-'global'-

Indexes

IndexColumnsUnique
idx_skill_learnings_project_idproject_id-
idx_skill_learnings_scopescope-
idx_skill_learnings_cloud_idcloud_id-
idx_skill_learnings_syncsync_status, synced_at-
idx_skill_learnings_projecttenant_id, project_id-
idx_skill_learnings_usertenant_id, user_id-
idx_skill_learnings_tenanttenant_id-

Tier 3: sessions.db

Purpose: Session data (messages, tool analytics, activity associations) Location: ~/.coditect-data/context-storage/sessions.db Backup: Regenerable Tables: 82

Table: activity_feed

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
tenant_idTEXT---
user_idTEXTNN--
project_idTEXTNN--
activity_typeTEXTNN--
titleTEXTNN--
descriptionTEXT---
source_typeTEXT---
source_idTEXT---
metadataTEXT---
occurred_atTEXTNN--
created_atTEXT-CURRENT_TIMESTAMP-
content_hashTEXTNN--
sync_cursorINTEGER---

Indexes

IndexColumnsUnique
idx_activity_feed_project_idproject_id-

Table: agent_sessions

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
task_idTEXT---
agent_typeTEXTNN--
loop_typeTEXT-'ralph'-
started_atTEXT-datetime('now')-
completed_atTEXT---
statusTEXT-'running'-
total_iterationsINTEGER-0-
max_iterationsINTEGER-100-
configTEXT---
final_outcomeTEXT---
syncedINTEGER-0-

Table: auto_checkpoints

Purpose: Table in sessions.db

Related Tables:

  • sessions (FK: session_id → session_id)

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
session_idTEXTNN, FK→sessions--
triggerTEXTNN--
file_pathTEXT---
summaryTEXT---
message_countINTEGER-0-
decision_countINTEGER-0-
context_percentREAL---
resume_contextTEXT---
created_atTEXTNN--

Indexes

IndexColumnsUnique
idx_auto_checkpoints_sessionsession_id, created_at-

Table: budgets

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
scopeTEXTNN--
scope_idTEXTNN--
parent_budget_idTEXT---
limit_typeTEXTNN--
limit_valueREALNN--
current_valueREAL-0-
periodTEXT---
period_startTEXT---
actionTEXT-'alert_only'-
alert_threshold_percentINTEGER-80-
statusTEXT-'active'-
created_atTEXT-datetime('now')-
updated_atTEXT-datetime('now')-
syncedINTEGER-0-

Table: call_graph_edges

Purpose: Table in sessions.db

Related Tables:

  • call_graph_functions (FK: caller_id → node_id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
caller_idTEXTNN, FK→call_graph_functions--
callee_nameTEXTNN--
call_lineINTEGERNN--
call_fileTEXTNN--
argumentsTEXT---
created_atTEXT-CURRENT_TIMESTAMP-

Indexes

IndexColumnsUnique
idx_cge_calleecallee_name-
idx_cge_callercaller_id-

Table: call_graph_fts

Purpose: FTS5 full-text search index for call_graph

Type: FTS5 Virtual Table

Indexed Columns

  • name
  • signature
  • docstring

Table: call_graph_fts_config

Purpose: FTS5 full-text search index for call_graph_config

Type: FTS5 Virtual Table

Indexed Columns

  • k
  • v

Table: call_graph_fts_data

Purpose: FTS5 full-text search index for call_graph

Type: FTS5 Virtual Table

Indexed Columns

  • id
  • block

Table: call_graph_fts_docsize

Purpose: FTS5 full-text search index for call_graph_docsize

Type: FTS5 Virtual Table

Indexed Columns

  • id
  • sz

Table: call_graph_fts_idx

Purpose: FTS5 full-text search index for call_graph_idx

Type: FTS5 Virtual Table

Indexed Columns

  • segid
  • term
  • pgno

Table: call_graph_functions

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
node_idTEXTPK--
nameTEXTNN--
file_pathTEXTNN--
start_lineINTEGERNN--
end_lineINTEGERNN--
languageTEXTNN--
signatureTEXT---
docstringTEXT---
class_nameTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-

Indexes

IndexColumnsUnique
idx_cgf_namename-
idx_cgf_filefile_path-

Table: call_graph_memory

Purpose: Table in sessions.db

Related Tables:

  • messages (FK: message_id → id)
  • call_graph_functions (FK: node_id → node_id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
node_idTEXTNN, FK→call_graph_functions--
message_idINTEGERFK→messages--
session_idTEXT---
change_typeTEXT---
timestampTEXT-CURRENT_TIMESTAMP-

Indexes

IndexColumnsUnique
idx_cgm_sessionsession_id-
idx_cgm_nodenode_id-

Table: capabilities

Purpose: Component capability tags for semantic search

Related Tables:

  • components (FK: component_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
component_idTEXTFK→components--
capabilityTEXTNN--
capability_typeTEXTNN--

Table: checkpoints

Purpose: Table in sessions.db

Related Tables:

  • task_tracking (FK: task_id → task_id)
  • agent_sessions (FK: session_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
session_idTEXTFK→agent_sessions--
task_idTEXTNN, FK→task_tracking--
agent_idTEXTNN--
agent_typeTEXTNN--
iterationINTEGER-1-
phaseTEXTNN--
completed_itemsTEXT---
pending_itemsTEXT---
blocked_itemsTEXT---
current_focusTEXT---
context_summaryTEXT---
tokens_consumedINTEGER-0-
tools_invokedINTEGER-0-
files_modifiedTEXT---
tests_passedINTEGER-0-
tests_failedINTEGER-0-
tests_skippedINTEGER-0-
coverage_percentREAL---
last_successful_stateTEXT---
rollback_instructionsTEXT---
continuation_promptTEXT---
hashTEXTNN--
signatureTEXT---
created_atTEXT-datetime('now')-
syncedINTEGER-0-

Table: cloud_sync_state

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
table_nameTEXTNN--
last_sync_cursorTEXT---
last_push_atTEXT---
last_pull_atTEXT---
pending_push_countINTEGER-0-
conflict_countINTEGER-0-
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-

Table: code_patterns

Purpose: Table in sessions.db

Related Tables:

  • messages (FK: message_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
message_idINTEGERFK→messages--
languageTEXTNN--
pattern_nameTEXTNN--
pattern_typeTEXT---
codeTEXTNN--
descriptionTEXT---
tagsTEXT---
usage_countINTEGER-1-
last_usedTEXT-CURRENT_TIMESTAMP-
created_atTEXT-CURRENT_TIMESTAMP-
tenant_idTEXT---
user_idTEXT---
team_idTEXT---
project_idTEXT---
cloud_idTEXT---
synced_atTEXT---
sync_statusTEXT-'pending'-

Indexes

IndexColumnsUnique
idx_code_patterns_cloud_idcloud_id-
idx_code_patterns_syncsync_status, synced_at-
idx_code_patterns_projecttenant_id, project_id-
idx_code_patterns_usertenant_id, user_id-
idx_code_patterns_tenanttenant_id-

Table: component_composability

Purpose: Table in sessions.db

Related Tables:

  • components (FK: component_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
component_idTEXTFK→components--
target_idTEXT---
relationshipTEXTNN--

Table: component_relationships

Purpose: Dependencies between components

Related Tables:

  • components (FK: source_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
source_idTEXTFK→components--
target_idTEXT---
relationship_typeTEXTNN--
notesTEXT---

Table: component_search

Purpose: FTS5 full-text search index for components

Fields

FieldTypeConstraintsDefaultDescription
idTEXT---
nameTEXT---
typeTEXT---
descriptionTEXT---
capabilitiesTEXT---
triggersTEXT---

Table: component_search_config

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
kTEXTPK, NN--
vTEXT---

Table: component_search_content

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
c0TEXT---
c1TEXT---
c2TEXT---
c3TEXT---
c4TEXT---
c5TEXT---

Table: component_search_data

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
blockBLOB---

Table: component_search_docsize

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
szBLOB---

Table: component_search_idx

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
segidTEXTPK, NN--
termTEXTPK, NN--
pgnoTEXT---

Table: component_usage_stats

Purpose: Table in sessions.db

Related Tables:

  • components (FK: component_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
component_idTEXTFK→components--
invocation_countINTEGER-0-
success_countINTEGER-0-
failure_countINTEGER-0-
avg_duration_msINTEGER---
last_usedTEXT---
updated_atTEXT-CURRENT_TIMESTAMP-

Table: components

Purpose: Master registry of all CODITECT framework components

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
typeTEXTNN--
nameTEXTNN--
versionTEXT---
statusTEXT-'operational'-
pathTEXTNN--
categoryTEXT---
subcategoryTEXT---
descriptionTEXT---
complexityTEXT-'medium'-
maturityTEXT-'production'-
confidenceREAL-0.5-
documentation_qualityTEXT-'partial'-
content_hashTEXT---
indexed_atTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-
llm_providerTEXT---
llm_modelTEXT---
llm_temperatureREAL-0.7-
llm_max_tokensINTEGER-4096-
tools_listTEXT---
a2a_schemaTEXT---
token_budget_recommendedINTEGER-0-
token_budget_maximumINTEGER-0-
invocation_methodTEXT---
parallel_safeINTEGER-1-
vendor_nameTEXT---
vendor_urlTEXT---

Table: context_graph_nodes

Purpose: Table in sessions.db

Related Tables:

  • context_graphs (FK: context_graph_id → id)

Fields

FieldTypeConstraintsDefaultDescription
context_graph_idTEXTPK, NN, FK→context_graphs--
node_idTEXTPK, NN--
relevance_scoreREAL-1.0-
depthINTEGER-0-
is_seedINTEGER-0-
include_propertiesINTEGER-1-
token_estimateINTEGER-0-
included_atTEXT-strftime('%Y-%m-%dT%H:%M:%SZ', 'now')-

Indexes

IndexColumnsUnique
idx_context_graph_nodes_depthcontext_graph_id, depth-
idx_context_graph_nodes_relevancecontext_graph_id, relevance_score-
idx_context_graph_nodes_nodenode_id-
idx_context_graph_nodes_graphcontext_graph_id-

Table: context_graph_usage

Purpose: Table in sessions.db

Related Tables:

  • context_graphs (FK: context_graph_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
context_graph_idTEXTNN, FK→context_graphs--
session_idTEXT---
message_idTEXT---
agent_idTEXT---
tokens_usedINTEGER---
retrieval_time_msINTEGER---
was_helpfulINTEGER---
feedback_textTEXT---
used_atTEXTNNstrftime('%Y-%m-%dT%H:%M:%SZ', 'now')-

Indexes

IndexColumnsUnique
idx_context_graph_usage_timeused_at-
idx_context_graph_usage_sessionsession_id-
idx_context_graph_usage_graphcontext_graph_id-

Table: context_graphs

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
nameTEXT---
task_descriptionTEXT---
seed_nodesTEXT---
seed_strategyTEXT-'anchor'-
token_budgetINTEGER-4000-
max_depthINTEGER-3-
max_nodesINTEGER-128-
relevance_thresholdREAL-0.5-
node_countINTEGER-0-
edge_countINTEGER-0-
tokens_estimatedINTEGER-0-
tenant_idTEXT---
project_idTEXT---
session_idTEXT---
created_atTEXTNNstrftime('%Y-%m-%dT%H:%M:%SZ', 'now')-
expires_atTEXT---
build_time_msINTEGER---
builder_versionTEXT-'1.0.0'-
policies_appliedTEXT--JSON array of governance policies applied during graph construction (J.25.4.4)
phi_node_countINTEGER-0Count of nodes with potential PHI indicators for HIPAA compliance (J.25.4.3)

Indexes

IndexColumnsUnique
idx_context_graphs_expiresexpires_at-
idx_context_graphs_createdcreated_at-
idx_context_graphs_sessionsession_id-
idx_context_graphs_projecttenant_id, project_id-
idx_context_graphs_tenanttenant_id-

Table: doc_embeddings

Purpose: Table in sessions.db

Related Tables:

  • doc_index (FK: doc_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
doc_idINTEGERNN, FK→doc_index--
embeddingBLOBNN--
modelTEXTNN--
chunk_indexINTEGER-0-
chunk_textTEXT---
created_atTEXT-CURRENT_TIMESTAMP-

Table: doc_index

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
doc_hashTEXTNN--
doc_typeTEXTNN--
titleTEXTNN--
file_pathTEXTNN--
absolute_pathTEXT---
submoduleTEXT---
categoryTEXT---
subcategoryTEXT---
tagsTEXT---
content_hashTEXT---
word_countINTEGER-0-
line_countINTEGER-0-
has_code_blocksBOOLEAN-FALSE-
has_mermaidBOOLEAN-FALSE-
frontmatterTEXT---
first_headingTEXT---
summaryTEXT---
created_atTEXT---
modified_atTEXT---
indexed_atTEXT-CURRENT_TIMESTAMP-
workspace_idTEXT---
workspace_nameTEXT---

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
titleTEXT---
file_pathTEXT---
categoryTEXT---
tagsTEXT---
summaryTEXT---
first_headingTEXT---

Table: doc_search_config

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
kTEXTPK, NN--
vTEXT---

Table: doc_search_data

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
blockBLOB---

Table: doc_search_docsize

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
szBLOB---

Table: doc_search_idx

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
segidTEXTPK, NN--
termTEXTPK, NN--
pgnoTEXT---

Table: embeddings

Purpose: Table in sessions.db

Related Tables:

  • messages (FK: message_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
message_idINTEGERNN, FK→messages--
embeddingBLOBNN--
modelTEXTNN--
created_atTEXT-CURRENT_TIMESTAMP-
tenant_idTEXT---
user_idTEXT---
team_idTEXT---
project_idTEXT---
cloud_idTEXT---
synced_atTEXT---
sync_statusTEXT-'pending'-

Indexes

IndexColumnsUnique
idx_embeddings_cloud_idcloud_id-
idx_embeddings_syncsync_status, synced_at-
idx_embeddings_projecttenant_id, project_id-
idx_embeddings_usertenant_id, user_id-
idx_embeddings_tenanttenant_id-

Table: entries

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
hashTEXTNN--
entry_typeTEXTNN--
uuidTEXT---
parent_uuidTEXT---
logical_parent_uuidTEXT---
session_idTEXT---
agent_idTEXT---
slugTEXT---
cwdTEXT---
git_branchTEXT---
versionTEXT---
timestampTEXT---
extracted_atTEXT---
is_sidechainBOOLEAN-FALSE-
is_metaBOOLEAN-FALSE-
user_typeTEXT---
contentTEXT---
roleTEXT---
raw_jsonTEXTNN--
source_fileTEXT---
source_lineINTEGER---

Table: entries_embeddings

Purpose: Table in sessions.db

Related Tables:

  • entries (FK: entry_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
entry_idINTEGERNN, FK→entries--
embeddingBLOBNN--
modelTEXTNN--
created_atTEXT-CURRENT_TIMESTAMP-

Table: file_backup_entries

Purpose: Table in sessions.db

Related Tables:

  • file_snapshots (FK: snapshot_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
snapshot_idINTEGERFK→file_snapshots--
file_pathTEXTNN--
backup_file_nameTEXT---
versionINTEGER---
backup_timeTEXT---

Table: file_snapshots

Purpose: Table in sessions.db

Related Tables:

  • entries (FK: entry_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
entry_idINTEGERFK→entries--
message_idTEXT---
snapshot_timestampTEXT---
is_snapshot_updateBOOLEAN-FALSE-
snapshot_dataTEXT---

Table: health_events

Purpose: Table in sessions.db

Related Tables:

  • agent_sessions (FK: session_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
agent_idTEXTNN--
session_idTEXTFK→agent_sessions--
task_idTEXT---
timestampTEXT-datetime('now')-
previous_stateTEXT---
new_stateTEXTNN--
state_reasonTEXT---
heartbeat_dataTEXT---
intervention_levelTEXT---
intervention_actionTEXT---
intervention_resultTEXT---
circuit_breaker_targetTEXT---
circuit_breaker_stateTEXT---
circuit_breaker_failuresINTEGER---
syncedINTEGER-0-

Table: knowledge_entities

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
entity_typeTEXTNN--
entity_idINTEGERNN--
nameTEXTNN--
descriptionTEXT---
keywordsTEXT---
embedding_idINTEGER---
importanceREAL-0.5-
last_accessedTEXT---
access_countINTEGER-0-
created_atTEXT-CURRENT_TIMESTAMP-

Table: knowledge_graph

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
source_typeTEXTNN--
source_idINTEGERNN--
source_nameTEXT---
relationshipTEXTNN--
target_typeTEXTNN--
target_idINTEGERNN--
target_nameTEXT---
confidenceREAL-1.0-
extracted_fromTEXT---
contextTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-

Table: learning_achievements

Purpose: Table in sessions.db

Related Tables:

  • learning_modules (FK: module_id → id)
  • learning_badges (FK: badge_id → id)
  • learning_users (FK: user_id → user_id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
user_idTEXTNN, FK→learning_users--
badge_idINTEGERNN, FK→learning_badges--
earned_atTEXT-CURRENT_TIMESTAMP-
module_idINTEGERFK→learning_modules--
notesTEXT---

Table: learning_analytics_events

Purpose: Table in sessions.db

Related Tables:

  • learning_badges (FK: badge_id → id)
  • learning_modules (FK: module_id → id)
  • learning_users (FK: user_id → user_id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
event_idTEXTNN--
user_idTEXTNN, FK→learning_users--
session_idTEXT---
event_typeTEXTNN--
event_categoryTEXT---
module_idINTEGERFK→learning_modules--
badge_idINTEGERFK→learning_badges--
event_dataTEXT---
timestampTEXT-CURRENT_TIMESTAMP-

Table: learning_badges

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
badge_keyTEXTNN--
iconTEXTNN--
titleTEXTNN--
descriptionTEXT---
badge_categoryTEXT---
rarityTEXT---
criteria_typeTEXT---
criteria_dataTEXT---
sort_orderINTEGER-0-
is_activeBOOLEAN-1-
created_atTEXT-CURRENT_TIMESTAMP-

Table: learning_modules

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
module_keyTEXTNN--
module_typeTEXTNN--
categoryTEXTNN--
titleTEXTNN--
descriptionTEXT---
difficulty_levelTEXT---
estimated_duration_minutesINTEGER---
prerequisite_modulesTEXT---
learning_objectivesTEXT---
content_pathTEXT---
has_quizBOOLEAN-0-
has_exerciseBOOLEAN-0-
badge_idTEXT---
sort_orderINTEGER-0-
is_activeBOOLEAN-1-
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-

Table: learning_progress

Purpose: Table in sessions.db

Related Tables:

  • learning_modules (FK: module_id → id)
  • learning_users (FK: user_id → user_id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
user_idTEXTNN, FK→learning_users--
module_idINTEGERNN, FK→learning_modules--
statusTEXTNN--
started_atTEXT---
completed_atTEXT---
time_spent_secondsINTEGER-0-
quiz_scoreINTEGER---
quiz_max_scoreINTEGER---
exercise_completedBOOLEAN-0-
review_neededBOOLEAN-0-
notesTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-

Table: learning_users

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
user_idTEXTNN--
experience_levelTEXT---
ai_familiarityTEXT---
learning_goalTEXT---
learning_styleTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
last_activityTEXT-CURRENT_TIMESTAMP-
onboarding_completedBOOLEAN-0-
certification_levelTEXT---
total_time_secondsINTEGER-0-
total_modules_completedINTEGER-0-
total_badges_earnedINTEGER-0-

Table: message_component_invocations

Purpose: Table in sessions.db

Related Tables:

  • messages (FK: message_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
message_idINTEGERNN, FK→messages--
component_nameTEXTNN--
component_typeTEXTNN--
session_idTEXT---
timestampTEXT---
created_atTEXT-CURRENT_TIMESTAMP-

Table: message_threading

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
uuidTEXTNN--
parent_uuidTEXT---
logical_parent_uuidTEXT---
session_idTEXT---
agent_idTEXT---
entry_typeTEXT---
timestampTEXT---

Table: messages

Purpose: Extracted session messages from all LLMs

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
hashTEXTNN--
contentTEXTNN--
roleTEXTNN--
source_typeTEXT---
source_fileTEXT---
session_idTEXT---
checkpointTEXT---
timestampTEXT---
extracted_atTEXT---
content_lengthINTEGER---
has_codeBOOLEAN---
has_markdownBOOLEAN---
agent_contextTEXT---
tool_useTEXT---
tool_resultTEXT---
export_metadataTEXT---
component_invocationsTEXT---
tenant_idTEXT---
user_idTEXT---
team_idTEXT---
project_idTEXT---
cloud_idTEXT---
synced_atTEXT---
sync_statusTEXT-'pending'-

Indexes

IndexColumnsUnique
idx_messages_project_idproject_id-
idx_messages_cloud_idcloud_id-
idx_messages_syncsync_status, synced_at-
idx_messages_projecttenant_id, project_id-
idx_messages_usertenant_id, user_id-
idx_messages_tenanttenant_id-

Table: messages_fts

Purpose: FTS5 search index for messages

Type: FTS5 Virtual Table

Indexed Columns

  • content
  • role

Table: messages_fts_config

Purpose: FTS5 full-text search index for messages_config

Type: FTS5 Virtual Table

Indexed Columns

  • k
  • v

Table: messages_fts_data

Purpose: FTS5 full-text search index for messages

Type: FTS5 Virtual Table

Indexed Columns

  • id
  • block

Table: messages_fts_docsize

Purpose: FTS5 full-text search index for messages_docsize

Type: FTS5 Virtual Table

Indexed Columns

  • id
  • sz

Table: messages_fts_idx

Purpose: FTS5 full-text search index for messages_idx

Type: FTS5 Virtual Table

Indexed Columns

  • segid
  • term
  • pgno

Table: model_pricing

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
model_nameTEXTNN--
model_tierTEXTNN--
input_per_millionREALNN--
output_per_millionREALNN--
cache_read_per_millionREAL---
cache_write_per_millionREAL---
effective_dateTEXTNN--
created_atTEXT-CURRENT_TIMESTAMP-

Table: project_decisions

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
tenant_idTEXT---
project_idTEXTNN--
decision_idTEXTNN--
titleTEXTNN--
contextTEXTNN--
decisionTEXTNN--
consequencesTEXT---
alternativesTEXT---
statusTEXT-'proposed'-
superseded_byTEXT---
decided_byTEXT---
decided_atTEXT---
session_idTEXT---
source_fileTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-
content_hashTEXTNN--
sync_cursorINTEGER---

Table: project_summaries

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
project_pathTEXTNN--
summaryTEXT---
key_decisionsTEXT---
key_patternsTEXT---
tech_stackTEXT---
common_errorsTEXT---
message_countINTEGER-0-
last_updatedTEXT-CURRENT_TIMESTAMP-
created_atTEXT-CURRENT_TIMESTAMP-

Table: projects

Purpose: Registered project metadata

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
nameTEXTNN--
descriptionTEXT---
statusTEXT-'active'-
ownerTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-

Table: queue_operations

Purpose: Table in sessions.db

Related Tables:

  • entries (FK: entry_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
entry_idINTEGERFK→entries--
operationTEXTNN--
contentTEXT---
timestampTEXT---

Table: reasoning_traces

Purpose: Table in sessions.db

Related Tables:

  • entries (FK: entry_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
session_idTEXTNN--
trace_idTEXTNN--
step_sequenceINTEGERNN--
entry_idINTEGERFK→entries--
tool_nameTEXT---
tool_statusTEXT---
confidence_scoreREAL---
reasoning_summaryTEXT---
input_context_hashTEXT---
output_hashTEXT---
latency_msINTEGER---
token_inputINTEGER---
token_outputINTEGER---
error_typeTEXT---
error_recovery_pathTEXT---
created_atTEXT-CURRENT_TIMESTAMP-

Table: relationship_types

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
nameTEXTNN--
inverse_nameTEXT---
descriptionTEXT---
source_typesTEXT---
target_typesTEXT---
bidirectionalBOOLEAN-FALSE-

Table: session_insights

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
session_idTEXTNN--
insight_typeTEXTNN--
contentTEXTNN--
confidenceREAL---
extracted_atTEXTNN--
tenant_idTEXT---
user_idTEXT---
team_idTEXT---
project_idTEXT---
cloud_idTEXT---
synced_atTEXT---
sync_statusTEXT-'pending'-

Indexes

IndexColumnsUnique
idx_session_insights_cloud_idcloud_id-
idx_session_insights_syncsync_status, synced_at-
idx_session_insights_projecttenant_id, project_id-
idx_session_insights_usertenant_id, user_id-
idx_session_insights_tenanttenant_id-

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
session_aTEXTNN--
session_bTEXTNN--
relationshipTEXTNN--
notesTEXT---
created_atTEXT-CURRENT_TIMESTAMP-

Indexes

IndexColumnsUnique
idx_session_links_bsession_b-
idx_session_links_asession_a-

Table: session_names

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
session_idTEXTPK--
session_nameTEXTNN--
content_typeTEXT---
themeTEXT---
confidenceREAL---
message_countINTEGER---
created_atTEXT-CURRENT_TIMESTAMP-
applied_atTEXT---

Table: session_summaries

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
tenant_idTEXT---
user_idTEXTNN--
session_idTEXTNN--
project_idTEXT---
project_pathTEXT---
titleTEXTNN--
summaryTEXTNN--
key_decisionsTEXT---
files_modifiedTEXT---
tasks_completedTEXT---
message_countINTEGER-0-
tool_call_countINTEGER-0-
duration_secondsINTEGER---
session_started_atTEXTNN--
session_ended_atTEXT---
embeddingBLOB---
embedding_modelTEXT---
content_hashTEXTNN--
synced_atTEXT-CURRENT_TIMESTAMP-
sync_cursorINTEGER---
client_versionTEXT---
hardware_idTEXT---

Table: skill_improvements

Purpose: Table in sessions.db

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
session_idTEXTNN--
skill_nameTEXT---
improvement_typeTEXTNN--
priorityTEXT---
recommendationTEXT---
statusTEXT-'pending'-
created_atTEXTNN--

Table: sprints

Purpose: Table in sessions.db

Related Tables:

  • projects (FK: project_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
project_idTEXTNN, FK→projects--
nameTEXTNN--
goalTEXT---
start_dateTEXTNN--
end_dateTEXTNN--
statusTEXT-'planned'-
velocity_plannedINTEGER---
velocity_actualINTEGER---
retrospectiveTEXT---
created_atTEXT-CURRENT_TIMESTAMP-

Table: sub_projects

Purpose: Table in sessions.db

Related Tables:

  • projects (FK: project_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
project_idTEXTNN, FK→projects--
nameTEXTNN--
pathTEXT---
descriptionTEXT---
statusTEXT-'active'-
created_atTEXT-CURRENT_TIMESTAMP-

Table: summaries

Purpose: Table in sessions.db

Related Tables:

  • entries (FK: entry_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
entry_idINTEGERFK→entries--
summary_textTEXTNN--
leaf_uuidTEXT---

Table: system_events

Purpose: Table in sessions.db

Related Tables:

  • entries (FK: entry_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
entry_idINTEGERFK→entries--
subtypeTEXT---
levelTEXT---
contentTEXT---
compact_triggerTEXT---
compact_pre_tokensINTEGER---
causeTEXT---
errorTEXT---
max_retriesINTEGER---
retry_attemptINTEGER---
retry_in_msINTEGER---

Table: task_messages

Purpose: Task-to-message associations

Related Tables:

  • messages (FK: message_id → id)
  • task_tracking (FK: task_tracking_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
task_tracking_idINTEGERNN, FK→task_tracking--
message_idINTEGERNN, FK→messages--
roleTEXT---
tool_statusTEXT---
created_atTEXT-datetime('now')-

Table: task_tracking

Purpose: Local task status tracking

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
task_idTEXTNN--
task_descriptionTEXT---
sourceTEXT-'extraction'-
statusTEXT-'unknown'-
started_atTEXT---
completed_atTEXT---
message_id_startINTEGER---
message_id_endINTEGER---
session_export_fileTEXT---
outcomeTEXT---
outcome_scoreREAL---
tool_success_countINTEGER-0-
tool_error_countINTEGER-0-
user_correctionsINTEGER-0-
created_atTEXT-datetime('now')-
updated_atTEXT-datetime('now')-

Table: token_economics

Purpose: Token usage tracking per session

Related Tables:

  • entries (FK: entry_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
session_idTEXTNN--
entry_idINTEGERFK→entries--
model_nameTEXTNN--
model_tierTEXT---
token_inputINTEGERNN0-
token_outputINTEGERNN0-
token_cache_readINTEGER-0-
token_cache_writeINTEGER-0-
cost_input_usdREAL---
cost_output_usdREAL---
cost_cache_usdREAL---
cost_total_usdREAL---
task_idTEXT---
agent_nameTEXT---
operation_typeTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
tenant_idTEXT---
user_idTEXT---
team_idTEXT---
project_idTEXT---
cloud_idTEXT---
synced_atTEXT---
sync_statusTEXT-'pending'-

Indexes

IndexColumnsUnique
idx_token_economics_cloud_idcloud_id-
idx_token_economics_syncsync_status, synced_at-
idx_token_economics_projecttenant_id, project_id-
idx_token_economics_usertenant_id, user_id-
idx_token_economics_tenanttenant_id-

Table: token_records

Purpose: Table in sessions.db

Related Tables:

  • checkpoints (FK: checkpoint_id → id)
  • agent_sessions (FK: session_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idTEXTPK--
timestampTEXT-datetime('now')-
session_idTEXTFK→agent_sessions--
task_idTEXT---
agent_idTEXT---
iterationINTEGER---
checkpoint_idTEXTFK→checkpoints--
modelTEXTNN--
input_tokensINTEGER-0-
output_tokensINTEGER-0-
cache_read_tokensINTEGER-0-
cache_write_tokensINTEGER-0-
input_cost_usdREAL---
output_cost_usdREAL---
cache_cost_usdREAL---
total_cost_usdREAL---
tool_callsTEXT---
latency_msINTEGER---
successINTEGER-1-
syncedINTEGER-0-
tenant_idTEXT---
user_idTEXT---
team_idTEXT---
project_idTEXT---
cloud_idTEXT---
synced_atTEXT---
sync_statusTEXT-'pending'-

Indexes

IndexColumnsUnique
idx_token_records_cloud_idcloud_id-
idx_token_records_syncsync_status, synced_at-
idx_token_records_projecttenant_id, project_id-
idx_token_records_usertenant_id, user_id-
idx_token_records_tenanttenant_id-

Table: token_usage

Purpose: Table in sessions.db

Related Tables:

  • messages (FK: message_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
message_idINTEGERFK→messages--
session_idTEXTNN--
project_pathTEXT---
input_tokensINTEGER-0-
output_tokensINTEGER-0-
cache_read_input_tokensINTEGER-0-
cache_creation_input_tokensINTEGER-0-
cost_usdREAL-0.0-
estimated_cost_usdREAL---
duration_msINTEGER-0-
modelTEXT---
timestampTEXTNN--
indexed_atTEXT-CURRENT_TIMESTAMP-

Table: tool_analytics

Purpose: Tool usage statistics and performance

Related Tables:

  • entries (FK: entry_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
session_idTEXTNN--
entry_idINTEGERFK→entries--
tool_nameTEXTNN--
tool_categoryTEXT---
agent_nameTEXT---
task_idTEXT---
statusTEXTNN--
error_typeTEXT---
error_messageTEXT---
execution_time_msINTEGER---
input_size_bytesINTEGER---
output_size_bytesINTEGER---
retry_countINTEGER-0-
context_window_usageREAL---
created_atTEXT-CURRENT_TIMESTAMP-
trajectory_hashTEXT---
tool_idTEXT---
timestampTEXT---
duration_msINTEGER---
input_sizeINTEGER---
output_sizeINTEGER---
tenant_idTEXT---
user_idTEXT---
team_idTEXT---
project_idTEXT---
cloud_idTEXT---
synced_atTEXT---
sync_statusTEXT-'pending'-

Indexes

IndexColumnsUnique
idx_tool_analytics_project_idproject_id-
idx_tool_analytics_cloud_idcloud_id-
idx_tool_analytics_syncsync_status, synced_at-
idx_tool_analytics_projecttenant_id, project_id-
idx_tool_analytics_usertenant_id, user_id-
idx_tool_analytics_tenanttenant_id-

Table: workflow_context_snapshots

Purpose: Table in sessions.db

Related Tables:

  • workflow_states (FK: workflow_id → workflow_id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
workflow_idTEXTNN, FK→workflow_states--
session_idTEXTNN--
snapshot_typeTEXT---
context_graph_jsonTEXT---
active_policiesTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
tenant_idTEXT---
user_idTEXT---

Indexes

IndexColumnsUnique
idx_snapshots_typesnapshot_type-
idx_snapshots_sessionsession_id-
idx_snapshots_workflowworkflow_id-

Table: workflow_states

Purpose: Cross-session workflow state persistence

Fields

FieldTypeConstraintsDefaultDescription
workflow_idTEXTPK--
workflow_typeTEXTNN--
statusTEXT-'active'-
anchor_nodesTEXT---
accumulated_decisionsTEXT---
accumulated_errorsTEXT---
current_stepTEXT---
completed_stepsTEXT---
started_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-
session_idsTEXT---
tenant_idTEXT---
user_idTEXT---
team_idTEXT---
project_idTEXT---
cloud_idTEXT---
synced_atTEXT---
sync_statusTEXT-'pending'-

Indexes

IndexColumnsUnique
idx_workflow_states_syncsync_status, synced_at-
idx_workflow_states_usertenant_id, user_id-
idx_workflow_states_tenanttenant_id-
idx_workflow_states_typeworkflow_type-
idx_workflow_states_statusstatus-

Tier 4: projects.db

Purpose: Project-specific data (project index, embeddings) Location: ~/.coditect-data/context-storage/projects.db Backup: With code Tables: 11

Table: content_hashes

Purpose: File content hashes for change detection

Related Tables:

  • projects (FK: project_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
project_idINTEGERNN, FK→projects--
relative_pathTEXTNN--
file_hashTEXTNN--
file_sizeINTEGER---
content_typeTEXT---
languageTEXT---
last_hashed_atTEXTNN--
last_indexed_atTEXT---
needs_reindexINTEGER-0-

Indexes

IndexColumnsUnique
idx_content_hashes_hashfile_hash-
idx_content_hashes_needs_reindexneeds_reindex-
idx_content_hashes_typecontent_type-
idx_content_hashes_projectproject_id-

Table: exclude_patterns

Purpose: File exclusion patterns per project

Related Tables:

  • projects (FK: project_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
project_idINTEGERFK→projects--
patternTEXTNN--
pattern_typeTEXT-'glob'-
scopeTEXT-'directory'-
reasonTEXT---
sourceTEXT-'gitignore'-

Indexes

IndexColumnsUnique
idx_exclude_patterns_projectproject_id-

Table: project_activity

Purpose: Table in projects.db

Related Tables:

  • projects (FK: project_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
project_idINTEGERNN, FK→projects--
activity_typeTEXTNN--
session_uuidTEXT---
detailsTEXT---
files_touchedINTEGER-0-
timestampTEXT-CURRENT_TIMESTAMP-

Indexes

IndexColumnsUnique
idx_activity_timestamptimestamp-
idx_activity_sessionsession_uuid-
idx_activity_typeactivity_type-
idx_activity_projectproject_id-

Table: project_embeddings

Purpose: Semantic embeddings for project content

Related Tables:

  • content_hashes (FK: content_hash_id → id)
  • projects (FK: project_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
project_idINTEGERNN, FK→projects--
content_hash_idINTEGERFK→content_hashes--
chunk_indexINTEGERNN--
chunk_textTEXTNN--
chunk_hashTEXTNN--
embeddingBLOB---
embedding_modelTEXT-'all-MiniLM-L6-v2'-
embedding_dimINTEGER-384-
start_lineINTEGER---
end_lineINTEGER---
content_typeTEXT---
languageTEXT---
created_atTEXT-CURRENT_TIMESTAMP-

Indexes

IndexColumnsUnique
idx_embeddings_chunk_hashchunk_hash-
idx_embeddings_typecontent_type-
idx_embeddings_content_hashcontent_hash_id-
idx_embeddings_projectproject_id-

Table: project_tags

Purpose: Table in projects.db

Related Tables:

  • projects (FK: project_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
project_idINTEGERNN, FK→projects--
tagTEXTNN--
tag_typeTEXT-'user'-

Indexes

IndexColumnsUnique
idx_project_tags_tagtag-
idx_project_tags_projectproject_id-

Table: projects

Purpose: Registered project metadata

Related Tables:

  • projects (FK: parent_project_id → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK--
project_uuidTEXTNN--
nameTEXTNN--
pathTEXTNN--
github_ownerTEXT---
github_repoTEXT---
github_urlTEXT---
default_branchTEXT-'main'-
parent_project_idINTEGERFK→projects--
project_typeTEXT-'standalone'-
statusTEXT-'active'-
last_indexed_atTEXT---
last_sync_atTEXT---
descriptionTEXT---
primary_languageTEXT---
frameworkTEXT---
created_atTEXT-CURRENT_TIMESTAMP-
updated_atTEXT-CURRENT_TIMESTAMP-
cloud_registeredINTEGER-0-
cloud_project_uuidTEXT---
pending_syncINTEGER-0-

Indexes

IndexColumnsUnique
idx_projects_pendingpending_sync-
idx_projects_cloudcloud_registered-
idx_projects_typeproject_type-
idx_projects_parentparent_project_id-
idx_projects_statusstatus-

Table: projects_fts

Purpose: FTS5 full-text search index for projects

Type: FTS5 Virtual Table

Indexed Columns

  • name
  • description
  • path
  • primary_language
  • framework

Table: projects_fts_config

Purpose: FTS5 full-text search index for projects_config

Type: FTS5 Virtual Table

Indexed Columns

  • k
  • v

Table: projects_fts_data

Purpose: FTS5 full-text search index for projects

Type: FTS5 Virtual Table

Indexed Columns

  • id
  • block

Table: projects_fts_docsize

Purpose: FTS5 full-text search index for projects_docsize

Type: FTS5 Virtual Table

Indexed Columns

  • id
  • sz

Table: projects_fts_idx

Purpose: FTS5 full-text search index for projects_idx

Type: FTS5 Virtual Table

Indexed Columns

  • segid
  • term
  • pgno


Inter-Session: messaging.db

Purpose: Inter-session coordination, file locking, task claims Location: ~/.coditect-data/context-storage/messaging.db Backup: Optional Tables: 9 Governance: ADR-160, ADR-173

Table: session_registry

Purpose: Active LLM session registration and heartbeat tracking

Fields

FieldTypeConstraintsDefaultDescription
session_idTEXTPK-Session identifier (e.g., claude-29583)
llm_vendorTEXTNN-LLM provider: claude, codex, gemini
llm_modelTEXT--Model: opus-4.6, o3, gemini-2.0-flash
ttyTEXT--Terminal device path
pidINTEGER--OS process ID
project_idTEXT--Current project context
task_idTEXT--Currently claimed task
active_filesTEXT--JSON array of files being edited
heartbeat_atTEXTNN-Last heartbeat timestamp
registered_atTEXTNNdatetime('now')Registration timestamp
statusTEXT-'active'Session status: active, stale
cwdTEXT--Working directory path
machine_uuidTEXT--Machine identifier
hostnameTEXT--Machine hostname
last_active_atTEXT--Last activity timestamp
session_uuidTEXT--Unique session UUID
user_idTEXT--User identifier

Table: session_messages

Purpose: Structured inter-session messages (ADR-173 v2)

Related Tables:

  • Self-referential (FK: reply_to → id)

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK, AUTO-Message ID
sender_idTEXTNN-Sending session ID
sender_session_uuidTEXT--Sender UUID for dedup
recipient_idTEXT--Target session (null = broadcast)
channelTEXTNN-Channel: session_lifecycle, task_broadcast, operator_alert, direct
message_typeTEXTNN-Type: started, ended, conflict, claim
priorityINTEGERNN00=routine, 1=normal, 2=high, 3=critical
statusTEXTNN'pending'Delivery: pending, delivered, read
project_idTEXT--Project context
task_idTEXT--Related task ID
activityTEXT--Activity description
payloadTEXT--JSON payload (type-specific data)
reply_toINTEGERFK→session_messages-Parent message for threading
created_atTEXTNNdatetime('now')Creation timestamp
delivered_atTEXT--Delivery timestamp
read_atTEXT--Read timestamp
expires_atTEXTNN-Message expiration

Table: file_locks

Purpose: Advisory file locking across sessions

Related Tables:

  • session_registry (FK: session_id)

Fields

FieldTypeConstraintsDefaultDescription
file_pathTEXTPK-Locked file path
session_idTEXTNN, FK→session_registry-Lock holder session
lock_typeTEXT-'advisory'Lock type
locked_atTEXTNNdatetime('now')Lock acquisition time

Table: task_claims

Purpose: Exclusive task ownership across sessions

Related Tables:

  • session_registry (FK: session_id)

Fields

FieldTypeConstraintsDefaultDescription
task_idTEXTPK-Task ID (e.g., H.13.7)
session_idTEXTNN, FK→session_registry-Claiming session
claimed_atTEXTNNdatetime('now')Claim timestamp
statusTEXT-'claimed'Claim status

Table: message_dedup

Purpose: Message deduplication with coalescing window

Fields

FieldTypeConstraintsDefaultDescription
sender_idTEXTPK-Sender session ID
channelTEXTPK-Message channel
message_typeTEXTPK-Message type
task_idTEXTPK''Task context
last_message_idINTEGERNN-Last message in window
last_sent_atTEXTNN-Last send timestamp
coalesce_window_secondsINTEGERNN30Dedup window in seconds

Table: vacuum_reports

Purpose: Orphan detection and cleanup tracking

Fields

FieldTypeConstraintsDefaultDescription
idINTEGERPK, AUTO-Report ID
sweep_typeTEXTNN-Sweep type: scheduled, manual
created_atTEXTNN-Report creation time
task_idTEXTNN-Related task ID
orphan_typeTEXTNN-Type: stale_session, orphan_lock, orphan_claim
last_activityTEXT--Last known activity
last_session_idTEXT--Session that owned the orphan
trackTEXT--Associated track
descriptionTEXT--Human-readable description
evidenceTEXT--Evidence/reasoning
resolutionTEXT--Resolution action taken
resolved_atTEXT--Resolution timestamp
resolved_byTEXT--Resolver identifier

Cloud Sync Mapping

See ADR-053 for cloud sync details.

Local TableCloud TableDirectionFrequency
decisionsDecision↑↓ BidirectionalOn change
skill_learningsSkillLearning↑ UploadSession end
task_trackingTaskTracking↑↓ BidirectionalOn change
messagesMessage↑ UploadBatch (daily)

Purpose Matrix

I need to...TableDatabase
Find a componentcomponentsplatform.db
Search message historymessages_ftssessions.db
Track a decisiondecisionsorg.db
Store skill learningskill_learningsorg.db
Record tool usagetool_analyticssessions.db
Associate activityactivity_associationssessions.db
Query knowledge graphkg_nodes, kg_edgesorg.db
Track project filescontent_hashesprojects.db
Check active LLM sessionssession_registrymessaging.db
Lock a file across sessionsfile_locksmessaging.db
Claim a task exclusivelytask_claimsmessaging.db
Send inter-session messagesession_messagesmessaging.db

Generated: 2026-02-04T23:38:36Z Script: scripts/generate-data-dictionary.py v1.0.0 Task: J.24.1.3