hypermind 2.3.0__tar.gz → 2.4.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {hypermind-2.3.0 → hypermind-2.4.0}/.gitignore +3 -0
- hypermind-2.4.0/.gitleaksignore +7 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/CHANGELOG.md +79 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/CLAUDE.md +3 -3
- {hypermind-2.3.0 → hypermind-2.4.0}/PKG-INFO +6 -4
- {hypermind-2.3.0 → hypermind-2.4.0}/README.md +4 -2
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/configuration.md +50 -2
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/deploy/add-tool-provider.md +1 -1
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/deploy/quickstart.md +1 -1
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/deploy/troubleshooting.md +4 -4
- {hypermind-2.3.0 → hypermind-2.4.0}/pyproject.toml +1 -1
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hmctl/cli.py +126 -21
- hypermind-2.4.0/src/hmctl/envfile.py +86 -0
- hypermind-2.4.0/src/hmctl/setup_cmd.py +260 -0
- hypermind-2.4.0/src/hmctl/show_cmd.py +332 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/storage/__init__.py +14 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/storage/relata.py +26 -14
- hypermind-2.4.0/src/hypermind/storage/tenancy.py +352 -0
- hypermind-2.4.0/src/hypermind/viz/__init__.py +33 -0
- hypermind-2.4.0/src/hypermind/viz/canvas_html.py +1334 -0
- hypermind-2.4.0/src/hypermind/viz/server.py +299 -0
- hypermind-2.4.0/src/hypermind/viz/snapshot.py +805 -0
- hypermind-2.4.0/tests/storage/test_tenancy.py +318 -0
- hypermind-2.4.0/tests/test_cli_doctor_ledger.py +79 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_cli_mcp_install.py +58 -0
- hypermind-2.4.0/tests/test_cli_setup.py +255 -0
- hypermind-2.4.0/tests/test_cli_show.py +234 -0
- hypermind-2.4.0/tests/test_envfile.py +55 -0
- hypermind-2.4.0/tests/test_storage_relata_sentinels.py +126 -0
- hypermind-2.4.0/tests/viz/test_canvas_html.py +321 -0
- hypermind-2.4.0/tests/viz/test_relata.py +198 -0
- hypermind-2.4.0/tests/viz/test_server.py +249 -0
- hypermind-2.4.0/tests/viz/test_snapshot.py +357 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.editorconfig +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.env.example +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.gitattributes +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.githooks/pre-push +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/FUNDING.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/renovate.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/check-license.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/code-review-pr.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/hotfix-security.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/issue-auto-fix.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/issue-triage.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/pr-standards.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/quality.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/release-simple.yml.bak +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/release.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/rust-ci.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/security.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows/stale.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/branch-flow-check.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/chaos.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/check-license.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/ci.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/code-freeze.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/code-review-pr.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/code-review.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/codeql.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/dco.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/docs-to-wiki.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/docs.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/formal.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/fuzz.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/hotfix-security.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/issue-auto-fix.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/issue-triage.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/merge-comment.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/pip-audit.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/pr-standards.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/quality.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/sbom.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/scorecard.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/security.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/sprint-retro.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.github/workflows-disabled/stale.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.gitleaks.toml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.pre-commit-config.yaml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/.tool-versions +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/CODEOWNERS +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/CODE_OF_CONDUCT.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/CONTRIBUTING.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/LICENSE +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/Makefile +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/SECURITY.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/baselines/v0.6.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/bench_consult.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/bench_dispute.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/bench_publish.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/coordination/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/coordination/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/coordination/baselines/v0.10.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/coordination/bench_rfp_latency.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/coordination/bench_task_throughput.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/coordination/bench_workflow_replay.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/coordination/run_all.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/question_sets/geopolitics_q20.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/question_sets/msft_outlook_q10.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/bench/run_bench.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/chaos/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/chaos/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/chaos/p1_partition_recovery.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/chaos/p2_witness_compromise.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/chaos/p3_key_rotation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/chaos/p4_dispute_backlog.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/chaos/p5_wire_cutover.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/chaos/p6_quorum_loss.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/chaos/p7_clock_skew.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/chaos/p8_recorder_outage.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/chaos/run_chaos.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/.env.example +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/Dockerfile +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/Dockerfile.mcp +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/Dockerfile.mcp-http +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/docker-compose.mcp-http.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/docker-compose.mcp.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/k8s/hypermind-deployment.yaml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/k8s/orgs-distributed.yaml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/mcp-http-entrypoint.sh +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/mcp.example.toml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/relata-serve.sh +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/standalone/.env.example +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/standalone/.gitignore +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/standalone/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/standalone/config/mcp.example.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/standalone/docker-compose.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/standalone/setup.sh +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/deploy/systemd/hypermind.service +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/INDEX.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/SIMLAB.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/_meta/glossary.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/_meta/provenance.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/_meta/public-surface.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/_meta/standards-map.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/adr/0001-tcp-federation-chosen-as-v1-transport.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/adr/0002-cloud-kms-signing-removed-local-signer-is-shipped-backend.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/adr/0003-libp2p-deferred-to-optional-external-binding.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/adr/0004-verified-corpus-is-a-first-class-product-surface.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/adr/0005-ground-truth-anchoring-is-tiered-and-provenance-bearing.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/adr/0006-three-layer-event-driven-integration.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/adr/0007-per-agent-deliberator-with-declarative-role-bundles.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/adr/0008-llm-decomposed-expert-seats-and-reasoning-strategies.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/adr/0009-dual-storage-backend-sqlite-local-default-and-relata-federated.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/adr/0010-composite-ed25519-mldsa65-signing-pq-hybrid.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/adr/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/agent.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/agent_card.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/capability.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/consult.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/contract_net.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/crypto.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/dataset.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/dispute.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/errors.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/eval.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/ingest.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/integrations.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/knowledge.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/mcp.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/mind.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/moa.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/namespace.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/observability.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/orgs.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/responders.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/revocation.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/simlab-openapi.yaml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/simlab.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/storage.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/sync.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/tal.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/tasks.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/testing.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/transport.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/types.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/uncertainty.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/api/wire.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/assets/hero-swarm.svg +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/audit/docs-vs-code-alignment-2026-07-25.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/audit/docs-vs-code-alignment-2026-07-27.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/audit/findings.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/audit/scope.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/concepts.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/conformance/authority.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/conformance/bake-off-report.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/conformance/mark-policy.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/decide/01-disqualifiers.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/decide/02-alternatives.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/decide/03-incentive-aligned-cases.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/decide/04-use-cases.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/deploy/add-mcp-server.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/deploy/index.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/deploy/mcp-connect.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/deploy/rest-api.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/deploy/scheduled-research.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/deploy/use-cases.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/deploy/write-scenario.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/design/01-architecture.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/design/02-traces.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/design/03-failure-modes.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/design/04-poisoning-defenses.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/design/05-deployment-topology.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/eval-programme.html +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/feature-matrix.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/getting-started.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/governance/cna.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/governance/foundation-evaluation.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/index.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/integrations.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/legal/export-classification.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/lts.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/migrate/v0.x-to-v1.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/00-prerequisites.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/after.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/exercises/e01-run-the-loop.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/exercises/e02-draw-the-architecture.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/exercises/e03-trace-a-claim.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/exercises/e04-read-a-spec-section.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/exercises/e05-break-it.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/exercises/e06-add-a-test.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/exercises/e07-first-pr.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/glossary.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/topics/00-what-is-hypermind.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/topics/01-agents-and-swarms.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/topics/02-architecture-tour.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/topics/03-spec-literacy.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/topics/04-cryptography.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/topics/05-cbor-cose.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/topics/06-transparency-logs.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/topics/07-distributed-systems.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/topics/08-async-python.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/topics/09-security-mindset.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/week-1-foundations.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/onboarding/week-2-deep-dive.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/01-deployment.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/02-runbook.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/03-resource-budget.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/backup-restore.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/data-residency.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/key-rotation.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/runbooks/dispute-backlog-drain.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/runbooks/key-rotation.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/runbooks/kms-rotation.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/runbooks/multi-host-deploy.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/runbooks/partition-heal.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/runbooks/quorum-loss.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/runbooks/rfp-dispute-triage.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/runbooks/wire-cutover.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/runbooks/witness-compromise.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/runbooks/workflow-replay.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/operate/slo.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/paper/00-patent.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/paper/hypermind-paper-draft.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/paper/hypermind-paper.docx +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/paper/hypermind-paper.tex +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/project/autonomy-audit.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/project/charter.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/project/governance.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/project/maintainers.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/project/repo-map.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/project/roadmap.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/project/v2.0-plan.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/quickstart.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.0.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.1.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.10.1.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.11.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.12.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.12.1.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.13.0-draft.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.2.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.3.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.4.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.5.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.6.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.6.1.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.6.2.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.6.3.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.6.4.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.6.5.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.6.6.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.6.7.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.6.8.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.6.9.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.7.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.7.1.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.7.10.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.7.2.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.7.3.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.7.4.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.7.5.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.7.6.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.7.7.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.7.8.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.7.9.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.8.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.8.1.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.8.2.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.8.3.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.9.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.9.1.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.9.3.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.9.4.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.9.5.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.9.6.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v1.9.7.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v2.0.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v2.1.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v2.1.1.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v2.1.2.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v2.1.3.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v2.1.4.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v2.1.5.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v2.2.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v2.2.1.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/release-notes/v2.3.0.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/security/threat-model.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/simlab/modes.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/simulations.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/sop-knowledge-quality.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/00-overview.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/01-transport.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/02-cryptography.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/03-messages.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/04-knowledge-model.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/05-routing.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/06-conformance.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/07-trust-access-layer.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/08-onboarding-contract.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/09-agent-sdk.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/10-disputes.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/11-witness-transparency.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/12-governance.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/13-observability.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/14-threat-model.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/15-living-transmission.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/16-reference-comparisons.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/17-upgrade-v1.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/18-revocation.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/19-autonomy-contract.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/20-swarm-intelligence.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/21-private-namespaces.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/22-transport-mtls.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/23-envelope-encryption.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/24-namespace-identity.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/25-capability-extensions.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/26-workflow.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/27-contract-net.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/28-distributed-trace.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/29-verified-corpus.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/30-ground-truth-anchor.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/31-deep-research-engine.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/32-belief-state.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/appendix-N-calibration.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/appendix-TLA.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/appendix-z.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/errata.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/index.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/invariants.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/spec/normative-trace.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/supply-chain/sbom.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/supply-chain/slsa.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/supply-chain/verify-self.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/sustainability.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/docs/verified-corpus.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/01_hello_world.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/02_two_agents_dispute.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/03_consult_panel.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/04_oracle_resolve.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/05_consult_to_synthesis.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/06_hybrid_pq.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/07_frost_threshold.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/08_ramp_and_diagnostics.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/09_audit_export_chain.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/10_autonomous_agent.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/11_swarm_deliberation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/12_swarm_iq_scorecard.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/13_role_specialisation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/14_active_learning_loop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/16_wire_message.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/17_tool_delegation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/18_custom_responder.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/19_governance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/20_conformance_check.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/21_revocation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/22_agent_card.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/23_task_delegation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/24_mcp_tool_call.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/25_swarm_trace.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/26_submit_goal_and_goal_handle.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/27_safety_policies.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/28_relata_connection.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/29_quick_research_sim.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/30_moa_endpoint.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/01_durable_workflow.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/02_contract_net.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/03_belief_and_plan.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/ai_01_fed_benchmark.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/ai_alignment_redteam.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/cy_05_ir_swarm.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/cy_11_ransomware_intel.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/ed_credentials.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/en_grid_coordinate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/fi_04_bsa_314b.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/fi_22_ma_dataroom.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/gv_01_intel_sharing.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/gv_21_red_team.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/hc_06_rare_disease.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/hc_21_fed_learning.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/lg_ediscovery.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/coordination/usecases/mf_supply_chain.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/e2e_many_agents.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/full_e2e_demo.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/lifecycle.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/org_distributed.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/org_university.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_aar.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_backtest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_capability_attenuation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_conformance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_crisis_tabletop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_cross_namespace_federation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_decision_tournament.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_dispute_lifecycle_async.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_evaluation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_geopolitical_crisis.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_geopolitical_traced.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_governance_committee.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_information_pipeline.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_ingest_pipeline.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_learning_loop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_namespace_trust.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_persona_panel.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_population_lifecycle.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_private_namespace.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_red_team.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_regulated_consortium.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_social_media_research.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_threat_intel.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_vouch_chain.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/scenario_what_if_tree.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/serve_api.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/sim_criminology_tech.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/examples/two_node_tcp.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/formal/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/formal/hax-rust/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/formal/hax-rust/scope.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/formal/proverif/dispute_fsm.pv +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/formal/proverif/dispute_liveness.pv +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/formal/tamarin/capability_chain.spthy +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/formal/tamarin/dispute_fsm.spthy +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/formal/tamarin/signed_statement.spthy +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/formal/tamarin/wire_security.spthy +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/fuzz/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/fuzz/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/fuzz/fuzz_agent_card.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/fuzz/fuzz_anti_entropy.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/fuzz/fuzz_capability.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/fuzz/fuzz_dispute.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/fuzz/fuzz_inclusion_proof.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/fuzz/fuzz_wire.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/fuzz/seed_corpus.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/__main__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/assertions.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/fixtures.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/report.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/roles.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/runner.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/scenario.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/scenarios/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/scenarios/autonomous_evolution.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/scenarios/swarm_iq_benchmark.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/harness/scenarios/threat_intel.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/mkdocs.yml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/reference_verifier/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/reference_verifier/schemas/encrypted_statement.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/reference_verifier/schemas/namespace_accept.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/reference_verifier/schemas/namespace_create.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/reference_verifier/schemas/namespace_founding_attest.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/reference_verifier/schemas/namespace_invite.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/reference_verifier/schemas/wire-v0.1.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/reference_verifier/verifier.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/review/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/review/__main__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/review/agents.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/review/models.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/review/runner.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/Cargo.lock +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/Cargo.toml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hmctl/Cargo.toml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hmctl/src/config.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hmctl/src/daemon.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hmctl/src/main.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/Cargo.toml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/examples/frost_interop.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/examples/mldsa_interop.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/examples/tcp_interop.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/examples/wire_interop.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/schemas/namespace_accept.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/schemas/namespace_create.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/schemas/namespace_founding_attest.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/schemas/namespace_invite.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/schemas/wire-v0.1.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/src/anti_entropy.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/src/cbor.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/src/dispute.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/src/domain.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/src/frost.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/src/hlc.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/src/lib.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/src/reputation.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/src/signing.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/src/transport.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/src/wire.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/tests/conformance_frost.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/tests/conformance_reputation_dispute.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/tests/conformance_wire.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/rust/crates/hypermind-proto/tests/proptest_roundtrip.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/scripts/e2e/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/scripts/e2e/e2e_features_test.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/scripts/e2e/e2e_mcp_sequential.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/scripts/e2e/e2e_mcp_test.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/scripts/sync_version.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hmctl/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hmctl/dashboard.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hmctl/eval_cmd.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hmctl/orgs_cmd.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/agent.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/agent_card.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/api/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/api/app.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/cap_revocation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/capability.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/config.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/consult.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/consult_bias.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/contract_net.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/cose_encrypt.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/dkg.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/domain.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/frost.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/hashing.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/hlc.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/hpke.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/kms.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/namespace_root.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/pq.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/room_epoch.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/crypto/signing.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/dataset.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/deliberation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/did_web.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/dispute.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/domains/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/domains/defense.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/domains/legal.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/domains/medical.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/errors.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/eval/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/eval/calibration.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/eval/comparison.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/eval/composite.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/eval/dispute_bench.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/eval/replay.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/eval/report.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/eval/suite.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/eval/swarm_iq.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/ingest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/autogen.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/client.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/contradiction.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/crewai.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/evolution.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/federation_manager.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/freshness.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/hooks.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/langchain.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/llamaindex.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/loop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/mcp_tools.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/notifier.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/openai_agents.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/openai_endpoint.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/openai_shapes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/population.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/quickstart.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/research.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/sse.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/startup.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/topic_clustering.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/webhook_server.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/integrations/working_memory.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/knowledge/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/knowledge/citation_graph.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/knowledge/correlated_agreement.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/knowledge/embedding_registry.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/knowledge/kernel_store.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/knowledge/rekor.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/knowledge/reputation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/knowledge/reputation_store.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/knowledge/swarm_memory.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/knowledge/transparency.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/machine.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mcp/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mcp/bridge.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mcp/client.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mcp/provenance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mcp/relata_tools.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mcp/server.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mcp/transport.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/active.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/belief.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/deliberator.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/diversity.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/epistemic_transfer.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/evolve.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/federation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/fitness.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/goals.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/grounding_gaps.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/integration.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/mediator.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/memory_store.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/metacognition.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/niche.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/policy.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/records.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/roles.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/selfplay.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/skills.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/sybil_guard.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/mind/world_model.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/aggregate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/benchmark.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/codeexec.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/costs.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/digest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/federation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/gaps.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/learn.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/model.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/orchestration_evolution.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/population.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/propose.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/readiness.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/refine.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/reproducibility.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/serve.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/moa/verifiability.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/namespace.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/namespace_policy.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/observability/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/observability/asgi.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/observability/cost.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/observability/health.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/observability/logging_config.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/observability/metrics.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/observability/otel_export.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/observability/recorder.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/observability/sample_efficiency.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/observability/silent_failures.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/observability/swarm_trace.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/adversarial_gate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/analysis.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/anchor.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/charter.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/coevolution.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/context.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/corpus.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/decomposition_search.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/deliberate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/distributed/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/distributed/__main__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/distributed/coordinator.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/distributed/planning.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/distributed/protocol.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/distributed/provision.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/distributed/serde.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/distributed/worker.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/entities.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/evidence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/experiment.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/graph_export.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/groundtruth.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/hypothesis.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/integrity_monitor.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/interaction.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/intervention.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/mcp_config.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/metrics.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/model.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/patterns.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/prompts.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/quality.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/query.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/receipt.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/refine.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/replay.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/report.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/retrieval.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/server.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/sim.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/source_ranking.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/strategies.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/stream.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/subdecompose.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/templates/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/think.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/tool_providers.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/tools.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/web_capture.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/orgs/web_crawl.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/pin_policy.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/profiles.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/py.typed +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/responders/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/responders/anthropic.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/responders/base.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/responders/cache.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/responders/openai.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/responders/router.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/responders/structured.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/responders/tools.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/revocation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/rule_ids.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/schemas/encrypted_statement.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/schemas/namespace_accept.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/schemas/namespace_create.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/schemas/namespace_founding_attest.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/schemas/namespace_invite.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/schemas/wire-v0.1.cddl +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/security/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/security/prompt_guard.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/_persona_registry.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/_scenario_impl.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/app.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/backends/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/backends/anchor.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/backends/local.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/backends/server.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/cli_command.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/config.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/deployment.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/knowledge.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/learning.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/_eval_real_llm.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/aar.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/backtest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/binary_forecast.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/conformance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/evaluation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/governance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/redteam.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/tabletop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/tournament.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/modes/whatif.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/namespace.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/personas.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/prompt_generator.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/question_sets/geopolitics_q20.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/question_sets/governance_q5.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/question_sets/msft_outlook_q10.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/question_sets/whatif_q3.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/registry.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/runner.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/scenario.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/swarms.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/alpha_vantage.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/brave.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/newsapi.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/openweather.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/pinecone.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/qdrant.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/query_knowledge_base.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/relata_recall.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/retrieve_document.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/serper.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/tavily.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/weaviate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/wikipedia.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/wolfram.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_handlers/yahoo_finance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/tool_registry.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/topic_adapter.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/simlab/topic_questions.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/skill_signing.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/storage/backend.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/storage/s3_backup.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/storage/sqlite.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/sync.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/tal.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/tal_wire.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/tasks.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/testing.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/tools/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/tools/registry.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/transport/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/transport/anti_entropy.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/transport/bus.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/transport/cap_revoke_gossip.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/transport/knows_delta.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/transport/libp2p.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/transport/placement.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/transport/tcp.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/transport/tls_profile.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/types.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/uncertainty.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/wire.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/workflow/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/workflow/engine.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/workflow/plan.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/src/hypermind/workflow/repair.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/api/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/api/test_eval_endpoints.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/api/test_events_stream.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/api/test_management_app.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/chaos/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/chaos/test_gossip_amplification.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/chaos/test_kill_agent_during_rfp.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/chaos/test_partition_during_workflow.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/chaos/test_slow_consumer_backpressure.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/chaos/test_slow_peer.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/generate_vectors.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/generate_z66.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/SIGNING.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/agent-card-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/agent-card-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/capability-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/capability-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/capability-03.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/dispute-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/dispute-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/dispute-03.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/dispute-04.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/dispute-05.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/frost-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/frost-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/frost-03.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/knows-delta-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/knows-delta-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/mcp-prov-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/mcp-prov-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/merkle-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/merkle-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/merkle-03.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/merkle-04.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/rep-decay-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/reputation-kernel-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/reputation-kernel-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/revocation-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/revocation-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/revocation-03.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/task-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/task-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/trace-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/trace-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/wire-envelope-01.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/wire-envelope-02.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/wire-envelope-03.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/wire-envelope-04.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conformance/vectors/wire-envelope-05.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/conftest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/harness/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/harness/conftest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/harness/test_assertion_library.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/harness/test_autonomous_evolution.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/harness/test_runner_lifecycle.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/harness/test_threat_intel_harness.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/helpers/tcp_gossip_interop_peer.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integration/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integration/test_relata_server.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integration/test_tool_calling_e2e.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_895_904_hm_calibration_feedback.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_989_kernel_fact_curation_tick.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_all_mcp_tools.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_autogen.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_autonomous.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_c1_gene_pool.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_c2_archive.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_crewai.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_datasys_hm_related_sqli.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_env_vars_cmd.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_evolution.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_facade.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_fixes_525_526_527.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_hooks.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_langchain.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_llamaindex.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_local_mode.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_loop_logging.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_loop_persistence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_mcp_desktop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_mcp_tool_descriptions.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_mcp_tools.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_moa_adoption_971.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_no_duplicate_subscriptions.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_notifier.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_openai_agents.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_openai_endpoint.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_openai_endpoint_moa.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_openai_shapes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_otel_serve_wiring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_population_checkpoint_v2.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_population_tools.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_quickstart.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_research_mcp_shared_client.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_research_tool.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_retrieve_author_field.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_sse.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_startup_wiring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_verifiable_rag.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_verify_v160_tools.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_webhook_server.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/integrations/test_working_memory_atomic_flush.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mcp/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mcp/test_multi_connection.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/test_940_sybil_cluster_detection.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/test_c3_goal_tool_loop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/test_deliberator_logging.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/test_deliberator_otel_tick.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/test_deliberator_save_learning_nonblocking.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/test_deliberator_sybil_guard_default.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/test_mind_assign_role.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/test_mind_memory_bounds.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/test_mind_research_antiherd.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/test_selfplay.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/mind/test_skill_learning_pipeline.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/conftest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_aggregate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_benchmark.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_bounds.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_codeexec.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_convergence_and_confidence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_digest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_federation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_health_gap_wiring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_learn.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_model.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_model_tiering.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_orchestration_evolution.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_population.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_profile_wiring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_propose.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_readiness.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_readiness_gate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_refine.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_reproducibility.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_serve.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/moa/test_verifiability.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/_fakes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_1004_sqlite_backend_parity.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_1005_breadth_cap_and_tiebreak.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_1008_select_experts_finding_truncation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_1019_auto_ingest_manifest_wiring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_1021_research_probe_gate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_847_intent_routing.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_852_auto_ingest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_854_local_vector_retrieval.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_855_consensus_protocol.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_857_swarm_iq_feedback.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_859_pattern_detection.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_864_auto_distill.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_891_self_directed_research.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_892_902_dynamic_team_formation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_939_select_experts_real_reputation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_940_retrieval_clusters_dynamic_seats.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_975_checkpoint_resume.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_987_select_experts_recency_dispute.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_a1_prediction_gating.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_a2_oracle_anchoring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_adversarial.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_adversarial_gate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_analysis.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_anchor.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_b1_source_credibility.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_b4_evidence_quality.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_c5_coevolution_wiring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_c5_loop_wiring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_coevolution.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_coevolution_s3_backup.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_concurrency.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_context.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_convergence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_corpus.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_cross_shard.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_datasys_selfreflector_wiring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_decomposition_search.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_deliberator.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_distributed.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_embeddings.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_entities.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_evidence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_evidence_gate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_experiment.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_fact_merge.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_graph_export.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_graph_retrieval.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_grounding_contradiction.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_grounding_verification.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_groundtruth.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_hybrid_retriever.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_hypothesis.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_integrity_monitor.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_interaction.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_intervention.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_learned_fact_provenance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_lightweight.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_mcp_config.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_metrics.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_model.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_ner.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_panel_herding.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_persist_identities.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_prompts.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_provider_cache.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_publish_atomicity.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_quality.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_quality_and_contradiction_wiring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_query.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_rag.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_receipt.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_refine.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_refuted_claim_retrieval.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_replay.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_report.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_response_cache_wiring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_scale.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_select_experts_relevance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_sim.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_sim_events.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_source_ranking.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_ssrf_redirect.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_strategies.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_stream.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_stream_query.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_subdecompose.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_templates.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_think.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_tool_outcomes_bias.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_tool_providers.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_tool_traces.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_tools.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_web_capture.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_web_crawl.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgs/test_zero_retrieval_abstention.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_33_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_34_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_35_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_36_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_37_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_38_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_39_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_39b_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_40_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_41_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_42_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_46_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_47_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_48_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_49_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_50_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_50_runtime.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_50b_runtime.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_51_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_52_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_c_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_rt001_cross_run_facts.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_rt002_brier_e2e.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_rt005_done_condition.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_rt006_checkpoint_resume.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_rt007_skill_promotion.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_rt_cite_rep.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_rt_dispute_fsm.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_rt_done_factories.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_gap_rt_wire9_evidence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_orgsim_observability.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/orgsim/test_orgsim_persona_evolution.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/responders/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/responders/test_responders.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/responders/test_router.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/responders/test_structured_response.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/responders/test_tools.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/review/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/review/test_agents_parser.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/review/test_models.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/review/test_runner.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/conftest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_app_endpoints.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_knowledge.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_knowledge_reuse.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_modes_aar.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_modes_backtest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_modes_conformance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_modes_evaluation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_modes_governance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_modes_redteam.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_modes_tabletop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_modes_tournament.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_modes_whatif.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_personas.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_personas_endpoints.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_recorder_scoping.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_registry.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_resolve_outcomes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_responder_timeout.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_runner.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/simlab/test_swarms.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/storage/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/storage/test_1019_document_ingest_backends.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/storage/test_relata_backend.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/storage/test_s3_backup.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/storage/test_sqlite_backend.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_1019_document_ingest_manifest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_848_ingest_formats.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_853_849_skill_composition_and_templates.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_865_federated_skill_exchange.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_866_niche_construction.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_867_epistemic_transfer.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_868_red_team_role.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_869_metacognition.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_880_weighted_retention.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_884_silent_degraded_modes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_891_grounding_gap_tracker.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_892_902_eigentrust.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_894_903_sealed_lattice.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_895_904_evolve_and_calibration_feedback.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_896_905_policy_as_dispute.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_900_850_skill_versioning_and_synthesis_quality_gate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_910_911_prompt_budget_and_recency.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_914_storage_integrity.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_918_sqlite_fts.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_921_prompt_guard.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_922_skill_auto_demote.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_923_skill_local_persistence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_946_degenerate_score_fallback.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_974_consult_knowledge_injection.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_a4_reputation_persistence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_active_multi_step.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_agent_card.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_agent_e2e.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_agent_edge.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_agent_synthesize.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_anthropic_responder_caching.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_anti_entropy.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_anti_entropy_multiround.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_anti_entropy_selfheal.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_appendix_z_conformance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_appendix_z_vectors.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_arg_dag_edge_types.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_assessment_fixes_config_and_diversity.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_auto_model.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_b2_hybrid_rank_fusion.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_b3_routing_and_cache.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_backpressure.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_belief_revision.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_belief_weight_per_candidate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_bias_detector.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_block_reason.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_c4_silent_failures.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_calibration.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_cap_revoke_gossip.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_capability.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_capability_canonical.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_capability_chain.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_capability_edge.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_capability_enforcement.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_capability_namespace_caveat.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_capability_revocation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_citation_graph.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_cli.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_cli_agent_goal_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_cli_interop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_cli_moa.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_cli_orgs.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_composite_lamps_prefix.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_consult.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_consult_stream.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_consult_stream_t4.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_contract_net_disputed_award.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_contract_net_frost_award.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_contract_net_happy.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_contract_net_reputation_scoring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_contract_net_sybil_filter.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_correlated_agreement.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_cose_encrypt_roundtrip.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_cost_tracker.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_cross_namespace_consult.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_crypto.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_dashboard.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_dataset.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_atomic_loop_state.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_brier_feedback_wired.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_brier_no_self_assess_in_research.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_citation_dedup.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_claim_length_bound.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_confidence_range_check.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_deliberator_research_dedup.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_deliberator_stop_persistence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_hm_ingest_sandbox.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_hypothesis_propose_empty_reasoning.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_job_ttl.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_loop_security.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_oracle_audit_export.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_oracle_resolve_rep_signal_fallback.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_orgsim_run_forever_candidate_question.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_panel_size_cap.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_reputation_persistence_on_close.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_rounds_cap.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_datasys_storage_write_failure_observability.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_deliberation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_deliberator_cap.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_deliberator_observe.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_deliberator_parallel_tick.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_deploy_mcp_http_gateway.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_determinism_corpus.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_dispute.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_dispute_close_deliberator_notify.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_dispute_fsm_full.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_dispute_mediate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_dispute_quorum.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_dispute_retrieval_decay.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_dispute_suspended.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_dissent.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_diversity_guard_synthesize.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_diversity_guard_synthesize_jaccard.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_diversity_quorum.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_dkg.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_e2e_fictional_story.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_e2e_research_chain.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_embedding_registry.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_engine_cross_process_behaviors.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_eval_comparison.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_eval_suite.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_evolution_gaps.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_examples_runnable.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_final_coverage.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_frost.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_frost_edge.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_frost_hedged_nonces.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_frost_persistence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_frost_rust_interop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_frost_transcript_store_swap.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_health_consumer.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_hlc_clock_source.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_hpke_vectors.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_info_gain_routing.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_issue_355_brier_apply_after_research.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_issue_356_run_cycle_findings_key.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_issue_357_relata_kernel_query_rows.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_issue_359_deliberator_stop_on_teardown.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_issue_360_curriculum_assign_called.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_issue_487_loop_deliberator_observe.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_issue_491_run_cycle_error_logging.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_issue_492_oracle_resolve_fsm_sequence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_kernel_store.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_kernel_store_bitemporal_and_citation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_kernel_store_remote.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_knows_delta.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_lamps_oid_canonical.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_last_lines.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_learning_retention.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_libp2p_peer_id.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_libp2p_scaffold.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_libp2p_stub.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_machine_identity.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mcp_bridge.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mcp_gap_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mcp_provenance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mcp_tools_list.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mcp_transport.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_merkle_transparency.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_active.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_assign_role.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_auto_relay_research.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_deliberator.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_diversity_sybil_mediator.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_evolve.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_goal_handle.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_goal_queue_bounds.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_goals_policy.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_learning_persistence.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_planner_wiring.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_records.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_research_antiherd.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_research_brier.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_research_ledger.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_research_memory.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_roles.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_world_model.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mind_world_model_priority.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_misc_edge.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mldsa_rust_interop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_mtls_profile.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_namespace_lifecycle.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_namespace_policy.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_namespace_policy_acl.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_observability_asgi.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_observability_issues_350_351_352.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_observability_otel.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_open_factory.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_oracle_backprop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_oracle_resolve_closes_dispute.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_oracle_resolve_events.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_orgs_cmd_hypermind_home.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_orgs_replay_reputation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_orgsim_kernel_store_persist.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_orgsim_persona_evolution.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_orgsim_persona_ticking.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_otel_export.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_pin_policy.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_pin_policy_compose_zero.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_placement_consistent_hash.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_placement_hint.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_plan_dag.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_plan_repair.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_portable_inclusion_proof.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_pq_default.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_pq_dual_vendor.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_pq_signing.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_priv_ns_conformance_coverage.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_profiles.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_property_based.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_protocol_version.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_public_surface_v05.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_pursue_workflow.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_rate_caveat.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_recorder_bounded.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_recorder_tail.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_reference_verifier_v2.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_rekor_client.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_rekor_downgrade.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_relata_author_hex.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_relata_cbor_disputes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_relata_grounding.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_relata_hybrid_search.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_relata_memory_store.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_relata_tools.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_remaining_gaps.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_replay.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_reputation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_reputation_concurrency.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_reputation_memory.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_reputation_staleness.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_reputation_weighted_slashing.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_research_tool_gateway.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_review_fixes.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_revocation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_revocation_lifecycle.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_room_epoch.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_sample_efficiency.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_schema_hash_pinned.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_secret_redaction.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_security_regressions_495_490_493_494.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_self_heal_cycle1.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_self_heal_cycle2.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_self_heal_cycle3.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_self_heal_cycle3_cascade_isolate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_self_heal_cycle3_governance.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_self_heal_cycle4.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_self_heal_cycle4_deliberator_broadcast.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_self_heal_cycle5.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_self_heal_cycle6.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_self_heal_cycle6_security_hardening.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_signer_protocol.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_skill_registry.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_sqlite_vector_hybrid.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_sth_cross_gossip.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_swarm_iq.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_swarm_iq_at_scale.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_swarm_iq_recommend.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_swarm_memory.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_swarm_memory_federation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_swarm_trace.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_swarm_vector_overflow.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_sybil_guard_consult.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_sync_agent.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_tal.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_tal_decay_hlc_wallclock.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_tal_decay_wired.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_tal_wire.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_task_execution.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_task_handle.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_task_handle_network.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_tcp_duplicate_kid_attack.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_tcp_edge.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_tcp_federation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_tcp_final.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_tcp_read_loop_cleanup.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_tcp_transport.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_tcp_transport_rust_interop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_theory_of_mind.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_transport.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_transport_scale_gaps.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_two_impl_interop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_uncertainty.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_uncertainty_edge.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_verify_brier_research_not_self_referential.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_verify_build_mcp_server_no_loop.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_verify_deliberator_posteriors_hydrated.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_verify_hypothesis_book_oracle_resolve.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_verify_self_reflector_topic_kwarg.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_wire.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_wire_edge_cases.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_wire_kid_stability.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_wire_p3.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_wire_v2.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_wire_version.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_witness_preimage_length_prefix.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_workflow_compensation.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_workflow_engine.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/test_workflow_replay.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/__init__.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/conftest.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_ai_01_fed_benchmark.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_ai_alignment_redteam.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_cy_05_ir_swarm.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_cy_11_ransomware_intel.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_ed_credentials.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_en_grid_coordinate.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_fi_04_bsa_314b.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_fi_22_ma_dataroom.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_gv_01_intel_sharing.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_gv_21_red_team.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_hc_06_rare_disease.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_hc_21_fed_learning.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_lg_ediscovery.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/tests/usecases/test_mf_supply_chain.py +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/transport-rust/Cargo.toml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/transport-rust/README.md +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/transport-rust/pyproject.toml +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/transport-rust/src/lib.rs +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/uv.lock +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/vercel.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/index.html +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/package-lock.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/package.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/App.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/api/client.ts +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/ActivityCanvas.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/AgentContribution.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/BrierHeatmap.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/CIQTrajectory.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/CitationGraph.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/DisputeTimeline.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/DissentList.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/Logo.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/NowAsking.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/PersonaRadar.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/PopulationGenerator.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/Term.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/forms/SchemaForm.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/result/AARTimeline.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/result/BacktestScorecard.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/result/ConformanceReport.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/result/CrisisTabletop.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/result/DecisionBracket.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/result/EvaluationReport.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/result/GovernanceReceipt.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/result/MethodNote.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/result/RedTeamReport.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/components/result/ScenarioTree.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/docs/index.ts +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/docs/render.ts +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/main.ts +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/router.ts +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/stores/sims.ts +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/styles.css +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/types/trace.ts +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/Agents.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/Docs.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/Evidence.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/Home.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/HowItWorks.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/Knowledge.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/Landing.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/Namespaces.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/Report.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/Security.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/SimCompare.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/SimDetail.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/SimList.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/SimLive.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/SimNew.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/Tools.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/src/views/UseCases.vue +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/tsconfig.json +0 -0
- {hypermind-2.3.0 → hypermind-2.4.0}/webui/vite.config.ts +0 -0
|
@@ -134,6 +134,9 @@ persona_trace.json
|
|
|
134
134
|
.mcp.json
|
|
135
135
|
trace.json
|
|
136
136
|
|
|
137
|
+
# `hmctl show -o` — generated canvas artifact (serve mode writes no files)
|
|
138
|
+
hypermind-network.html
|
|
139
|
+
|
|
137
140
|
# -----------------------------------------------------------------------------
|
|
138
141
|
# Local runtime data — never commit server state.
|
|
139
142
|
# `.data/` is the canonical docker-compose mount location; `data/` is legacy.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Gitleaks false positives — documentation placeholders, not real secrets.
|
|
2
|
+
# The curl-auth-header rule fires on the literal `sk-your-key` placeholder in
|
|
3
|
+
# the deploy troubleshooting docs. Fixed at HEAD (env-var references now);
|
|
4
|
+
# these fingerprints cover the two occurrences in history (commit 6cb2ff1)
|
|
5
|
+
# that the full-history push scan still reports.
|
|
6
|
+
6cb2ff17366b511c3992e9186763817040df7ba3:docs/deploy/troubleshooting.md:curl-auth-header:255
|
|
7
|
+
6cb2ff17366b511c3992e9186763817040df7ba3:docs/deploy/troubleshooting.md:curl-auth-header:259
|
|
@@ -14,6 +14,85 @@ changes only on major-version bumps.
|
|
|
14
14
|
|
|
15
15
|
## [Unreleased]
|
|
16
16
|
|
|
17
|
+
## [2.4.0] — 2026-08-24
|
|
18
|
+
|
|
19
|
+
### Added
|
|
20
|
+
- **`hmctl show` — live network canvas (`hypermind.viz`).** A read-only
|
|
21
|
+
infinite-canvas dashboard of the swarm: graph (pan/zoom, community halos,
|
|
22
|
+
per-agent detail drawer), agents table with reputation meters and outcome
|
|
23
|
+
sparklines, conversation stream, claims, disputes (FSM badges + transition
|
|
24
|
+
history), research artefacts, and a timeline scrubber that replays how the
|
|
25
|
+
network evolved. Two modes from one renderer: **serve live** (the new
|
|
26
|
+
default — `hmctl show` starts a loopback-only HTTP server on
|
|
27
|
+
`127.0.0.1:8791`, opens the browser, and the page polls a fresh snapshot
|
|
28
|
+
every `--interval` seconds, re-rendering in place with a live/reconnecting
|
|
29
|
+
chip) and **static artifact** (`-o file.html` — a fully self-contained
|
|
30
|
+
page with zero network code, safe to share or archive as audit evidence).
|
|
31
|
+
Sources, in priority order: `--relata-url` + `--namespace` (live Relata
|
|
32
|
+
ledger), a `hmctl orgs simulate --export` JSONL bundle (re-read whenever
|
|
33
|
+
the file changes on disk), `RELATA_URL` from the environment or
|
|
34
|
+
`~/.hypermind/env` (the hands-free default once `hmctl setup` has run),
|
|
35
|
+
or `--demo` (a zero-dependency in-process demo swarm). Re-running
|
|
36
|
+
`hmctl show` while a previous one is serving just re-opens the page.
|
|
37
|
+
Untrusted text (findings, reasons, statements) reaches the DOM via
|
|
38
|
+
`textContent` only — never `innerHTML`.
|
|
39
|
+
- **Ledger tenancy onboarding: `hmctl setup` + `hypermind.storage.tenancy`.**
|
|
40
|
+
Closes the onboarding gap where a fresh Relata deployment + `hmctl mcp
|
|
41
|
+
install` pointed at a tenant nobody ever created (Relata never auto-creates
|
|
42
|
+
tenants on first `X-Organization-Id`; the namespace↔tenant mapping is 1:1).
|
|
43
|
+
New `hypermind.storage.tenancy` module: `ensure_tenant()` (idempotent
|
|
44
|
+
create; 409 = already exists; 404/501 = server build without a tenant admin
|
|
45
|
+
API → `X-Organization-Id` label scoping, still supported), `probe_key_role()`
|
|
46
|
+
(admin / tenant / invalid / unknown), `verify_ledger()` (read-only
|
|
47
|
+
reachable → tenant → Hm\* types → key check), `bootstrap_ledger()` (ensure
|
|
48
|
+
tenant + register the four Hm types via the existing #192 provisioning path
|
|
49
|
+
+ verify). New `hmctl setup` command with three paths: **adopt** (deployment
|
|
50
|
+
already bootstrapped — verify + persist the tenant key), **elevate**
|
|
51
|
+
(supply an admin key once: create tenant, register types, then persist the
|
|
52
|
+
daily key), **local** (`--local`: SQLite ledger, zero network). Everything
|
|
53
|
+
is idempotent.
|
|
54
|
+
- **Admin/master key handling contract (`hmctl setup`).** The admin key is
|
|
55
|
+
never read from the environment — `--admin-key` flag or hidden prompt only,
|
|
56
|
+
held in memory for exactly the privileged calls, and never persisted. A
|
|
57
|
+
master key handed in as `--key` is probed on the server, detected, warned
|
|
58
|
+
about, rerouted to the bootstrap path, and *not* written to
|
|
59
|
+
`~/.hypermind/env` unless the operator explicitly consents
|
|
60
|
+
(`--allow-admin-key`). Keys are echoed as SHA-256 fingerprints only, never
|
|
61
|
+
in full.
|
|
62
|
+
- **`hmctl mcp serve --namespace`** — binds the swarm and the Relata tool
|
|
63
|
+
provider to one ledger tenant (they are 1:1). Also read from
|
|
64
|
+
`HYPERMIND_RELATA_NAMESPACE` (which `hmctl setup` writes) and from the
|
|
65
|
+
`namespace` key of the TOML config. The startup banner now shows the
|
|
66
|
+
active tenant.
|
|
67
|
+
- **`hmctl mcp install` harvests ledger tenancy.** `RELATA_TOKEN` and
|
|
68
|
+
`HYPERMIND_RELATA_NAMESPACE` join the auto-harvested env vars, sourced from
|
|
69
|
+
the current shell first and `~/.hypermind/env` second — the tenant + token
|
|
70
|
+
`hmctl setup` chose now reach host-launched MCP servers, which start with a
|
|
71
|
+
blank environment.
|
|
72
|
+
- **`hmctl doctor` ledger checks.** When `RELATA_URL` is configured, doctor
|
|
73
|
+
verifies the chain `hmctl setup` establishes — server reachable → tenant →
|
|
74
|
+
Hm\* types registered → `RELATA_TOKEN` accepted — with fix hints pointing
|
|
75
|
+
at `hmctl setup`. Unset `RELATA_URL` reports "local mode" instead.
|
|
76
|
+
- **`hmctl/envfile.py`** — merge-preserving writer for `~/.hypermind/env`
|
|
77
|
+
(always mode 0600; unknown keys, comments, and ordering survive rewrites).
|
|
78
|
+
`hmctl config` now uses it, so keys written by `hmctl setup` (or by hand)
|
|
79
|
+
are no longer clobbered when the wizard re-saves; the wizard also prompts
|
|
80
|
+
for `RELATA_TOKEN` / `HYPERMIND_RELATA_NAMESPACE` and displays them in its
|
|
81
|
+
status table.
|
|
82
|
+
|
|
83
|
+
### Fixed
|
|
84
|
+
- **`RelataBackend` reads survive real-server row quirks** (found by live
|
|
85
|
+
validation against a fresh Relata deployment, 2026-08-24):
|
|
86
|
+
`load_claims()` no longer crashes with `KeyError('wire_b64')` on the
|
|
87
|
+
internal `_sentinel` objects server builds keep in the `HmClaim` table —
|
|
88
|
+
every restore path (`attach_storage()`, `hmctl show --relata-url`,
|
|
89
|
+
`from_relata()`) was affected. The claim, stub, dispute, and reputation
|
|
90
|
+
loaders now `SELECT *` and project client-side: some Relata builds
|
|
91
|
+
intermittently return a tiny subset of rows (or none) for multi-column
|
|
92
|
+
projections while `SELECT *` returns them all, which silently dropped
|
|
93
|
+
disputes and, on some calls, every claim from ledger-sourced snapshots.
|
|
94
|
+
Regression-pinned in `tests/test_storage_relata_sentinels.py`.
|
|
95
|
+
|
|
17
96
|
## [2.3.0] — 2026-07-31
|
|
18
97
|
|
|
19
98
|
Bundles the four epics from the "swarm can research a topic end-to-end"
|
|
@@ -139,7 +139,7 @@ The living-simulation + research engine (spec: `docs/spec/20-swarm-intelligence.
|
|
|
139
139
|
- `replay.py` — `export_jsonl` dumps every record (signed claims as wire bytes + disputes/reputation/evidence/hypotheses); `replay_to_relata` re-inserts a run **without re-running the LLM work**.
|
|
140
140
|
- `sim.stream()` / `select_experts()` — streaming **tools-off** query over learned knowledge; consults a panel ranked by `hits × (1 + 0.7×rep + 0.3×fact_richness)`; `model=`/`client=` enable **learn-large / serve-small**. `_fact_richness()` is a log-damped ratio of confirmed/total facts for the expert's topic.
|
|
141
141
|
- `tool_providers.py` / `mcp_config.py` — per-cycle tool gateway + MCP auto-discovery. `distributed/` — TCP master/worker for horizontal scale. `templates/` — preset org factories.
|
|
142
|
-
- **Storage**: real `RelataBackend` (typed HmClaim/HmDispute/HmReputation) + `RelataMemoryStore` (evidence + hypotheses). Provision the Hm types once (admin
|
|
142
|
+
- **Storage**: real `RelataBackend` (typed HmClaim/HmDispute/HmReputation) + `RelataMemoryStore` (evidence + hypotheses). Provision the tenant + Hm types once via `hmctl setup` (admin key is prompted, never env-read — see `storage/tenancy.py`); `deploy/relata-serve.sh` / hypermind-deploy's `scripts/bootstrap-ledger.sh` do the same for scripted deployments. Multi-node federation is real over `transport/tcp.py::TCPGossipBus`.
|
|
143
143
|
|
|
144
144
|
### Other production modules
|
|
145
145
|
|
|
@@ -250,9 +250,9 @@ When changing a public verb, check that every example in `examples/` still runs
|
|
|
250
250
|
|
|
251
251
|
## Active milestone
|
|
252
252
|
|
|
253
|
-
As of 2026-
|
|
253
|
+
As of 2026-08-24, the SDK is at **2.4.0** on the **engineering GA** line (engineering GA shipped 2026-07-09 as 1.0.0; SemVer is binding). The protocol core, the full swarm-intelligence / mind layer, the `hypermind.orgs` deep-research engine (decomposition + self-refine, reasoning strategies + structured outcome parsing, hypothesis lifecycle with prediction-matching, architecture-native metrics, evidence retention + citations, cross-sim learned-fit persistence via KernelStore, streaming query, full-run replay, real Relata ledger + TCP federation, PDF/site-crawl discovery + RelataDB `document_ingest` alignment, goal-driven charter-decomposed swarms), and the independent Rust second-language port (`rust/`) have all landed. Remaining gates are **ecosystem, not code** — IETF I-D submission, IANA early-allocation, OpenSSF Sandbox/Incubating acceptance, third-party security audit, full Tamarin/ProVerif proofs, NLnet/Alpha-Omega awards, ≥2 non-ZySec maintainers, ≥3 pilot MOUs, 7-day chaos-test green run, side-channel CT 30d-green. See [`docs/project/roadmap.md`](docs/project/roadmap.md) for item-numbered status.
|
|
254
254
|
|
|
255
|
-
> **Recent releases.** v2.0.0 (SemVer-major consolidation: wire-version 3 supported, deprecated-API removal, libp2p first-class transport binding, TAL v0.2 wire messages, Sealed/Citeable lattice, second-language port in progress). v2.1.0–v2.1.5 (2026-07-27): Rust port landed (`rust/`), L1–L5 autonomy stack, FTS5 storage, MoA endpoint, IEEE-defensible eval benchmark, dark-theme HTML report. v2.2.0 (2026-07-28): autonomy pass (#983) — SSRF redirect/hostname hardening, deployment `profiles`, `coevolution`, `silent_failures`/`health`, `reputation_store`, `CachingResponder`/`DifficultyRouter`, hybrid SQLite search, active grounding gates (defaults changed, API-compatible). v2.2.1 (2026-07-29): CAP_REVOKE gossip + canonical-CBOR gate (#943 P1), TAL v0.2 signed wire messages (#943 P2), bi-temporal recall + cross-namespace Merkle citation proofs (#942), streamable-HTTP MCP gateway (#1013). v2.3.0 (2026-07-31): PDF/site-crawl discovery (#1018), RelataDB `document_ingest` alignment (#1019), goal-driven charter swarms (#1020), intra-expert research probe gate (#1021). The 2026-07-25 security-hardening fixes (issues #839-#844) shipped in 2.0 Phase 0. See [`CHANGELOG.md`](CHANGELOG.md) and [`docs/project/v2.0-plan.md`](docs/project/v2.0-plan.md).
|
|
255
|
+
> **Recent releases.** v2.0.0 (SemVer-major consolidation: wire-version 3 supported, deprecated-API removal, libp2p first-class transport binding, TAL v0.2 wire messages, Sealed/Citeable lattice, second-language port in progress). v2.1.0–v2.1.5 (2026-07-27): Rust port landed (`rust/`), L1–L5 autonomy stack, FTS5 storage, MoA endpoint, IEEE-defensible eval benchmark, dark-theme HTML report. v2.2.0 (2026-07-28): autonomy pass (#983) — SSRF redirect/hostname hardening, deployment `profiles`, `coevolution`, `silent_failures`/`health`, `reputation_store`, `CachingResponder`/`DifficultyRouter`, hybrid SQLite search, active grounding gates (defaults changed, API-compatible). v2.2.1 (2026-07-29): CAP_REVOKE gossip + canonical-CBOR gate (#943 P1), TAL v0.2 signed wire messages (#943 P2), bi-temporal recall + cross-namespace Merkle citation proofs (#942), streamable-HTTP MCP gateway (#1013). v2.3.0 (2026-07-31): PDF/site-crawl discovery (#1018), RelataDB `document_ingest` alignment (#1019), goal-driven charter swarms (#1020), intra-expert research probe gate (#1021). v2.4.0 (2026-08-24): `hmctl show` live network canvas (`hypermind.viz`), ledger tenancy onboarding (`hmctl setup` + `hypermind.storage.tenancy`), admin-key handling contract, `mcp serve --namespace`, doctor ledger checks, live-validated Relata read fixes (sentinel rows, projection quirk). The 2026-07-25 security-hardening fixes (issues #839-#844) shipped in 2.0 Phase 0. See [`CHANGELOG.md`](CHANGELOG.md) and [`docs/project/v2.0-plan.md`](docs/project/v2.0-plan.md).
|
|
256
256
|
|
|
257
257
|
> **Note on doc locations (2026-07-25):** `CHARTER.md`, `GOVERNANCE.md`, `MAINTAINERS.md`, `ROADMAP.md`, and `REPO_MAP.md` were moved from the repo root into [`docs/project/`](docs/project/) (renamed lowercase). Root retains only the GitHub platform files (`README`, `LICENSE`, `SECURITY`, `CODE_OF_CONDUCT`, `CONTRIBUTING`, `CHANGELOG`, `CODEOWNERS`) plus `CLAUDE.md`. See [`docs/INDEX.md`](docs/INDEX.md) for the full doc map.
|
|
258
258
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
2
|
Name: hypermind
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.4.0
|
|
4
4
|
Summary: Federated agent intelligence — reference SDK for the HyperMind SCITT contested-claims profile
|
|
5
5
|
Project-URL: Homepage, https://github.com/ZySec-AI/hypermind
|
|
6
6
|
Project-URL: Documentation, https://github.com/ZySec-AI/hypermind/tree/main/docs
|
|
@@ -91,7 +91,7 @@ Agents share what they learn, dispute what they doubt, and build reputation over
|
|
|
91
91
|
[](https://pypi.org/project/hypermind/)
|
|
92
92
|
[](LICENSE)
|
|
93
93
|
[](#status)
|
|
94
|
-
[](CHANGELOG.md)
|
|
95
95
|
|
|
96
96
|
**[Quickstart](#quickstart-30-seconds)** ·
|
|
97
97
|
**[MCP tools](#mcp-tools-63-tools)** ·
|
|
@@ -128,6 +128,7 @@ hits = await hm.retrieve("key size", min_trust=0.6) # → trust-
|
|
|
128
128
|
```bash
|
|
129
129
|
hmctl mcp install # auto-wires the host (read-only by default; --write to publish)
|
|
130
130
|
hmctl mcp install --local # fully offline: Ollama auto-detect + SQLite ledger, no API key
|
|
131
|
+
hmctl setup # using a Relata ledger? one command: tenant + types + key, verified
|
|
131
132
|
```
|
|
132
133
|
|
|
133
134
|
Then just talk naturally — *"What does the swarm know about CRISPR off-target effects?"*,
|
|
@@ -337,6 +338,7 @@ hmctl ingest notes.md --topic research # ingest documents into the swarm
|
|
|
337
338
|
hmctl dataset export --format dpo --out dpo.jsonl # export fine-tuning dataset
|
|
338
339
|
hmctl population create my-lab --template research_lab --size 5
|
|
339
340
|
hmctl eval # run the calibration metric suite
|
|
341
|
+
hmctl show # live network canvas (serve + auto-open; -o out.html for a static artifact)
|
|
340
342
|
hmctl orgs simulate --template university --topic "…" --rounds 6 --live
|
|
341
343
|
hmctl doctor # smoke-test the install
|
|
342
344
|
```
|
|
@@ -378,7 +380,7 @@ hmctl mcp install # wires Claude Desktop/Cursor + auto-adds fetch/Serper/SearchA
|
|
|
378
380
|
|
|
379
381
|
## Status
|
|
380
382
|
|
|
381
|
-
**Engineering GA** (1.0.0, 2026-07-09; SemVer binding). Current release: **2.
|
|
383
|
+
**Engineering GA** (1.0.0, 2026-07-09; SemVer binding). Current release: **2.4.0** (2026-08-24).
|
|
382
384
|
Remaining gates are **ecosystem, not code** (see [roadmap](docs/project/roadmap.md) §External).
|
|
383
385
|
|
|
384
386
|
- **Protocol** — 33 numbered spec sections (§00–§32) + independent [`reference_verifier/`](reference_verifier/) proving two-impl interop + second-language [`rust/`](rust/) port (v2.1.0)
|
|
@@ -13,7 +13,7 @@ Agents share what they learn, dispute what they doubt, and build reputation over
|
|
|
13
13
|
[](https://pypi.org/project/hypermind/)
|
|
14
14
|
[](LICENSE)
|
|
15
15
|
[](#status)
|
|
16
|
-
[](CHANGELOG.md)
|
|
17
17
|
|
|
18
18
|
**[Quickstart](#quickstart-30-seconds)** ·
|
|
19
19
|
**[MCP tools](#mcp-tools-63-tools)** ·
|
|
@@ -50,6 +50,7 @@ hits = await hm.retrieve("key size", min_trust=0.6) # → trust-
|
|
|
50
50
|
```bash
|
|
51
51
|
hmctl mcp install # auto-wires the host (read-only by default; --write to publish)
|
|
52
52
|
hmctl mcp install --local # fully offline: Ollama auto-detect + SQLite ledger, no API key
|
|
53
|
+
hmctl setup # using a Relata ledger? one command: tenant + types + key, verified
|
|
53
54
|
```
|
|
54
55
|
|
|
55
56
|
Then just talk naturally — *"What does the swarm know about CRISPR off-target effects?"*,
|
|
@@ -259,6 +260,7 @@ hmctl ingest notes.md --topic research # ingest documents into the swarm
|
|
|
259
260
|
hmctl dataset export --format dpo --out dpo.jsonl # export fine-tuning dataset
|
|
260
261
|
hmctl population create my-lab --template research_lab --size 5
|
|
261
262
|
hmctl eval # run the calibration metric suite
|
|
263
|
+
hmctl show # live network canvas (serve + auto-open; -o out.html for a static artifact)
|
|
262
264
|
hmctl orgs simulate --template university --topic "…" --rounds 6 --live
|
|
263
265
|
hmctl doctor # smoke-test the install
|
|
264
266
|
```
|
|
@@ -300,7 +302,7 @@ hmctl mcp install # wires Claude Desktop/Cursor + auto-adds fetch/Serper/SearchA
|
|
|
300
302
|
|
|
301
303
|
## Status
|
|
302
304
|
|
|
303
|
-
**Engineering GA** (1.0.0, 2026-07-09; SemVer binding). Current release: **2.
|
|
305
|
+
**Engineering GA** (1.0.0, 2026-07-09; SemVer binding). Current release: **2.4.0** (2026-08-24).
|
|
304
306
|
Remaining gates are **ecosystem, not code** (see [roadmap](docs/project/roadmap.md) §External).
|
|
305
307
|
|
|
306
308
|
- **Protocol** — 33 numbered spec sections (§00–§32) + independent [`reference_verifier/`](reference_verifier/) proving two-impl interop + second-language [`rust/`](rust/) port (v2.1.0)
|
|
@@ -18,6 +18,53 @@ tuning knob in a formatted table.
|
|
|
18
18
|
|
|
19
19
|
---
|
|
20
20
|
|
|
21
|
+
## Ledger onboarding (`hmctl setup`)
|
|
22
|
+
|
|
23
|
+
When `RELATA_URL` points at a Relata deployment, claims live in a **tenant**
|
|
24
|
+
— the Relata tenant the HyperMind namespace maps to, 1:1 (`HYPERMIND_RELATA_NAMESPACE`).
|
|
25
|
+
Relata does not auto-create tenants, so a fresh deployment needs one round of
|
|
26
|
+
onboarding before the SDK can persist anything:
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
hmctl setup # interactive: url, tenant, keys — verifies as it goes
|
|
30
|
+
hmctl setup --admin-key … --key … # non-interactive elevate + adopt
|
|
31
|
+
hmctl setup --local # no Relata: SQLite ledger, zero network
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Everything `hmctl setup` does is idempotent — re-running against a
|
|
35
|
+
bootstrapped server is a no-op re-verify. Docker deployments bootstrapped by
|
|
36
|
+
[hypermind-deploy](https://github.com/ZySec-AI/hypermind-deploy)'s
|
|
37
|
+
`start.sh` only need the **adopt** path (verify + persist the tenant key).
|
|
38
|
+
|
|
39
|
+
**Key model (security-relevant):**
|
|
40
|
+
|
|
41
|
+
| Key | Scope | Where it lives |
|
|
42
|
+
|---|---|---|
|
|
43
|
+
| tenant / daily key | read + write on one tenant's data | `RELATA_TOKEN` in `~/.hypermind/env` |
|
|
44
|
+
| admin / master key | tenant creation, type registration | **nowhere** — prompted or `--admin-key`, used once in memory |
|
|
45
|
+
|
|
46
|
+
The admin key is never read from the environment and never persisted by the
|
|
47
|
+
SDK. If a master key is passed as the daily key (`--key`), `hmctl setup`
|
|
48
|
+
probes its actual role on the server, warns that it is over-privileged,
|
|
49
|
+
uses it ephemerally for bootstrap, and refuses to persist it without
|
|
50
|
+
explicit consent (`--allow-admin-key`). Keys are displayed as SHA-256
|
|
51
|
+
fingerprints only.
|
|
52
|
+
|
|
53
|
+
`hmctl doctor` re-checks the chain on every run: server reachable → tenant →
|
|
54
|
+
Hm\* types registered → token accepted, with fix hints pointing back at
|
|
55
|
+
`hmctl setup`.
|
|
56
|
+
|
|
57
|
+
**Tenant data isolation is a server-side guarantee.** The SDK sends
|
|
58
|
+
`X-Organization-Id` on every request and namespace-filters reputation rows it
|
|
59
|
+
reads, but query-result scoping is enforced by Relata, not the client. On the
|
|
60
|
+
free Relata profile (verified live 2026-08-24) all tenants' rows are returned
|
|
61
|
+
to every tenant — onboarding still works, but tenants on such a build share
|
|
62
|
+
one data plane. Enforce isolation at the Relata tier (licensed profile or a
|
|
63
|
+
Relata build with row-level org scoping) before relying on it for
|
|
64
|
+
multi-tenant deployments.
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
21
68
|
## LLM / Responder
|
|
22
69
|
|
|
23
70
|
| Variable | Default | Description |
|
|
@@ -46,7 +93,7 @@ tuning knob in a formatted table.
|
|
|
46
93
|
| `RELATA_BEARER_TOKEN` | *(none)* | Bearer token for authenticating requests to RelataDB. Also accepted as `RELATA_TOKEN`. Required when the RelataDB instance is protected by token auth (e.g. managed cloud deployments). Source: `src/hypermind/integrations/client.py`. |
|
|
47
94
|
| `RELATA_TOKEN` | *(none)* | Alias for `RELATA_BEARER_TOKEN` (checked as fallback). |
|
|
48
95
|
| `RELATA_MCP_PURPOSE` | `intops` | Purpose tag stamped on claims written through the MCP server. Legacy alias `RELATA_PURPOSE` is also accepted. Source: `src/hypermind/config.py`. |
|
|
49
|
-
| `HYPERMIND_RELATA_NAMESPACE` | `hypermind` | Relata tenant namespace shared across SDK paths (client, OrgSim,
|
|
96
|
+
| `HYPERMIND_RELATA_NAMESPACE` | `hypermind` | Relata tenant namespace shared across SDK paths (client, OrgSim, `mcp serve`). Per-org namespaces are sub-scoped as `<tenant>:<org>` inside this tenant. Written by `hmctl setup`; `hmctl mcp serve --namespace` overrides per-launch. Source: `src/hypermind/config.py`. |
|
|
50
97
|
| `HYPERMIND_DB` | `~/.hypermind/cache.db` | Path to the local SQLite cache database. Auto-activated when `RELATA_URL` is not set. Persists claims, agent state, and hypothesis records across restarts. |
|
|
51
98
|
| `HYPERMIND_STORAGE` | *(auto)* | Force a storage backend: `relata` or `sqlite`. When unset the SDK selects `relata` if `RELATA_URL` is present, otherwise `sqlite`. Source: `src/hypermind/storage/__init__.py`. |
|
|
52
99
|
| `HYPERMIND_NAMESPACE` | *(sandbox default)* | Default namespace ID used when creating the storage backend. Source: `src/hypermind/storage/__init__.py`. |
|
|
@@ -443,7 +490,8 @@ The `hm-moa` model on the OpenAI-compatible endpoint is configured via the `HYPE
|
|
|
443
490
|
## See also
|
|
444
491
|
|
|
445
492
|
- `hmctl env-vars` — print a live table of all tuning knobs with current values
|
|
446
|
-
- `hmctl
|
|
493
|
+
- `hmctl setup` — one-command ledger onboarding: ensure tenant, register Hm\* types, verify, persist the daily key
|
|
494
|
+
- `hmctl doctor` — health-check that reports `HYPERMIND_SSE_PORT`, `HYPERMIND_WEBHOOK_PORT`, `HYPERMIND_WEBHOOK_SECRET`, and (when `RELATA_URL` is set) the ledger tenant/types/token chain
|
|
447
495
|
- `hmctl config` — interactive wizard for setting the most common variables
|
|
448
496
|
- `hmctl status` — shows LLM, Relata, web search backend, MCP servers, and what to fix
|
|
449
497
|
- [docs/integrations.md](integrations.md) — integration guide and advanced tuning knobs
|
|
@@ -49,7 +49,7 @@ The script will:
|
|
|
49
49
|
HyperMind setup — press Enter to keep the shown default.
|
|
50
50
|
|
|
51
51
|
RELATA_TOKEN (data-store auth) [existing-token-or-generated]:
|
|
52
|
-
OPENAI_API_KEY [keep existing]:
|
|
52
|
+
OPENAI_API_KEY [keep existing]: <your-openai-key>
|
|
53
53
|
OPENAI_BASE_URL [https://api.minimax.io/v1]:
|
|
54
54
|
HYPERMIND_LLM_MODEL [MiniMax-M3]:
|
|
55
55
|
|
|
@@ -251,13 +251,13 @@ Examples:
|
|
|
251
251
|
|
|
252
252
|
**Step 4: Test provider is reachable**
|
|
253
253
|
```bash
|
|
254
|
-
# From host
|
|
254
|
+
# From host (exports your real key first: export OPENAI_API_KEY=...)
|
|
255
255
|
curl https://api.openai.com/v1/models \
|
|
256
|
-
-H "Authorization: Bearer
|
|
256
|
+
-H "Authorization: Bearer $OPENAI_API_KEY"
|
|
257
257
|
|
|
258
|
-
# From inside container
|
|
258
|
+
# From inside container (reads the key the container already has)
|
|
259
259
|
docker exec hm-engine curl https://api.openai.com/v1/models \
|
|
260
|
-
-H "Authorization: Bearer
|
|
260
|
+
-H "Authorization: Bearer \$OPENAI_API_KEY"
|
|
261
261
|
```
|
|
262
262
|
|
|
263
263
|
If connection failed: Check firewall/proxy.
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "hypermind"
|
|
7
|
-
version = "2.
|
|
7
|
+
version = "2.4.0"
|
|
8
8
|
description = "Federated agent intelligence — reference SDK for the HyperMind SCITT contested-claims profile"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.12,<3.15"
|
|
@@ -55,6 +55,7 @@ def main() -> None:
|
|
|
55
55
|
hmctl mcp install wire into Claude Desktop / Cursor
|
|
56
56
|
hmctl status health-check your installation
|
|
57
57
|
hmctl doctor smoke-test SDK invariants
|
|
58
|
+
hmctl show agents/comms/reputation as a canvas map
|
|
58
59
|
"""
|
|
59
60
|
|
|
60
61
|
|
|
@@ -68,6 +69,17 @@ from hmctl.eval_cmd import eval_group as _eval_group
|
|
|
68
69
|
|
|
69
70
|
main.add_command(_eval_group, name="eval")
|
|
70
71
|
|
|
72
|
+
# `hmctl show` — read-only infinite-canvas map of agents/communications/
|
|
73
|
+
# reputation/communities, with a timeline scrubber.
|
|
74
|
+
from hmctl.show_cmd import show_cmd as _show_cmd
|
|
75
|
+
|
|
76
|
+
main.add_command(_show_cmd, name="show")
|
|
77
|
+
|
|
78
|
+
# `hmctl setup` — one-command ledger onboarding (tenant + types + key → env).
|
|
79
|
+
from hmctl.setup_cmd import setup_cmd as _setup_cmd
|
|
80
|
+
|
|
81
|
+
main.add_command(_setup_cmd, name="setup")
|
|
82
|
+
|
|
71
83
|
|
|
72
84
|
@main.command()
|
|
73
85
|
@click.option(
|
|
@@ -348,6 +360,64 @@ def doctor(check_clock: bool, strict_pq: bool) -> None:
|
|
|
348
360
|
"HMAC verification in production."
|
|
349
361
|
)
|
|
350
362
|
|
|
363
|
+
# (4) Ledger tenancy — when a Relata deployment is configured, verify the
|
|
364
|
+
# tenant/key/types chain `hmctl setup` establishes. Bounded timeout so
|
|
365
|
+
# doctor stays fast against a down server.
|
|
366
|
+
try:
|
|
367
|
+
from hmctl.envfile import read_env_file
|
|
368
|
+
|
|
369
|
+
_file_env = read_env_file()
|
|
370
|
+
except Exception:
|
|
371
|
+
_file_env = {}
|
|
372
|
+
_ledger_url = _os_doctor.environ.get("RELATA_URL") or _file_env.get("RELATA_URL") or ""
|
|
373
|
+
if _ledger_url:
|
|
374
|
+
from hypermind.storage.tenancy import verify_ledger
|
|
375
|
+
|
|
376
|
+
_ledger_tenant = (
|
|
377
|
+
_os_doctor.environ.get("HYPERMIND_RELATA_NAMESPACE")
|
|
378
|
+
or _file_env.get("HYPERMIND_RELATA_NAMESPACE")
|
|
379
|
+
or "hypermind"
|
|
380
|
+
)
|
|
381
|
+
_ledger_token = _os_doctor.environ.get("RELATA_TOKEN") or _file_env.get("RELATA_TOKEN")
|
|
382
|
+
_led = verify_ledger(
|
|
383
|
+
_ledger_url,
|
|
384
|
+
tenant=_ledger_tenant,
|
|
385
|
+
token=_ledger_token,
|
|
386
|
+
expect_types=("HmClaim", "HmDispute", "HmReputation", "HmTranscript"),
|
|
387
|
+
timeout_s=2.0,
|
|
388
|
+
)
|
|
389
|
+
if not _led.reachable:
|
|
390
|
+
click.echo(f"[doctor] ledger ~ {_ledger_url} unreachable (skipping tenant checks)")
|
|
391
|
+
_warnings.append(
|
|
392
|
+
f"RELATA_URL is set but {_ledger_url} did not answer /health — "
|
|
393
|
+
"claims will not persist to the ledger."
|
|
394
|
+
)
|
|
395
|
+
else:
|
|
396
|
+
_missing = [t for t, s in _led.types.items() if s not in ("registered", "exists")]
|
|
397
|
+
if _led.key_role == "invalid":
|
|
398
|
+
click.echo(
|
|
399
|
+
f"[doctor] ledger ~ {_ledger_url} reachable, but RELATA_TOKEN was rejected"
|
|
400
|
+
)
|
|
401
|
+
_warnings.append(
|
|
402
|
+
"RELATA_TOKEN rejected by the ledger — re-run `hmctl setup` with a valid key."
|
|
403
|
+
)
|
|
404
|
+
elif _missing:
|
|
405
|
+
click.echo(
|
|
406
|
+
f"[doctor] ledger ~ {_ledger_url} reachable, types missing: "
|
|
407
|
+
f"{', '.join(_missing)}"
|
|
408
|
+
)
|
|
409
|
+
_warnings.append(
|
|
410
|
+
f"Ledger types not registered ({', '.join(_missing)}) — run "
|
|
411
|
+
"`hmctl setup --admin-key …` to provision them."
|
|
412
|
+
)
|
|
413
|
+
else:
|
|
414
|
+
click.echo(
|
|
415
|
+
f"[doctor] ledger ✓ {_ledger_url} · tenant '{_ledger_tenant}' · "
|
|
416
|
+
f"key {_led.key_role} ({_led.key_fingerprint}) · types registered"
|
|
417
|
+
)
|
|
418
|
+
else:
|
|
419
|
+
click.echo("[doctor] ledger ~ not configured (local mode — see `hmctl setup --local`)")
|
|
420
|
+
|
|
351
421
|
for _msg in _warnings:
|
|
352
422
|
click.echo(f"[doctor] warn {_msg}", err=True)
|
|
353
423
|
for _msg in _errors:
|
|
@@ -2235,6 +2305,16 @@ def config_cmd(non_interactive: bool) -> None:
|
|
|
2235
2305
|
existing.get("RELATA_URL", "[dim]not set[/]"),
|
|
2236
2306
|
"✓" if existing.get("RELATA_URL") else "~",
|
|
2237
2307
|
)
|
|
2308
|
+
table.add_row(
|
|
2309
|
+
"RELATA_TOKEN",
|
|
2310
|
+
"***" if existing.get("RELATA_TOKEN") else "[dim]not set[/]",
|
|
2311
|
+
"✓" if existing.get("RELATA_TOKEN") else "~",
|
|
2312
|
+
)
|
|
2313
|
+
table.add_row(
|
|
2314
|
+
"HYPERMIND_RELATA_NAMESPACE",
|
|
2315
|
+
existing.get("HYPERMIND_RELATA_NAMESPACE", "[dim]hypermind (default)[/]"),
|
|
2316
|
+
"✓" if existing.get("HYPERMIND_RELATA_NAMESPACE") else "~",
|
|
2317
|
+
)
|
|
2238
2318
|
table.add_row(
|
|
2239
2319
|
"HYPERMIND_DB", existing.get("HYPERMIND_DB", f"[dim]auto ({_HM_HOME}/cache.db)[/]"), "✓"
|
|
2240
2320
|
)
|
|
@@ -2290,6 +2370,12 @@ def config_cmd(non_interactive: bool) -> None:
|
|
|
2290
2370
|
"RELATA_URL",
|
|
2291
2371
|
"e.g. http://localhost:5432 or https://your-tenant.relatadb.dev",
|
|
2292
2372
|
)
|
|
2373
|
+
prompt_field(
|
|
2374
|
+
"Tenant key", "RELATA_TOKEN", "prefer `hmctl setup` — it verifies first", secret=True
|
|
2375
|
+
)
|
|
2376
|
+
prompt_field(
|
|
2377
|
+
"Tenant / namespace", "HYPERMIND_RELATA_NAMESPACE", "the Relata tenant claims write to"
|
|
2378
|
+
)
|
|
2293
2379
|
console.print()
|
|
2294
2380
|
|
|
2295
2381
|
console.print("[bold]SQLite local cache[/]")
|
|
@@ -2305,25 +2391,11 @@ def config_cmd(non_interactive: bool) -> None:
|
|
|
2305
2391
|
console.print("[dim]No changes.[/]")
|
|
2306
2392
|
return
|
|
2307
2393
|
|
|
2308
|
-
# Write env file
|
|
2309
|
-
|
|
2310
|
-
|
|
2311
|
-
|
|
2312
|
-
|
|
2313
|
-
"SQLite": ["HYPERMIND_DB"],
|
|
2314
|
-
"Observability": ["OTEL_EXPORTER_OTLP_ENDPOINT"],
|
|
2315
|
-
}
|
|
2316
|
-
for section, keys in sections.items():
|
|
2317
|
-
written = False
|
|
2318
|
-
for k in keys:
|
|
2319
|
-
if updates.get(k):
|
|
2320
|
-
if not written:
|
|
2321
|
-
lines.append(f"\n# {section}\n")
|
|
2322
|
-
written = True
|
|
2323
|
-
lines.append(f"{k}={updates[k]}\n")
|
|
2324
|
-
|
|
2325
|
-
with open(env_file, "w") as f:
|
|
2326
|
-
f.writelines(lines)
|
|
2394
|
+
# Write env file — merge-preserving: keys this wizard doesn't know about
|
|
2395
|
+
# (e.g. those written by `hmctl setup`, or hand-added) survive the rewrite.
|
|
2396
|
+
from hmctl.envfile import update_env_file
|
|
2397
|
+
|
|
2398
|
+
update_env_file({k: v for k, v in updates.items() if v}, path=env_file)
|
|
2327
2399
|
|
|
2328
2400
|
console.print(f"[green]✓[/] Saved to {env_file}")
|
|
2329
2401
|
console.print("\n[bold]Restart the MCP server to apply changes:[/]")
|
|
@@ -3215,6 +3287,17 @@ main.add_command(mcp_group, name="mcp")
|
|
|
3215
3287
|
default=False,
|
|
3216
3288
|
help="Derive the --sign-as seed from this machine's hardware id (deterministic across restarts).",
|
|
3217
3289
|
)
|
|
3290
|
+
@click.option(
|
|
3291
|
+
"--namespace",
|
|
3292
|
+
"namespace",
|
|
3293
|
+
envvar="HYPERMIND_RELATA_NAMESPACE",
|
|
3294
|
+
default=None,
|
|
3295
|
+
help=(
|
|
3296
|
+
"Ledger tenant / HyperMind namespace for both the client and the Relata "
|
|
3297
|
+
"tool provider (they are 1:1). Defaults to 'integrations' when unset; "
|
|
3298
|
+
"`hmctl setup` writes this env var. [env: HYPERMIND_RELATA_NAMESPACE]"
|
|
3299
|
+
),
|
|
3300
|
+
)
|
|
3218
3301
|
@click.option(
|
|
3219
3302
|
"--log-level",
|
|
3220
3303
|
"log_level",
|
|
@@ -3230,6 +3313,7 @@ def mcp_serve_cmd(
|
|
|
3230
3313
|
writable: bool,
|
|
3231
3314
|
sign_as_path: str | None,
|
|
3232
3315
|
machine_identity: bool,
|
|
3316
|
+
namespace: str | None,
|
|
3233
3317
|
sse_port: int | None,
|
|
3234
3318
|
tcp_port: int | None,
|
|
3235
3319
|
ws_port: int | None,
|
|
@@ -3243,6 +3327,8 @@ def mcp_serve_cmd(
|
|
|
3243
3327
|
Pass --sign-as PATH to attribute every call to a named, revocable identity.
|
|
3244
3328
|
Pass --log-level info (or debug/warning/error) to stream logs to stderr.
|
|
3245
3329
|
Pass --config /path/to/mcp.toml to load all options from a TOML file (CLI flags override).
|
|
3330
|
+
Pass --namespace (or set HYPERMIND_RELATA_NAMESPACE, written by `hmctl setup`)
|
|
3331
|
+
to bind the swarm and the Relata tool provider to one ledger tenant.
|
|
3246
3332
|
"""
|
|
3247
3333
|
# Load TOML config file; CLI flags always win (ParameterSource.DEFAULT check).
|
|
3248
3334
|
if config_path:
|
|
@@ -3269,6 +3355,8 @@ def mcp_serve_cmd(
|
|
|
3269
3355
|
sign_as_path = str(_cfg["sign_as"])
|
|
3270
3356
|
if "machine_identity" in _cfg and _src("machine_identity") == ParameterSource.DEFAULT:
|
|
3271
3357
|
machine_identity = bool(_cfg["machine_identity"])
|
|
3358
|
+
if "namespace" in _cfg and _src("namespace") == ParameterSource.DEFAULT:
|
|
3359
|
+
namespace = str(_cfg["namespace"])
|
|
3272
3360
|
if "log_level" in _cfg and _src("log_level") == ParameterSource.DEFAULT:
|
|
3273
3361
|
log_level = str(_cfg["log_level"])
|
|
3274
3362
|
|
|
@@ -3541,7 +3629,11 @@ def mcp_serve_cmd(
|
|
|
3541
3629
|
)
|
|
3542
3630
|
|
|
3543
3631
|
server, client = build_mcp_server(
|
|
3544
|
-
swarm=swarm,
|
|
3632
|
+
swarm=swarm,
|
|
3633
|
+
writable=writable,
|
|
3634
|
+
sign_as=sign_as,
|
|
3635
|
+
responder=responder,
|
|
3636
|
+
**({"namespace": namespace} if namespace else {}),
|
|
3545
3637
|
)
|
|
3546
3638
|
|
|
3547
3639
|
# Resolve TCP port BEFORE the banner so the banner shows the actual port.
|
|
@@ -3579,6 +3671,7 @@ def mcp_serve_cmd(
|
|
|
3579
3671
|
f" config {'✓ ' + str(_HM_HOME) + '/env' if has_env_file else f'✗ not found → touch {_HM_HOME}/env (KEY=VALUE, one per line)'}",
|
|
3580
3672
|
f" otel {'✓ ' + otel_ep if otel_ep else '✗ off → set OTEL_EXPORTER_OTLP_ENDPOINT'}",
|
|
3581
3673
|
f" relata {'✓ ' + relata if relata else '✗ off → get Relata at relatadb.dev or: docker pull openworkbench/relata-db:latest'}",
|
|
3674
|
+
f" tenant {namespace or 'integrations'} (namespace ↔ Relata tenant; hmctl setup to change)",
|
|
3582
3675
|
]
|
|
3583
3676
|
|
|
3584
3677
|
# web_search row — show active backend + tool count wired into hm_ask
|
|
@@ -3891,16 +3984,28 @@ def mcp_install_cmd(
|
|
|
3891
3984
|
# Gap #5: Claude Desktop / Cursor launches hmctl in a blank env — shell API keys
|
|
3892
3985
|
# are invisible to the host. Auto-harvest known LLM keys from the current
|
|
3893
3986
|
# shell into the mcp.json entry so the host always sees them.
|
|
3987
|
+
# Ledger tenancy joins the harvest: the tenant + token `hmctl setup` chose
|
|
3988
|
+
# must reach the host-launched server, or MCP writes to the wrong tenant.
|
|
3989
|
+
# Source precedence: current shell first, then ~/.hypermind/env (setup's
|
|
3990
|
+
# persistence target) — the shell never gets shadowed by a stale file.
|
|
3894
3991
|
_KEY_VARS = [
|
|
3895
3992
|
"OPENAI_API_KEY",
|
|
3896
3993
|
"ANTHROPIC_API_KEY",
|
|
3897
3994
|
"OPENAI_BASE_URL",
|
|
3898
3995
|
"HYPERMIND_LLM_MODEL",
|
|
3899
3996
|
"RELATA_URL",
|
|
3997
|
+
"RELATA_TOKEN",
|
|
3998
|
+
"HYPERMIND_RELATA_NAMESPACE",
|
|
3900
3999
|
"HYPERMIND_DB",
|
|
3901
4000
|
]
|
|
4001
|
+
try:
|
|
4002
|
+
from hmctl.envfile import read_env_file
|
|
4003
|
+
|
|
4004
|
+
_file_env = read_env_file()
|
|
4005
|
+
except Exception:
|
|
4006
|
+
_file_env = {}
|
|
3902
4007
|
for _kv in _KEY_VARS:
|
|
3903
|
-
_val = os.environ.get(_kv)
|
|
4008
|
+
_val = os.environ.get(_kv) or _file_env.get(_kv)
|
|
3904
4009
|
if _val and _kv not in merged_env:
|
|
3905
4010
|
merged_env[_kv] = _val
|
|
3906
4011
|
|