Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
169e31a
fix(pchronicle): allow non-loopback serve and lazy Directory discovery
reiase Sep 8, 2026
da48541
refactor: simplify code formatting in discovery and generic modules
reiase Sep 8, 2026
835c595
feat(catalog): introduce Directory candidate type and enhance discove…
reiase Sep 8, 2026
d96b7fb
feat(import): enhance object store import functionality and replace b…
reiase Sep 8, 2026
4c36117
refactor: improve code formatting and readability in location and CLI…
reiase Sep 8, 2026
dd7ee81
feat(indexing): introduce index build progress tracking and enhance s…
reiase Sep 9, 2026
2f9c5b2
feat(timestamp): enhance timestamp handling and introduce JSON saniti…
reiase Sep 10, 2026
4010c62
feat(tests): introduce a custom reqwest client for echo tests
reiase Sep 10, 2026
6588369
Merge branch 'main' into feat/pchronicle-non-loopback-lazy-discovery
reiase Sep 10, 2026
a54c9f1
fix(tests): rename test to reflect soft acceptance of invalid created…
reiase Sep 10, 2026
7d1af1d
refactor(discovery): update directory handling logic and improve comm…
reiase Sep 10, 2026
96a9219
test: temporarily disable multiple fresh projections test due to lazy…
reiase Sep 11, 2026
d41253f
fix(tests): adjust directory structure in tests for agent mount handling
reiase Sep 11, 2026
68cc6b3
fix(tests): update event file handling in directory structure
reiase Sep 11, 2026
5b401f3
refactor(tests): replace examples_root with examples_corpus for datas…
reiase Sep 11, 2026
a2a7b0b
feat(cli): add home link functionality for enhanced navigation
reiase Sep 11, 2026
151be50
feat(web): add home preview HTML and update CSS for improved layout
reiase Sep 11, 2026
85bae13
fix(home): update heading layout and adjust styles for improved reada…
reiase Sep 11, 2026
ba01e4a
chore(home): remove deprecated home preview HTML and enhance CSS styles
reiase Sep 11, 2026
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
17 changes: 13 additions & 4 deletions crates/persisting-gateway/src/echo.rs
Original file line number Diff line number Diff line change
Expand Up @@ -605,6 +605,15 @@ mod tests {
use super::*;
use std::sync::{Arc, Mutex};

fn test_client() -> reqwest::Client {
// Local echo binds 127.0.0.1; ignore ambient HTTP(S)_PROXY / ALL_PROXY
// (e.g. socks5h) which reqwest may not support without extra features.
reqwest::Client::builder()
.no_proxy()
.build()
.expect("reqwest client")
}

async fn spawn_echo() -> (String, tokio::sync::oneshot::Sender<()>) {
let listener = tokio::net::TcpListener::bind("127.0.0.1:0").await.unwrap();
let address = listener.local_addr().unwrap();
Expand All @@ -622,7 +631,7 @@ mod tests {
#[tokio::test]
async fn raw_echo_supports_plain_and_base64() {
let (base, stop) = spawn_echo().await;
let client = reqwest::Client::new();
let client = test_client();
let plain = client
.post(format!("{base}/echo"))
.body("hello")
Expand All @@ -645,7 +654,7 @@ mod tests {
#[tokio::test]
async fn chat_echo_uses_last_user_message_and_streams() {
let (base, stop) = spawn_echo().await;
let client = reqwest::Client::new();
let client = test_client();
let response: Value = client
.post(format!("{base}/v1/chat/completions"))
.header(ECHO_ENCODING_HEADER, "base64")
Expand Down Expand Up @@ -687,7 +696,7 @@ mod tests {
#[tokio::test]
async fn native_protocol_endpoints_return_their_wire_shapes() {
let (base, stop) = spawn_echo().await;
let client = reqwest::Client::new();
let client = test_client();

let messages: Value = client
.post(format!("{base}/v1/messages"))
Expand Down Expand Up @@ -774,7 +783,7 @@ forward = "echo-upstream"
},
));

let response = reqwest::Client::new()
let response = test_client()
.post(format!("http://{gateway_address}/v1/messages"))
.header(ECHO_ENCODING_HEADER, "base64")
.json(&json!({
Expand Down
17 changes: 8 additions & 9 deletions crates/persisting-pchronicle-cli/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
**Standalone `pchronicle` CLI for onboarding, browsing, querying, importing,
exporting, and serving trajectory Datasets.**

Owns the `pchronicle` binary, loopback-only Warehouse HTTP, the write-capable
Owns the `pchronicle` binary, Warehouse HTTP, the write-capable
`--control` plane used by pPilot and pVisor, optional Gateway ingest/forwarding
flags, and the embed of staged `pchronicle-web` assets at build time.

Expand All @@ -17,14 +17,13 @@ Current commands include `onboard`, `dataset` (pin/unpin/list/show/set/rename),
`list`/`ls`, `stats`, bounded read-only `query`, built-in `stats` reports, assisted
`agent` sessions, Source-local `find`, create/append/replace `import`,
destructive `drop`, complete-trajectory `export`, directory `sync`, `echo`, and
loopback-only `serve`. Import and export support ATIF, OpenAI Messages, ACTF,
Storyline JSON, and record-level Compact JSONL. `sync --from SOURCE --to
WAREHOUSE --convert OUTPUT` polls a local source directory, atomically mirrors
supported JSON files into a local Warehouse Dataset byte-for-byte, and rebuilds
a Storyline Lance Dataset at the conversion output on each coalesced batch.
With `--input-format compact-jsonl`, each batch instead replaces a compact Lance
snapshot at `OUTPUT`; `--to` remains required but is not written. Use `--once`
for a finite run.
`serve`. Import and export support ATIF, OpenAI Messages, ACTF,
Storyline JSON, and record-level Compact JSONL. `sync --from SOURCE [--mirror
MIRROR] [--to OUTPUT]` polls a source directory and, on each coalesced batch,
optionally rebuilds a Compact JSONL Lance Dataset at `--mirror` and/or a
Storyline Lance Dataset at `--to`. Provide at least one destination. With
`--input-format compact-jsonl`, only `--mirror` is valid. Use `--once` for a
finite run.

`pchronicle serve --control 127.0.0.1:0 URI` is normally launched by pPilot or
pVisor. `serve --listen` is the read-only Warehouse. Public bind addresses are
Expand Down
4 changes: 0 additions & 4 deletions crates/persisting-pchronicle-cli/src/control.rs
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,6 @@ pub(super) struct PreparedControl {

impl PreparedControl {
pub(super) async fn bind(storage: &str, listen: SocketAddr) -> Result<Self> {
anyhow::ensure!(
listen.ip().is_loopback(),
"pChronicle control may only bind to a loopback address"
);
let control = Arc::new(
RunControlStore::open(storage)
.await
Expand Down
Loading
Loading