Skip to content
Merged
Show file tree
Hide file tree
Changes from 106 commits
Commits
Show all changes
185 commits
Select commit Hold shift + click to select a range
da565a5
wip
xav-db Oct 7, 2025
c706e00
wip initial rerankers
xav-db Oct 7, 2025
e14a928
finishing reranker implementaiton. just hql to go now
xav-db Oct 8, 2025
a41b4e8
fix (docs + hql + cli): updating readme, fixes for HQL, and docker fi…
xav-db Oct 8, 2025
70ef081
wip for ql
xav-db Oct 8, 2025
7ce62a5
fix (core+cli): updating version (#657)
xav-db Oct 8, 2025
8f0672d
clippy fixing
xav-db Oct 10, 2025
791967a
fixing issue with imports
xav-db Oct 10, 2025
bc75958
trying to fix imports
xav-db Oct 10, 2025
3c85674
fixing hql missing config
xav-db Oct 10, 2025
a1083e0
fixing
xav-db Oct 11, 2025
ca1d88a
Added Manta Graph button to README
makosst Oct 12, 2025
1a2c030
Added Manta Graph button to README (#660)
xav-db Oct 13, 2025
5dc4a57
testing phase 1. internals and storage.
xav-db Oct 13, 2025
9f0717a
phase 2.1 implemented parser
xav-db Oct 13, 2025
eb3e4d3
phase 2.2, 2.3 analyzer and generator
xav-db Oct 13, 2025
45bef6a
phase 3
xav-db Oct 14, 2025
edef1bd
refactoring tests
xav-db Oct 14, 2025
5828175
removing todos and basic refactor
xav-db Oct 14, 2025
7f8e224
cli tests
xav-db Oct 14, 2025
8abd3e5
clone removal
xav-db Oct 15, 2025
256d498
adding bumpalo
xav-db Oct 15, 2025
391f159
making everything work properly with lifetimes and bumpalo
xav-db Oct 15, 2025
6e974b2
changing how it works with storage core
xav-db Oct 15, 2025
982c0bc
completed integration with bump alo
xav-db Oct 15, 2025
d2b726c
implementing native endianness and migration function
xav-db Oct 15, 2025
6cbf657
adding one hop
xav-db Oct 15, 2025
db5dbd5
fixing
xav-db Oct 15, 2025
82bbe94
adding
xav-db Oct 15, 2025
7c11b79
adding sindex
xav-db Oct 15, 2025
2a6f23a
adding prints
xav-db Oct 15, 2025
d52e1f3
adding no input one hop
xav-db Oct 15, 2025
a95f2fc
fixing
xav-db Oct 15, 2025
68621d9
adding more prints
xav-db Oct 15, 2025
2ccf005
trying more
xav-db Oct 15, 2025
c087cb9
updating
xav-db Oct 15, 2025
63d16c5
removing category
xav-db Oct 15, 2025
55d4ef0
removing prints
xav-db Oct 15, 2025
f0d71af
not fetching vector data from lmdb
xav-db Oct 16, 2025
9947991
adding empty vector variant to check properties
xav-db Oct 16, 2025
a10d6ff
removing return vals
xav-db Oct 16, 2025
2847f97
tidy
xav-db Oct 16, 2025
0bdaba3
tidy
xav-db Oct 16, 2025
2523a90
no core pinning test
xav-db Oct 16, 2025
f6c732c
testing
xav-db Oct 16, 2025
63eb232
tokio core pinning
xav-db Oct 16, 2025
9e51bee
test without flume select
xav-db Oct 16, 2025
5ded493
test lower flume receiver contention
xav-db Oct 16, 2025
aeaeabb
try manual spin before selector
xav-db Oct 16, 2025
7d3102c
revert manual poll
xav-db Oct 16, 2025
827853e
adding
xav-db Oct 16, 2025
4bff499
changing
xav-db Oct 16, 2025
55c59da
back to 5 workers per core
matthewsanetra Oct 16, 2025
1611639
testing without tracing
xav-db Oct 16, 2025
e7f5a39
remove select but still keep fairness
matthewsanetra Oct 16, 2025
298fe22
docs: improve CONTRIBUTORS.md with setup and review guidelines
am-miracle Oct 16, 2025
24eeac7
docs: improve CONTRIBUTORS.md with setup and review guidelines
am-miracle Oct 16, 2025
4b79860
experimental bump vec map
matthewsanetra Oct 17, 2025
355183e
working on implementing new arena based approach
xav-db Oct 17, 2025
57d6c74
continuing with arena implementation
xav-db Oct 18, 2025
5e7ccef
more arena implementations
xav-db Oct 18, 2025
de2394d
more updates for arena impl
xav-db Oct 18, 2025
b08b193
implement arena for utils
xav-db Oct 18, 2025
146c830
immutable prop map for vec without data
xav-db Oct 18, 2025
4f97049
adding more
xav-db Oct 20, 2025
4058784
immutable property map
matthewsanetra Oct 20, 2025
4c2f39e
Merge branch 'arena-implementation' of github.com-mattsan:HelixDB/hel…
matthewsanetra Oct 20, 2025
4dac278
changing to remove iterator implementation
xav-db Oct 20, 2025
48990d2
reuse same length field for all slices
matthewsanetra Oct 20, 2025
75ab565
trying to get hnsw working
xav-db Oct 20, 2025
bbe28d1
trying to complete more arena stuff
xav-db Oct 20, 2025
72c6f8b
make node, edge and vector copy
matthewsanetra Oct 21, 2025
a692a40
make map copy
matthewsanetra Oct 21, 2025
ff83045
Merge branch 'arena-implementation' of https://github.com/HelixDB/hel…
xav-db Oct 21, 2025
ac252dc
use arena
matthewsanetra Oct 21, 2025
a969b7f
merge
matthewsanetra Oct 21, 2025
0dcd8d1
fixing mcps
xav-db Oct 22, 2025
4317d7c
pushing more
xav-db Oct 22, 2025
f1ca141
fixing up vector implementation
xav-db Oct 22, 2025
1f65ff9
removing macro
xav-db Oct 22, 2025
18f96ca
still implementing update.rs
matthewsanetra Oct 22, 2025
b1ad6f7
fixing final bits with vectors and serde
xav-db Oct 22, 2025
d8460b6
Merge branch 'arena-implementation' of https://github.com/HelixDB/hel…
xav-db Oct 22, 2025
a4563e9
removing unused imports
xav-db Oct 22, 2025
eacfb41
updating with completed serialisation
xav-db Oct 22, 2025
1fc8b99
clearing up warnigns
xav-db Oct 22, 2025
11a2935
implement update node
matthewsanetra Oct 22, 2025
1e29141
implement update for edges
matthewsanetra Oct 22, 2025
ec73705
fix soundness when len == 0
matthewsanetra Oct 22, 2025
48c7cfc
remove old comments
matthewsanetra Oct 22, 2025
febac14
tests
xav-db Oct 22, 2025
b94db89
improve workerpool error message
matthewsanetra Oct 22, 2025
a27e919
Update worker_pool_tests.rs
matthewsanetra Oct 22, 2025
3be583a
fixing tests
xav-db Oct 22, 2025
82775d9
fixing
xav-db Oct 22, 2025
2651654
pushing changes to edge
xav-db Oct 22, 2025
61948c0
replace match with map_or_else
matthewsanetra Oct 22, 2025
90f0705
fixing tests
xav-db Oct 22, 2025
677e3e1
fix uuid test
matthewsanetra Oct 22, 2025
ab82c9a
correctly use options for backwards compatibility
matthewsanetra Oct 22, 2025
ac43b33
everything works
xav-db Oct 22, 2025
5a3e73a
Merge branch 'arena-implementation' of https://github.com/HelixDB/hel…
xav-db Oct 22, 2025
9a15d84
compiler implementation working 90%
xav-db Oct 23, 2025
15040f8
all tests pass
xav-db Oct 24, 2025
8c9a758
fixing value
xav-db Oct 24, 2025
a55280d
fixing n from index
xav-db Oct 26, 2025
cac4ee9
pushing
xav-db Oct 26, 2025
54e61a7
fixing query language for return types.
xav-db Oct 27, 2025
1a40376
fixing everything in hql
xav-db Oct 28, 2025
7705641
Merge branch 'dev' of https://github.com/HelixDB/helix-db into arena-…
xav-db Oct 28, 2025
647ad2a
removing queries
xav-db Oct 28, 2025
7d87da3
sorting issues with serialization
xav-db Oct 28, 2025
b146b83
fixing clippy issues
xav-db Oct 29, 2025
5269aa0
Integrate PR #667: Add .id() method to ID struct for borrowed ID support
xav-db Oct 29, 2025
5f65b9c
feat(helixc): integrate PR #666 - fix IS_IN validation and reserved p…
xav-db Oct 29, 2025
66271c0
fix(hql): handle TraversalValue::Empty in DROP operations
xav-db Oct 29, 2025
4def294
fix(hql): handle TraversalValue::Empty in DROP operations (#673)
xav-db Oct 29, 2025
efa3e17
Integrate PR #667: Add .id() method for borrowed ID support (#675)
xav-db Oct 29, 2025
7edfafa
Integrate PR #666: Fix IS_IN validation and reserved property handlin…
xav-db Oct 29, 2025
5476b26
fixint is in
xav-db Oct 29, 2025
e5b2504
removing queries
xav-db Oct 29, 2025
667cfed
feat (core + hql): adding mmr and rrf rerankers (#654)
xav-db Oct 29, 2025
3d8836c
fixing reranking
xav-db Oct 29, 2025
175dfed
fixing reranker tests
xav-db Oct 30, 2025
1b8c2cd
mcp fixes
xav-db Oct 30, 2025
8d5ab52
updating to correct format
xav-db Oct 30, 2025
e1be615
fixing
xav-db Oct 30, 2025
d80ba54
issue was with client nesting
xav-db Oct 30, 2025
59cdd58
fixing names for vectors
xav-db Oct 30, 2025
082fe6e
mcp fixes
xav-db Nov 1, 2025
ddd8f29
removing unused code
xav-db Nov 1, 2025
35efbbd
clippy fix
xav-db Nov 1, 2025
7daa00e
fix (mcp): fixing issues with concurrent connection access + brute fo…
xav-db Nov 1, 2025
9b462e3
docs: improve CONTRIBUTORS.md with setup and review guidelines (#664)
xav-db Nov 1, 2025
850d612
fixing bug [Bug]: `CONTAINS` operator causes build error #668
xav-db Nov 1, 2025
1aa8262
adding contributors.md
xav-db Nov 1, 2025
0f5affd
vector storage migration on start
matthewsanetra Nov 1, 2025
7d193d0
fixing issue with id being out of bounds for json integer range (2^53…
xav-db Nov 2, 2025
2b38f3d
removing queries
xav-db Nov 2, 2025
6fa9668
adding migration of properties
xav-db Nov 2, 2025
134649e
fixing issue with reference being made to newly created reranker. mad…
xav-db Nov 2, 2025
1870937
adding comments and cleaning unused code
xav-db Nov 2, 2025
04d19e7
removing redundant count struct and methods
xav-db Nov 2, 2025
ecbbb50
updating node and edge comments
xav-db Nov 2, 2025
024b244
clearing up vector comments and abstracting raw vector cast logic
xav-db Nov 2, 2025
a15cd52
fixing issue with node serialization for id
xav-db Nov 2, 2025
4e60ea9
checking first
xav-db Nov 2, 2025
29b03d5
removing queries L
xav-db Nov 2, 2025
3801a0a
Merge branch 'arena-implementation' into vector-storage-migration
matthewsanetra Nov 2, 2025
962aca1
Migrate vectors to new format on boot (#679)
matthewsanetra Nov 2, 2025
095a8fd
fix potential memory overuse
matthewsanetra Nov 2, 2025
7bdeebd
finishing tests
xav-db Nov 3, 2025
bd9d1f2
Merge branch 'arena-implementation' of https://github.com/HelixDB/hel…
xav-db Nov 3, 2025
9e40914
fixing issue with not generating property access
xav-db Nov 3, 2025
537ed25
should be working
xav-db Nov 3, 2025
bfc65f8
don't migrate entry_point in vectors_db
matthewsanetra Nov 4, 2025
407542a
removing conversion to bytes
xav-db Nov 4, 2025
6eadca2
vector level repair + orphan check
matthewsanetra Nov 4, 2025
f6639ea
Merge branch 'arena-implementation' of github.com-mattsan:HelixDB/hel…
matthewsanetra Nov 4, 2025
5b12028
clippy fixes
xav-db Nov 4, 2025
2c8c143
clarify that its checking vector edges
matthewsanetra Nov 4, 2025
c96d419
remove orphans
matthewsanetra Nov 4, 2025
f0312b3
adding more stress tests
xav-db Nov 4, 2025
42645f5
Merge branch 'arena-implementation' of https://github.com/HelixDB/hel…
xav-db Nov 4, 2025
19cb3a4
doing full tests
xav-db Nov 6, 2025
0b173e9
believe double free is fixed
xav-db Nov 6, 2025
d7577e1
removing concurrency
xav-db Nov 6, 2025
cc2817d
fixing tests
xav-db Nov 6, 2025
c86f526
changing test to skip failing test due to lmdb issue
xav-db Nov 6, 2025
f47cc96
fixing testing
xav-db Nov 6, 2025
f51ea9c
fixing issue with missing object fields causing panics
xav-db Nov 6, 2025
04ee1ed
fixing issue with uneven workers per core
xav-db Nov 6, 2025
82a310e
fixing tests
xav-db Nov 6, 2025
5ed5bef
fixing tests
xav-db Nov 6, 2025
0a0cb74
Merge branch 'arena-implementation' of https://github.com/HelixDB/hel…
xav-db Nov 6, 2025
6a4a0f0
fixing tests FUCK
xav-db Nov 6, 2025
7437cf0
fixing issue with cores being uneven
xav-db Nov 6, 2025
40fd443
removing all debug prints
xav-db Nov 6, 2025
d94d4e4
changing collect_to_obj to return result
xav-db Nov 6, 2025
760fe36
fixing tests
xav-db Nov 6, 2025
9934100
fixing clippy
xav-db Nov 6, 2025
d7741f9
fixing generator
xav-db Nov 6, 2025
66f123b
improving in and out
xav-db Nov 6, 2025
c510fda
quick clean up
xav-db Nov 7, 2025
8687d75
fixing clippy
xav-db Nov 7, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
141 changes: 49 additions & 92 deletions Cargo.lock

Large diffs are not rendered by default.

8 changes: 8 additions & 0 deletions helix-cli/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,14 @@ dotenvy = "0.15.7"
tokio-tungstenite = "0.27.0"
futures-util = "0.3.31"
regex = "1.11.2"

[dev-dependencies]
tempfile = "3.14.0"

[lib]
name = "helix_cli"
path = "src/lib.rs"

[[bin]]
name = "helix"
path = "src/main.rs"
Expand Down
100 changes: 100 additions & 0 deletions helix-cli/src/lib.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
// Library interface for helix-cli to enable testing
use clap::Subcommand;

pub mod commands;
pub mod config;
pub mod docker;
pub mod errors;
pub mod metrics_sender;
pub mod project;
pub mod update;
pub mod utils;

#[derive(Subcommand)]
pub enum AuthAction {
/// Login to Helix cloud
Login,
/// Logout from Helix cloud
Logout,
/// Create a new API key
CreateKey {
/// Cluster ID
cluster: String,
},
}

#[derive(Subcommand)]
pub enum MetricsAction {
/// Enable metrics collection
Full,
/// Disable metrics collection
Basic,
/// Disable metrics collection
Off,
/// Show metrics status
Status,
}

#[derive(Subcommand)]
pub enum CloudDeploymentTypeCommand {
/// Initialize Helix Cloud deployment
#[clap(name = "cloud")]
Helix {
/// Region for Helix cloud instance (default: us-east-1)
#[clap(long, default_value = "us-east-1")]
region: Option<String>,

/// Instance name
#[clap(short, long)]
name: Option<String>,
},
/// Initialize ECR deployment
Ecr {
/// Instance name
#[clap(short, long)]
name: Option<String>,
},
/// Initialize Fly.io deployment
Fly {
/// Authentication type
#[clap(long, default_value = "cli")]
auth: String,

/// volume size
#[clap(long, default_value = "20")]
volume_size: u16,

/// vm size
#[clap(long, default_value = "shared-cpu-4x")]
vm_size: String,

/// privacy
#[clap(long, default_value = "false")]
private: bool,

/// Instance name
#[clap(short, long)]
name: Option<String>,
},

/// Initialize Local deployment
Local {
/// Instance name
#[clap(short, long)]
name: Option<String>,
},
}

impl CloudDeploymentTypeCommand {
pub fn name(&self) -> Option<String> {
match self {
CloudDeploymentTypeCommand::Helix { name, .. } => name.clone(),
CloudDeploymentTypeCommand::Ecr { name } => name.clone(),
CloudDeploymentTypeCommand::Fly { name, .. } => name.clone(),
CloudDeploymentTypeCommand::Local { name } => name.clone(),
}
}
}

#[cfg(test)]
mod tests;
87 changes: 1 addition & 86 deletions helix-cli/src/main.rs
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
use clap::{Parser, Subcommand};
use eyre::Result;
use helix_cli::{AuthAction, CloudDeploymentTypeCommand, MetricsAction};

mod commands;
mod config;
Expand Down Expand Up @@ -156,92 +157,6 @@ enum Commands {
},
}

#[derive(Subcommand)]
enum AuthAction {
/// Login to Helix cloud
Login,
/// Logout from Helix cloud
Logout,
/// Create a new API key
CreateKey {
/// Cluster ID
cluster: String,
},
}

#[derive(Subcommand)]
enum MetricsAction {
/// Enable metrics collection
Full,
/// Disable metrics collection
Basic,
/// Disable metrics collection
Off,
/// Show metrics status
Status,
}

#[derive(Subcommand)]
enum CloudDeploymentTypeCommand {
/// Initialize Helix Cloud deployment
#[clap(name = "cloud")]
Helix {
/// Region for Helix cloud instance (default: us-east-1)
#[clap(long, default_value = "us-east-1")]
region: Option<String>,

/// Instance name
#[clap(short, long)]
name: Option<String>,
},
/// Initialize ECR deployment
Ecr {
/// Instance name
#[clap(short, long)]
name: Option<String>,
},
/// Initialize Fly.io deployment
Fly {
/// Authentication type
#[clap(long, default_value = "cli")]
auth: String,

/// volume size
#[clap(long, default_value = "20")]
volume_size: u16,

/// vm size
#[clap(long, default_value = "shared-cpu-4x")]
vm_size: String,

/// privacy
#[clap(long, default_value = "false")]
private: bool,

/// Instance name
#[clap(short, long)]
name: Option<String>,
},

/// Initialize Local deployment
Local {
/// Instance name
#[clap(short, long)]
name: Option<String>,
},
}

impl CloudDeploymentTypeCommand {
fn name(&self) -> Option<String> {
match self {
CloudDeploymentTypeCommand::Helix { name, .. } => name.clone(),
CloudDeploymentTypeCommand::Ecr { name } => name.clone(),
CloudDeploymentTypeCommand::Fly { name, .. } => name.clone(),
CloudDeploymentTypeCommand::Local { name } => name.clone(),
}
}
}

#[tokio::main]
async fn main() -> Result<()> {
// Initialize error reporting
Expand Down
Loading
Loading