magellan 0.1.0

A dumb, deterministic codebase mapping tool for Rust projects
Documentation
SQLite format 3@  .E.v��-��
\
'
�
*	q	$�Y��l�,�l5-�indexidx_diagnostics_toolcode_diagnosticsCREATE INDEX idx_diagnostics_tool ON code_diagnostics(tool)q5-�
indexidx_diagnostics_filecode_diagnosticsCREATE INDEX idx_diagnostics_file ON code_diagnostics(file_path)�o--�tablecode_diagnosticscode_diagnosticsCREATE TABLE code_diagnostics (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    file_path TEXT NOT NULL,
    line_start INTEGER NOT NULL,
    severity TEXT NOT NULL,           -- e.g. "warning", "error", "note"
    diagnostic_type TEXT NOT NULL,    -- e.g. "clippy::dead_code"
    message TEXT NOT NULL,            -- human-readable summary
    tool TEXT NOT NULL,               -- e.g. "clippy"
    created_at TEXT NOT NULL DEFAULT CURRENT_TIMESTAMP
)�J�stabletaskstasksCREATE TABLE tasks (
  id           INTEGER PRIMARY KEY AUTOINCREMENT,
  goal         TEXT NOT NULL,
  description  TEXT DEFAULT '',
  status       TEXT NOT NULL DEFAULT 'open',  -- open|running|blocked|done|cancelled
  priority     INTEGER NOT NULL DEFAULT 3,    -- 1=highest..5=lowest
  parent_id    INTEGER REFERENCES tasks(id) ON DELETE CASCADE,
  created_at   INTEGER NOT NULL,              -- epoch seconds
  updated_at   INTEGER NOT NULL
, task_id TEXT, prd_title TEXT, complexity TEXT, estimated_hours REAL, acceptance_criteria TEXT, files_to_modify TEXT)y=!�!indexidx_tool_calls_tool_timetool_callsCREATE INDEX idx_tool_calls_tool_time ON tool_calls(tool_name, created_at)�S!!�qtabletool_callstool_callsCREATE TABLE tool_calls (
  id           INTEGER PRIMARY KEY AUTOINCREMENT,
  request_id   TEXT,                    -- optional idempotency
  tool_name    TEXT NOT NULL,
  args_json    TEXT NOT NULL,
  result_json  TEXT,
  status       TEXT NOT NULL,           -- ok|error
  created_at   INTEGER NOT NULL
)`
3!{indexidx_embeddings_taskembeddingsCREATE INDEX idx_embeddings_task ON embeddings(task_id)�!!�ktableembeddingsembeddings
CREATE TABLE embeddings (
  id         INTEGER PRIMARY KEY,       -- equals steps.id or synthetic
  task_id    INTEGER,
  kind       TEXT NOT NULL,             -- step|note|doc
  dim        INTEGER NOT NULL,
  created_at INTEGER NOT NULL
)K%gindexidx_memory_kmemoryCREATE UNIQUE INDEX idx_memory_k ON memory(k)�6
�GtablememorymemoryCREATE TABLE memory (
  id         INTEGER PRIMARY KEY AUTOINCREMENT,
  k          TEXT NOT NULL,
  v          TEXT NOT NULL,
  ts         INTEGER NOT NULL
){	?�-indexidx_steps_task_state_timesteps
CREATE INDEX idx_steps_task_state_time ON steps(task_id, state, created_at DESC)�Y�tablestepssteps	CREATE TABLE steps (
  id            INTEGER PRIMARY KEY AUTOINCREMENT,
  task_id       INTEGER REFERENCES tasks(id) ON DELETE SET NULL,
  state         TEXT NOT NULL,          -- Think|Decide|Act|Observe|Reflect
  content       TEXT NOT NULL,
  meta_json     TEXT NOT NULL DEFAULT '{}',
  created_at    INTEGER NOT NULL
)�!!!�
tabletask_linkstask_linksCREATE TABLE task_links (
  src_id    INTEGER NOT NULL REFERENCES tasks(id) ON DELETE CASCADE,
  dst_id    INTEGER NOT NULL REFERENCES tasks(id) ON DELETE CASCADE,
  kind      TEXT NOT NULL,   -- depends_on|relates_to
  PRIMARY KEY (src_id, dst_id, kind)
)3G!indexsqlite_autoindex_task_links_1task_linksR-oindexidx_tasks_parenttasksCREATE INDEX idx_tasks_parent ON tasks(parent_id)h7�indexidx_tasks_status_priotasksCREATE INDEX idx_tasks_status_prio ON tasks(status, priority, id)P++Ytablesqlite_sequencesqlite_sequenceCREATE TABLE sqlite_sequence(name,seq)X3uindexidx_tasks_prd_titletasksCREATE INDEX idx_tasks_prd_title ON tasks(prd_title)R/mindexidx_tasks_task_idtasksCREATE INDEX idx_tasks_task_id ON tasks(task_id)�c;;�]table_syncore_schema_version_syncore_schema_versionCREATE TABLE _syncore_schema_version (
            version INTEGER PRIMARY KEY,
            applied_at INTEGER NOT NULL,
            description TEXT NOT NULL*

�p �d
�
w�iiKJStandardize timestamp fields to INTEGER type: fix code_diagnostics and code_macro_expansions created_at fieldst�ciKJAdd temporal fields to code_entities: created_at, last_modified_at, change_count, author_count (idempotent)W�)iKJAllow NULL values for line_start and line_end in code_entities (File entities)m�UiKJAdd extended memory fields (namespace, summary, importance, created_at, last_accessed, access_count)K�iKJAdd code graph tables (code_entities, code_edges, code_embeddings)N�iKJAdd code_diagnostics table for static analysis results (Clippy, etc.)L�iKJAdd IntelliTask fields (task_id, complexity, estimated_hours, etc.)@}iKJInitial core schema (tasks, memories, steps, embeddings)

���5-code_diagnostics'code_entities


















��{�
�
d	��jW��$�v,�E�/--�tablecode_diagnosticscode_diagnosticsCREATE TABLE code_diagnostics (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    file_path TEXT NOT NULL,
    line_start INTEGER NOT NULL,
    severi�m!!�%tablecode_edgescode_edges CREATE TABLE code_edges (
    src_entity_id INTEGER NOT NULL REFERENCES code_entities(id) ON DELETE CASCADE,
    dst_entity_id INTEGER NOT NULL REFERENCES code_entities(id) ON DELETE CASCADE,
    edge_type TEXT NOT NULL,  -- calls|imports|inherits|references|uses|contains
    PRIMARY KEY (src_entity_id, dst_entity_id, edge_type)
)X3uindexidx_tasks_prd_titletasksCREATE INDEX idx_tasks_prd_title ON tasks(prd_title)R/mindexidx_tasks_task_idtasksCREATE INDEX idx_tasks_task_id ON tasks(task_id)y=!�!indexidx_tool_calls_tool_timetool_callsCREATE INDEX idx_tool_calls_tool_time ON tool_calls(tool_name, created_at)�S!!�qtabletool_callstool_callsCREATE TABLE tool_calls (
  id           INTEGER PRIMARY KEY AUTOINCREMENT,
  request_id   TEXT,                    -- optional idempotency
  tool_name    TEXT NOT NULL,
  args_json    TEXT NOT NULL,
  result_json  TEXT,
  status       TEXT NOT NULL,           -- ok|error
  created_at   INTEGER NOT NULL
)`
3!{indexidx_embeddings_taskembeddingsCREATE INDEX idx_embeddings_task ON embeddings(task_id)�!!�ktableembeddingsembeddings
CREATE TABLE embeddings (
  id         INTEGER PRIMARY KEY,       -- equals steps.id or synthetic
  task_id    INTEGER,
  kind       TEXT NOT NULL,             -- step|note|doc
  dim        INTEGER NOT NULL,
  created_at INTEGER NOT NULL
)K%gindexidx_memory_kmemoryCREATE UNIQUE INDEX idx_memory_k ON memory(k)�Q
�}tablememorymemoryCREATE TABLE memory (
  id         INTEGER PRIMARY KEY AUTOINCREMENT,
  k          TEXT NOT NULL,
  v          TEXT NOT NULL,
  ts         INTEGER NOT NULL
, namespace TEXT NOT NULL DEFAULT 'default', summary TEXT, importance REAL NOT NULL DEFAULT 0.5, created_at INTEGER NOT NULL DEFAULT (strftime('%s', 'now')), last_accessed INTEGER NOT NULL DEFAULT (strftime('%s', 'now')), access_count INTEGER NOT NULL DEFAULT 0, embedding_id INTEGER){	?�-indexidx_steps_task_state_timesteps
CREATE INDEX idx_steps_task_state_time ON steps(task_id, state, created_at DESC)�Y�tablestepssteps	CREATE TABLE steps (
  id            INTEGER PRIMARY KEY AUTOINCREMENT,
  task_id       INTEGER REFERENCES tasks(id) ON DELETE SET NULL,
  state         TEXT NOT NULL,          -- Think|Decide|Act|Observe|Reflect
  content       TEXT NOT NULL,
  meta_json     TEXT NOT NULL DEFAULT '{}',
  created_at    INTEGER NOT NULL
)3G!indexsqlite_autoindex_task_links_1task_links�!!!�
tabletask_linkstask_linksCREATE TABLE task_links (
  src_id    INTEGER NOT NULL REFERENCES tasks(id) ON DELETE CASCADE,
  dst_id    INTEGER NOT NULL REFERENCES tasks(id) ON DELETE CASCADE,
  kind      TEXT NOT NULL,   -- depends_on|relates_to
  PRIMARY KEY (src_id, dst_id, kind)
)R-oindexidx_tasks_parenttasksCREATE INDEX idx_tasks_parent ON tasks(parent_id)h7�indexidx_tasks_status_priotasksCREATE INDEX idx_tasks_status_prio ON tasks(status, priority, id)P++Ytablesqlite_sequencesqlite_sequenceCREATE TABLE sqlite_sequence(name,seq)�J�stabletaskstasksCREATE TABLE tasks (
  id           INTEGER PRIMARY KEY AUTOINCREMENT,
  goal         TEXT NOT NULL,
  description  TEXT DEFAULT '',
  status       TEXT NOT NULL DEFAULT 'open',  -- open|running|blocked|done|cancelled
  priority     INTEGER NOT NULL DEFAULT 3,    -- 1=highest..5=lowest
  parent_id    INTEGER REFERENCES tasks(id) ON DELETE CASCADE,
  created_at   INTEGER NOT NULL,              -- epoch seconds
  updated_at   INTEGER NOT NULL
, task_id TEXT, prd_title TEXT, complexity TEXT, estimated_hours REAL, acceptance_criteria TEXT, files_to_modify TEXT)�c;;�]table_syncore_schema_version_syncore_schema_versionCREATE TABLE _syncore_schema_version (
            version INTEGER PRIMARY KEY,
            applied_at INTEGER NOT NULL,
            description TEXT NOT NULL
        )

