export: from monorepo @ 6a2fdb112e - #31
Conversation
Source commit: 6a2fdb112e9d009a9b66990efb4d6c874db6416c Transformed tree hash: d8a7b75 Exported via git archive from the exact pinned commit above -- not from a live working tree. See export-to-standalone.sh and Luminous-Dynamics/luminous-dynamics#25 for why this matters.
Local verification status (before opening this PR)Pinned source commit: Confirmed passing locally (via
Not verified to completion locally: Separately fixed, unrelated to this export: monorepo See |
Cherry-picked from monorepo commit fb3d779f67. The 2026-07-26 comma cache-key fix used replace(matrix.features, ',', '_'), which doesn't exist in the Actions expression language -- this failed validation for the entire workflow file (zero jobs created, "This run likely failed because of a workflow file issue"), confirmed via actionlint. Fixed by computing the substitution in a shell step instead. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Cherry-picked from monorepo commit da873db799. The example file has never existed on any branch; the [[example]] entry was breaking cargo fmt/cargo metadata target resolution (Format Check and Documentation Tests both failed on "file ... does not exist" in this PR's real CI run). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Source commit: b6f4ccaf2a356c6aee79a9db8ae3d3e42241a477 Refreshes this PR against current monorepo state to get a clean CI signal -- the prior run was contaminated by a transient uncommitted- file race (calibrated_intent_confidence.rs, since committed by its author) that caused near-universal spurious failures unrelated to real code health. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Source commit: d9b73394b4e6ed1d7d890e7823a2b11c9e8b833d Includes the two real fixes found triaging this PR's first clean CI run: hdc_treasury gated behind hdc-treasury feature (off by default -- its privacy/threshold claims aren't backed by real crypto, see crates/core/symthaea-core/Cargo.toml), and nixward's config_writer live tests now skip gracefully when nix-instantiate isn't on PATH instead of panicking (was failing nearly every feature-combination leg regardless of the feature under test, since nixward is a default workspace member). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Matrix-triage session summary (2026-07-27)Structural blockers found and fixed (all in this PR / the source monorepo):
Current state (this run, real signal for the first time): 19 jobs This remaining tail has the character of months of accumulated debt that |
Do not merge unchanged — export-bloat findingsAudited this branch's full tracked tree (9,942 files, 262MB) before considering merge. Concrete findings:
I did not find the specific Action taken: pushed export-bloat gates to Not resolved by the gate fix, left as an open scoping question: whether |
Triaging PR #31's remaining CI failures found a single high-leverage root cause: 11 test files under tests/ existed on disk but were never declared as [[test]] targets, and this crate sets autotests = false. Every `cargo test --test <name>` invocation for these files failed with "no test target named X in default-run packages". Verified 9 of the 11 compile clean via `cargo test --no-run` in the source monorepo (adversarial_moral_algebra, api_integration, calibration_e2e, pathology_resilience, proptest_cognitive_loop, proptest_feedback_stability, proptest_threshold_sensitivity, safety_agent_escalation_soak, substrate_simulation). voice_integration/voice_pipeline_integration need the voice-tts feature (libclang via nix develop), not locally verified but registered via the identical pattern -- CI's own runners already build this feature combination elsewhere in the matrix. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Format Check: rustfmt the 9 test files registered in Cargo.toml earlier this session -- they'd never been run through rustfmt since nothing discovered them under autotests=false until that fix landed. Clippy (symthaea-vision-manifold, 25 real -D warnings errors): - field_reassign_with_default in fresh_modality_context: applied clippy's own suggested real fix (construct with named fields + ..Default::default() instead of default-then-reassign). - 7 dead_code warnings on YUYV decode/validate helpers in camera.rs: these are real, tested code (used by the general #[cfg(test)] module and by the camera-feature-gated hardware capture path), just invisible to a lib-only clippy check under default features. Suppressed with #[allow(dead_code)] and a comment explaining why, rather than deleting live logic. - 5 too_many_arguments + a duplicated complex return type across checkpoint.rs/encoder.rs/manifold.rs: the two occurrences of Result<(ContinuousHV, Vec<ContinuousHV>, Vec<Vec<ContinuousHV>>), String> got a real fix (MultiScaleEncodeResult type alias, clippy's own type_complexity suggestion). The too_many_arguments sites are private/ narrow-call-site helpers whose parameter lists are genuinely load-bearing (auth+versioning+retention+locking surface; frame geometry + temporal/ stereo inputs) -- refactoring into param structs would just relocate the same complexity for a handful of call sites, so these got targeted #[allow(clippy::too_many_arguments)] with justification instead. symthaea-vision-manifold now clean under `cargo clippy -- -D warnings`; 431/431 lib tests pass. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…PI drift, coalition ignition, lockfile Six independent fixes found by pulling and diagnosing each failing PR #31 CI job's raw logs, mirrored from monorepo commit 8f0412f170 (Luminous-Dynamics/luminous-dynamics, review/symthaea-bridges-security): - src/bridge.rs (vision-manifold): apply clippy's own collapsible_if suggestion (nested if-let -> let-chain) at the two sites the prior CI pass missed. Verified clean via `cargo clippy -p symthaea-vision-manifold --lib -- -D warnings` (exit 0). - symthaea-runtime/src/formal/z3_bridge.rs: fix the crate's own doc-example import path (`symthaea::z3_bridge::` -> `symthaea_runtime::formal:: z3_bridge::`), which doesn't exist and failed `cargo test --doc`. - src/mind/tests/mesh.rs: 49 sites constructing a packet with `auth_mac: 0` where the field is `[u8; 32]` -- E0308 across every "Test Feature Combinations" leg that reached this file. Fixed to `[0u8; 32]`, matching the exact convention already used twice in the production mesh.rs. - symthaea-broca/tests/mock_pipeline.rs: the test file had drifted from LiquidMambaGenerator's real API (54 compile errors, 5 root causes). `.projection()`/`.config()` are now public fields, not methods. `distill_step(&ThoughtChannels, &GenerationResult)` doesn't exist -- the real 2-arg wrapper is `train_step(&ThoughtChannels, &[u32])`, so calls become `.train_step(&channels, &result.token_ids)`. `check_projection_health()`/`last_cached_rank()` were removed entirely; the replacement is the already-public `projection.effective_rank(&hvs)` (or `temporal_proj().unwrap().effective_rank(&hvs)` for the temporal-projection variant), matching the pattern already live in `bin/broca_projection_train.rs`. - symthaea-core/src/hdc/global_workspace.rs: the new test_coalition_ignition_fires_for_distinct_representations reintroduced a bug class already fixed once in this file (commit 4d2196e20f): under `ctc_wiring` (in default-mind, active on every CI feature-combo leg), activation is scaled by (0.5 + 0.5*pac_mi); with pac_mi=0 the test's 0.45 activations halve to 0.225 and never clear entry_threshold at all, so the coalition path never even sees 2 contents. Fixed with the same `#[cfg(feature = "ctc_wiring")] ws.set_pac_mi(1.0)` pattern test_ignition_detection already uses. - Cargo.lock: regenerated against this repo's own (export-transformed) Cargo.toml files -- the committed lockfile was missing 4 packages (multer, symthaea-consciousness-equation, symtropy-consciousness-physics, symtropy-physics) that Cargo.toml requires, which is exactly what made "Broca measurement artifacts" fail with `error: cannot update the lock file ... --locked was passed`. Regenerated via `cargo metadata` (no --locked) then verified `cargo metadata --locked` passes clean. Not fixed in this pass (documented, not attempted): a reproducible SIGSEGV in symthaea-core's --lib test binary across multiple feature-combo legs; the WASM Spore binary exceeding its 500KB budget (665KB post -O2, needs a real size-bisection); and Hardened Nix Regressions, which matches a previously-disclosed, deliberately-deprioritized nested-git-repo Cargo.lock issue. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
Closing and reopening to try to clear a wedged CI run (30368206707 has been stuck reporting in_progress with zero active/queued jobs for over an hour, apparently blocking the concurrency group from starting a fresh run for the latest commit). |
…d.rs Follow-up to e9eb2ba: that pass only grepped src/mind/tests/mesh.rs. A local `cargo check -p symthaea --tests --features mesh` run found 3 more identical E0308 sites in production code, all WisdomPacket construction sites explicitly commented as placeholders filled in later by the mesh bridge (matching mesh.rs:269's compute_packet_mac call). Verified via a full local `cargo check -p symthaea --tests --features mesh` (0 errors). Mirrored from monorepo commit 8d308d7652. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Mirrored from monorepo commit f374675ba2. Found via a workflow_dispatch CI run on this branch (this crate wasn't part of the original PR #31 failure catalogue -- the original Clippy failure was scoped to symthaea-vision-manifold only). - lib.rs: drop 4 deprecated re-exports (remaining_carbon_budget, remaining_co2_budget, co2_radiative_forcing, grey_atmosphere_ surface_temperature) -- their non-deprecated replacements are already re-exported alongside them. The one real external caller (src/language/earth_system_plugin.rs) switched to co2_radiative_forcing_myhre1998, a verified drop-in replacement. - carbon_cycle.rs, forcing.rs: unused start_years/start_seconds bindings in a match guard arm -> `field: _`. - driver.rs: collapsible nested if-let -> let-chain. - ensemble.rs: manual even/odd check -> count.is_multiple_of(2). Verified via `cargo clippy -p symthaea-earth-system --lib -- -D warnings` (exit 0, was 8 errors). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Testing a hypothesis for the reproducible SIGSEGV in symthaea-core's --lib test binary seen across most "Test Feature Combinations" legs (humanoid, mesh, multirotor, swarm, service, shell, voice-tts confirmed so far, same signal: signal 11 on both retry attempts, every time). The only passing job that would exercise the same code, "Test (default features)", differs in two ways at once: it scopes to `-p symthaea` (never builds/runs symthaea-core's own test suite at all) AND forces `--test-threads=1`. This isolates just the threading variable on the `mesh` leg specifically (already a confirmed-crashing leg, keeps the same --lib no-`-p` scope and feature set) to see if serial execution alone is enough to stop the crash. Not a real fix -- if this confirms the race, forcing --test-threads=1 across the whole 30+-leg matrix has a real CI-runtime cost that needs its own decision. This commit exists purely to get a clean signal from GitHub's runners instead of fighting for CPU time on a heavily oversubscribed local dev box. Will be reverted or replaced by a proper fix once the result comes back. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
Closing/reopening again to try to trigger a full pull_request-event CI run (workflow_dispatch only schedules a ~30-job subset, missing the specific 'mesh' leg needed for the SIGSEGV threading experiment in the latest commit). |
Mirrored from monorepo commit 35fd53336f. Supersedes the 5456e0a one-leg experiment with the generalized fix its result justified. Root-caused via that targeted GitHub Actions experiment (mesh leg with --test-threads=1) after local reproduction was infeasible under the session's host contention. - src/swarm/mesh/mesh_receiver.rs: MeshReceiver::new() defaulted expected_payload_size to WISDOM_PACKET_SIZE + 64, contradicting its own with_expected_payload_size() doc comment ("default: WISDOM_PACKET_SIZE") and the actual wire format (WisdomPacket::to_bytes() is exactly WISDOM_PACKET_SIZE bytes, no padding). This 64-byte mismatch made FragmentAssembler::assemble()'s FEC-recovery-of-the-last-fragment path compute a length 64 bytes past the fixed 214-byte fragment array, panicking with an index-out-of-bounds any time the missing/recovered fragment was the last one. Real reliability bug in the mesh FEC path, not just a test artifact -- confirmed by 4 independent test failures hitting it (test_fec_after_early_data_fragment_accepted directly, plus 3 more indirectly via a tokio::spawn'd actor task that panicked silently since nothing awaited its JoinHandle). - src/domain/mod.rs: two DomainProfile constructors didn't match their own physical premise. underwater() set store_and_forward_required but left preferred_transports at the default list -- which still starts with LocalMesh, so the classifier kept picking local RF mesh despite water attenuating it to uselessness. subterranean() used pure ..Default::default() for its whole transport profile, leaving store_and_forward_required false despite the type's own name ("_allows_store_and_forward_fragmentation") describing the opposite. - src/mind/tests/mesh.rs: 3 tests failing for reasons unrelated to the bugs above, all newly visible for the first time since this file never compiled before (see the auth_mac fix in commit e9eb2ba): - test_process_mesh_dispatches_moral_topology: MoralTopology packets are unconditionally safety-critical (ContinuousMind::process_mesh's is_critical gate) and get fail-closed dropped without a valid MAC. Sign the test packet instead of asserting around a security gate. - test_process_mesh_updates_registry: same fail-closed gate, tripped by an unsigned packet the test marked MeshUrgency::Critical for no reason relevant to what it's testing (registry/avg-phi tracking). Changed to Normal. - test_swarm_phi_boosts_consciousness: ContinuousHV::perturb() draws entropy from a process-global atomic counter, not a seed, so calling it fresh in each mind's loop gave solo and swarm different perturbation sequences -- an uncontrolled confound on top of the 15% swarm-phi boost the test is trying to isolate. Precompute one sequence, replay it identically for both minds. - .github/workflows/ci.yml: force --test-threads=1 for the "Test Feature Combinations" job's main branch (~28 of ~30 legs; ssm_language and school_learning already have their own handling). symthaea-core's --lib suite segfaults under parallel execution; this job is the only one that runs it via a bare `cargo test --lib` (default-members) without also forcing serial threads. The exact racing test(s) are not yet isolated -- flagged as a known gap in the added comment -- but this stops CI from failing with zero signal in the meantime. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
Pushed the generalized fix (mesh FEC overflow bug, 2 domain-routing bugs, 3 test fixes, and the race-safe --test-threads=1 CI change validated by the earlier mesh-leg experiment). Closing/reopening once more to trigger a full pull_request-event CI run. |
Test Feature Combinations experiment run (workflow 30477988293) found "Embodiment Safety Composition" and "Orphan Module Check" both failing with "No such file or directory" -- not real check failures, an export gap. Both CI jobs and their scripts (check-embodiment-safety- composition.sh, check-orphan-modules.sh) were added to the monorepo's ci.yml/scripts/ today (2026-07-29), after this branch's original export snapshot (2026-07-27). My last push copied the monorepo's current ci.yml wholesale (to land an unrelated Test Feature Combinations fix) and unintentionally brought the two new job *definitions* along with it, without their scripts -- this was a manual incremental-copy gap, not a bug in export-to-standalone.sh itself (scripts/ is already a full SUPPORT_DIRS entry there; a real re-export would have included these). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…case Mirrored from monorepo commit d7e8a5e20e. Two more real bugs found via the mesh feature-combo CI verification run (the previous fixes confirmed working -- zero SIGSEGV across humanoid/voice-tts/multirotor/ wasm-sandbox/mesh, 6 of 7 mesh test failures resolved). Unrelated to mesh; the SIGSEGV was masking both across every "Test Feature Combinations" leg that reaches them. - src/mind/tests/mesh.rs (test_swarm_phi_boosts_consciousness): the previous perturbation-determinism fix was necessary but not sufficient -- CI showed both solo and swarm consciousness landing at exactly 1.0, a ceiling effect with no headroom for the 15% boost. Root cause: ConsciousnessCore's min_samples is 5, and the test used exactly 5 ticks -- the real spectral Phi computation only turns on for the very last tick, so consciousness_level reads its first-ever, structurally unstable measurement instead of a settled one. Bumped to 10 ticks so the spectral window gets several real measurements before this test reads it. - crates/core/symthaea-eml-egraph/src/lib.rs (collapse_expr_candidates_groups_associative_multiplication_forms): its "unsupported" decoy was `x + y`, but Add is fully supported by expr_to_egg_sexp, so it silently became its own real equivalence class instead of landing in report.unsupported. A sibling test already proves the actual associative-mul merge this test is named for works fine -- only this test's premise about what's unsupported was stale. Swapped to cos(x), genuinely unhandled. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Automated export from monorepo commit
6a2fdb112e9d009a9b66990efb4d6c874db6416c.Source commit:
6a2fdb112e9d009a9b66990efb4d6c874db6416cTransformed tree hash:
d8a7b7538b7a0286e2e3dcd68eac4e639ff5a937Generated by
export-to-standalone.sh, which exports viagit archivefrom the exact commit above (never the live working tree) — see
issue #25
for why the old
sync-to-standalone.shcould not guarantee this.Review before merging. Do not squash away the source-commit/tree-hash
provenance in the commit message.