このプロジェクトについて
Lithoglyph(ギリシャ語のlithos「石」+glyphein「刻む」)は、ナラティブ優先・可逆・監査グレードのデータベースコアとして説明されています。その主張するテーゼは、スキーマ、制約、マイグレーション、ブロック、ジャーナルは不透明な基盤ではなくナラティブな成果物であり、データは石に刻まれたもの、すなわち永続的で監査可能かつ可逆的であるというものです。
プロジェクトの状態はアクティブだが二次的優先度と宣言されています。READMEによれば、ジャーナリズム、ナラティブアート、メディア/コミュニケーションにおける専門用途向けの本番運用を目指して作業中であり、VeriSimDBが現在の主要プロジェクトとして挙げられています。LithoglyphとそのGQLクエリ言語は、ほとんどのジャーナリズム、ストーリーテリング、メディアのワークフローにとって適切な選択である可能性が高く、VeriSimDBとVCL/VCL-UTは、クロスソースの調査検証、大規模なエンティティ追跡、長期的なアイデンティティの一貫性、またはデータベース間でデータがドリフトしていないことの証明に関連するようになると述べられています。
宣言された主要な価値観は、監査可能性をパフォーマンスより上位に、意味を機能より上位に、可逆性をスループットより上位に位置づけ、エージェントによる理解を必須としています。対象領域として挙げられているのは、調査報道、ガバナンス/コンプライアンス、エージェント的エコシステムとマルチリポジトリの引き継ぎ、長期的な文化的または制度的アーカイブです。
リポジトリは、spec(AsciiDoc形式の仕様と根拠)、core-forth(Form.BlocksとForm.Model、真実のコアと説明される)、core-zig(Form.Bridge、ABIとポートのフレーミング)、core-factor(Form.Runtime、GQLとイントロスペクション)、control-plane(オプションのElixir/OTPゲートウェイ)、tools(レンダリング/検査/doctorユーティリティ)、test-vectors(ゴールデンバイトとゴールデンレンダー)、stories(ナラティブの例とオンボーディング成果物)に整理されています。
アーキテクチャは言語と責務によって階層化されています。ForthのForm.Blocksは、決定論的なストレージ、ジャーナル、可逆性のプリミティブを提供します。すなわち、シンボリックヘッダーを持つ固定サイズブロック、追記専用ジャーナル、クラッシュリカバリと整合性チェック、修復ガイダンスです。ForthのForm.Modelは、ドキュメントコレクション、エッジコレクション、スキーマと制約のメタデータ、マイグレーション成果物を扱うマルチモデルの論理層です。ZigのForm.Bridgeは、C依存のない安定したZig ABIを提供し、不透明ハンドル、バイトバッファ、明示的なエラーコードを備え、マーシャリングのみを行い、CツールチェーンなしでFFI互換性のためにcallconv(.C)を使用します。FactorのForm.Runtimeは、GQLのパース/プラン/実行、explainとイントロスペクション、プランナーステップのイントロスペクション、制約説明サーフェス、来歴サーフェスを扱います。Form.NormalizerはFactorとLean 4を組み合わせ、自動関数従属性発見(DFD/TANE/FDHits)、GQL-DTにおけるFDの型エンコーディング、1NFからBCNFまでの正規形述語、証明を伴うスキーマ進化、正規化判断のナラティブ説明を提供します。Elixir/OTPのForm.ControlPlaneはオプションであり、ポートを介したプロセス外コアエンジン、セッション、スーパービジョン、クラスタエッジ調整を提供します。
コア不変条件は譲れないものとして提示されています。ディスク上の真実はブロック/ジャーナル層が所有し、上位層はそれをバイパスしない。すべての変更操作はコミット済みと見なされる前にジャーナルに記録される。すべてのコミット済み操作には定義された逆操作が必要か、明示的に不可逆-with-storyとしてマークされる。ブロックとジャーナルエントリは人間/エージェントが読める形式に決定論的にレンダリング可能でなければならない。クエリ結果はオプションでジャーナルとブロックへの来歴ポインタを含めることができる。制約は説明可能であり、拒否時には理由、ポインタ、ナラティブな根拠を返す。
GQL(Glyph Query Language)はネイティブのクエリインターフェースです。概念実証のサブセットは、コレクションへのドキュメントのINSERT、from、to、type、propsを持つエッジのINSERT、単純な述語によるSELECT、プランと理由を返すEXPLAIN、スキーマと制約のINTROSPECT、オプションの来歴出力をカバーします。
明示的な非目標には、ドロップインのPostgres代替となること、マイクロベンチマークで勝つこと、最初のPoCで完全な分散コンセンサスを出荷することが含まれます。PoCの受け入れ基準には、単一ノードのオープン/クローズ、決定論的レンダリングを伴う追記専用ジャーナル、ドキュメントとエッジの挿入/選択、explainペイロードを返す制約拒否、記録され可逆的なマイグレーション成果物、ゴールデンテストベクターの通過、フリーズ時に通過するシームチェック(B↔M、M↔R、B↔R)が含まれます。
未解決の問いは機械可読な引き継ぎファイルで追跡されており、最小ブロックヘッダーレイアウト、最小ジャーナルエントリスキーマ、ABIブロブエンコーディングの選択、GQL PoC文法、Elixir/OTP導入のタイミング、およびデフォルトのFD発見アルゴリズム、近似FDの扱い、非正規化の範囲、GQL-DT証明統合、クエリ書き換えといった自己正規化に関するいくつかのトピックをカバーしています。
READMEは、クイックスタート、バージョニング、変更履歴、アーキテクチャ、ロードマップ、哲学、GQL仕様、GQL依存型、自己正規化データベース、ブロックとジャーナルのフォーマット、デプロイ、可観測性、セキュリティと認証、APIリファレンス、RDBMSからの移行、統合パターン、インタラクティブなドキュメンタリー/ジャーナリズム作業パッケージのドキュメントにリンクしています。関連プロジェクトとして、GQL-DT、Lithoglyph Studio、BoFIG、Zotero-Lithoglyph、Lithoglyph Debugger、FormBaseが挙げられています。コードはMPL-2.0、ドキュメントはCC-BY-SA-4.0です。
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.