Spaces:
Running
Running
deploy(hf): sync szl-holdings/killinchu@c90d18f71292a61000e300502ff070800e3dbf55 derived COPY set
831d593 verified | # syntax=docker/dockerfile:1 | |
| # SPDX-License-Identifier: Apache-2.0 | |
| # © 2026 Lutar, Stephen P. — SZL Holdings · ORCID 0009-0001-0110-4173 · Doctrine v11 | |
| # | |
| # Killinchu HF Docker Space — Andean Drone Intelligence (vessels pivot). | |
| # | |
| # a11oy-style: FastAPI app, mount pre-built React SPA from /app/static, base path "/", | |
| # SPA history fallback, /api/killinchu/v1/* endpoints, honest disclosure block. | |
| # No Node runtime needed (pure-FastAPI backend; SPA is pre-built at deploy time). | |
| # | |
| # Serves: | |
| # / — SPA front door (drone intelligence landing) | |
| # /assets/* — SPA JS/CSS chunks (vite base="/") | |
| # /drones /map /swarm ... — SPA routes (history fallback) | |
| # /api/killinchu/v1/* — real protocol decoders + drone DB + counter-UAS Λ-gate | |
| # /api/vessels/* — preserved aliases (vessels GREEN baseline, ADDITIVE) | |
| # | |
| # HF Space requirement: listen on PORT 7860. | |
| FROM python:3.12-slim@sha256:423ed6ab25b1921a477529254bfeeabf5855151dc2c3141699a1bfc852199fbf | |
| WORKDIR /app | |
| RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| ca-certificates && \ | |
| apt-get clean && rm -rf /var/lib/apt/lists/* | |
| # Python dependencies — real protocol stacks, no mocks. | |
| # REPRODUCIBILITY (founder-flag #5, SWEEP-3 + FINAL DEP-PIN): EXACT pins (==) on | |
| # ALL installs. Each == is the version pip ACTUALLY resolved in the RUNNING build | |
| # (HF Space build log, commit 6db0d2f, 2026-06-18, "Successfully installed" lines) | |
| # — a lockfile that preserves current behavior, NOT an upgrade. Every pin satisfies | |
| # its prior range. The previously-DEFERRED `|| true` / fallback-chain installs | |
| # below (psycopg 3.3.4, websocket-client 1.9.0, scipy 1.17.1 / networkx 3.6.1 / | |
| # PyYAML 6.0.3, sgp4 2.25, huggingface_hub 1.20.0) are now pinned to those exact | |
| # resolved versions under FULL founder authorization. Their `|| true` / | |
| # fallback-chain safety is INTENTIONALLY KEPT: if a wheel for the pinned version is | |
| # ever yanked, the build still stays green and the relevant organ degrades to its | |
| # honest pure-python / SQLite / ROADMAP-skeleton fallback (no fabricated data). | |
| RUN pip install --no-cache-dir \ | |
| "fastapi==0.137.2" \ | |
| "uvicorn[standard]==0.49.0" \ | |
| "httpx==0.28.1" \ | |
| "starlette==1.3.1" \ | |
| "pyModeS==3.3.0" \ | |
| "pymavlink==2.4.49" | |
| # BE hardening: slowapi rate limiter (60/min/IP). pydantic+fastapi already present. | |
| RUN pip install --no-cache-dir "slowapi==0.1.10" | |
| # Real persistent backend: psycopg (v3) so killinchu_backend is genuinely Postgres-first | |
| # when a DATABASE_URL is configured. Pure-python wheel; if absent the backend still runs | |
| # on durable SQLite (HF Spaces has no Postgres). `|| true` so a wheel hiccup can never | |
| # break the image build — the backend degrades to SQLite, never crashes. | |
| RUN pip install --no-cache-dir "psycopg[binary]==3.3.4" || pip install --no-cache-dir "psycopg==3.3.4" || true | |
| # ADDITIVE (Yachay / Provenance Hardening): cryptography for DSSE+Cosign Khipu signing. | |
| RUN pip install --no-cache-dir "cryptography==49.0.0" | |
| # ADDITIVE (Formulas real-edge-v2, Opus 4.8, 2026-06-03): numpy is REQUIRED for the real | |
| # Kalman trajectory smoother in szl_shared_formulas/kalman.py (no pure-Python mock path). | |
| RUN pip install --no-cache-dir "numpy==2.4.6" | |
| # ADDITIVE (Yachay / PQC): pure-Python ML-DSA-65 (NIST FIPS 204) backend for | |
| # /khipu/sign?mode={pqc,hybrid}. liboqs (oqs-python) is preferred in prod but is | |
| # a C lib not always installable; dilithium-py is the pure-Python fallback so | |
| # hybrid signing works in the Space. ECDSA stays the default regardless. | |
| RUN pip install --no-cache-dir "dilithium-py==1.4.0" | |
| # ADDITIVE (Wave A real-data feeds): websocket-client for the AISStream.io live | |
| # wss vessel collector (PRIMARY keyed AIS source). Optional — the vessels feed | |
| # degrades gracefully to the no-key Digitraffic REST fallback if this is absent | |
| # or no AISStream key is in the Space secret store. Real data either way. | |
| RUN pip install --no-cache-dir "websocket-client==1.9.0" || true | |
| # ADDITIVE (real-edge): numpy for the constant-velocity Kalman trajectory smoother | |
| # in szl_shared_formulas/kalman.py (real linear-algebra filter, no mocks). | |
| RUN pip install --no-cache-dir "numpy==2.4.6" | |
| # ADDITIVE (DEV-WIRE-K R1, Opus 4.8, 2026-06-09): scipy for exact KS two-sample | |
| # (scipy.stats.ks_2samp) in the Posture & Drift detectors; networkx for real graph | |
| # metrics (clustering / centrality / Fiedler lambda2 / DAG integrity) in Topology & | |
| # Health; PyYAML to parse the REAL deploy/uds-package.yaml allow rules for the | |
| # Attack-Surface and Zero-Trust mesh graphs. ALL THREE ARE OPTIONAL — killinchu_posture | |
| # _topology.py ships pure-python/numpy fallbacks (identical Kolmogorov asymptotic KS, | |
| # numpy-based graph metrics, hand-rolled YAML reader) so a rebuild lag never breaks the | |
| # surface. `|| true` keeps the build green if a wheel is unavailable. | |
| RUN pip install --no-cache-dir "scipy==1.17.1" "networkx==3.6.1" "PyYAML==6.0.3" || true | |
| # Hardens the Odoo ERP connector's XML-RPC parser against XML entity-expansion / | |
| # decompression-bomb attacks (bandit B411). szl_connectors/erp/odoo.py applies | |
| # defusedxml.xmlrpc.monkey_patch() before parsing untrusted server responses; | |
| # this pin makes that path active in the running image (pure-python wheel). | |
| RUN pip install --no-cache-dir "defusedxml==0.7.1" | |
| # Copy the pre-built SPA to the static root. | |
| # index.html + assets/* served directly at / and /assets/*; unknown GET -> index.html. | |
| COPY static/ ./static/ | |
| # ADDITIVE (cathedral front-door hero): sovereign 3D landing matching the org card. | |
| # Served at / by serve.py (operator one click in at /operator). The hero JS + | |
| # vendored ES-module Three.js r160 (MIT) live under static/ (already copied above). | |
| # NO CDN. Doctrine v11 LOCKED 749/14/163. Trust Gate = Conjecture. | |
| # --------------------------------------------------------------------------- | |
| # CONSOLIDATED ROOT-FILE COPY LAYERS (Docker max-depth fix, Opus 4.8). | |
| # Docker creates one image layer per COPY. The 81 individual root-file -> | |
| # same-name COPYs (incl. 5x redundant serve.py) were collapsed into the | |
| # grouped multi-source COPYs below (dest is the /app WORKDIR root '.'). | |
| # IDENTICAL file set ships to IDENTICAL paths — proven by set-equality check. | |
| # This Dockerfile STILL never uses `COPY . .`; every file is explicit. | |
| # Subpath/dir/rename COPYs (static/, web/*, src/*, szl_connectors/*, etc.) | |
| # are left untouched. Signed-off-by: Yachay <yachay@szlholdings.ai> | |
| # --------------------------------------------------------------------------- | |
| COPY cathedral.html knowledge.json operator_shell_v4.py serve.py killinchu_receipt_export.py szl_evidence_research.py szl_readiness.py szl_quantum_bio.py szl_quant_qbio_holo.py szl_unified_formulas.py szl_cuas_formulas.py killinchu_research_sources.py szl_contracting.py szl_conjecture_factory.py killinchu_backend.py a11oy_hf_assets.py drones_db.json killinchu_protocols.py killinchu_expansion.py killinchu_naval_haps.py szl_dsse.py szl_content_address.py szl_safe_static.py szl_provenance.py LEGAL_BOUNDARIES.md ./ | |
| # Shared Spaces modules (Dev2+3) — canonical handoffs + isolated-origin tiles. | |
| # Per-file COPY (this Dockerfile uses no `COPY . .`) or serve.py's guarded import | |
| # falls back and /spaces + /api/<ns>/v1/spaces/health 404. | |
| COPY szl_spaces_proxy.py szl_spaces_surface.py ./ | |
| COPY szl_live_wires.py live_wires.html live_wires_3d.js szl_rosie_companion.py killinchu_szl_pqc_sign.py szl_rekor.py killinchu_osint.py killinchu_intel_archive_card.py szl_be_hardening.py szl_unay.py szl_khipu_lmdb.py szl_khipu_replicate.py szl_unay_routes.py szl_warhacker_aliases.py killinchu_genius.py killinchu_warhacker_demos.py killinchu_v3.py szl_brain.py szl_rag.py szl_formulas.py szl_understudy.py ./ | |
| # Canonical mixed-source Hugging Face dataset card and rights contract. | |
| COPY datasets/killinchu-osint-corpus/ ./datasets/killinchu-osint-corpus/ | |
| COPY szl_killinchu_cookbook.py szl_uds_hardening.py killinchu_fusion.py szl_v4_fleet.py szl_ken.py killinchu_frontier_patch.py killinchu_drone_routes.py killinchu_parity.py killinchu_cannonico.py killinchu_elite_console.py _vendor_blobs.py killinchu_fleet_vessels.py killinchu_maritime_risk.py killinchu_maritime_intel.py killinchu_maritime_view.py killinchu_live_feeds.py killinchu_feeds_realdata.py killinchu_asw.py killinchu_anatomy.py killinchu_health_twin.py fleet_vessels_data.json killinchu_beyond.py szl_khipu_consensus.py killinchu_mesh.py killinchu_mesh_view.py killinchu_formula_endpoints.py killinchu_edge_formulas.py killinchu_active_flux.py killinchu_platform_dynamics.py ./ | |
| COPY killinchu_edge_console.py szl_agentic_loop.py szl_anatomy_routes.py szl_formula_wiring.py a11oy_code_engine.py killinchu_ops_control.py szl_llm_registry.py szl_alloy_models.py szl_governed_infer.py a11oy_agent_loop.py a11oy_org_rag.py a11oy_mcp_client.py killinchu_mined_ops.py killinchu_resweep_ops.py killinchu_wave910.py killinchu_posture_topology.py szl_connectors_serve.py szl_connector_mcp.py szl_scaling.py szl_allodial.py szl_entanglement.py szl_neuroplasticity.py szl_chain_of_title.py ./ | |
| # waveL Dev2 (release-eng COPY-completeness): these three modules are REACHABLE | |
| # from serve.py but were missing from the per-file COPY set, so they were never | |
| # baked into the image / pushed to the Space -> silent 404 / advisory no-op on | |
| # deploy. killinchu_cop_fusion + killinchu_engagement_receipt are REGISTERED | |
| # organs (serve.py .register(app,...)); szl_agent_loop_banach is the advisory | |
| # Banach contraction guard imported (transitively) by a11oy_agent_loop / | |
| # szl_agentic_loop. Root-cause fix (add the COPY, never weaken the guard). The | |
| # new transitive COPY-completeness guard now catches this class in CI. | |
| COPY killinchu_cop_fusion.py killinchu_engagement_receipt.py szl_agent_loop_banach.py ./ | |
| # Wave 15 frontier organs (Dynamic Linear Attention, Context-Ready Transformer, OPERA perplexity-reward). | |
| COPY szl_dla.py szl_ctxready.py szl_opera.py ./ | |
| # Wave 16: Formula-Graph Brain organ on its OWN dedicated COPY layer (self-repair /repair | |
| # endpoint). Dedicated line keeps clean builds unambiguous; on HF a sticky image cache once | |
| # served a stale copy of this file, so isolating its layer avoids that failure mode. | |
| COPY szl_fgbrain.py ./szl_fgbrain.py | |
| # WAVE-23 surface organs (36-dead-tab wiring): one COPY layer for all 34 new szl_kc_* organs. | |
| COPY szl_kc_agentcoh.py szl_kc_elf.py szl_kc_graphmem.py szl_kc_kan.py szl_kc_moe.py szl_kc_qhall.py szl_kc_titans.py szl_kc_aimc.py szl_kc_flowmatch.py szl_kc_grpo.py szl_kc_kla.py szl_kc_mor.py szl_kc_rauq.py szl_kc_ssm.py szl_kc_blt.py szl_kc_formalmath.py szl_kc_hrm.py szl_kc_kvcache.py szl_kc_nested.py szl_kc_ringattn.py szl_kc_steering.py szl_kc_catq.py szl_kc_genie.py szl_kc_inplacettt.py szl_kc_matgran.py szl_kc_nsa.py szl_kc_s3search.py szl_kc_ternary.py szl_kc_dllm.py szl_kc_goat.py szl_kc_interpretability.py szl_kc_mla.py szl_kc_pfield.py szl_kc_slidesparse.py ./ | |
| # WAVE-24 Flower Brain organ + metrics | |
| COPY szl_kc_flower.py szl_kc_flower_metrics.py ./ | |
| # WAVE-25 Loop Forge organ (loopforge, 66th surface): kernel-gated bounded-recursion | |
| # agentic loop + MODELED J-lens workspace readout over the REAL flower/brain node set. | |
| # Pure-stdlib; serve.py imports both try/except-guarded. NEVER `COPY . .`. | |
| COPY szl_kc_loop_forge.py szl_kc_loop_forge_metrics.py ./ | |
| # WAVE-26 One-Bit organ (MODELED 1-bit/ternary sovereign-inference energy estimator). | |
| COPY szl_kc_onebit.py ./ | |
| # WAVE-28 JPT organ + HEART/BLOOD spine (measured joules-per-token, Brain-wired). | |
| COPY szl_kc_jpt.py szl_heart_blood.py ./ | |
| # Wave 14 frontier organs (keyless value-only-cache attention, GitOfThoughts reasoning memory, HeRo-Q quant). | |
| COPY szl_keyless.py szl_gitthoughts.py szl_herotq.py ./ | |
| # Wave 13 frontier organs (muon optimizer, tree speculative execution, NVFP4 4-bit format). | |
| # Per-file COPY (this Dockerfile never uses `COPY . .`); serve.py imports them try/except-guarded. | |
| COPY szl_muon.py szl_specexec.py szl_nvfp4.py ./ | |
| # WAQAY governed quantized vector index (szl_waqay.py byte-identical with a11oy) + | |
| # a11oy_waqay_nav.py idempotent nav injector. szl_dsse/szl_provenance/a11oy_org_rag | |
| # already COPYed. MUST be COPY'd or serve.py's guarded import falls back and /waqay 404s. | |
| # Per-file COPY (this Dockerfile NEVER uses `COPY . .`). | |
| COPY szl_waqay.py a11oy_waqay_nav.py ./ | |
| # YUPAY governed multi-model audit harness (szl_yupay.py byte-identical with a11oy) + | |
| # a11oy_yupay_nav.py idempotent nav injector. szl_dsse/szl_provenance already COPYed. | |
| # MUST be COPY'd or serve.py's guarded import falls back and /yupay 404s. Audit | |
| # methodology inspired by Kilo audit + MiniMax sparse-attention paper (published ideas | |
| # only); SZL-Nemo is governed Qwen3-32B Apache, never an M3 derivative. | |
| # Per-file COPY (this Dockerfile NEVER uses `COPY . .`). | |
| COPY szl_yupay.py a11oy_yupay_nav.py ./ | |
| # ADDITIVE (Mosaic SDA elevation, 2026-06-13): SZL's sovereign Mosaic / Domain- | |
| # Superiority organ. killinchu_mosaic.py imports szl_mosaic_core.py (the vendored | |
| # clean-room anomaly/SDA engine). serve.py imports killinchu_mosaic via try/except; | |
| # without these per-file COPYs (this Dockerfile never uses `COPY . .`) the import | |
| # fails and the /api/killinchu/v1/mosaic/* endpoints + the Mosaic COP tab 404. | |
| COPY killinchu_mosaic.py szl_mosaic_core.py ./ | |
| # ADDITIVE (AUTONOMY + ORGANISM elevation, 2026-06-14, Dev D): four additive | |
| # modules. killinchu_autonomy.py (BFT n>=3f+1, CBF-QP, EFE gate, conformal, | |
| # Fiedler, Reflexion; /api/killinchu/v1/autonomy/*) + killinchu_autonomy_view.py | |
| # (/elite/autonomy). killinchu_organism.py (causal-dependency graph + local | |
| # invariants + NCA-style self-repair; /api/killinchu/v1/organism/{causal, | |
| # self-repair}) + killinchu_organism_view.py (/elite/organism, vendored 3D). | |
| # serve.py imports all four via try/except; without these per-file COPYs the | |
| # imports fail and the autonomy/organism surfaces 404. | |
| COPY killinchu_autonomy.py killinchu_autonomy_view.py killinchu_organism.py killinchu_organism_view.py ./ | |
| # Lane C: Energy/Sovereign-Compute mirror module + the joules honesty single-source-of-truth. | |
| # Byte-identical to a11oy. Without these COPYs the guarded import in serve.py degrades to a | |
| # not-registered stub. NEVER uses `COPY . .`. | |
| COPY szl_energy_sovereign.py szl_joules_truth.py ./ | |
| # ADDITIVE (I4 kc-quant): TDA-Fracture regime/anomaly detector on AIS/maritime — killinchu | |
| # twin of a11oy GPU-Quant Layer 2. Backs /api/killinchu/v1/quant/tda-fracture (MODELED | | |
| # SAMPLE_AIS | NOT_LIVE; effector SIMULATED · human-on-loop). PURE STDLIB (union-find Betti); | |
| # imports szl_dsse (already COPYed) for REAL ECDSA receipts in-Space. MUST be COPY'd or | |
| # serve.py's guarded import degrades to a not-registered stub. Per-file COPY (NEVER `COPY . .`). | |
| COPY szl_kc_tda_fracture.py ./ | |
| # ADDITIVE (Wave-H Team-4 counter-UAS/sensor-fusion): GOVERNED multi-sensor TRACK FUSION organ. | |
| # szl_kc_trackfusion.py -> GET /api/killinchu/v1/trackfusion/associate. Full multi-sensor <-> | |
| # multi-target JPDA-style data association (Fortmann-Bar-Shalom-Scheffe 1983 validation gate + | |
| # feasible joint-event enumeration + marginal beta_{jt}; Reid-1979 MHT top-K), CI variance fusion | |
| # (Julier-Uhlmann), swarm-intent classification (Fiedler lambda2 formation coherence + closing- | |
| # vector behavioural intent; DroneShield-AI arXiv:2606.11687), and a Lambda-gated ROE advisory | |
| # (Conjecture 1, never 'green') emitting ONE signed engagement receipt. HONEST: MODELED | | |
| # SIMULATED_SENSORS | NOT_LIVE; effector SIMULATED, human-on-loop, NEVER an autonomous engage. | |
| # PURE STDLIB; imports szl_dsse (already COPYed) for REAL ECDSA-P256 receipts in-Space, honest | |
| # UNSIGNED-LOCAL marker otherwise. MUST be COPY'd or serve.py's guarded import degrades to a | |
| # not-registered stub and the counter-UAS fusion tab 404s. Per-file COPY (NEVER `COPY . .`). | |
| COPY szl_kc_trackfusion.py ./ | |
| # FRONTIER backends (2026-07): back the a11oy frontier surfaces ccattest.js + sement.js. | |
| # szl_kc_cc_attest.py -> GET /api/killinchu/v1/cc-attest/verify (NVIDIA H100 CC measured-boot | |
| # attestation-chain SIMULATION; MODELED, no real GPU/TEE/NRAS/network). | |
| # szl_kc_sement.py -> GET /api/killinchu/v1/sement/estimate (semantic-entropy / effective-rank | |
| # epistemic-uncertainty estimator; MODELED/EXPERIMENTAL synthetic demo, NOT live model sampling; | |
| # advisory input to Λ = Conjecture 1). Both PURE STDLIB; import szl_dsse (already COPYed) for | |
| # REAL ECDSA receipts in-Space, honest UNSIGNED marker otherwise. MUST be COPY'd or serve.py's | |
| # guarded imports degrade to not-registered stubs and the two flagship tabs 404 again. | |
| # Per-file COPY (NEVER `COPY . .`). | |
| COPY szl_kc_cc_attest.py szl_kc_sement.py ./ | |
| # FRONTIER backends WAVE B (2026-07): back the a11oy frontier surfaces testtime.js + specdecode.js | |
| # + worldmodel.js (same proven pattern as the ccattest/sement backends above). | |
| # szl_kc_ttc.py -> GET /api/killinchu/v1/testtime/scaling (governed test-time-compute budget | |
| # allocator; closed-form pass@N + sequential-revision scaling; joule-metered; MODELED, NO LLM/GPU). | |
| # szl_kc_specdec.py -> GET /api/killinchu/v1/specdecode/simulate (speculative-decoding accept/reject | |
| # simulation + J/token-saved energy receipt; MODELED, NOT a live model/KV cache). | |
| # szl_kc_worldmodel.py -> GET /api/killinchu/v1/worldmodel/predict (governed world-model latent rollout; | |
| # MODELED, NOT Genie/Dreamer running, synthetic latents). All three PURE STDLIB; import szl_dsse | |
| # (already COPYed) for REAL ECDSA receipts in-Space, honest UNSIGNED marker otherwise. MUST be COPY'd | |
| # or serve.py's guarded imports degrade to not-registered stubs and the three tabs 404 again. | |
| # Per-file COPY (NEVER `COPY . .`). | |
| COPY szl_kc_ttc.py szl_kc_specdec.py szl_kc_worldmodel.py ./ | |
| # FRONTIER backends WAVE C (2026-07): back the a11oy frontier surfaces episodic.js + qec.js | |
| # + the signed-energy-receipt organ (same proven pattern as the Wave A/B backends above). | |
| # szl_kc_episodic.py -> GET /api/killinchu/v1/episodic/recall (governed episodic-memory / temporal | |
| # knowledge-graph; receipt-keyed writes; closed-form recency×salience×relatedness recall; MODELED, | |
| # synthetic episodes, hash-seeded MODELED embeddings — NOT a trained model). Cites Zep/Graphiti | |
| # arXiv:2501.13956. | |
| # szl_kc_qec.py -> GET /api/killinchu/v1/qec/surface-code (topological QEC below-threshold scaling | |
| # + Reed-Solomon RS(10,6) Khipu-DAG erasure survival — "receipts survive corruption like logical | |
| # qubits survive noise"; MODELED scaling law, RS math EXACT, NO QPU). Cites Google Willow (Nature | |
| # 2024, arXiv:2408.13687). | |
| # szl_kc_energy.py -> GET /api/killinchu/v1/energy/receipt (signed, hash-chained energy receipt: | |
| # joules/token + tokens/joule + gCO2/token + carbon-aware ADVISORY; MODELED, NO on-box NVML, never | |
| # upgraded to MEASURED). Cites NVML + carbon-aware compute. All three PURE STDLIB; import szl_dsse | |
| # (already COPYed) for REAL ECDSA receipts in-Space, honest UNSIGNED marker otherwise. MUST be COPY'd | |
| # or serve.py's guarded imports degrade to not-registered stubs and the three tabs 404 again. | |
| # Per-file COPY (NEVER `COPY . .`). | |
| COPY szl_kc_episodic.py szl_kc_qec.py szl_kc_energy.py ./ | |
| # WAVE K / DEV 5: killinchu frontier full-wire surface bootstrap (additive) | |
| COPY killinchu_frontier_wave_surfaces.py ./ | |
| # P0 public discovery contracts: exact OpenAPI, source, and risk-status routes. | |
| COPY killinchu_public_route_repair.py ./ | |
| # Unsigned structural source/deployment snapshot; claims remain fail-closed. | |
| COPY .well-known/szl-source.json ./.well-known/szl-source.json | |
| # Dated Option A public-Space exception and explicit risk boundaries. | |
| COPY public-risk-transition.json ./public-risk-transition.json | |
| # ADDITIVE (live knowledge console — 2026-06-09): the generated, kernel-derived | |
| # knowledge corpus (axioms/theorems/formulas/frameworks), byte-identical to | |
| # a11oy's knowledge.json. serve.py serves it at /knowledge.json so the /elite | |
| # console's loadKnowledge() renders LIVE panels instead of falling back to {}. | |
| # COPYed to BOTH the static root (the SPA catch-all serves /app/static/*) AND | |
| # /app root (the explicit serve.py route reads /app/knowledge.json) — mirrors | |
| # a11oy so the surfaces never drift from the kernel. Honesty v11 preserved. | |
| COPY knowledge.json ./static/knowledge.json | |
| # Copy serve orchestrator + real drone DB + real protocol decoders. | |
| # ADDITIVE (Unified Operator Shell v4, 2026-06-01, Yachay / Perplexity Computer Agent): | |
| # v4 endpoint module + self-contained desktop shell. Per-file COPY (no `COPY . .`). | |
| COPY web/operator.html ./web/operator.html | |
| # GOVERNED AUTO-REVIEW (Integration I2) — mirror of the keystone autonomy layer | |
| # first shipped on a11oy. killinchu reuses the SAME portable classifier module | |
| # (a11oy_autoreview) registered with ns="killinchu"; verdicts are Lambda-gated, | |
| # DSSE-signed (szl_dsse / cosign.pub), mapped to OPA/Rego + OSCAL + NIST AI RMF | |
| # MANAGE, conformal-calibrated, with flapping detection. The SIMULATED engage/ROE | |
| # action is gated -> escalate (AR-005). szl_conformal.py + szl_calibration.py are | |
| # COPY'd here because killinchu did not previously vendor them. autoreview.html is | |
| # served at /autoreview (0 runtime CDN; uses the already-vendored Chart.js + the | |
| # in-image shared label/receipt engines). Per-file COPY (this Dockerfile never | |
| # uses `COPY . .`); parsed by the HF-sync workflow so the files reach the Space. | |
| COPY a11oy_autoreview.py szl_conformal.py szl_calibration.py ./ | |
| COPY web/autoreview.html ./web/autoreview.html | |
| # OPERATOR WIDGET (2026-06-10): byte-identical to a11oy. Self-hosted in-image | |
| # (0 CDN), served at /vendor/a11oy-operator-widget.js by serve.py. NO codenames. | |
| COPY static-vendor/a11oy-operator-widget.js ./static-vendor/a11oy-operator-widget.js | |
| COPY static-vendor/a11oy-operator-widget.css ./static-vendor/a11oy-operator-widget.css | |
| # RESTRAINT (DEV-WIRE-K R3): the SHARED governed code-frugality ladder, BYTE-IDENTICAL | |
| # to a11oy's szl_restraint.py (same bytes, both hf-sync lists — drift guard enforced), | |
| # its /elite tile, the restraint nav wire-up (imported by serve.py for /elite/restraint | |
| # navigation), and the Chaski transport-level annotator (self-hosted, 0 CDN). | |
| COPY szl_restraint.py killinchu_restraint_tile.py killinchu_nav_wireup.py ./ | |
| # QHAWAQ (FORMAL/LTL runtime constitutional intercept): the SHARED runtime monitor, | |
| # BYTE-IDENTICAL to a11oy. Imported by serve.py (try/except guarded); serves | |
| # /qhawaq + /api/killinchu/v1/qhawaq/*. Without this COPY the guarded import falls back | |
| # and /qhawaq 404s. The .py auto-mirrors to the HF Space via hf-sync-backend.yml. | |
| COPY szl_qhawaq.py ./szl_qhawaq.py | |
| # ADDITIVE (SAPA): Energy per Successful Goal — frontier agentic unit on top of | |
| # the live MEASURED joules/token path. szl_sapa.py is the shared accounting layer | |
| # (byte-identical a11oy<->killinchu); szl_sapa_patch.py front-inserts /sapa + | |
| # /api/<ns>/v1/sapa/* before the SPA catch-all + Node proxy. Per-file COPY (this | |
| # Dockerfile never uses `COPY . .`) or serve.py's guarded import falls back | |
| # (merged-but-not-live) and /sapa 404s to the SPA shell. Mirrored byte-identical | |
| # to the HF Space (hf-sync lockstep). | |
| COPY szl_sapa.py szl_sapa_patch.py ./ | |
| # MBSE / FMI GOVERNED DIGITAL-TWIN CO-SIM — two shared modules, BYTE-IDENTICAL to | |
| # a11oy (same bytes, both hf-sync lists — shared-file drift guard enforced). | |
| # szl_mbse_cosim.py serves /api/killinchu/v1/mbse/* (governed water-tank + the | |
| # killinchu flagship 6DOF FMU twin — effectors SIMULATED, human-on-loop — Restraint | |
| # gate + signed DSSE receipts via the already-COPY'd szl_dsse). szl_mbse_nav.py | |
| # serves /mbse /mbse-6dof /mbse-pipeline (0-CDN holo + inline-SVG charts) + the | |
| # idempotent nav injector. MUST be COPY'd or serve.py's guarded imports fall back | |
| # and hf-sync-backend would not mirror them. Per-file COPY (no COPY . .). | |
| COPY szl_mbse_cosim.py szl_mbse_nav.py ./ | |
| COPY static-vendor/killinchu-restraint-chaski.js ./static-vendor/killinchu-restraint-chaski.js | |
| # Evidence & Research backend (curated + live arXiv/GitHub). serve.py imports this; | |
| # without this per-file COPY the import fails and /api/killinchu/v1/evidence/research 404s. | |
| ARG EVIDENCE_FIX_BUST=1780922329 | |
| # Operational Readiness backend (deployed-vs-repo reality, live/cached/unreachable). | |
| # serve.py imports this try/except-guarded; without this per-file COPY the import | |
| # fails and /api/killinchu/v1/readiness 404s (falls through to the SPA shell). | |
| ARG READINESS_FIX_BUST=1 | |
| # Research & Sources backend (Task #662, research-sources-patch) — per-tab vetted | |
| # REAL upstream sources (UDS/Zarf/Pepr, supply-chain standards, threat/domain feeds, | |
| # Lean/proof refs, per-subject arXiv) with an honest live reachability probe. serve.py | |
| # imports this try/except-guarded; without this per-file COPY the import fails and | |
| # /api/killinchu/v1/research 404s (falls through to the SPA shell). | |
| ARG RESEARCH_SOURCES_BUST=1 | |
| # Contracting Readiness backend (SAM/CAGE + SBIR/STTR eligibility, web-sourced, | |
| # honest verified/confirmed/needs_founder_input/needs_founder_action labels, source | |
| # liveness probes, 0 fabricated org values). serve.py imports this try/except-guarded; | |
| # without this per-file COPY the import fails and /api/killinchu/v1/contracting 404s. | |
| # Real persistent backend (Postgres-first, durable-SQLite fallback). serve.py imports | |
| # this try/except-guarded; without this per-file COPY the import fails and | |
| # /api/killinchu/{live,crawl/run,timeline,alerts/recent,watchlists} 404 to the SPA. | |
| ARG KILLINCHU_BACKEND_BUST=1 | |
| # dev3 HF assets instill (Knowledge & Formulas / Evidence) — app-agnostic, server-side fetch, 0 CDN. | |
| # ADDITIVE (Yachay / Live 3D Wires, PURIQ Doctrine v12): COPY the live-wires | |
| # module + host page + scene core so `import szl_live_wires` resolves in-container. | |
| # Without these the register() call in the server silently fails and /live-wires | |
| # falls through to the SPA shell. ADDITIVE ONLY. Sign: Yachay. | |
| # ADDITIVE (Wire I): Rosie-companion module baked into the image. Yachay. | |
| # ADDITIVE (PQC/hybrid signing): bake the signing module so `import | |
| # killinchu_szl_pqc_sign` resolves in-container and register() wires the | |
| # /khipu/sign endpoints. ADDITIVE ONLY. Sign: Yachay. | |
| # ADDITIVE (Sigstore Rekor public cross-verify, Yachay — from PR #13): bake the | |
| # Rekor client so `import szl_rekor` resolves in-container and serve.py wires | |
| # the UDS-facing /api/killinchu/uds/v1/rekor/* endpoints. stdlib-only (reuses the | |
| # existing cryptography install). ADDITIVE ONLY. | |
| # OSINT verticals (amaru/rosie): public-web search/scrape via Tavily, normalize | |
| # + sha256 provenance chain + corpus. serve.py imports this; without this | |
| # per-file COPY the import fails and the amaru/rosie endpoints 404. | |
| ENV PORT=7860 | |
| # BE hardening (Greene) — per-file COPY (this Dockerfile uses per-file COPY). | |
| EXPOSE 7860 | |
| # ADDITIVE (UNAY + Khipu-LMDB v2, 2026-06-01, Yachay): real durable lmdb persistence | |
| # + optional sqlite-vss vector recall (szl_unay degrades to honest cosine-fallback if | |
| # the extension cannot load in the slim image). Never affects existing routes. | |
| RUN pip install --no-cache-dir "lmdb==2.2.1" "sqlite-vss==0.1.2" | |
| # ADDITIVE (Mosaic SDA elevation, 2026-06-13): python-sgp4 (MIT) is the sovereign | |
| # orbital propagator for the space-domain ROADMAP conjunction stub. Guarded with | |
| # `|| true` so a wheel/build hiccup never breaks the image — killinchu_mosaic falls | |
| # back to an honest ROADMAP SKELETON when sgp4 is absent (no conjunction fabricated). | |
| RUN pip install --no-cache-dir "sgp4==2.25" || true | |
| # ADDITIVE (UNAY + Khipu-LMDB v2, 2026-06-01, Yachay / Perplexity Computer Agent): | |
| # explicit per-file COPY (this Dockerfile does not use `COPY . .`). serve.py imports | |
| # szl_unay_routes and calls .register(app, ns="killinchu") -> /api/killinchu/v2/unay/* + | |
| # /api/killinchu/v2/khipu/lmdb/*. Real durable lmdb + real sqlite-vss honest fallback. | |
| # ADDITIVE (Warhacker v2 genius pass, Yachay 2026-06-01): aliases + killinchu_genius. | |
| # Per-file COPY (no `COPY . .`) — without these the imports fail and routes 404. | |
| # ADDITIVE (Killinchu maritime/drone Warhacker demo suite, 2026-06-06): 7 mode-aware | |
| # demos at /api/killinchu/v1/warhacker/launch/{key}. Per-file COPY (no `COPY . .`). | |
| # ADDITIVE (Killinchu v3 deep C-UAS, Yachay 2026-06-01): killinchu_v3 registers | |
| # /api/killinchu/v3/* (ingest pipelines + Kalman fusion + provenanced threat | |
| # scoring + honest effector catalogue + airspace + boids/ORCA swarm + replay + | |
| # daily brief) and the deep operational console at /globe/v3. Per-file COPY | |
| # (no `COPY . .`) — without it `import killinchu_v3` fails and v3 routes 404. | |
| # ADDITIVE (Understudy-parity, Yachay 2026-06-01): the understudy moat-fabric layer | |
| # + its portable substrate (LLM router / agentic RAG / 23-formula registry). Explicit | |
| # per-file COPY (this Dockerfile never uses `COPY . .`); without these `import | |
| # szl_understudy` (and its substrate imports) fail and every /api/killinchu/v2/* | |
| # understudy route 404s. szl_brain/szl_rag/szl_formulas are VENDORED from the | |
| # platform monorepo (header in each file) until `pip install ./packages/*` lands. | |
| RUN pip install --no-cache-dir "huggingface_hub==1.20.0" || true | |
| # ADDITIVE (Defense Runtime Cookbook, 2026-06-01, Yachay / Perplexity Computer Agent): | |
| # the self-contained cookbook module. Explicit per-file COPY (this Dockerfile never uses | |
| # `COPY . .`); without it `import szl_killinchu_cookbook` fails and every /api/killinchu/ | |
| # v2/cookbook* + /v2/missions* + /v2/scouts + /v2/uds/* + /v2/legal + /v2/specs/* + | |
| # /v2/pitch route 404s. The vendored data lives under static/cookbook/ (already COPY'd by | |
| # the `COPY static/ ./static/` line above). Recall receipts sign live via szl_dsse. | |
| # ADDITIVE (UDS HARDENING, 2026-06-01, Yachay): real-data STIG/SCAP + Iron Bank + | |
| # Big Bang + Tradewinds endpoints under /api/killinchu/uds/v1/*, backed by the | |
| # committed .compliance/ artifacts (real OpenSCAP oscap output, Dockerfile audit, | |
| # helm lint inventory). Registered BEFORE killinchu_fusion so its synthetic stubs | |
| # defer to this real data. Per-file COPY (no `COPY . .`). Sign: Yachay. | |
| # COPY .compliance/ ./.compliance/ — REPLACED with per-file copies that exclude | |
| # iron_bank_parity.json (CTO P1 REJECT B1 — Charter §24 NO Iron Bank in runtime). | |
| # iron_bank_parity.json stays in repo for reference; not baked into the served layer. | |
| COPY .compliance/big_bang_inventory.json ./.compliance/big_bang_inventory.json | |
| COPY .compliance/tradewinds_listing.json ./.compliance/tradewinds_listing.json | |
| COPY .compliance/sysctl-stig.conf ./.compliance/sysctl-stig.conf | |
| COPY .compliance/SECTION_889_REP.md ./.compliance/SECTION_889_REP.md | |
| COPY .compliance/SLSA_LEVEL.md ./.compliance/SLSA_LEVEL.md | |
| # ADDITIVE (V4 Fleet Panel, 2026-06-02, Dev2 Inti): | |
| # explicit per-file COPY (this Dockerfile does not use COPY . .). | |
| # serve.py registers /api/health + /api/killinchu/v4/fleet + /fleet (szl_v4_fleet). | |
| # Signed-off-by: Yachay <yachay@szlholdings.ai> | |
| # Co-Authored-By: Perplexity Computer Agent <agent@perplexity.ai> | |
| COPY web/v4_fleet_panel.html ./web/v4_fleet_panel.html | |
| # ADDITIVE (SZL Ken Agent Pattern v1, CTO Yachay Convergence Cycle 1, 2026-06-03): | |
| # Explicit per-file COPY of szl_ken.py (this Dockerfile never uses `COPY . .`). | |
| # serve.py tries `import szl_ken` at startup; without this COPY the import fails | |
| # silently and /v1/agent/loop + /v1/mcp/tools return 404 instead of 200. | |
| # ADDITIVE ONLY — zero existing routes touched. Doctrine v11 LOCKED 749/14/163. | |
| # Signed-off-by: Yachay <yachay@szlholdings.ai> | |
| # Co-Authored-By: Perplexity Computer Agent <agent@perplexity.ai> | |
| # ADDITIVE (Missing modules fix, 2026-06-04, Perplexity Computer Agent): | |
| # killinchu_frontier_patch.py: registers /api/killinchu/v1/{doctrine,health,adsb} at route 0. | |
| # killinchu_drone_routes.py: registers /api/killinchu/drone/{telemetry,intercept,cued-tracks,fleet-state}. | |
| # szl_khipu_consensus.py: Khipu multi-organ consensus (killinchu is aggregator). | |
| # All three are imported via try/except in serve.py — missing files cause silent warn, not crash. | |
| # Per-file COPY (this Dockerfile never uses `COPY . .`). | |
| # Signed-off-by: Stephen P. Lutar Jr. <stephenlutar2@gmail.com> | |
| # killinchu_cannonico.py: lost-contact autonomous-drone governance loop (Warhacker | |
| # Cannonico bullseye). serve.py imports it via try/except after killinchu_parity; | |
| # without this COPY the /api/killinchu/v1/cannonico/* routes fall through to the SPA. | |
| # killinchu_elite_console.py: a11oy-elite 14-tab operator console. serve.py imports | |
| # it via try/except; per-file COPY (this Dockerfile never uses `COPY . .`). | |
| # ADDITIVE (sovereign/air-gap viz, no-CDN): base64 of the binary vendored assets | |
| # (globe earth-night texture + 20 KaTeX woff2 fonts) shipped as TEXT. The elite | |
| # console imports `_vendor_blobs` and serves them at /vendor/earth-night.jpg and | |
| # /vendor/fonts/*; without this COPY the import fails and those routes 404 (the | |
| # *.js/*.css libs come from `COPY static/ ./static/`). Per-file COPY (no `COPY . .`). | |
| # ADDITIVE (FLEET vessels/drones, GAP-1+GAP-2): per-file COPY of the FLEET (Vessels) | |
| # module + its embedded verbatim platform seed-data. serve.py imports | |
| # killinchu_fleet_vessels and front-inserts its 12 routes under /api/killinchu/v1/fleet/* | |
| # (vessels, forecast-modules, predictive-maintenance, compliance-certificates, | |
| # port-state-deficiencies, ai-briefings, event-logs, fleets, maintenance-logs, | |
| # shipment-records, all, voyage-risk); without these COPYs the import fails and every | |
| # fleet route falls through to the SPA catch-all (404). This Dockerfile never uses | |
| # `COPY . .` — every file is explicit. fleet_vessels_data.json carries all 10 datasets | |
| # embedded verbatim, so the 4 new endpoints need no new COPY line. Cache-bust: full-vessels-2026-06-06 | |
| # Live data proxies (Digitraffic FI AIS + adsb.lol military) — per-file COPY. | |
| # Without this `import killinchu_live_feeds` fails and /ais/live + /air/live 404. | |
| # Bundled on-disk snapshots for the live-data layer (cached fallback). If any | |
| # upstream feed (Digitraffic AIS / adsb.lol / celestrak / rekor / kev / osv / | |
| # prometheus) is unreachable, get_feed() serves the in-image snapshot labelled | |
| # 'cached' — NEVER fabricated. KILLINCHU_LIVE_SNAPSHOTS defaults to /app/live_snapshots. | |
| COPY live_snapshots/ ./live_snapshots/ | |
| # SZL Agent Body anatomy engine (YUYAY gate + YAWAR bus + organism pipeline) — | |
| # per-file COPY. Without this `import killinchu_anatomy` fails and the organism | |
| # pipeline endpoints 404. | |
| # killinchu_health_twin.py: flagship LIVE 3D vessel/drone HEALTH TWIN backend. | |
| # Computes per-subsystem health (hull/propulsion/comms/sensors/nav/payload) from | |
| # real-ish signals using OUR formulas: split-conformal band (W5-3/W7-4, NOT | |
| # Hoeffding), Λ geometric-mean trust aggregate (Conjecture 1), and the YUYAY | |
| # 13-axis conjunctive gate. Reuses live Digitraffic AIS via killinchu_live_feeds. | |
| # serve.py imports via try/except; without this COPY the /api/killinchu/v1/twin/* | |
| # routes fall through to the SPA catch-all. | |
| # killinchu_beyond.py: Beyond-Cannonico proof console — autonomy-governance | |
| # generalized beyond one drone (autonomy envelope · 3-of-4 swarm quorum · HOTL | |
| # override register). serve.py imports it via try/except; without this COPY the | |
| # /api/killinchu/v1/{autonomy,swarm,hotl}/* routes fall through to the SPA. | |
| # ADDITIVE (Formulas → Ecosystem echo, Opus 4.8, 2026-06-03): per-file COPY of the | |
| # shared formulas package + endpoint shim (this Dockerfile never uses `COPY . .`). | |
| # serve.py imports killinchu_formula_endpoints which imports szl_shared_formulas.* — | |
| # without these COPYs the import fails and /api/killinchu/v1/formula/* fall through. | |
| # Echoes a11oy front-door formulas: Welford + Bloom. thesis_v22.pdf §2 + real Lean. | |
| # Signed-off-by: Yachay <yachay@szlholdings.ai> | |
| # Co-Authored-By: Perplexity Computer Agent <agent@perplexity.ai> | |
| COPY szl_shared_formulas/__init__.py ./szl_shared_formulas/__init__.py | |
| COPY szl_shared_formulas/welford.py ./szl_shared_formulas/welford.py | |
| COPY szl_shared_formulas/bloom_filter.py ./szl_shared_formulas/bloom_filter.py | |
| # ADDITIVE (Killinchu Closeout, Opus 4.8, 2026-06-03): per-file COPY of the | |
| # REAL-EDGE surface — the three extra shared formulas (PAC-Bayes + Kalman + | |
| # Byzantine quorum), the real edge package (src/killinchu/*), the real-edge | |
| # formula endpoint shim, the premium edge console deck, and the no-mock tests. | |
| # This Dockerfile NEVER uses `COPY . .` — every file is copied explicitly. | |
| # serve.py imports killinchu_edge_formulas which imports | |
| # szl_shared_formulas.{pac_bayes,kalman,byzantine_quorum}; without these COPYs | |
| # the import fails and /api/killinchu/v1/edge/* fall through to the SPA shell. | |
| # NO MOCKS — real flight-dynamics sim, real ECDSA-P256 DSSEv1, real Khipu DAG, | |
| # real Kalman (numpy). | |
| # Signed-off-by: Yachay <yachay@szlholdings.ai> | |
| # Co-Authored-By: Perplexity Computer Agent <agent@perplexity.ai> | |
| COPY szl_shared_formulas/pac_bayes.py ./szl_shared_formulas/pac_bayes.py | |
| COPY szl_shared_formulas/kalman.py ./szl_shared_formulas/kalman.py | |
| COPY szl_shared_formulas/byzantine_quorum.py ./szl_shared_formulas/byzantine_quorum.py | |
| COPY src/killinchu/__init__.py ./src/killinchu/__init__.py | |
| COPY src/killinchu/lambda_calc.py ./src/killinchu/lambda_calc.py | |
| COPY src/killinchu/dsse.py ./src/killinchu/dsse.py | |
| COPY src/killinchu/khipu.py ./src/killinchu/khipu.py | |
| COPY src/killinchu/edge.py ./src/killinchu/edge.py | |
| COPY src/killinchu/simulator.py ./src/killinchu/simulator.py | |
| COPY web/console.html ./web/console.html | |
| COPY web/console.js ./web/console.js | |
| # ADDITIVE (Governed Agent Loop, 2026-06-06): the operational RAG -> tool-call -> | |
| # policy/trust gate -> signed-receipt loop + canonical live MCP + consumer UI. | |
| # This Dockerfile NEVER uses `COPY . .` — every file is explicit. Without this | |
| # line `import szl_agentic_loop` fails silently and /mcp/, /ask-and-act 404. | |
| # Receipts are signed with the persistent cosign ECDSA-P256-SHA256 key (szl_dsse). | |
| # Signed-off-by: Stephen P. Lutar Jr. <stephenlutar2@gmail.com> | |
| # szl_anatomy_routes: backs the canonical formula MCP tools (list_formulas/run_formula/ | |
| # formula_proof_status) in szl_agentic_loop; byte-identical with a11oy. Deps: szl_formulas only. | |
| # Formula-wiring module (ADDITIVE 2026-06-06): registers the kernel-verified theorem | |
| # mechanisms as live executable checks + the /api/<ns>/v1/formulas/* endpoints | |
| # (selftest, proof-summary). BYTE-IDENTICAL across a11oy + killinchu (single source of | |
| # truth). This Dockerfile NEVER uses `COPY . .` -- without this line | |
| # `import szl_formula_wiring` fails silently and the formula endpoints 404. | |
| # Signed-off-by: Stephen P. Lutar Jr. <stephenlutar2@gmail.com> | |
| # a11oy Code engine (PORTED 2026-06-06): governed coder (chat/code/research), | |
| # C20/W7-5 router, W5-3/W7-4 conformal, real sandbox, per-run-GENESIS receipts. | |
| # Imports szl_llm_registry (COPY'd below) for the OPEN-WEIGHT roster. | |
| # Signed-off-by: Stephen P. Lutar Jr. <stephenlutar2@gmail.com> | |
| # ADDITIVE (Operational Control Surfaces, 2026-06-06): makes VESSELS and DRONES | |
| # genuinely operational — select a track -> issue a governed command -> deny-by- | |
| # default policy/kernel gate -> genuinely cosign-signed receipt -> track STATE | |
| # updates. Every control action is wrapped in the governed-run loop (P1-P6) so | |
| # 'operate' = 'governed + receipted'. Self-contained operator UI at /ops + /control. | |
| # This Dockerfile NEVER uses `COPY . .` — every file is explicit. Without this line | |
| # `import killinchu_ops_control` fails silently and /ops + /api/killinchu/v1/ops/* 404. | |
| # Receipts are signed with the persistent cosign ECDSA-P256-SHA256 key (szl_dsse). | |
| # Signed-off-by: Stephen P. Lutar Jr. <stephenlutar2@gmail.com> | |
| # --------------------------------------------------------------------------- | |
| # OPEN-WEIGHT ALLOY MODEL LAYER (model-integration squad, 2026-06-06; PORTED from a11oy) | |
| # Same open-weight alloy forged into a11oy, ported to killinchu. Per-file COPY | |
| # (this Dockerfile NEVER uses `COPY . .`). Without these, `import szl_alloy_models` | |
| # fails silently and /api/killinchu/v1/alloy/* 404. | |
| # * szl_alloy_models.py : roster + C20/W7-5 router + W5-3/W7-4 conformal + | |
| # C10-C12 consensus + governed suggest (honest tower-side label; output never faked). | |
| # * szl_llm_registry.py : the LLM registry the alloy roster UNIFIES into (one roster). | |
| # OPEN-WEIGHT only, NO closed weights, NO keys; weights NOT redistributed. | |
| # Signed-off-by: Stephen P. Lutar Jr. <stephenlutar2@gmail.com> | |
| # Co-Authored-By: Perplexity Computer Agent <agent@perplexity.ai> | |
| # ADDITIVE (a11oy Code agentic core, 2026-06-10): the GENUINELY-agentic loop + agentic | |
| # RAG + MCP client are SHARED canonical modules forged in a11oy and shipped BYTE-IDENTICAL | |
| # into killinchu for drift-free parity. killinchu does NOT host a11oy_code_orchestrator.py | |
| # (a11oy-specific), so nothing here imports them at boot, but they MUST be present and | |
| # byte-identical with a11oy. All three are stdlib-only at import time (szl_brain/szl_rag/ | |
| # httpx/faiss are lazy + guarded). szl_rag.py is already COPY'd above (line ~189). Per-file | |
| # COPY (this Dockerfile never uses `COPY . .`). | |
| # EGRESS FIX (2026-06-10): the org-RAG full build runs INSIDE this HF Space, | |
| # which can reach huggingface.co but NOT api.github.com (Space egress is | |
| # GitHub-blocked). Bundle the REAL highest-value files of the four GitHub-only | |
| # corpus categories (thesis/formulas/doctrine/lean) in-image so a11oy_org_rag.py | |
| # ingests them when GitHub is unreachable. corpus/INDEX.json records each file's | |
| # real origin repo+path+blob_sha+commit_sha; chunks cite bundled:<repo>@<sha>:<path> | |
| # (real files, honest provenance, NOT fabricated). BYTE-IDENTICAL across a11oy & | |
| # killinchu. Per-file/dir COPY (this Dockerfile does not use COPY . .). | |
| COPY corpus/ ./corpus/ | |
| # ADDITIVE (MINED ops upgrades, 2026-06-07): four license-vetted operational/efficiency | |
| # surfaces (pattern-mined clean-room WITH NOTICE: al-jshen/compute MIT, gpu-bartender MIT, | |
| # MLRC-deep-thinking MIT, kvpress Apache-2.0). serve.py imports killinchu_mined_ops via | |
| # try/except and register()s POST /api/killinchu/v1/mined/{scicompute,edge-estimator, | |
| # swarm-resilience,telemetry-press} + GET .../index. Per-file COPY (this Dockerfile NEVER | |
| # uses `COPY . .`); without it `import killinchu_mined_ops` fails and every mined route 404s. | |
| # Pure-stdlib, additive; Lambda stays Conjecture 1; no fabricated data. | |
| # ADDITIVE (RE-SWEEP wave-2 ops, 2026-06-07): three license-vetted operational surfaces | |
| # (pattern-mined clean-room WITH NOTICE: anvaka/ngraph.path MIT, rowanwins/visibility-graph | |
| # MIT, ft2023/IRanker-demo MIT, al-jshen/adaptive MIT). serve.py imports killinchu_resweep_ops | |
| # via try/except and register()s POST /api/killinchu/v1/resweep/{route,threat-rank, | |
| # adaptive-sample} + GET .../index. Per-file COPY (this Dockerfile NEVER uses `COPY . .`); | |
| # without it `import killinchu_resweep_ops` fails and every resweep route 404s. | |
| # Pure-stdlib, additive; Lambda stays Conjecture 1; no fabricated data. | |
| # ADDITIVE (Wave9 + Wave10 EXPERIMENTAL theorems, 2026-06-08): six killinchu-targeted | |
| # theorem families PROVEN on lutar-lean main (Wave9 PR #199 merged @ 66735bf; Wave10 | |
| # PR #200) as EXPERIMENTAL · CI-green — kernel-verified, NOT locked. serve.py imports | |
| # killinchu_wave910 via try/except and register()s POST /api/killinchu/v1/wave910/ | |
| # {stl-robustness,covariance-intersection,gershgorin,mesh-resilience,audit-receipts, | |
| # quorum-consensus} + GET .../index + .../selftest. Per-file COPY (this Dockerfile NEVER | |
| # uses `COPY . .`); without it `import killinchu_wave910` fails and every wave910 route 404s. | |
| # Pure-stdlib, additive; locked-proven stays EXACTLY 8 {F1,F4,F7,F11,F12,F18,F19,F22}; Λ = Conjecture 1. | |
| # ADDITIVE (DEV-WIRE-K R1, Opus 4.8, 2026-06-09): Posture & Drift + Topology & | |
| # Health + Attack-Surface + Zero-Trust surfaces. serve.py imports | |
| # killinchu_posture_topology via try/except and front-inserts GET | |
| # /api/killinchu/v1/{posture/drift,topology/health,attack-surface/graph, | |
| # zerotrust/mesh}. This Dockerfile NEVER uses `COPY . .` — every file is explicit; | |
| # WITHOUT this line `import killinchu_posture_topology` fails (ModuleNotFoundError) | |
| # and all four routes 404. Real PSI+KS(scipy.stats.ks_2samp)+vendored-ADWIN drift | |
| # on live ADS-B; real graph metrics (Fiedler λ2 etc.) via networkx/numpy fallback; | |
| # Attack-Surface + Zero-Trust mesh from REAL deploy/uds-package.yaml. NO fabricated | |
| # data; honest empty states; organ role names (Operator/Provenance Anchor/Policy); | |
| # locked-proven stays EXACTLY 8 {F1,F4,F7,F11,F12,F18,F19,F22}; Λ = Conjecture 1. | |
| # ADDITIVE (DEV-WIRE-K R1): the REAL UDS Package CR consumed by the Attack-Surface | |
| # and Zero-Trust mesh endpoints (killinchu_posture_topology._load_uds_package reads | |
| # /app/deploy/uds-package.yaml). This Dockerfile NEVER uses `COPY . .`; WITHOUT this | |
| # line the file is absent in-image and both tabs honestly render the empty state | |
| # instead of the real allow/expose graph. Real allow rules only — no invented CVEs. | |
| COPY deploy/uds-package.yaml ./deploy/uds-package.yaml | |
| # --------------------------------------------------------------------------- | |
| # ADDITIVE (SZL Enterprise Connector Framework, 2026-06-10, founder directive): | |
| # per-file COPY of the connector framework (this Dockerfile NEVER uses `COPY . .`). | |
| # serve.py imports szl_connectors_serve (try/except); without these COPYs the import | |
| # fails and /api/killinchu/connectors + /integrations 404. Shared byte-identical w/ a11oy. | |
| # Cache-bust: szl-connectors-2026-06-10 | |
| COPY szl_connectors/__init__.py ./szl_connectors/__init__.py | |
| COPY szl_connectors/base.py ./szl_connectors/base.py | |
| COPY szl_connectors/bindings.py ./szl_connectors/bindings.py | |
| COPY szl_connectors/comms/__init__.py ./szl_connectors/comms/__init__.py | |
| COPY szl_connectors/comms/comms_connectors.py ./szl_connectors/comms/comms_connectors.py | |
| COPY szl_connectors/crm/__init__.py ./szl_connectors/crm/__init__.py | |
| COPY szl_connectors/crm/crm_connectors.py ./szl_connectors/crm/crm_connectors.py | |
| COPY szl_connectors/data_sources/__init__.py ./szl_connectors/data_sources/__init__.py | |
| COPY szl_connectors/data_sources/geo.py ./szl_connectors/data_sources/geo.py | |
| COPY szl_connectors/data_sources/macro.py ./szl_connectors/data_sources/macro.py | |
| COPY szl_connectors/data_sources/maritime_air.py ./szl_connectors/data_sources/maritime_air.py | |
| COPY szl_connectors/data_sources/research.py ./szl_connectors/data_sources/research.py | |
| COPY szl_connectors/data_sources/security.py ./szl_connectors/data_sources/security.py | |
| # NOAA/MarineCadastre AIS Aug-2024 coastal-US connector — imported transitively | |
| # by killinchu_ais_aug2024.py (GET /api/killinchu/v1/ais/*). Without this per-file | |
| # COPY the connector import fails on the Space -> /ais/sources 500. (prr fix) | |
| COPY szl_connectors/data_sources/ais_noaa_aug2024.py ./szl_connectors/data_sources/ais_noaa_aug2024.py | |
| COPY szl_connectors/erp/__init__.py ./szl_connectors/erp/__init__.py | |
| COPY szl_connectors/erp/erpnext.py ./szl_connectors/erp/erpnext.py | |
| COPY szl_connectors/erp/odoo.py ./szl_connectors/erp/odoo.py | |
| COPY szl_connectors/erp/others.py ./szl_connectors/erp/others.py | |
| COPY szl_connectors/erp/sap_s4.py ./szl_connectors/erp/sap_s4.py | |
| COPY szl_connectors/governance.py ./szl_connectors/governance.py | |
| COPY szl_connectors/identity/__init__.py ./szl_connectors/identity/__init__.py | |
| COPY szl_connectors/identity/identity_connectors.py ./szl_connectors/identity/identity_connectors.py | |
| COPY szl_connectors/itsm/__init__.py ./szl_connectors/itsm/__init__.py | |
| COPY szl_connectors/itsm/itsm_connectors.py ./szl_connectors/itsm/itsm_connectors.py | |
| COPY szl_connectors/oauth.py ./szl_connectors/oauth.py | |
| COPY szl_connectors/observability/__init__.py ./szl_connectors/observability/__init__.py | |
| COPY szl_connectors/observability/observability_connectors.py ./szl_connectors/observability/observability_connectors.py | |
| COPY szl_connectors/ready.py ./szl_connectors/ready.py | |
| COPY szl_connectors/registry.py ./szl_connectors/registry.py | |
| COPY szl_connectors/storage/__init__.py ./szl_connectors/storage/__init__.py | |
| COPY szl_connectors/storage/storage_connectors.py ./szl_connectors/storage/storage_connectors.py | |
| COPY szl_connectors/warehouse/__init__.py ./szl_connectors/warehouse/__init__.py | |
| COPY szl_connectors/warehouse/warehouse_connectors.py ./szl_connectors/warehouse/warehouse_connectors.py | |
| COPY pages/integrations.html ./pages/integrations.html | |
| # ADDITIVE (Task: HF Dataset Bucket Foundation): the ONE shared Hugging Face | |
| # 'bucket' client both flagships reuse. Durable, append-only, idempotent | |
| # (content-addressed dedup), offline-tolerant local queue + flush, rate-aware | |
| # batched Hub commits. Pure stdlib + huggingface_hub (lazy). BYTE-IDENTICAL | |
| # across a11oy + killinchu (shared-file-drift enforces it via this COPY list). | |
| # This Dockerfile never uses `COPY . .` — without this line `import | |
| # szl_hf_bucket` fails. Imported lazily by callers; no boot-time side effects. | |
| COPY szl_hf_bucket.py szl_metrics_prom.py ./ | |
| # ADDITIVE (Task MW5: 3D HOLOGRAPHIC MARITIME GLOBE): self-contained WebGL2 | |
| # holographic globe view for the /elite surface (+ /jackin/globe alias). Plots | |
| # REAL vessel + aircraft tracks at true lat/lon with motion plus honestly- | |
| # labelled dark-halo / spoof-arc / Λ-risk / forecast-cone intel layers | |
| # (INFERENCE/FORECAST today; auto-upgrades to backend LIVE when the W2/W3 | |
| # maritime endpoints are reachable + advertised). 0 runtime CDN — the entire | |
| # engine + landmask + styles are vendored inline as base64-embedded HTML. This | |
| # Dockerfile never uses `COPY . .`; without this line `import | |
| # killinchu_maritime_globe` in serve.py fails (registration is guarded, so the | |
| # app still boots, but the globe route would be absent). Imported once at boot; | |
| # no network side effects. | |
| COPY killinchu_maritime_globe.py ./ | |
| # copy-sync lockstep guard (CHECK 2): these modules are on main + imported by serve.py | |
| # (try/except-guarded) but were NEVER COPY'd into the image, so the import silently fell | |
| # back to a STUB on the Space (the recurring "merged-but-not-live" failure). | |
| # killinchu_elite_wiring wires the /elite console; killinchu_flow_compartments backs the | |
| # flow-compartments surface. Per-file COPY (this Dockerfile never uses `COPY . .`). | |
| COPY killinchu_elite_wiring.py killinchu_flow_compartments.py ./ | |
| # CoT INTEROP (MITRE Cursor on Target export/ingest): serve.py imports | |
| # killinchu_cot_interop (try/except-guarded) to serve /api/killinchu/v1/cot/*. | |
| # Per-file COPY (this Dockerfile never uses `COPY . .`) or the guarded import | |
| # falls back to a STUB on the Space (merged-but-not-live). Mirrored to the HF | |
| # Space via hf-sync (on.push.paths + APP_FILES — copy-sync lockstep enforced). | |
| COPY killinchu_cot_interop.py ./ | |
| # AIS Aug 2024 dataset connector: serve.py imports killinchu_ais_aug2024 | |
| # (try/except-guarded) to register the NOAA coastal-US AIS Aug 2024 governed | |
| # source. Per-file COPY (this Dockerfile never uses `COPY . .`) or the guarded | |
| # import falls back to a STUB on the Space (merged-but-not-live). Mirrored to | |
| # the HF Space via hf-sync (on.push.paths + APP_FILES — copy-sync lockstep). | |
| COPY killinchu_ais_aug2024.py ./ | |
| # --- ESTATE ECOSYSTEM FOUNDATION (Dev5, 2026-06): byte-identical shared modules --- | |
| # 3 shared JS (label engine / receipt-cosign / codename sanitizer) + codename gate + ecosystem router. | |
| COPY static/shared/szl_label_engine.js static/shared/szl_receipt_cosign.js static/shared/szl_codename_sanitizer.js static/shared/szl_holo3d.js ./static/shared/ | |
| COPY szl_codename_gate.py szl_ecosystem_routes.py ./ | |
| # git_sha wireup (FORGE-INSTRUCTION-gitsha-quiet-window): surface the deployed commit | |
| # at the /honest endpoint so a stale box or Space is self-detecting. Provided at build | |
| # time (box rebuild passes --build-arg SZL_GIT_SHA=$(git rev-parse HEAD); HF Space sets | |
| # the SZL_GIT_SHA variable). Kept last so a per-build value busts no earlier cache. | |
| ARG SZL_GIT_SHA=unknown | |
| ARG SZL_BUILD_TIME=unknown | |
| ENV SZL_GIT_SHA=${SZL_GIT_SHA} \ | |
| SZL_BUILD_TIME=${SZL_BUILD_TIME} | |
| # Container HEALTHCHECK for the standalone Docker path (DEPLOY.md §1, `docker run`). | |
| # The k8s manifests already wire liveness/readiness probes; this gives the same | |
| # signal to plain Docker / Compose / Watchtower so an unhealthy container is | |
| # self-reporting instead of looking "up" while the app is wedged. Hits the real | |
| # doctrine envelope endpoint (returns 200 JSON); stdlib-only, no curl dependency. | |
| HEALTHCHECK --interval=30s --timeout=5s --start-period=40s --retries=3 \ | |
| CMD python -c "import urllib.request,sys; sys.exit(0 if urllib.request.urlopen('http://127.0.0.1:7860/api/killinchu/healthz', timeout=4).status==200 else 1)" || exit 1 | |
| CMD ["python", "serve.py"] | |
| # Build cache-bust 2026-06-13T20:55Z (MW5 maritime globe): COPY killinchu_maritime_globe.py | |
| # into /app so serve.py can import+register the holographic globe at /elite/globe. | |
| # Build cache-bust 2026-06-06T09:10Z (model-integration squad): PORTED OPEN-WEIGHT ALLOY | |
| # MODEL LAYER from a11oy -> COPY szl_alloy_models.py + szl_llm_registry.py; serve.py | |
| # registers alloy under /api/killinchu/v1/alloy/* (C20/W7-5 router, W5-3/W7-4 conformal, | |
| # C10-C12 consensus; DeepSeek-Coder-V2 CODE_PRIMARY; honest tower-side; never faked). | |
| # Build cache-bust 2026-06-07T05:00Z (MINED ops squad): COPY killinchu_mined_ops.py | |
| # into /app so serve.py can import+register the 4 mined operational/efficiency surfaces. | |