Compare commits
base: soulcraftlabs:51faefb084c3f4fecca704bf9e19615340e182c1
soulcraftlabs:main
soulcraftlabs:tmp/ob-main-merge
soulcraftlabs:fix/10413-gate-reds
soulcraftlabs:test/close-every-brain
soulcraftlabs:rel/10.4.12-candidate
soulcraftlabs:fix/metadata-field-typing
soulcraftlabs:fix/10412-gate-reds
soulcraftlabs:ci/release-wall-step
soulcraftlabs:chore/remove-product-wall
soulcraftlabs:fix/beforeexit-never-closes
soulcraftlabs:fix/10412-engine-defects
soulcraftlabs:fix/find-fields-projection
soulcraftlabs:test/10412-hygiene
soulcraftlabs:rel/10.4.11-candidate
soulcraftlabs:fix/batch-limits-no-embed
soulcraftlabs:fix/flush-followup-hang
soulcraftlabs:fix/gate-10411-reds
soulcraftlabs:fix/readonly-close-no-marker
soulcraftlabs:fix/commit-transaction-pending-guard
soulcraftlabs:fix/shutdown-single-owner
soulcraftlabs:fix/vfs-search-path-scope
soulcraftlabs:rel/10.4.10-candidate
soulcraftlabs:ci/perf-suite-split
soulcraftlabs:fix/pending-embed-checkpoint
soulcraftlabs:fix/factlog-open-prune
soulcraftlabs:fix/hybrid-filter-before-hydrate
soulcraftlabs:ci/delta-gate-lane
soulcraftlabs:rel/10.4.9-candidate
soulcraftlabs:fix/pending-embed-low-water
soulcraftlabs:fix/planner-provider-door
soulcraftlabs:rel/10.4.7
soulcraftlabs:fix/containment-batching
soulcraftlabs:fix/related-verb-array
soulcraftlabs:fix/connected-find-order
soulcraftlabs:rel/10.4.6
soulcraftlabs:rel/10.4.5
soulcraftlabs:reclaim/packed-history-density
soulcraftlabs:fix/torn-log-tail-terminal-verdict
soulcraftlabs:next/open-lazy-open-and-counts
soulcraftlabs:release/10.4.2-final
soulcraftlabs:release/10.4.2
soulcraftlabs:next/zero-norm-unvector-door
soulcraftlabs:next/index-skips-unvectored
soulcraftlabs:next/ledger-derivation-identity
soulcraftlabs:next/enumeration-identity-rekey
soulcraftlabs:next/vfs-root-zero-norm
soulcraftlabs:next/reproducible-stamps
soulcraftlabs:release/10.4.1
soulcraftlabs:release/10.4.1-rc.1
soulcraftlabs:release/10.4.0
soulcraftlabs:release/10.4.0-rc.4
soulcraftlabs:release/10.4.0-rc.3
soulcraftlabs:release/10.4.0-rc.2
soulcraftlabs:release/10.4.0-rc.1
soulcraftlabs:pair-b/update-op
soulcraftlabs:release/8.10.3
soulcraftlabs:release/8.10.2
soulcraftlabs:release/8.11.0
soulcraftlabs:release/8.10.1
soulcraftlabs:release/8.10.0
soulcraftlabs:feat/warm-contract-cold-budget
soulcraftlabs:feat/8.0-u64-ids
soulcraftlabs:feat/3.0-diskann
soulcraftlabs:feat/aggregation-percentile-distinct
soulcraftlabs:feat/v4.0.0-vector-metadata-separation
soulcraftlabs:brainy-2.0-clean
soulcraftlabs:feature/enterprise-improvements
soulcraftlabs:cleanup-1.0
soulcraftlabs:v10.4.13
soulcraftlabs:v10.4.12
soulcraftlabs:v10.4.11
soulcraftlabs:v10.4.10
soulcraftlabs:v10.4.9
soulcraftlabs:v10.4.7
soulcraftlabs:v10.4.6
soulcraftlabs:v10.4.5
soulcraftlabs:v10.4.4
soulcraftlabs:v10.4.3
soulcraftlabs:v10.4.2
soulcraftlabs:v10.4.2-rc.1
soulcraftlabs:v10.4.1
soulcraftlabs:v10.4.1-rc.1
soulcraftlabs:v10.4.0
soulcraftlabs:v10.4.0-rc.4
soulcraftlabs:v10.4.0-rc.3
soulcraftlabs:v10.4.0-rc.2
soulcraftlabs:v10.4.0-rc.1
soulcraftlabs:v10.3.1
soulcraftlabs:v10.3.0
soulcraftlabs:v10.2.0
soulcraftlabs:v10.1.0
soulcraftlabs:v10.0.0
soulcraftlabs:v9.0.0
soulcraftlabs:v8.10.3
soulcraftlabs:v8.10.2
soulcraftlabs:v8.11.0
soulcraftlabs:v8.10.1
soulcraftlabs:v8.10.0
soulcraftlabs:v8.9.0
soulcraftlabs:v8.8.2
soulcraftlabs:v8.8.1
soulcraftlabs:v8.8.0
soulcraftlabs:v8.7.1
soulcraftlabs:v8.7.0
soulcraftlabs:v8.6.0
soulcraftlabs:v8.5.2
soulcraftlabs:v8.5.1
soulcraftlabs:v8.5.0
soulcraftlabs:v8.4.0
soulcraftlabs:v8.3.3
soulcraftlabs:v8.3.2
soulcraftlabs:v8.3.1
soulcraftlabs:v8.3.0
soulcraftlabs:v8.2.8
soulcraftlabs:v8.2.7
soulcraftlabs:v8.2.6
soulcraftlabs:v8.2.5
soulcraftlabs:v8.2.4
soulcraftlabs:v8.2.3
soulcraftlabs:v8.2.2
soulcraftlabs:v8.2.1
soulcraftlabs:v8.2.0
soulcraftlabs:v8.1.0
soulcraftlabs:v8.0.17
soulcraftlabs:v8.0.16
soulcraftlabs:v8.0.15
soulcraftlabs:v8.0.14
soulcraftlabs:v8.0.13
soulcraftlabs:v8.0.12
soulcraftlabs:v8.0.11
soulcraftlabs:v8.0.10
soulcraftlabs:v8.0.9
soulcraftlabs:v8.0.8
soulcraftlabs:v8.0.7
soulcraftlabs:v7.33.5
soulcraftlabs:v8.0.0-rc.9
soulcraftlabs:v8.0.0-rc.8
soulcraftlabs:v8.0.0-rc.7
soulcraftlabs:v7.33.4
soulcraftlabs:v8.0.0-rc.6
soulcraftlabs:v8.0.0-rc.5
soulcraftlabs:v7.33.3
soulcraftlabs:v8.0.0-rc.4
soulcraftlabs:v7.33.2
soulcraftlabs:v8.0.0-rc.3
soulcraftlabs:v7.33.1
soulcraftlabs:v8.0.0-rc.2
soulcraftlabs:v8.0.0-rc.1
soulcraftlabs:v7.33.0
soulcraftlabs:v7.32.2
soulcraftlabs:v7.32.1
soulcraftlabs:v7.32.0
soulcraftlabs:v7.31.8
soulcraftlabs:v7.31.7
soulcraftlabs:v7.31.6
soulcraftlabs:v7.31.5
soulcraftlabs:v7.31.4
soulcraftlabs:v7.31.3
soulcraftlabs:v7.31.2
soulcraftlabs:v7.31.1
soulcraftlabs:v7.31.0
soulcraftlabs:v7.30.2
soulcraftlabs:v7.30.1
soulcraftlabs:v7.30.0
soulcraftlabs:v7.29.0
soulcraftlabs:v7.28.0
soulcraftlabs:v7.27.0
soulcraftlabs:v7.26.0
soulcraftlabs:v7.25.0
soulcraftlabs:v7.24.0
soulcraftlabs:v7.23.0
soulcraftlabs:v7.22.1
soulcraftlabs:v7.22.0
soulcraftlabs:v7.21.0
soulcraftlabs:v7.20.0
soulcraftlabs:v7.19.19
soulcraftlabs:v7.19.18
soulcraftlabs:v7.19.17
soulcraftlabs:v7.19.16
soulcraftlabs:v7.19.15
soulcraftlabs:v7.19.14
soulcraftlabs:v7.19.13
soulcraftlabs:v7.19.11
soulcraftlabs:v7.19.10
soulcraftlabs:v7.19.9
soulcraftlabs:v7.19.8
soulcraftlabs:v7.19.7
soulcraftlabs:v7.19.6
soulcraftlabs:v7.19.5
soulcraftlabs:v7.19.2
soulcraftlabs:v7.19.1
soulcraftlabs:v7.19.0
soulcraftlabs:v7.18.0
soulcraftlabs:v7.17.0
soulcraftlabs:v7.16.0
soulcraftlabs:v7.15.5
soulcraftlabs:v7.15.4
soulcraftlabs:v7.15.3
soulcraftlabs:v7.15.2
soulcraftlabs:v7.15.0
soulcraftlabs:v7.14.0
soulcraftlabs:v7.13.0
soulcraftlabs:v7.12.0
soulcraftlabs:v7.11.0
soulcraftlabs:v7.10.0
soulcraftlabs:v7.9.3
soulcraftlabs:v7.9.2
soulcraftlabs:v7.9.1
soulcraftlabs:v7.9.0
soulcraftlabs:v7.8.0
soulcraftlabs:v7.7.0
soulcraftlabs:v7.6.1
soulcraftlabs:v7.6.0
soulcraftlabs:v7.5.4
soulcraftlabs:v7.5.3
soulcraftlabs:v7.5.2
soulcraftlabs:v7.5.1
soulcraftlabs:v7.5.0
soulcraftlabs:v7.4.1
soulcraftlabs:v7.4.0
soulcraftlabs:v7.3.1
soulcraftlabs:v7.3.0
soulcraftlabs:v7.2.2
soulcraftlabs:v7.2.1
soulcraftlabs:v7.2.0
soulcraftlabs:v7.1.1
soulcraftlabs:v7.1.0
soulcraftlabs:v7.0.1
soulcraftlabs:v7.0.0
soulcraftlabs:v6.6.2
soulcraftlabs:v6.6.1
soulcraftlabs:v6.6.0
soulcraftlabs:v6.5.0
soulcraftlabs:v6.4.0
soulcraftlabs:v6.3.2
soulcraftlabs:v6.3.1
soulcraftlabs:v6.3.0
soulcraftlabs:v6.2.9
soulcraftlabs:v6.2.8
soulcraftlabs:v6.2.7
soulcraftlabs:v6.2.6
soulcraftlabs:v6.2.5
soulcraftlabs:v6.2.4
soulcraftlabs:v6.2.3
soulcraftlabs:v6.2.2
soulcraftlabs:v6.2.1
soulcraftlabs:v6.2.0
soulcraftlabs:v6.1.0
soulcraftlabs:v6.0.2
soulcraftlabs:v6.0.1
soulcraftlabs:v6.0.0
soulcraftlabs:v5.12.0
soulcraftlabs:v5.11.1
soulcraftlabs:v5.11.0
soulcraftlabs:v5.10.4
soulcraftlabs:v5.10.3
soulcraftlabs:v5.10.2
soulcraftlabs:v5.10.1
soulcraftlabs:v5.10.0
soulcraftlabs:v5.9.0
soulcraftlabs:v5.8.0
soulcraftlabs:v5.7.13
soulcraftlabs:v5.7.12
soulcraftlabs:v5.7.11
soulcraftlabs:v5.7.10
soulcraftlabs:v5.7.9
soulcraftlabs:v5.7.8
soulcraftlabs:v5.7.7
soulcraftlabs:v5.7.6
soulcraftlabs:v5.7.5
soulcraftlabs:v5.7.4
soulcraftlabs:v5.7.3
soulcraftlabs:v5.7.2
soulcraftlabs:v5.7.1
soulcraftlabs:v5.7.0
soulcraftlabs:v5.6.3
soulcraftlabs:v5.6.2
soulcraftlabs:v5.6.1
soulcraftlabs:v5.6.0
soulcraftlabs:v5.5.1
soulcraftlabs:v5.5.0
soulcraftlabs:v5.4.0
soulcraftlabs:v5.3.6
soulcraftlabs:v5.3.5
soulcraftlabs:v5.3.4
soulcraftlabs:v5.3.3
soulcraftlabs:v5.3.2
soulcraftlabs:v5.3.1
soulcraftlabs:v5.3.0
soulcraftlabs:v5.2.1
soulcraftlabs:v5.2.0
soulcraftlabs:v5.1.2
soulcraftlabs:v5.1.1
soulcraftlabs:v5.1.0
soulcraftlabs:v5.0.0
soulcraftlabs:v4.11.2
soulcraftlabs:v4.11.1
soulcraftlabs:v4.11.0
soulcraftlabs:v4.10.4
soulcraftlabs:v4.10.3
soulcraftlabs:v4.10.2
soulcraftlabs:v4.10.1
soulcraftlabs:v4.10.0
soulcraftlabs:v4.9.2
soulcraftlabs:v4.9.1
soulcraftlabs:v4.9.0
soulcraftlabs:v4.8.6
soulcraftlabs:v4.8.5
soulcraftlabs:v4.8.4
soulcraftlabs:v4.8.3
soulcraftlabs:v4.8.2
soulcraftlabs:v4.8.1
soulcraftlabs:v4.8.0
soulcraftlabs:v4.7.4
soulcraftlabs:v4.7.3
soulcraftlabs:v4.7.2
soulcraftlabs:v4.7.1
soulcraftlabs:v4.7.0
soulcraftlabs:v4.6.0
soulcraftlabs:v4.5.3
soulcraftlabs:v4.5.2
soulcraftlabs:v4.5.1
soulcraftlabs:v4.5.0
soulcraftlabs:v4.4.0
soulcraftlabs:v4.3.2
soulcraftlabs:v4.3.1
soulcraftlabs:v4.3.0
soulcraftlabs:v4.2.4
soulcraftlabs:v4.2.3
soulcraftlabs:v4.2.2
soulcraftlabs:v4.2.1
soulcraftlabs:v4.2.0
soulcraftlabs:v4.1.4
soulcraftlabs:v4.1.3
soulcraftlabs:v4.1.2
soulcraftlabs:v4.1.1
soulcraftlabs:v4.1.0
soulcraftlabs:v4.0.2
soulcraftlabs:v4.0.1
soulcraftlabs:v4.0.0
soulcraftlabs:v3.50.2
soulcraftlabs:v3.50.1
soulcraftlabs:v3.50.0
soulcraftlabs:v3.49.0
soulcraftlabs:v3.48.0
soulcraftlabs:v3.47.1
soulcraftlabs:v3.47.0
soulcraftlabs:v3.46.0
soulcraftlabs:v3.45.0
soulcraftlabs:v3.44.0
soulcraftlabs:v3.43.3
soulcraftlabs:v3.43.2
soulcraftlabs:v3.43.1
soulcraftlabs:v3.43.0
soulcraftlabs:v3.42.0
soulcraftlabs:v3.41.1
soulcraftlabs:v3.41.0
soulcraftlabs:v3.40.3
soulcraftlabs:v3.40.2
soulcraftlabs:v3.40.1
soulcraftlabs:v3.40.0
soulcraftlabs:v3.39.0
soulcraftlabs:v3.38.0
soulcraftlabs:v3.37.8
soulcraftlabs:v3.37.7
soulcraftlabs:v3.37.6
soulcraftlabs:v3.37.5
soulcraftlabs:v3.37.4
soulcraftlabs:v3.37.3
soulcraftlabs:v3.37.2
soulcraftlabs:v3.37.1
soulcraftlabs:v3.37.0
soulcraftlabs:v3.36.1
soulcraftlabs:v3.36.0
soulcraftlabs:v3.35.0
soulcraftlabs:v3.34.0
soulcraftlabs:v3.32.2
soulcraftlabs:v3.32.1
soulcraftlabs:v3.32.0
soulcraftlabs:v3.31.0
soulcraftlabs:v3.30.2
soulcraftlabs:v3.30.1
soulcraftlabs:v3.30.0
soulcraftlabs:v3.29.1
soulcraftlabs:v3.29.0
soulcraftlabs:v3.28.0
soulcraftlabs:v3.27.1
soulcraftlabs:v3.27.0
soulcraftlabs:v3.26.0
soulcraftlabs:v3.25.2
soulcraftlabs:v3.25.1
soulcraftlabs:v3.25.0
soulcraftlabs:v3.24.0
soulcraftlabs:v3.23.1
soulcraftlabs:v3.23.0
soulcraftlabs:v3.22.0
soulcraftlabs:v3.21.0
soulcraftlabs:v3.20.5
soulcraftlabs:v3.20.4
soulcraftlabs:v3.20.3
soulcraftlabs:v3.20.2
soulcraftlabs:v3.20.1
soulcraftlabs:v3.20.0
soulcraftlabs:v3.19.2
soulcraftlabs:v3.19.1
soulcraftlabs:v3.19.0
soulcraftlabs:v3.18.0
soulcraftlabs:v3.17.0
soulcraftlabs:v3.16.0
soulcraftlabs:v3.15.0
soulcraftlabs:v3.14.2
soulcraftlabs:v3.14.1
soulcraftlabs:v3.14.0
soulcraftlabs:v3.13.0
soulcraftlabs:v3.12.0
soulcraftlabs:v3.10.1
soulcraftlabs:v3.10.0
soulcraftlabs:v3.9.1
soulcraftlabs:v3.9.0
soulcraftlabs:v3.8.3
soulcraftlabs:v3.8.2
soulcraftlabs:v3.8.1
soulcraftlabs:v3.8.0
soulcraftlabs:v3.7.1
soulcraftlabs:v3.7.0
soulcraftlabs:v3.6.0
soulcraftlabs:v3.5.1
soulcraftlabs:v3.5.0
soulcraftlabs:v3.3.1
soulcraftlabs:v3.3.0
soulcraftlabs:v3.2.0
soulcraftlabs:v3.1.1
soulcraftlabs:v3.1.0
soulcraftlabs:v3.0.1
soulcraftlabs:v3.0.0
soulcraftlabs:recovery-v3.0-20250910
soulcraftlabs:v2.15.0
soulcraftlabs:v2.14.3
soulcraftlabs:v2.14.2
soulcraftlabs:v2.14.1
soulcraftlabs:v2.14.0
soulcraftlabs:v2.12.0
soulcraftlabs:v2.11.0
soulcraftlabs:v2.10.1
soulcraftlabs:v2.10.0
soulcraftlabs:v2.9.0
soulcraftlabs:v2.8.0
soulcraftlabs:v2.7.4
soulcraftlabs:v2.7.3
soulcraftlabs:v2.7.2
soulcraftlabs:v2.7.1
soulcraftlabs:v2.7.0
soulcraftlabs:v2.6.0
soulcraftlabs:v2.5.0
soulcraftlabs:v2.4.0
soulcraftlabs:models-v2
soulcraftlabs:v2.3.0
soulcraftlabs:v2.1.0
soulcraftlabs:v2.0.2
soulcraftlabs:v2.0.1
soulcraftlabs:models-v1
soulcraftlabs:v2.0.0
soulcraftlabs:session-4-optimizations
soulcraftlabs:v1.5.0
soulcraftlabs:v1.4.0
soulcraftlabs:v1.2.0
soulcraftlabs:v1.1.2
soulcraftlabs:v1.1.1
soulcraftlabs:v1.1.0
soulcraftlabs:v0.62.3
soulcraftlabs:v0.62.2
soulcraftlabs:v0.62.1
soulcraftlabs:v0.62.0
soulcraftlabs:v0.61.3
soulcraftlabs:v0.61.2
soulcraftlabs:v0.61.1
soulcraftlabs:v0.61.0
soulcraftlabs:v0.60.0
soulcraftlabs:v0.59.3
soulcraftlabs:v0.59.2
soulcraftlabs:v0.59.0
soulcraftlabs:v0.58.1
soulcraftlabs:v0.58.0
soulcraftlabs:v0.57.1
soulcraftlabs:v0.57.0
soulcraftlabs:v0.56.0
soulcraftlabs:v0.55.0
soulcraftlabs:v0.54.7
soulcraftlabs:v0.54.6
soulcraftlabs:v0.54.5
soulcraftlabs:v0.54.4
soulcraftlabs:v0.54.3
soulcraftlabs:v0.54.2
soulcraftlabs:v0.54.1
soulcraftlabs:v0.54.0
soulcraftlabs:v0.53.0
soulcraftlabs:v0.52.0
soulcraftlabs:v0.49.0
soulcraftlabs:v0.48.1
soulcraftlabs:v0.48.0
soulcraftlabs:v0.47.0
soulcraftlabs:v0.46.0
soulcraftlabs:v0.45.0
soulcraftlabs:v0.44.0
soulcraftlabs:v0.43.0
soulcraftlabs:brainy-models-v1.0.0
soulcraftlabs:v0.41.0
soulcraftlabs:v0.40.0
soulcraftlabs:v0.39.0
soulcraftlabs:v0.38.0
soulcraftlabs:v0.37.0
soulcraftlabs:v0.36.0
soulcraftlabs:v0.35.0
soulcraftlabs:v0.34.0
soulcraftlabs:models-package-v0.7.0
soulcraftlabs:brainy-models-v0.7.0
soulcraftlabs:models-package-v0.6.0
soulcraftlabs:brainy-models-v0.6.0
soulcraftlabs:brainy-models-v0.5.0
soulcraftlabs:v0.1.0
soulcraftlabs:v0.33.0
soulcraftlabs:v0.32.0
soulcraftlabs:v0.31.0
soulcraftlabs:v0.30.0
soulcraftlabs:v0.29.0
soulcraftlabs:v0.28.0
soulcraftlabs:v0.27.1
soulcraftlabs:v0.27.0
soulcraftlabs:v0.26.0
soulcraftlabs:v0.25.0
soulcraftlabs:v0.24.0
soulcraftlabs:v0.23.0
soulcraftlabs:v0.22.0
soulcraftlabs:v0.21.0
soulcraftlabs:v0.20.0
soulcraftlabs:v0.19.0
soulcraftlabs:v0.18.0
soulcraftlabs:v0.17.0
soulcraftlabs:v0.16.0
soulcraftlabs:v0.15.0
soulcraftlabs:v0.14.0
soulcraftlabs:v0.13.0
soulcraftlabs:v0.12.0
soulcraftlabs:v0.11.0
soulcraftlabs:v0.10.0
soulcraftlabs:v0.9.37
soulcraftlabs:v0.9.36
soulcraftlabs:v0.9.35
soulcraftlabs:v0.9.34
soulcraftlabs:v0.9.33
soulcraftlabs:v0.9.32
soulcraftlabs:v0.9.31
soulcraftlabs:v0.9.29
soulcraftlabs:v0.9.28
soulcraftlabs:v0.9.26
soulcraftlabs:v0.9.23
soulcraftlabs:v0.9.22
soulcraftlabs:v0.9.21
soulcraftlabs:v0.9.20
soulcraftlabs:v0.9.19
soulcraftlabs:v0.9.18
soulcraftlabs:v0.9.17
soulcraftlabs:v0.9.16
soulcraftlabs:v0.9.15
soulcraftlabs:v0.9.14
soulcraftlabs:v0.9.13
soulcraftlabs:v0.9.12
soulcraftlabs:v0.9.11
soulcraftlabs:v0.9.10
soulcraftlabs:v0.9.9
soulcraftlabs:v0.9.8
soulcraftlabs:v0.9.7
soulcraftlabs:v0.9.6
soulcraftlabs:v0.9.5
soulcraftlabs:test
soulcraftlabs:v0.9.4
soulcraftlabs:v0.9.3
soulcraftlabs:v0.9.2
soulcraftlabs:v0.9.1
soulcraftlabs:v0.9.0
soulcraftlabs:v0.8.11
soulcraftlabs:v0.8.10
soulcraftlabs:v0.8.9
soulcraftlabs:v0.8.8
soulcraftlabs:v0.8.7
soulcraftlabs:v0.8.6
soulcraftlabs:v0.8.5
soulcraftlabs:v0.8.4
soulcraftlabs:v0.8.3
soulcraftlabs:v0.8.2
soulcraftlabs:v0.8.1
soulcraftlabs:v0.8.0
soulcraftlabs:v0.7.7
soulcraftlabs:v0.7.6
soulcraftlabs:v0.7.5
soulcraftlabs:v0.7.4
soulcraftlabs:v0.7.3
soulcraftlabs:v0.7.2
soulcraftlabs:v0.7.1
soulcraftlabs:v0.7.0
soulcraftlabs:v0.6.0
soulcraftlabs:v0.5.3
soulcraftlabs:v0.5.2
soulcraftlabs:v0.5.1
soulcraftlabs:v0.5.0
soulcraftlabs:v0.4.1
soulcraftlabs:v0.4.0
soulcraftlabs:v0.3.6
soulcraftlabs:v0.3.5
soulcraftlabs:v0.3.4
soulcraftlabs:v0.3.3
soulcraftlabs:v0.3.2
soulcraftlabs:v0.3.1
soulcraftlabs:v0.3.0
soulcraftlabs:v0.2.6
soulcraftlabs:v0.2.5
soulcraftlabs:v0.2.4
soulcraftlabs:v0.2.3
soulcraftlabs:v0.2.1
soulcraftlabs:v0.2.0
..
compare: soulcraftlabs:c8e05189e3dfa46d94469cb1c8cf2aedb2fdef4d
soulcraftlabs:main
soulcraftlabs:tmp/ob-main-merge
soulcraftlabs:fix/10413-gate-reds
soulcraftlabs:test/close-every-brain
soulcraftlabs:rel/10.4.12-candidate
soulcraftlabs:fix/metadata-field-typing
soulcraftlabs:fix/10412-gate-reds
soulcraftlabs:ci/release-wall-step
soulcraftlabs:chore/remove-product-wall
soulcraftlabs:fix/beforeexit-never-closes
soulcraftlabs:fix/10412-engine-defects
soulcraftlabs:fix/find-fields-projection
soulcraftlabs:test/10412-hygiene
soulcraftlabs:rel/10.4.11-candidate
soulcraftlabs:fix/batch-limits-no-embed
soulcraftlabs:fix/flush-followup-hang
soulcraftlabs:fix/gate-10411-reds
soulcraftlabs:fix/readonly-close-no-marker
soulcraftlabs:fix/commit-transaction-pending-guard
soulcraftlabs:fix/shutdown-single-owner
soulcraftlabs:fix/vfs-search-path-scope
soulcraftlabs:rel/10.4.10-candidate
soulcraftlabs:ci/perf-suite-split
soulcraftlabs:fix/pending-embed-checkpoint
soulcraftlabs:fix/factlog-open-prune
soulcraftlabs:fix/hybrid-filter-before-hydrate
soulcraftlabs:ci/delta-gate-lane
soulcraftlabs:rel/10.4.9-candidate
soulcraftlabs:fix/pending-embed-low-water
soulcraftlabs:fix/planner-provider-door
soulcraftlabs:rel/10.4.7
soulcraftlabs:fix/containment-batching
soulcraftlabs:fix/related-verb-array
soulcraftlabs:fix/connected-find-order
soulcraftlabs:rel/10.4.6
soulcraftlabs:rel/10.4.5
soulcraftlabs:reclaim/packed-history-density
soulcraftlabs:fix/torn-log-tail-terminal-verdict
soulcraftlabs:next/open-lazy-open-and-counts
soulcraftlabs:release/10.4.2-final
soulcraftlabs:release/10.4.2
soulcraftlabs:next/zero-norm-unvector-door
soulcraftlabs:next/index-skips-unvectored
soulcraftlabs:next/ledger-derivation-identity
soulcraftlabs:next/enumeration-identity-rekey
soulcraftlabs:next/vfs-root-zero-norm
soulcraftlabs:next/reproducible-stamps
soulcraftlabs:release/10.4.1
soulcraftlabs:release/10.4.1-rc.1
soulcraftlabs:release/10.4.0
soulcraftlabs:release/10.4.0-rc.4
soulcraftlabs:release/10.4.0-rc.3
soulcraftlabs:release/10.4.0-rc.2
soulcraftlabs:release/10.4.0-rc.1
soulcraftlabs:pair-b/update-op
soulcraftlabs:release/8.10.3
soulcraftlabs:release/8.10.2
soulcraftlabs:release/8.11.0
soulcraftlabs:release/8.10.1
soulcraftlabs:release/8.10.0
soulcraftlabs:feat/warm-contract-cold-budget
soulcraftlabs:feat/8.0-u64-ids
soulcraftlabs:feat/3.0-diskann
soulcraftlabs:feat/aggregation-percentile-distinct
soulcraftlabs:feat/v4.0.0-vector-metadata-separation
soulcraftlabs:brainy-2.0-clean
soulcraftlabs:feature/enterprise-improvements
soulcraftlabs:cleanup-1.0
soulcraftlabs:v10.4.13
soulcraftlabs:v10.4.12
soulcraftlabs:v10.4.11
soulcraftlabs:v10.4.10
soulcraftlabs:v10.4.9
soulcraftlabs:v10.4.7
soulcraftlabs:v10.4.6
soulcraftlabs:v10.4.5
soulcraftlabs:v10.4.4
soulcraftlabs:v10.4.3
soulcraftlabs:v10.4.2
soulcraftlabs:v10.4.2-rc.1
soulcraftlabs:v10.4.1
soulcraftlabs:v10.4.1-rc.1
soulcraftlabs:v10.4.0
soulcraftlabs:v10.4.0-rc.4
soulcraftlabs:v10.4.0-rc.3
soulcraftlabs:v10.4.0-rc.2
soulcraftlabs:v10.4.0-rc.1
soulcraftlabs:v10.3.1
soulcraftlabs:v10.3.0
soulcraftlabs:v10.2.0
soulcraftlabs:v10.1.0
soulcraftlabs:v10.0.0
soulcraftlabs:v9.0.0
soulcraftlabs:v8.10.3
soulcraftlabs:v8.10.2
soulcraftlabs:v8.11.0
soulcraftlabs:v8.10.1
soulcraftlabs:v8.10.0
soulcraftlabs:v8.9.0
soulcraftlabs:v8.8.2
soulcraftlabs:v8.8.1
soulcraftlabs:v8.8.0
soulcraftlabs:v8.7.1
soulcraftlabs:v8.7.0
soulcraftlabs:v8.6.0
soulcraftlabs:v8.5.2
soulcraftlabs:v8.5.1
soulcraftlabs:v8.5.0
soulcraftlabs:v8.4.0
soulcraftlabs:v8.3.3
soulcraftlabs:v8.3.2
soulcraftlabs:v8.3.1
soulcraftlabs:v8.3.0
soulcraftlabs:v8.2.8
soulcraftlabs:v8.2.7
soulcraftlabs:v8.2.6
soulcraftlabs:v8.2.5
soulcraftlabs:v8.2.4
soulcraftlabs:v8.2.3
soulcraftlabs:v8.2.2
soulcraftlabs:v8.2.1
soulcraftlabs:v8.2.0
soulcraftlabs:v8.1.0
soulcraftlabs:v8.0.17
soulcraftlabs:v8.0.16
soulcraftlabs:v8.0.15
soulcraftlabs:v8.0.14
soulcraftlabs:v8.0.13
soulcraftlabs:v8.0.12
soulcraftlabs:v8.0.11
soulcraftlabs:v8.0.10
soulcraftlabs:v8.0.9
soulcraftlabs:v8.0.8
soulcraftlabs:v8.0.7
soulcraftlabs:v7.33.5
soulcraftlabs:v8.0.0-rc.9
soulcraftlabs:v8.0.0-rc.8
soulcraftlabs:v8.0.0-rc.7
soulcraftlabs:v7.33.4
soulcraftlabs:v8.0.0-rc.6
soulcraftlabs:v8.0.0-rc.5
soulcraftlabs:v7.33.3
soulcraftlabs:v8.0.0-rc.4
soulcraftlabs:v7.33.2
soulcraftlabs:v8.0.0-rc.3
soulcraftlabs:v7.33.1
soulcraftlabs:v8.0.0-rc.2
soulcraftlabs:v8.0.0-rc.1
soulcraftlabs:v7.33.0
soulcraftlabs:v7.32.2
soulcraftlabs:v7.32.1
soulcraftlabs:v7.32.0
soulcraftlabs:v7.31.8
soulcraftlabs:v7.31.7
soulcraftlabs:v7.31.6
soulcraftlabs:v7.31.5
soulcraftlabs:v7.31.4
soulcraftlabs:v7.31.3
soulcraftlabs:v7.31.2
soulcraftlabs:v7.31.1
soulcraftlabs:v7.31.0
soulcraftlabs:v7.30.2
soulcraftlabs:v7.30.1
soulcraftlabs:v7.30.0
soulcraftlabs:v7.29.0
soulcraftlabs:v7.28.0
soulcraftlabs:v7.27.0
soulcraftlabs:v7.26.0
soulcraftlabs:v7.25.0
soulcraftlabs:v7.24.0
soulcraftlabs:v7.23.0
soulcraftlabs:v7.22.1
soulcraftlabs:v7.22.0
soulcraftlabs:v7.21.0
soulcraftlabs:v7.20.0
soulcraftlabs:v7.19.19
soulcraftlabs:v7.19.18
soulcraftlabs:v7.19.17
soulcraftlabs:v7.19.16
soulcraftlabs:v7.19.15
soulcraftlabs:v7.19.14
soulcraftlabs:v7.19.13
soulcraftlabs:v7.19.11
soulcraftlabs:v7.19.10
soulcraftlabs:v7.19.9
soulcraftlabs:v7.19.8
soulcraftlabs:v7.19.7
soulcraftlabs:v7.19.6
soulcraftlabs:v7.19.5
soulcraftlabs:v7.19.2
soulcraftlabs:v7.19.1
soulcraftlabs:v7.19.0
soulcraftlabs:v7.18.0
soulcraftlabs:v7.17.0
soulcraftlabs:v7.16.0
soulcraftlabs:v7.15.5
soulcraftlabs:v7.15.4
soulcraftlabs:v7.15.3
soulcraftlabs:v7.15.2
soulcraftlabs:v7.15.0
soulcraftlabs:v7.14.0
soulcraftlabs:v7.13.0
soulcraftlabs:v7.12.0
soulcraftlabs:v7.11.0
soulcraftlabs:v7.10.0
soulcraftlabs:v7.9.3
soulcraftlabs:v7.9.2
soulcraftlabs:v7.9.1
soulcraftlabs:v7.9.0
soulcraftlabs:v7.8.0
soulcraftlabs:v7.7.0
soulcraftlabs:v7.6.1
soulcraftlabs:v7.6.0
soulcraftlabs:v7.5.4
soulcraftlabs:v7.5.3
soulcraftlabs:v7.5.2
soulcraftlabs:v7.5.1
soulcraftlabs:v7.5.0
soulcraftlabs:v7.4.1
soulcraftlabs:v7.4.0
soulcraftlabs:v7.3.1
soulcraftlabs:v7.3.0
soulcraftlabs:v7.2.2
soulcraftlabs:v7.2.1
soulcraftlabs:v7.2.0
soulcraftlabs:v7.1.1
soulcraftlabs:v7.1.0
soulcraftlabs:v7.0.1
soulcraftlabs:v7.0.0
soulcraftlabs:v6.6.2
soulcraftlabs:v6.6.1
soulcraftlabs:v6.6.0
soulcraftlabs:v6.5.0
soulcraftlabs:v6.4.0
soulcraftlabs:v6.3.2
soulcraftlabs:v6.3.1
soulcraftlabs:v6.3.0
soulcraftlabs:v6.2.9
soulcraftlabs:v6.2.8
soulcraftlabs:v6.2.7
soulcraftlabs:v6.2.6
soulcraftlabs:v6.2.5
soulcraftlabs:v6.2.4
soulcraftlabs:v6.2.3
soulcraftlabs:v6.2.2
soulcraftlabs:v6.2.1
soulcraftlabs:v6.2.0
soulcraftlabs:v6.1.0
soulcraftlabs:v6.0.2
soulcraftlabs:v6.0.1
soulcraftlabs:v6.0.0
soulcraftlabs:v5.12.0
soulcraftlabs:v5.11.1
soulcraftlabs:v5.11.0
soulcraftlabs:v5.10.4
soulcraftlabs:v5.10.3
soulcraftlabs:v5.10.2
soulcraftlabs:v5.10.1
soulcraftlabs:v5.10.0
soulcraftlabs:v5.9.0
soulcraftlabs:v5.8.0
soulcraftlabs:v5.7.13
soulcraftlabs:v5.7.12
soulcraftlabs:v5.7.11
soulcraftlabs:v5.7.10
soulcraftlabs:v5.7.9
soulcraftlabs:v5.7.8
soulcraftlabs:v5.7.7
soulcraftlabs:v5.7.6
soulcraftlabs:v5.7.5
soulcraftlabs:v5.7.4
soulcraftlabs:v5.7.3
soulcraftlabs:v5.7.2
soulcraftlabs:v5.7.1
soulcraftlabs:v5.7.0
soulcraftlabs:v5.6.3
soulcraftlabs:v5.6.2
soulcraftlabs:v5.6.1
soulcraftlabs:v5.6.0
soulcraftlabs:v5.5.1
soulcraftlabs:v5.5.0
soulcraftlabs:v5.4.0
soulcraftlabs:v5.3.6
soulcraftlabs:v5.3.5
soulcraftlabs:v5.3.4
soulcraftlabs:v5.3.3
soulcraftlabs:v5.3.2
soulcraftlabs:v5.3.1
soulcraftlabs:v5.3.0
soulcraftlabs:v5.2.1
soulcraftlabs:v5.2.0
soulcraftlabs:v5.1.2
soulcraftlabs:v5.1.1
soulcraftlabs:v5.1.0
soulcraftlabs:v5.0.0
soulcraftlabs:v4.11.2
soulcraftlabs:v4.11.1
soulcraftlabs:v4.11.0
soulcraftlabs:v4.10.4
soulcraftlabs:v4.10.3
soulcraftlabs:v4.10.2
soulcraftlabs:v4.10.1
soulcraftlabs:v4.10.0
soulcraftlabs:v4.9.2
soulcraftlabs:v4.9.1
soulcraftlabs:v4.9.0
soulcraftlabs:v4.8.6
soulcraftlabs:v4.8.5
soulcraftlabs:v4.8.4
soulcraftlabs:v4.8.3
soulcraftlabs:v4.8.2
soulcraftlabs:v4.8.1
soulcraftlabs:v4.8.0
soulcraftlabs:v4.7.4
soulcraftlabs:v4.7.3
soulcraftlabs:v4.7.2
soulcraftlabs:v4.7.1
soulcraftlabs:v4.7.0
soulcraftlabs:v4.6.0
soulcraftlabs:v4.5.3
soulcraftlabs:v4.5.2
soulcraftlabs:v4.5.1
soulcraftlabs:v4.5.0
soulcraftlabs:v4.4.0
soulcraftlabs:v4.3.2
soulcraftlabs:v4.3.1
soulcraftlabs:v4.3.0
soulcraftlabs:v4.2.4
soulcraftlabs:v4.2.3
soulcraftlabs:v4.2.2
soulcraftlabs:v4.2.1
soulcraftlabs:v4.2.0
soulcraftlabs:v4.1.4
soulcraftlabs:v4.1.3
soulcraftlabs:v4.1.2
soulcraftlabs:v4.1.1
soulcraftlabs:v4.1.0
soulcraftlabs:v4.0.2
soulcraftlabs:v4.0.1
soulcraftlabs:v4.0.0
soulcraftlabs:v3.50.2
soulcraftlabs:v3.50.1
soulcraftlabs:v3.50.0
soulcraftlabs:v3.49.0
soulcraftlabs:v3.48.0
soulcraftlabs:v3.47.1
soulcraftlabs:v3.47.0
soulcraftlabs:v3.46.0
soulcraftlabs:v3.45.0
soulcraftlabs:v3.44.0
soulcraftlabs:v3.43.3
soulcraftlabs:v3.43.2
soulcraftlabs:v3.43.1
soulcraftlabs:v3.43.0
soulcraftlabs:v3.42.0
soulcraftlabs:v3.41.1
soulcraftlabs:v3.41.0
soulcraftlabs:v3.40.3
soulcraftlabs:v3.40.2
soulcraftlabs:v3.40.1
soulcraftlabs:v3.40.0
soulcraftlabs:v3.39.0
soulcraftlabs:v3.38.0
soulcraftlabs:v3.37.8
soulcraftlabs:v3.37.7
soulcraftlabs:v3.37.6
soulcraftlabs:v3.37.5
soulcraftlabs:v3.37.4
soulcraftlabs:v3.37.3
soulcraftlabs:v3.37.2
soulcraftlabs:v3.37.1
soulcraftlabs:v3.37.0
soulcraftlabs:v3.36.1
soulcraftlabs:v3.36.0
soulcraftlabs:v3.35.0
soulcraftlabs:v3.34.0
soulcraftlabs:v3.32.2
soulcraftlabs:v3.32.1
soulcraftlabs:v3.32.0
soulcraftlabs:v3.31.0
soulcraftlabs:v3.30.2
soulcraftlabs:v3.30.1
soulcraftlabs:v3.30.0
soulcraftlabs:v3.29.1
soulcraftlabs:v3.29.0
soulcraftlabs:v3.28.0
soulcraftlabs:v3.27.1
soulcraftlabs:v3.27.0
soulcraftlabs:v3.26.0
soulcraftlabs:v3.25.2
soulcraftlabs:v3.25.1
soulcraftlabs:v3.25.0
soulcraftlabs:v3.24.0
soulcraftlabs:v3.23.1
soulcraftlabs:v3.23.0
soulcraftlabs:v3.22.0
soulcraftlabs:v3.21.0
soulcraftlabs:v3.20.5
soulcraftlabs:v3.20.4
soulcraftlabs:v3.20.3
soulcraftlabs:v3.20.2
soulcraftlabs:v3.20.1
soulcraftlabs:v3.20.0
soulcraftlabs:v3.19.2
soulcraftlabs:v3.19.1
soulcraftlabs:v3.19.0
soulcraftlabs:v3.18.0
soulcraftlabs:v3.17.0
soulcraftlabs:v3.16.0
soulcraftlabs:v3.15.0
soulcraftlabs:v3.14.2
soulcraftlabs:v3.14.1
soulcraftlabs:v3.14.0
soulcraftlabs:v3.13.0
soulcraftlabs:v3.12.0
soulcraftlabs:v3.10.1
soulcraftlabs:v3.10.0
soulcraftlabs:v3.9.1
soulcraftlabs:v3.9.0
soulcraftlabs:v3.8.3
soulcraftlabs:v3.8.2
soulcraftlabs:v3.8.1
soulcraftlabs:v3.8.0
soulcraftlabs:v3.7.1
soulcraftlabs:v3.7.0
soulcraftlabs:v3.6.0
soulcraftlabs:v3.5.1
soulcraftlabs:v3.5.0
soulcraftlabs:v3.3.1
soulcraftlabs:v3.3.0
soulcraftlabs:v3.2.0
soulcraftlabs:v3.1.1
soulcraftlabs:v3.1.0
soulcraftlabs:v3.0.1
soulcraftlabs:v3.0.0
soulcraftlabs:recovery-v3.0-20250910
soulcraftlabs:v2.15.0
soulcraftlabs:v2.14.3
soulcraftlabs:v2.14.2
soulcraftlabs:v2.14.1
soulcraftlabs:v2.14.0
soulcraftlabs:v2.12.0
soulcraftlabs:v2.11.0
soulcraftlabs:v2.10.1
soulcraftlabs:v2.10.0
soulcraftlabs:v2.9.0
soulcraftlabs:v2.8.0
soulcraftlabs:v2.7.4
soulcraftlabs:v2.7.3
soulcraftlabs:v2.7.2
soulcraftlabs:v2.7.1
soulcraftlabs:v2.7.0
soulcraftlabs:v2.6.0
soulcraftlabs:v2.5.0
soulcraftlabs:v2.4.0
soulcraftlabs:models-v2
soulcraftlabs:v2.3.0
soulcraftlabs:v2.1.0
soulcraftlabs:v2.0.2
soulcraftlabs:v2.0.1
soulcraftlabs:models-v1
soulcraftlabs:v2.0.0
soulcraftlabs:session-4-optimizations
soulcraftlabs:v1.5.0
soulcraftlabs:v1.4.0
soulcraftlabs:v1.2.0
soulcraftlabs:v1.1.2
soulcraftlabs:v1.1.1
soulcraftlabs:v1.1.0
soulcraftlabs:v0.62.3
soulcraftlabs:v0.62.2
soulcraftlabs:v0.62.1
soulcraftlabs:v0.62.0
soulcraftlabs:v0.61.3
soulcraftlabs:v0.61.2
soulcraftlabs:v0.61.1
soulcraftlabs:v0.61.0
soulcraftlabs:v0.60.0
soulcraftlabs:v0.59.3
soulcraftlabs:v0.59.2
soulcraftlabs:v0.59.0
soulcraftlabs:v0.58.1
soulcraftlabs:v0.58.0
soulcraftlabs:v0.57.1
soulcraftlabs:v0.57.0
soulcraftlabs:v0.56.0
soulcraftlabs:v0.55.0
soulcraftlabs:v0.54.7
soulcraftlabs:v0.54.6
soulcraftlabs:v0.54.5
soulcraftlabs:v0.54.4
soulcraftlabs:v0.54.3
soulcraftlabs:v0.54.2
soulcraftlabs:v0.54.1
soulcraftlabs:v0.54.0
soulcraftlabs:v0.53.0
soulcraftlabs:v0.52.0
soulcraftlabs:v0.49.0
soulcraftlabs:v0.48.1
soulcraftlabs:v0.48.0
soulcraftlabs:v0.47.0
soulcraftlabs:v0.46.0
soulcraftlabs:v0.45.0
soulcraftlabs:v0.44.0
soulcraftlabs:v0.43.0
soulcraftlabs:brainy-models-v1.0.0
soulcraftlabs:v0.41.0
soulcraftlabs:v0.40.0
soulcraftlabs:v0.39.0
soulcraftlabs:v0.38.0
soulcraftlabs:v0.37.0
soulcraftlabs:v0.36.0
soulcraftlabs:v0.35.0
soulcraftlabs:v0.34.0
soulcraftlabs:models-package-v0.7.0
soulcraftlabs:brainy-models-v0.7.0
soulcraftlabs:models-package-v0.6.0
soulcraftlabs:brainy-models-v0.6.0
soulcraftlabs:brainy-models-v0.5.0
soulcraftlabs:v0.1.0
soulcraftlabs:v0.33.0
soulcraftlabs:v0.32.0
soulcraftlabs:v0.31.0
soulcraftlabs:v0.30.0
soulcraftlabs:v0.29.0
soulcraftlabs:v0.28.0
soulcraftlabs:v0.27.1
soulcraftlabs:v0.27.0
soulcraftlabs:v0.26.0
soulcraftlabs:v0.25.0
soulcraftlabs:v0.24.0
soulcraftlabs:v0.23.0
soulcraftlabs:v0.22.0
soulcraftlabs:v0.21.0
soulcraftlabs:v0.20.0
soulcraftlabs:v0.19.0
soulcraftlabs:v0.18.0
soulcraftlabs:v0.17.0
soulcraftlabs:v0.16.0
soulcraftlabs:v0.15.0
soulcraftlabs:v0.14.0
soulcraftlabs:v0.13.0
soulcraftlabs:v0.12.0
soulcraftlabs:v0.11.0
soulcraftlabs:v0.10.0
soulcraftlabs:v0.9.37
soulcraftlabs:v0.9.36
soulcraftlabs:v0.9.35
soulcraftlabs:v0.9.34
soulcraftlabs:v0.9.33
soulcraftlabs:v0.9.32
soulcraftlabs:v0.9.31
soulcraftlabs:v0.9.29
soulcraftlabs:v0.9.28
soulcraftlabs:v0.9.26
soulcraftlabs:v0.9.23
soulcraftlabs:v0.9.22
soulcraftlabs:v0.9.21
soulcraftlabs:v0.9.20
soulcraftlabs:v0.9.19
soulcraftlabs:v0.9.18
soulcraftlabs:v0.9.17
soulcraftlabs:v0.9.16
soulcraftlabs:v0.9.15
soulcraftlabs:v0.9.14
soulcraftlabs:v0.9.13
soulcraftlabs:v0.9.12
soulcraftlabs:v0.9.11
soulcraftlabs:v0.9.10
soulcraftlabs:v0.9.9
soulcraftlabs:v0.9.8
soulcraftlabs:v0.9.7
soulcraftlabs:v0.9.6
soulcraftlabs:v0.9.5
soulcraftlabs:test
soulcraftlabs:v0.9.4
soulcraftlabs:v0.9.3
soulcraftlabs:v0.9.2
soulcraftlabs:v0.9.1
soulcraftlabs:v0.9.0
soulcraftlabs:v0.8.11
soulcraftlabs:v0.8.10
soulcraftlabs:v0.8.9
soulcraftlabs:v0.8.8
soulcraftlabs:v0.8.7
soulcraftlabs:v0.8.6
soulcraftlabs:v0.8.5
soulcraftlabs:v0.8.4
soulcraftlabs:v0.8.3
soulcraftlabs:v0.8.2
soulcraftlabs:v0.8.1
soulcraftlabs:v0.8.0
soulcraftlabs:v0.7.7
soulcraftlabs:v0.7.6
soulcraftlabs:v0.7.5
soulcraftlabs:v0.7.4
soulcraftlabs:v0.7.3
soulcraftlabs:v0.7.2
soulcraftlabs:v0.7.1
soulcraftlabs:v0.7.0
soulcraftlabs:v0.6.0
soulcraftlabs:v0.5.3
soulcraftlabs:v0.5.2
soulcraftlabs:v0.5.1
soulcraftlabs:v0.5.0
soulcraftlabs:v0.4.1
soulcraftlabs:v0.4.0
soulcraftlabs:v0.3.6
soulcraftlabs:v0.3.5
soulcraftlabs:v0.3.4
soulcraftlabs:v0.3.3
soulcraftlabs:v0.3.2
soulcraftlabs:v0.3.1
soulcraftlabs:v0.3.0
soulcraftlabs:v0.2.6
soulcraftlabs:v0.2.5
soulcraftlabs:v0.2.4
soulcraftlabs:v0.2.3
soulcraftlabs:v0.2.1
soulcraftlabs:v0.2.0
15 commits
51faefb084
...
c8e05189e3
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
| c8e05189e3 |
docs: measurements in public history carry numbers, not provenance
Some checks are pending
CI / Node 22 (push) Waiting to run
CI / Node 24 (push) Waiting to run
CI / Integration + conformance (Node 22) (push) Waiting to run
CI / Bun (latest) (push) Waiting to run
A release audit found hostnames, store identities and operational anecdotes in this branch's commit messages — not trade secrets, but nothing a public repository's permanent history should carry either. The messages were rewritten to keep every number and drop every provenance; the rule is written down here so the next measurement does not have to be caught by an audit. |
|||
| 59d8ebcb25 |
feat(open): name the two steps that hold the vfs-bootstrap phase
MEASURED on a 14,056-noun / 72,679-verb production-shaped store, measured solo under an exclusive lock: the vfs-bootstrap phase costs 37.8s on main and 38.0s on this branch — unchanged — and NO "vfs.init" step line was emitted at all, meaning the VFS's own init fell under the 2s narration threshold. The phase is therefore almost entirely NOT the VFS, and the old-root sweep this branch moved to the background was never what made it expensive. What else lives in that span is now named: the log-authority artifact read, the adoption ORACLE (which verifies the log against canonical before flipping a brain to durable-at-ack), the legacy pending-embed sidecar bridge, and the pending-embed recovery fold. One of those holds ~38 seconds of every open of this store and the next measurement will say which, by name, instead of leaving a phase label to be guessed at. |
|||
| 89e8b1c948 |
fix(storage): a dead flush watch falls back to the 500ms poll, not the 30s sweep
The safety sweep is armed alongside the watch, and startFlushRequestPolling() declines to arm over an existing interval — so when a watch died mid-life the fallback did nothing and the store quietly answered flush requests on a 30s cadence instead of the 500ms one the door promises. The sweep is cleared first. A degrade nobody asked for is still a degrade. |
|||
| ab2bdea8f0 |
fix(storage): the flush watcher cannot arm twice in its async window
Arming is asynchronous — the request directory is created before it can be watched — so during that window neither the watcher nor the sweep interval exists yet and the guard let a second call through, leaving two watchers and two sweeps for the life of the store. The callback is the flag that covers the window. |
|||
| db1c8d01d3 |
perf(idle): the flush-request watch is event-driven; the heartbeat is observability
Three idle-burn items from the steady-state audit, and one correction. THE FLUSH-REQUEST WATCH (the strongest of them). It readdir'd the request directory every 500 ms, per brain, for the life of every writer — armed on every non-reader brain whether or not any inspector process existed. In a process holding many stores that is tens of directory reads per second on a completely idle service, plus a stale-request GC on every one of them. It now uses fs.watch, so the arrival itself wakes it and a request is seen SOONER than the poll saw it. Two concessions ride along, both stated in the code: a 30s safety sweep (fs.watch drops events on some network and fuse filesystems, and the GC needs a tick of its own — two orders of magnitude fewer reads than the poll made), and a fall back to the original 500 ms poll, narrated, on a filesystem that cannot watch at all, because an inspector whose request is never seen waits forever. THE WRITER HEARTBEAT goes 10s → 60s. It is observability ONLY — staleness is decided by pid liveness and the fence compares pid + hostname, so no decision anywhere reads the timestamp — and at 10s it was a lock-file write every ten seconds per brain forever, for a value nothing computes with. An operator still sees a heartbeat inside the minute. THE HEALTH NARRATION dedupes by CONTENT, not by the provider's generation counter. That counter bumps on every ledger mutation and rebuild boundary, so a provider bumping it on routine work re-emitted the same unchanged line on every read, while one that never bumped could suppress a line whose reasons had genuinely changed. The generation is still reported; it no longer decides whether the line is worth saying. CORRECTION, and it is against my own earlier claim: the idle-flush commit read a reported idle-CPU observation (many stores, no writes, a flush every ~35s, over a core burned) as caused by the flush path. That does not follow — this engine's cadence is write-driven (every trigger runs through noteWriteForPersistence, which only a committed write calls), so something was CALLING flush() on those brains and the caller is still unidentified. The clean-flush gate makes such a call free; it does not account for it. The code comments and the idle lane now say exactly that. Pins: tests/integration/flush-watcher-event-driven.test.ts — an idle writer makes at most one request-directory read in 8 seconds (the old poll made ~16), and a dropped request is still acked well inside the safety sweep. |
|||
| 742a0b0506 |
perf(open): answer "are there any entities?" with one directory read
The 7.x-to-8.0 layout probe runs on the open path of every store that does not
yet carry its completion marker — a restore, a store built by an older release
— and asked whether the canonical tree holds anything by LISTING it: a
recursive walk of every file in every entity directory, to learn a boolean. It
now asks the one-level door added for generation discovery, falling back to the
listing on an adapter that lacks it.
Also files a defect found while ratifying the operator set: the VFS builds its
path-prefix filter as `$startsWith`, an operator no engine spelling accepts,
so vfs.searchFiles({ path }) throws INVALID_QUERY on every call that passes a
path. Pre-existing, unrelated to the operator work, and left as a filing —
a path-prefix search needs a design answer, not a spelling correction.
|
|||
| d044355ec1 |
perf(generations): discover generations by directory name, not by walking the log
MEASURED on a production-shaped store (14,056 nouns / 72,679 verbs, an 11 GB
generation history), measured solo under an exclusive lock: the generation-store phase cost 55,538 ms of a WARM
REOPEN after a clean close — with the fold correctly skipped, so nothing in
that phase's name explained it.
This is what it was doing. Discovering which generations exist on disk called
listRawObjects('_generations'), which RECURSES the whole tree and returns
every file in every generation directory — to extract a set of integers that
the top-level directory NAMES already spell out. The cost scales with the
entire history, is paid on every open, warm or cold, and grows for the life of
the store.
A one-level door — listRawPrefixes(prefix), the immediate child directory
names — is added to the storage seam. The filesystem adapter answers it with a
single readdir; BaseStorage derives it from the recursive listing, so an
adapter without a cheap implementation is never wrong, only never faster; and
the generation store falls back to the old listing when the door is absent.
One behavioural difference, stated: an EMPTY generation directory is now
discovered where the file listing could not see it. Above the committed
watermark that is a crash scar, and recovery already has an explicit branch
for it ("indeterminate partial dir" — dropped, narrated). Below it, it becomes
a resolvable generation holding no records, which is what an empty generation
means.
Suites: the durability kill matrix (15), db-mvcc (30), history repacking (4),
rollback trapdoor (3), entity-tree stamp (4) and the full unit suite (2,105)
all green.
|
|||
| 05820a673d |
fix(flush): clear() and repairIndex() set the dirty witness themselves
Both mutate durable state outside the two commit paths, so neither was seen by the flush witness added with the idle-flush law. A clear() followed by a flush() would have found the brain "clean" and skipped the entity-tree stamp, leaving a stamp describing the population the clear had just removed — a false divergence warning at the next open. Closing the gap where it is, rather than widening the witness to guess. |
|||
| b33a93ddba |
feat(open): the open names the STEP that cost the time, not just the phase
A phase that costs a minute and names only itself tells an operator where to look but not what to look at. MEASURED on a real 14,056-noun / 72,679-verb store, the warm reopen's generation-store phase cost 55,538 ms with nothing inside it named — the fold was skipped (the close was clean), so the cost was somewhere else entirely and the breakdown could not say where. Six steps inside the open now report their own wall with their own cause when they exceed the phase threshold: the generation store's open (manifest, committed ranges, fact log, packed tier, crash replay), the entity-tree stamp verification, the brain-format read, the pre-upgrade backup, the derived-index gate, and the VFS init. Silent under the threshold, so a fast open says nothing extra. Same always-visible channel as the phase lines. |
|||
| 793e9e5787 |
perf(vfs): the old-root sweep runs once per store, not once per open
MEASURED on a 14,056-noun / 72,679-verb production-shaped store, measured solo under an exclusive lock: the vfs-bootstrap phase cost 43,021 ms of a cold open and 52,696 ms of a WARM REOPEN. What dominates it is a migration sweep — a filtered find() over the whole store hunting for root directories created before the fixed root id existed. A store either carries such duplicates or never will, and the sweep ran on every open, forever, in the foreground. It is now caused by the store's state instead of by the open count: a durable marker under _system/ records that the sweep has run, and a store carrying it never sweeps again. A store without one sweeps in the BACKGROUND — the sweep only removes duplicate roots, nothing serves from them, and it was already declared non-critical — narrated at both ends, with whenRootSweepSettled() for anyone who needs to observe rather than race it. An adapter with no raw-object door keeps the old behaviour: correctness over cost, never a silent skip. Pins: tests/integration/vfs-root-sweep-once.test.ts — the sweep runs on the first open and never on the second or third; a sweep slowed to 4s does not delay the open. |
|||
| 27031ba1fc |
chore: keep the generated neural stamps at main's values
The build regenerates these from the git commit time; a local rebuild moved only the stamp. Restored so the branch carries no incidental churn. |
|||
| f758d7dc42 |
feat(contract): declare contract 1, serve three operators, refuse four by name
Open Brainy's side of the API contract the accelerated engine published.
DECLARED: package.json carries "brainyContract": 1 and the engine states its
own via contractVersion() / BRAINY_CONTRACT_VERSION — two engines compare an
integer instead of probing prototypes, and a tool reads the package field
without importing the engine. Pinned so the two can never drift apart.
SERVED: hasAll, noneOf and excludes now work on the index path. The defect
underneath was worse than the reported divergence — the metadata index's
operator switch had NO DEFAULT CASE, so any operator without a case left the
field's match set at its initial [] and find() returned an empty page.
Documented, validator-accepted, matcher-implemented operators answering
silently wrong. hasAll intersects each element's posting set (an empty operand
is vacuously true of every row that has the field), noneOf complements their
union, excludes complements contains.
REFUSED BY NAME: startsWith, endsWith, matches and length raise
INVALID_QUERY naming the operator, the field and the reason. An equality/range
posting index cannot evaluate a substring, a pattern or an array length without
reading every row — which is the cost this path exists to avoid — so it refuses
rather than answering an empty page. Both engines now agree on all 25 tokens
and contract 1 has no remaining operator divergence. This is a visible change
for a consumer calling those four through find({ where }): an empty page
becomes a typed refusal.
EMITTED: scripts/emit-contract-manifest.mjs generates docs/api-contract.json
from the BUILT surface — prototype doors, exported error classes, the operator
sets read out of their single definitions, the field-addressing vocabulary, the
health verdicts. Nothing hand-maintained, so a diff between two manifests is a
diff between two engines. `--check` fails on a stale manifest, which makes the
announce-every-addition duty mechanical rather than remembered.
RATIFIED in docs/contract-1-ratification.md: the 41-of-57 required split with
the promise spelled out (a refusal is part of a door; deprecation is not
removal), the serving-withholding list confirmed exhaustive and identical, the
minor/major rule adopted with the announcement duty, the 30 storage seam
methods committed as supported surface until Stage 2, and a finding filed
against the spec — is / isNot / greaterEqual / lessEqual are listed there as
served aliases and have never existed in this engine, which throws
INVALID_QUERY on all four.
|
|||
| 29a2e8c9e7 |
fix(open): a provider rebuilding itself is a third state, not a CRITICAL
Follower to the self-rebuild deference. The open gate's consistency check — "metadata index has 0 entries but storage has N entities" → CRITICAL + a forced second rebuild — knew two states, migrating and not. A provider whose rebuild() returns once the rebuild is OWNED AND RUNNING ONLINE (its doors refusing by name while other families serve) legitimately reports 0 entries there, so every first contact printed a false CRITICAL and kicked a redundant second rebuild. The exemption rides the rebuild-progress hook, NOT isMigrating() — widening that would hold every write and 503 the whole brain through the migration snapshot, which is worse than the false alarm. The check's real class is untouched: a provider reporting 0 entries with no rebuild in progress still trips it. The crash-recovery rebuild kick gets the same deference: a provider already rebuilding itself from canonical is doing exactly that work, and the fold ran in the generation store's open before any provider existed, so what it is reading is the repaired canonical. Pin: a provider stub reporting a rebuild and 0 entries opens with no CRITICAL line and no second rebuild; the vacuous-stub case fails loudly. |
|||
| 06d9475998 |
feat(open): open never waits for a provider that is rebuilding itself
MEASURED on a production store: a metadata provider that had to rebuild made init() pay the ENTIRE rebuild on the foreground — 641 seconds — with every other family idle behind it. The cause is a missing distinction: a provider reporting serving:false because it is BUSY BUILDING ITSELF and one reporting serving:false because it is BROKEN looked identical through healthReport(), and both were answered the same way — call rebuild(), and wait for it. The contract that tells them apart is one optional, synchronous, O(1) hook: `rebuildInProgress(): ProviderRebuildProgress | null`, reporting a phase name and whatever the provider actually measures (done/total/startedAt) — never an estimate dressed as a fact. A provider without the hook behaves exactly as before. With it, a provider owns its own rebuild: - the open gate neither starts a second rebuild nor waits for the provider's, and narrates that it is not waiting and what will refuse meanwhile; - init() returns and every other family serves; - that family's doors refuse BY NAME, carrying the provider's own progress, and say plainly that the door opens by itself and no action is needed — distinct from a broken index, which names repairIndex(); - the epoch stamp does not advance while any family is still being built. Nothing is ever served empty: a not-serving family refuses, as it already did. Pins: tests/integration/open-does-not-wait-for-a-rebuilding-provider.test.ts — init() returns in milliseconds against a provider claiming a 6s rebuild, brainy starts no rebuild of its own, a filtered read refuses naming the phase and the 4,096/14,056 progress, and the door answers once the provider reports serving. The pin fails loudly rather than vacuously if its stub never installs. |
|||
| 5024b01906 |
perf(flush): an idle brain does no work — no periodic flush without a write
REPORTED from the field: a process holding many stores, with no writes for ten minutes, printed "All indexes flushed to disk in 216-601ms" per store every ~35 seconds and burned over a core at idle. Every one of those flushes re-persisted state identical to what was already on disk — the provider flushes, the watermark stamps, the generation counter, the entity-tree stamp — because flush() never asked whether anything had changed. - flush() over a clean brain is now O(1) and silent: a dirty witness is set by every committed write (both commit paths end at noteWriteForPersistence, and the deferred-embed worker lands through the single-op path) and cleared by a flush that runs. A write landing DURING a flush sets it again, so no write's work is ever skipped — it is done by the next flush. Set before the policy check, so a `'manual'` consumer's explicit flush is never a no-op it didn't ask for. - An explicit flush now tells the cadence it happened. It didn't, so the very next write saw "30s since the last flush" and kicked a background flush with nothing to do, and the idle timer fired two seconds later over writes the explicit flush had already persisted. - The graph adjacency index's auto-flush asks before it acts: two O(1) reads of the LSM MemTables, and a tick over a quiet index returns without calling into the trees at all. assessProviderHealth is NOT timer-driven — it is a synchronous O(1) read of a provider's own healthReport(), called on the read gate, so it costs nothing on an idle brain. No change needed there. Pins: tests/integration/idle-costs-nothing.test.ts — 90 idle seconds produce zero flushes, zero provider calls and zero log lines; three explicit flushes over a clean brain call no provider; one write earns exactly one flush. |
1 changed files with 7 additions and 0 deletions
|
|
@ -57,6 +57,13 @@ see `package.json` for `test:integration`, `test:coverage`, and friends.
|
||||||
description states a number, cite the benchmark that produced it (see
|
description states a number, cite the benchmark that produced it (see
|
||||||
[docs/performance-envelopes.md](docs/performance-envelopes.md) for the
|
[docs/performance-envelopes.md](docs/performance-envelopes.md) for the
|
||||||
pattern). Don't state an estimate as if it were measured.
|
pattern). Don't state an estimate as if it were measured.
|
||||||
|
- **Measurements carry numbers, not provenance.** Public commit messages and
|
||||||
|
docs give the SHAPE a number was taken at and never where it was taken: no
|
||||||
|
hostnames, no store or deployment identities, no operational anecdotes about
|
||||||
|
someone's running system. "A 14,056-noun / 72,679-verb production-shaped
|
||||||
|
store, measured solo under an exclusive lock" tells a reader everything the
|
||||||
|
number depends on; the machine it ran on and whose data it was tell them
|
||||||
|
nothing except where somebody's infrastructure lives.
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
|
|
|
||||||
Reference in a new issue