diff --git a/.cargo/config.toml b/.cargo/config.toml new file mode 100644 index 0000000000..79ac8de329 --- /dev/null +++ b/.cargo/config.toml @@ -0,0 +1,26 @@ +# Tracera local cargo configuration. +# +# Workaround for an upstream linker bug on stable rustc (1.94+) on +# Apple Silicon macOS: the system `ld64` produces proc-macro dylibs +# (notably `libsqlx_macros-*.dylib`) whose `LC_LINKEDIT` segment ends +# up mis-aligned, which then crashes the rustc invocation that tries +# to dlopen them with `mis-aligned LINKEDIT string pool` (offset +# `0x00841F24` in the typical reproduction). +# +# The documented fix is to force `rust-lld` as the linker for the +# proc-macro dylib step. `rust-lld` ships with every rust toolchain +# and is added to PATH by rustup when a toolchain is active, so this +# config is portable across all rustup-managed toolchains and does not +# hardcode a per-user install path. +# +# See: +# - https://github.com/rust-lang/rust/issues/117458 +# - https://github.com/aws/aws-lc-rs/issues/380 +# +# This applies only to aarch64-apple-darwin (Apple Silicon macOS); +# x86_64 macOS, Linux, and Windows use their default toolchains +# unchanged. + +[target.aarch64-apple-darwin] +linker = "rust-lld" +rustflags = ["-C", "link-arg=-no_compact_unwind"] diff --git a/.gitignore b/.gitignore index 6c33df0a58..cedd5b00f6 100644 --- a/.gitignore +++ b/.gitignore @@ -18,6 +18,10 @@ __pycache__/ # artifacts, not committed from a developer worktree. /release-manifest.json +# Runtime data directory (SQLite DBs, uploaded artifacts). Always local-only. +/data/ +/data/* + # Node lockfiles + electron-builder output (not committed per repo convention) package-lock.json frontend/apps/desktop/release/ diff --git a/crates/tracera-server/testdata/agentora-mlx-benchmark-run.json b/crates/tracera-server/testdata/agentora-mlx-benchmark-run.json new file mode 100644 index 0000000000..f1765283c9 --- /dev/null +++ b/crates/tracera-server/testdata/agentora-mlx-benchmark-run.json @@ -0,0 +1 @@ +{"attempt_id":"att_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","deterministic_identity":{"algorithm":"sha256(canonical-json(inputs))","canonical_json_sha256":"c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","inputs":{"commit":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","hardware":"synthetic","harness":"agentora","model":"mlx.synthetic.echo","repo":"pheno-harness","task_id":"agentora-mlx-deterministic"}},"events":[{"causality":{"attempt_id":"att_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","run_id":"run_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","session_id":"ses_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","tenant_id":"phenotype"},"details":{"suite":"agentora-mlx-deterministic","task_count":2},"event_id":"evt_94599119d2e16a483e9b746f4bef1454350a844171cf7c47ce0f7e51c1ce08bc","payload_sha256":"d400098b49b4e22761342a49ac5a8c02a194361591eb451352b04ea68c1fc54e","seq":0,"ts":"2026-01-01T00:00:00+00:00","type":"run_started"},{"causality":{"attempt_id":"att_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","run_id":"run_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","session_id":"ses_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","tenant_id":"phenotype"},"checkpoint_id":"chk_bc9a2c9af539f8317703e62712ba6ecbe11ae1398ca2e65c803f54df1c00add0","details":{"checkpoint":"initial"},"event_id":"evt_c426d1d4f9555061f5f43a1aa1438d6f112d55f32caf58bcbc0b7751322a4cf2","payload_sha256":"a520aa77180e891bdece1662843bcde78697781ed59057b3448c2ebeedf0df18","seq":1,"ts":"2026-01-01T00:00:00+00:00","type":"checkpoint"},{"causality":{"attempt_id":"att_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","run_id":"run_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","session_id":"ses_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","tenant_id":"phenotype"},"checkpoint_id":"chk_bc9a2c9af539f8317703e62712ba6ecbe11ae1398ca2e65c803f54df1c00add0","details":{"dropped_event_ids":[],"retained_event_ids":[],"tokens_after":18,"tokens_before":18},"event_id":"evt_d9c265202b86696985c2a7795a918ed15cfd6d857efe046c50a9965b29578abb","payload_sha256":"117aa9324fa9e769534305f605e3b1132310ab672f8001cbe266df986adeba31","seq":2,"ts":"2026-01-01T00:00:00+00:00","type":"compaction"},{"causality":{"attempt_id":"att_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","run_id":"run_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","session_id":"ses_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","tenant_id":"phenotype"},"details":{"arguments":{"value":"alpha"},"task_id":"echo-1","tool_call_id":"call-echo-1","tool_name":"echo"},"event_id":"evt_225cc0131b3dee702e1e01668d0ce0a66c0a84b4c0da6ade63bad618dd3f354d","payload_sha256":"c5022041bf320a653523dd9c16103f859273176d33cafe2113ccac061eeb679b","seq":3,"ts":"2026-01-01T00:00:00+00:00","type":"tool_call"},{"causality":{"attempt_id":"att_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","run_id":"run_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","session_id":"ses_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","tenant_id":"phenotype"},"details":{"arguments":{"value":"alpha"},"result":"alpha","task_id":"echo-1","tool_call_id":"call-echo-1","tool_name":"echo"},"event_id":"evt_7d520b2b18e575ffd7b21d18dccba03d992b343c58a13b1eb9f3e8b763599316","payload_sha256":"0fa142ecbc810becf010f2e11c6cf78cae5ac3b243dc1114cb416ff8245e5000","seq":4,"ts":"2026-01-01T00:00:00+00:00","type":"tool_result"},{"causality":{"attempt_id":"att_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","run_id":"run_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","session_id":"ses_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","tenant_id":"phenotype"},"details":{"arguments":{"value":"beta"},"task_id":"echo-2","tool_call_id":"call-echo-2","tool_name":"echo"},"event_id":"evt_ef9beddf8a51d2577d66b8c8816af60eb6ce79c1414a1c16ea9c7263c113738c","payload_sha256":"baf8afd537f7cca6825643811683d5719b1659ed376641721d406431b45d154a","seq":5,"ts":"2026-01-01T00:00:00+00:00","type":"tool_call"},{"causality":{"attempt_id":"att_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","run_id":"run_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","session_id":"ses_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","tenant_id":"phenotype"},"details":{"arguments":{"value":"beta"},"result":"beta","task_id":"echo-2","tool_call_id":"call-echo-2","tool_name":"echo"},"event_id":"evt_fb9618ab6b058e523c7df5929b90adeac4c259bf67ad655e8ddeaedbf9e9e6fa","payload_sha256":"482221db02ea7286fd54c201c499cf3ab261608ab172bc9e6f0586c59c6d303e","seq":6,"ts":"2026-01-01T00:00:00+00:00","type":"tool_result"},{"causality":{"attempt_id":"att_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","run_id":"run_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","session_id":"ses_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","tenant_id":"phenotype"},"details":{"outcome_sha256":"78429140579fff72898a1fd58c1feec1e7c251d5de6fca67a10ec4031c3be5e2","replay_hash":"2fd37a9e991b38ecebc2fd032c4775008e6dfeed7f522c361e62ae8f508f0004","status":"passed"},"event_id":"evt_8e6c30e237b947f75d6aee23dcd60b6786ce7d531d1bbba89d36c007da23d3f7","payload_sha256":"411df4f255f74b42b6e8dc7f0625b567debb8cda4e6f5c54ef1feb192ebd0197","seq":7,"ts":"2026-01-01T00:00:00+00:00","type":"run_finished"}],"lease":{"heartbeat_interval_seconds":10,"lease_id":"lease_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","owner":"agentora-replay","ttl_seconds":60},"provenance":{"collected_at":"2026-01-01T00:00:00+00:00","collector":"pheno-harness.agentora","source_hashes":{"suite_result":"d5cd3468d8a7d038494cd179d8329de2256f03c44adfc2e11a4716087b08869a"}},"result":{"artifacts":[{"kind":"report","sha256":"ab65bc1a03af28669e8ddba72707f5db927b96e9c456328bcfc7e5bbf834ea00","uri":"urn:agentora:task:echo-1"},{"kind":"report","sha256":"4f73dae1e288cf852044ffa731336991428a63832f26112d450aedf631c98381","uri":"urn:agentora:task:echo-2"}],"failure_class":"none","outcome_sha256":"78429140579fff72898a1fd58c1feec1e7c251d5de6fca67a10ec4031c3be5e2","replay_hash":"2fd37a9e991b38ecebc2fd032c4775008e6dfeed7f522c361e62ae8f508f0004","status":"passed"},"run_id":"run_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","schema_version":"1.0.0","session_id":"ses_c9d161faa78af31bed0b9caea76c58db554e0fb2547c2be9f5db4497358bfb66","signature":{"algorithm":"sha256-digest-only","key_id":"synthetic","signature_b64":""},"subject":{"commit":"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa","hardware":"synthetic","harness":"agentora","model":"mlx.synthetic.echo","network":{"egress_policy":"deny","mode":"offline"},"provider":"mlx","repo":"pheno-harness","runtime":"python"},"task_manifest":{"assertions":[{"expected":"alpha","id":"echo-1","kind":"exact_match"},{"expected":"beta","id":"echo-2","kind":"exact_match"}],"input_sha256":"054f8792234f8e121cdfbf650fddd7e04503ce6cfd3a5bbf7fa3a16de0b41bdb","judge":{"name":"deterministic","version":"1"},"task_id":"agentora-mlx-deterministic","timeout_seconds":30},"tenant_id":"phenotype"}