[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-96246":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":9,"language":10,"languages":9,"totalLinesOfCode":9,"stars":11,"forks":12,"watchers":13,"openIssues":14,"contributorsCount":14,"subscribersCount":14,"size":14,"stars1d":14,"stars7d":14,"stars30d":14,"stars90d":14,"forks30d":14,"starsTrendScore":14,"compositeScore":15,"rankGlobal":9,"rankLanguage":9,"license":16,"archived":17,"fork":17,"defaultBranch":18,"hasWiki":19,"hasPages":17,"topics":20,"createdAt":9,"pushedAt":9,"updatedAt":21,"readmeContent":22,"aiSummary":23,"trendingCount":14,"starSnapshotCount":14,"syncStatus":24,"lastSyncTime":25,"discoverSource":26},96246,"doomfly","nftechie\u002Fdoomfly","nftechie","Fly-connectome simulation controlling a live Doom arena, with experimental neural plasticity, spectator UI, and scientific validation reports.",null,"Python",128,21,120,0,4.03,"MIT License",false,"main",true,[],"2026-09-21 02:04:31","# DOOMFLY\n\nA fly-connectome simulation connected to a live Doom-engine arena. Game frames stimulate modeled sensory neurons; activity propagates through the retained MaleCNS v1.0 wiring, and a fixed neuron-to-button interface turns, moves and fires. An experimental dopamine-gated memory rule changes a small set of existing connections during play.\n\n**Status: live experimental training, not demonstrated learned survival.** The current v6 candidate failed its visual, conditioning and survival validation gates. Changing weights and longer individual rounds do not establish learning. This repository includes the negative results, controls and modeling assumptions alongside the implementation.\n\n## The loop\n\n1. Each actual ViZDoom frame drives **3,335 R1–R6 brightness inputs and 811 R8 color inputs**. Pixel positions and color responses are inferred proxies.\n2. Approximate neural dynamics run on **166,700 retained neurons and 25,582,938 directed connections** from MaleCNS v1.0. No circuit cropping or replacement game policy is used.\n3. A fixed interface maps DNp20 right-minus-left activity to turning, and DNpe017 activity to movement and firing. These are engineered controller assignments, not established natural motor functions.\n4. Nonfatal damage schedules a **200 ms artificial aversive input into two PPL101 dopamine cells**. KC and dopamine activity drive an adapted plasticity rule on **4,184 existing KC→MBON11 connections**. The rest of the wiring and controller remain fixed.\n5. Death starts a new arena round while neural state and memory persist. All viewers watch the same experiment.\n\nThe wiring comes from a biological reconstruction. The dynamics, retinal interface, artificial reinforcement and controller are models and engineering choices. This is not a literal reconstructed living fly brain. See the [current training protocol](docs\u002Fdoom-live-training.md), [model review](docs\u002Fdoom-neuroscience-review.md), and [iteration results](doom-ui\u002Fpublic\u002Flearning-iterations.json).\n\n## Repository map\n\n| Path | Contents |\n| --- | --- |\n| `doom\u002F` | Whole-graph simulator, native kernel, ViZDoom interface, arena and broadcaster |\n| `doom_learning\u002F`, `doom_learning_v2\u002F` … `doom_learning_v6\u002F` | Conditioning, plasticity candidates and controlled learning experiments |\n| `doom-ui\u002F` | Monochrome spectator website, live telemetry, learning and methods pages |\n| `doom\u002Fconnectome.py`, `doom\u002Fdatasets.json` | MaleCNS importer and exact input registry |\n| `tests\u002F` | Neural, numerical, game, reinforcement and checkpoint checks |\n| `docs\u002F`, `outputs\u002F`, `data-provenance\u002F` | Scientific reviews, compact evidence, source snapshots and dataset hashes |\n| `deploy\u002Fdoomfly\u002F` | Prepared container and deployment instructions |\n\n## Run the neural experiment\n\nUse Python 3.11 and a C++ compiler. The full graph needs several GB of RAM and downloaded data; it does not run inside a browser or an edge function. Use the pinned neural requirements below.\n\n```sh\npython3.11 -m venv .venv-neural\nsource .venv-neural\u002Fbin\u002Factivate\npython -m pip install --upgrade pip\npython -m pip install -r requirements-neural.txt -r doom\u002Frequirements.txt \\\n  --build-constraint neural-build-constraints.txt\n```\n\nDownload the three MaleCNS inputs listed in [`doom\u002Fdatasets.json`](doom\u002Fdatasets.json) to `connectome_data\u002Fmalecns_v1\u002F`, using the exact registry filenames. Verify them against [`data-provenance\u002Fmalecns_v1\u002Fsource.lock.json`](data-provenance\u002Fmalecns_v1\u002Fsource.lock.json). The following downloads missing files and checks every digest before import:\n\n```sh\npython - \u003C\u003C'PY'\nfrom pathlib import Path\nimport hashlib, json, urllib.request\nname = 'malecns_v1'\nregistry = json.loads(Path('doom\u002Fdatasets.json').read_text())['datasets'][name]\nlocked = json.loads(Path(f'data-provenance\u002F{name}\u002Fsource.lock.json').read_text())\nroot = Path('connectome_data') \u002F name\nroot.mkdir(parents=True, exist_ok=True)\nfor filename, url in registry['files'].items():\n    target = root \u002F filename\n    if not target.exists():\n        partial = target.with_suffix('.download')\n        urllib.request.urlretrieve(url, partial)\n        partial.replace(target)\n    with target.open('rb') as stream:\n        digest = hashlib.file_digest(stream, 'sha256').hexdigest()\n    if digest != locked[filename]['sha256']:\n        raise RuntimeError(f'Source checksum mismatch: {filename}')\n(root \u002F 'source.lock.json').write_text(json.dumps(locked, indent=2) + '\\n')\nPY\npython -m doom.connectome malecns_v1\npython -m doom.prepare\npython -m doom.audit_data\npython -m doom.build_kernel\npython -m doom.server --model experimental-v6 --learning --port 8766 \\\n  --audit-dir outputs\u002Fdoom\u002Flocal-training \\\n  --checkpoint-dir outputs\u002Fdoom\u002Flocal-training\u002Fcheckpoints \\\n  --checkpoint-seconds 300 --resume\n```\n\nThe default server invocation without `--model experimental-v6 --learning` runs the fixed baseline. Graph preparation also describes the baseline; the explicit model selection and [training protocol](docs\u002Fdoom-live-training.md) determine the learning behavior. Baseline instructions remain in [`doom\u002FREADME.md`](doom\u002FREADME.md).\n\nFor numerical checks, run `python -m pytest tests\u002Ftest_doom.py tests\u002Ftest_doom_reference.py tests\u002Ftest_doom_live_training.py -q`. Some broader tests and historical experiments require downloaded graphs or optional upstream research materials. Passing software tests is not evidence of biological validity. Do not run many full-graph jobs concurrently on a small machine.\n\n## Run the viewer\n\nUse Node.js 22.13 or later. In `doom-ui\u002F`, run `npm ci`, create a local `.dev.vars` containing `DOOM_STREAM_ORIGIN=http:\u002F\u002Flocalhost:8766`, then run `npm run dev`. `npm run build` builds the viewer. Configuration files containing real origins or credentials stay untracked.\n\nHosting the viewer alone does not host the simulation. It needs an independently running Python worker and a configured read-only HTTPS origin. A laptop must stay awake and connected. The prepared container has not been certified for cloud operation or audience load. Register your own hosting project before publishing a fork.\n\n## Evidence and publication hygiene\n\nHistorical reports and failed experiments are preserved. Large connectome downloads, mutable checkpoints, raw operational logs, dependencies, credentials and the separately generated Twitter banners are excluded. Existing application graphics and scientific plots remain included.\n\nThis is a fresh source snapshot with no private Git history. Local paths, temporary hostnames and image metadata were removed where found. Historical source hashes identify the original experimental artifacts; privacy-redacted files or rebuilt archives can have different byte hashes. See [public release notes](docs\u002Fpublic-release.md) for those boundaries and [third-party sources](THIRD_PARTY.md) for upstream materials.\n\n## License and attribution\n\nOriginal DOOMFLY code is [MIT licensed](LICENSE). Data, game artwork and copied\ncomponents retain their own licenses: see [attribution and scope](THIRD_PARTY.md)\nand [full third-party notices](THIRD_PARTY_NOTICES.md). DOOMFLY is an independent\nresearch project, unaffiliated with and not endorsed by id Software, Bethesda\nor ZeniMax. No trademark rights are granted.\n","DOOMFLY 是一个将果蝇全脑连接组（MaleCNS v1.0）神经模型实时接入《Doom》游戏引擎的神经仿真系统。它通过ViZDoom帧驱动约3300个视觉输入通道，激活16.6万神经元与2500万突触连接，并基于多巴胺调控的可塑性规则（作用于4184个KC→MBON11连接）进行在线学习实验；配套单色观众界面支持实时观测、训练协议追踪与科学验证报告。项目强调生物合理性与可复现性，完整公开负向结果、控制实验与建模假设，适用于神经计算、类脑智能验证、闭环神经仿真教学及计算神经科学方法论研究。",2,"2026-09-12 02:30:13","CREATED_QUERY"]