@@ -40,7 +40,7 @@ struct fossil_bluecrab_myshell_t {
4040 char * current_branch ; // Checked out branch name
4141
4242 // In-memory tables/indexes
43- void * record_index ; // Key -> record mapping (hash table or trie)
43+ void * record_index ; // Key -> record mapping (hash table/ trie)
4444 void * commit_index ; // Commit hash -> commit metadata
4545 void * branch_index ; // Branch name -> head hash
4646
@@ -53,6 +53,10 @@ struct fossil_bluecrab_myshell_t {
5353 time_t opened_at ;
5454 uint64_t txn_counter ;
5555 uint64_t op_counter ;
56+
57+ // Streaming & hooks
58+ void * open_streams ; // Active stream handles
59+ void * event_callbacks ; // List of registered event callbacks
5660};
5761
5862
@@ -69,6 +73,7 @@ struct fossil_bluecrab_myshell_stmt_t {
6973 // Execution state
7074 void * cursor ; // Iterator over matching records
7175 void * last_row ; // Pointer to last returned row
76+ bool eof ; // End-of-results indicator
7277};
7378
7479
@@ -84,6 +89,9 @@ struct fossil_bluecrab_myshell_txn_t {
8489
8590 uint64_t parent_commit ; // Base commit hash
8691 uint64_t working_hash ; // Hash of working tree snapshot
92+
93+ // Savepoints
94+ void * savepoints ; // Stack of savepoint states
8795};
8896
8997
@@ -99,6 +107,9 @@ struct fossil_bluecrab_myshell_record_t {
99107 size_t fson_size ; // Cached serialized size
100108 uint64_t version ; // Monotonic record version
101109 bool tombstone ; // Deleted marker
110+
111+ // Indexing hooks
112+ void * secondary_indexes ; // Map of index_name -> value
102113};
103114
104115
@@ -120,6 +131,8 @@ struct fossil_bluecrab_myshell_commit_t {
120131
121132 // Linking
122133 fossil_bluecrab_myshell_commit_t * parent ; // Pointer to parent commit (in-memory cache)
134+ fossil_bluecrab_myshell_commit_t * * children ; // Children commits (branch tips/merges)
135+ size_t child_count ;
123136};
124137
125138/* -------------------------------------------------------------------------
0 commit comments