Skip to content

ECO-LISP-SCRIPTS-1: прибрати Python-скрипти й переписати tooling на my-lisp #76

Description

@juv4uk

Рішення власника — 2026-09-11

Ціль: активний repo-owned scripting/tooling у my-lisp має бути написаний на нашому Lisp, а не на Python.

Центральна performance/feedback задача: #74

Scope

Аудитувати всі repo-owned .py скрипти та Python-виклики у scripts/, CI, codegen, validators, migration/check tools, test orchestration, release/dev tooling. Vendored/upstream dependencies та immutable historical evidence не є активним scripting surface, але мають бути явно відділені.

Міграція

  • Для кожного активного Python-скрипта зафіксувати inputs/outputs, exit codes, side effects, determinism/provenance та negative behavior.
  • Написати еквівалентний .my/.мій скрипт через Canon-функції, без локального винайдення семантики.
  • На перехідному етапі запускати differential/parity witness Python ↔ my-lisp на однакових fixtures.
  • Переключити CI/automation на Lisp-версію; лише після зеленого parity видалити repo-owned Python-скрипт і його виклики.
  • Якщо Lisp-версія істотно повільніша або бракує ефективного механізму — не робити Python fallback; подати workload/profile/optimization proposal в my-lisp#74.
  • Bootstrap-виняток допустимий лише тимчасово і лише якщо без нього неможливо побудувати/перевірити сам my-lisp; такий виняток має мати явний план самовидалення.

Acceptance

  • В активних repo-owned шляхах немає Python-скриптів або прихованих python/python3 fallback-ів.
  • CI/tooling працює через my-lisp scripts.
  • Для кожної міграції є executable parity + negative witness.
  • Generated artifacts лишаються deterministic/provenance-checked.
  • Будь-які performance blockers передані в my-lisp#74 з вимірами, а не замасковані Python-обхідним шляхом.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions