Workspace listo en estructura para PR, pero aun no elegible para someterse a github-linguist/linguist. Construido con EVIDENCE BEFORE NARRATIVE — sin uso inventado, sin samples de Hello World, sin gramatica no publicada reclamada como lista.
- Upstream:
github-linguist/linguist@d5214e1612c858ba14bf98edeca57e1683276f1d(clone enupstream/, gitignored) - Branch:
malbolge-linguist(este repo, aislado del monorepo ISyCo) - Color:
#1D1A2F— morado profundo EVA-01 - Extension:
.malbolgeunicamente (.malrechazado, ver abajo)
TECHNICAL_IMPLEMENTATION_READY = TRUE
SAMPLE_READY = TRUE
GRAMMAR_READY = TRUE
DETECTION_READY = TRUE
NO_NEW_FAILURES = TRUE
TECHNICAL_WORK = DONE
USAGE_GATE = NOT_DEMONSTRATED
POLICY_ELIGIBLE = FALSE
PR_READY = FALSE
PR_OPEN = FALSE
MAINTAINER_GUIDANCE = RECEIVED
SEMANTIC_ALTERNATIVE_PATH = REJECTED
USAGE_ASSESSMENT = PER_EXTENSION_OR_FILENAME
FINAL_STATE = BLOCKED_BY_USAGE_POLICY
La Discussion #8164 recibio guia del maintainer: github-linguist/linguist#8164
@lildude: "Usage has to be supported per extension or filename being added."
Legacy: LANGUAGE_DEFINITION_READY=TRUE, SAMPLES_READY=TRUE (estaba BLOCKED, ahora TRUE via sample MIT del PR), DETECTION_READY NOT_DEMONSTRATED→TRUE post-patch, TESTS_PASS→NO_NEW_FAILURES=TRUE (2/1 vs 2/1), USAGE_GATE se queda NOT_DEMONSTRATED.
No abras PR — la guia del maintainer confirma que POLICY_ELIGIBLE=FALSE para la extension .malbolge propuesta. El bloqueador es la politica de uso, no la preparacion tecnica.
Epilogo del proyecto historico: docs/EPILOGUE.md.
-
Usage gate (
CONTRIBUTING.md:236-250): 2000 archivos (extension comun) / 200 (una vez por repo) el ultimo ano, forks excluidos, distribuido. Medido 2026-09-02NOT is:fork:extension:malbolge NOT is:fork= 42 (3 con termino Malbolge)extension:mal NOT is:fork= 6096 pero solo 27 Malbolge, fuertemente contaminado (Malabar, Scheme, modelo)- Veredicto:
NOT_DEMONSTRATED. Ninguna busqueda honesta alcanza el umbral. Verevidence/github_usage/results_summary.json. Ningun repo de DannyBaanks contado; sin creacion masiva;CLAIM_SCOPE <= EVIDENCE_SCOPE.
-
Gramatica:
GRAMMAR_PACKAGE_READY=TRUE(publicadohttps://github.com/DannyBaanks/malbolge-syntax225f5acb, MIT, layoutsyntaxes/) yGRAMMAR_IN_FINAL_UPSTREAM_PATCH=TRUE(integrado via canonicoscript/add-grammar https://github.com/DannyBaanks/malbolge-syntaxexit 0 → submodulevendor/grammars/malbolge-syntax+grammars.ymlsource.malbolge+ cache de licencias +vendor/README.mdviascript/list-grammars;test_all_languages_have_grammarsytest_readme_file_is_in_syncpasan). Vergrammar/malbolge-syntax/README.mdyevidence/patches/malbolge.patch. -
Historia: PR #4609 (2019,
.mb, cerrado sin merge, verdocs/HISTORY_PR4609.md) se cerro por la misma razon de uso (81k.mbpero solo 2 Hello Worlds). La propuesta actual no repitenotability=usage.
-
Patch commit canonico
1af6aef9(Docker volumemalbolge-canonical-work/workspace/patched, branchmalbolge-canonical, based5214e16; no pusheado): entrada enlanguages.yml(Mako/Markdown alfabetico,#1D1A2F,.malbolge,tm_scope: source.malbolge,language_id: 1006177966),samples/Malbolge/truth_machine.malbolge(254 B, SHA7062713e..., MIT, mode 100644, verdocs/SAMPLE_PROVENANCE.md), patch reproducibleevidence/patches/malbolge.patch(SHADFDA0517F53F95209DEEC4D43A6E287EBDC20C846D14034BFEDFAB57BE4620E8,git format-patch d5214e16..1af6aef9,git applyverificado en un clone fresco). -
Sample
SAMPLE_READY=TRUE:truth_machine.malbolge—IN→branch→OUT→HALT/loopClasico,'0'→halt 136 pasos,'1'→loop, cross-verificadogost+oracle, no es Hello World, procedencia MIT (clausula de sample authored-by-PR,CONTRIBUTING.md:150-161). -
Gramatica
GRAMMAR_PACKAGE_READY=TRUE(publicadohttps://github.com/DannyBaanks/malbolge-syntax225f5acb, layoutsyntaxes/),GRAMMAR_IN_FINAL_UPSTREAM_PATCH=TRUE(integrado via canonicoscript/add-grammarexit 0 — submodule,grammars.yml, cache de licencias,vendor/README.mdtodos generados por tooling upstream, no escritos a mano). Conservativa (no etiqueta opcodes posicionales erroneamente). -
Deteccion
DETECTION_READY=TRUEpost-patch (evidence/canonical/detection.log):FileBlob→language=Malbolge,extname=.malbolge,mime=text/plain;Language["Malbolge"]→ext:[".malbolge"] color:#1D1A2F id:1006177966 tm_scope:source.malbolge; end-to-endgithub-linguist --breakdown→100.00% 254 Malbolge(breakdown_cli.log). -
Pruebas
NO_NEW_FAILURES=TRUE(mismo entorno Docker,evidence/canonical/): baselinerake_test.log2034 runs 39353 assertions 2 failures 1 error vs patchedrake_test_final.log2036 runs 39369 assertions 2 failures 1 error (+2 runs Malbolge sample, +16 assertions, 0 new failures; los 2 failures+1 error son solo CodeMirror,vendor/CodeMirrorausente de un clone fresco, no relacionado con Malbolge). -
Contaminacion: falsos positivos
.mal(corkami/mitraMalabar,larcenists/larcenyScheme) —evidence/github_usage/sample_repositories.md; sin heuristicas para.malbolge.
Pipeline canonico (Docker): volume malbolge-canonical-work (baseline/ fijado d5214e16, patched/ branch malbolge-canonical), gem bundle volume malbolge-canonical-bundle, DIND malbolge-canonical-dind, runner malbolge-linguist-addgrammar. Logs crudos completos en evidence/canonical/.
malbolge-linguist/
evidence/
github_usage/ # queries.md, results_summary.json, sample_repositories.md
canonical/ # logs del pipeline canonico (baseline 2034/2/1, patched 2036/2/1), add_grammar.log, detection.log, breakdown_cli.log, apply_verify.log, environment.log
tests/ # logs legacy no-canonicos (preservados por historia)
patches/malbolge.patch # canonico, d5214e16..1af6aef9, SHA DFDA0517...
grammar/malbolge-syntax/ # LICENSE MIT, malbolge.tmLanguage.json (source.malbolge), package.json, tests/sample.malbolge + validation.md, README
PR_DRAFT.md # replica .github/PULL_REQUEST_TEMPLATE.md, sin check donde esta bloqueado
TOOLCHAIN_LOCK.json
README.md # este archivo
El commit canonico del patch 1af6aef9 vive en el Docker volume (malbolge-canonical-work/patched, no pusheado); los docs de investigacion nunca entran al patch final. Patch cuando la politica lo permita:
lib/linguist/languages.yml # source.malbolge
samples/Malbolge/truth_machine.malbolge
grammars.yml + vendor/grammars/malbolge-syntax (via script/add-grammar)
vendor/README.md (via script/list-grammars)
vendor/licenses/git_submodule/malbolge-syntax.dep.yml
gh repo clone DannyBaanks/malbolge-linguist
cd malbolge-linguist
git log --oneline -5
cat docs/FINAL_AUDIT.md
cat docs/LINGUIST_REQUIREMENTS.md
cat evidence/github_usage/results_summary.json
cat evidence/tests/fileblob.log
cat SHA256SUMS.txt; py -c "import hashlib,pathlib;root=pathlib.Path('.');print(all(hashlib.sha256(p.read_bytes()).hexdigest()==open('SHA256SUMS.txt').read().split()[i*2] for i,p in enumerate(sorted([p for p in root.rglob('*') if p.is_file() and '.git' not in p.parts and p.name!='SHA256SUMS.txt' and 'upstream' not in p.parts]))))"Checar: upstream/CONTRIBUTING.md:134-250 vs PR_DRAFT.md; evidence/github_usage/queries.md vs busqueda en GitHub en vivo; grammar/malbolge-syntax/Malbolge.tmLanguage.json validez JSON.
PublicarListo (grammar/malbolge-syntaxhttps://github.com/DannyBaanks/malbolge-syntax225f5acb, layoutsyntaxes/, canonicoscript/add-grammarexit 0, patchevidence/patches/malbolge.patchDFDA0517...)SampleListo (SAMPLE_READY=TRUE,truth_machine.malbolge70627...)Censo de ProjectMapListo (demoevidence/census/corpus3 archivos: baselineverified 1→ conexternal.jsonverified 2 rejected 1; extrapolando GitHub SearchVALID_MALBOLGE~71UNIQUE_REPOS~40-45 < 2000 →USAGE_GATE=NOT_DEMONSTRATEDfinal, verevidence/census/README.md)- La Discussion #8164 resolvio la pregunta de politica: el uso debe soportarse por extension o nombre de archivo propuesto. No se planea accion adicional.
- Repo:
https://github.com/DannyBaanks/malbolge-linguist - Upstream:
https://github.com/github-linguist/linguist - Fuente de genealogia (solo lectura): el repositorio
GENEALOGIA_MALBOLGE(checkout local del autor)
EVIDENCE BEFORE NARRATIVE. Sin uso inventado. EVA-01 #1D1A2F.