l�6�l�o�
�
	T	�Q��f�[���4{3?-�indexidx_file_index_state_pathfile_index_state+CREATE INDEX idx_file_index_state_path ON file_index_state(file_path)?2S-indexsqlite_autoindex_file_index_state_1file_index_state*�1--�Otablefile_index_statefile_index_stateCREATE TABLE file_index_state (
                    id INTEGER PRIMARY KEY AUTOINCREMENT,
                    file_path TEXT NOT NULL UNIQUE,
                    sha256 TEXT NOT NULL,
                    mtime INTEGER NOT NULL,
                    last_indexed_at INTEGER NOT NULL,
                    status TEXT NOT NULL DEFAULT 'ok'
                )x0=-�indexidx_diagnostics_severitycode_diagnosticsCREATE INDEX idx_diagnostics_severity ON code_diagnostics(severity)w/5-�indexidx_diagnostics_typecode_diagnosticsCREATE INDEX idx_diagnostics_type ON code_diagnostics(diagnostic_type)l.5-�indexidx_diagnostics_toolcode_diagnosticsCREATE INDEX idx_diagnostics_tool ON code_diagnostics(tool)q-5-�
indexidx_diagnostics_f�m!!�%tablecode_edgescode_edges CREATE TABLE code_edges (
    src_entity_id INTEGER NOT NULL REFERENCES code_entities(id) ON DELETE CASCADE,
    dst_entity_id INTEGER NOT NULL REFERENCES code_entities(id) ON DELETE CASCADE,
    edge_type TEXT NOT NULL,  -- calls|imports|inherits|references|uses|contains
    PRIMARY KEY (src_entity_id, dst_entity_id, edge_type)
)X3uindexidx_tasks_prd_titletasksCREATE INDEX idx_tasks_prd_title ON tasks(prd_title)R/mindexidx_tasks_task_idtasksCREATE INDEX idx_tasks_task_id ON tasks(task_id)y=!�!indexidx_tool_calls_tool_timetool_callsCREATE INDEX idx_tool_calls_tool_time ON tool_calls(tool_name, created_at)|*E'�indexidx_code_entities_created_atcode_entitiesCREATE INDEX idx_code_entities_created_at ON code_entities(created_at)c)/'indexidx_entities_langcode_entitiesCREATE INDEX idx_entities_lang ON code_entities(language)g(/'�indexidx_entities_typecode_entitiesCREATE INDEX idx_entities_type ON code_entities(entity_type)e'/'�indexidx_entities_filecode_entitiesCREATE INDEX idx_entities_file ON code_entities(file_path)_&/'windexidx_entities_namecode_entitiesCREATE INDEX idx_entities_name ON code_entities(name)9%M'indexsqlite_autoindex_code_entities_1code_entities(�0$''�tablecode_entitiescode_entities'CREATE TABLE "code_entities" (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    file_path TEXT NOT NULL,
    entity_type TEXT NOT NULL,  -- function|class|method|import|struct|enum|trait|file
    name TEXT NOT NULL,
    signature TEXT,              -- Full signature/declaration
    line_start INTEGER,         -- Allow NULL for File entities
    line_end INTEGER,           -- Allow NULL for File entities
    docstring TEXT,              -- Documentation/comments
    language TEXT NOT NULL,      -- rust|javascript|python|json|toml|bash
    indexed_at INTEGER NOT NULL, -- Epoch seconds
    body_snippet TEXT, created_at INTEGER NOT NULL DEFAULT 0, last_modified_at INTEGER NOT NULL DEFAULT 0, change_count INTEGER NOT NULL DEFAULT 0, author_count INTEGER NOT NULL DEFAULT 0,           -- APEX v1.7: First N lines of function body for semantic search
    UNIQUE(file_path, entity_type, name, line_start)
){#A+�indexidx_code_embeddings_vectorcode_embeddings&CREATE INDEX idx_code_embeddings_vector ON code_embeddings(vector_id)�2"++�tablecode_embeddingscode_embeddings%CREATE TABLE code_embeddings (
    entity_id INTEGER PRIMARY KEY REFERENCES code_entities(id) ON DELETE CASCADE,
    vector_id INTEGER NOT NULL,  -- References embeddings table
    model_version TEXT NOT NULL, -- all-MiniLM-L6-v2
    created_at INTEGER NOT NULL
)X!)!uindexidx_edges_typecode_edges$CREATE INDEX idx_edges_type ON code_edges(edge_type)Z '!{indexidx_edges_dstcode_edges#CREATE INDEX idx_edges_dst ON code_edges(dst_entity_id)Z'!{indexidx_edges_srccode_edges"CREATE INDEX idx_edges_src ON code_edges(src_entity_id)3G!indexsqlite_autoindex_code_edges_1code_edges!



















*o
�
H�a�
V
	��*�5?7�!indexidx_macro_expansions_filecode_macro_expansions.CREATE INDEX idx_macro_expansions_file ON code_macro_expansions(file_path)�c477�etablecode_macro_expansionscode_macro_expansions,CREATE TABLE code_macro_expansions (
                    id INTEGER PRIMARY KEY AUTOINCREMENT,
                    file_path TEXT NOT NULL,
                    macro_name TEXT NOT NULL,
                    span_start INTEGER NOT NULL,
                    span_end INTEGER NOT NULL,
                    original_code TEXT,
                    expanded_code TEXT,
                    expansion_type TEXT NOT NULL
                ){3?-�indexidx_file_index_state_pathfile_index_state+CREATE INDEX idx_file_index_state_path ON file_index_state(file_path)?2S-indexsqlite_autoindex_file_index_state_1file_index_state*�1--�Otablefile_index_statefile_index_stateCREATE TABLE file_index_state (
                    id INTEGER PRIMARY KEY AUTOINCREMENT,
                    file_path TEXT NOT NULL UNIQUE,
                    sha256 TEXT NOT NULL,
                    mtime INTEGER NOT NULL,
                    last_indexed_at INTEGER NOT NULL,
                    status TEXT NOT NULL DEFAULT 'ok'
                )x0=-�indexidx_diagnostics_severitycode_diagnosticsCREATE INDEX idx_diagnostics_severity ON code_diagnostics(severity)w/5-�indexidx_diagnostics_typecode_diagnosticsCREATE INDEX idx_diagnostics_type ON code_diagnostics(diagnostic_type)l.5-�indexidx_diagnostics_toolcode_diagnosticsCREATE INDEX idx_diagnostics_tool ON code_diagnostics(tool)q-5-�
indexidx_diagnostics_filecode_diagnosticsCREATE INDEX idx_diagnostics_file ON code_diagnostics(file_path)�1,--�tablecode_diagnosticscode_diagnostics)CREATE TABLE "code_diagnostics" (
            id INTEGER PRIMARY KEY AUTOINCREMENT,
            file_path TEXT NOT NULL,
            line_start INTEGER NOT NULL,
            severity TEXT NOT NULL,
            diagnostic_type TEXT NOT NULL,
            message TEXT NOT NULL,
            tool TEXT NOT NULL,
            created_at INTEGER NOT NULL DEFAULT (strftime('%s','now'))
        )�+Q'�1indexidx_code_entities_last_modified_atcode_entitiesCREATE INDEX idx_code_entities_last_modified_at ON code_entities(last_modified_at)