Commit graph

1 commit

Author SHA1 Message Date
Ouroboros
089f66740f chore(build): import build artifacts from main + adapt spec for Phase 5 skills
Branch `ouroboros` was seeded from an `.app` bundle snapshot
(`6700358 Initial commit from app bundle`), not from `main`, so the
release pipeline (build scripts, PyInstaller spec, launcher runtime,
vendored Python framework, CI workflow) never landed on this branch.
Import those files verbatim from `origin/main` (76bf13c) so a tagged
push can trigger the existing tag-driven release pipeline.

Imported verbatim from `origin/main`:
  - .github/workflows/ci.yml           Three-tier CI (push -> quick
                                       tests, stable/tag -> full matrix,
                                       v* tag -> build + GitHub Release
                                       with `prerelease: contains(...,
                                       -rc|-alpha|-beta)`).
  - build.sh / build_linux.sh /        PyInstaller + Playwright Chromium
    build_windows.ps1 / Dockerfile     bundling for each target (the four
                                       files `tests/test_build_scripts.py`
                                       assertively requires).
  - Ouroboros.spec                     PyInstaller entry spec.
  - entitlements.plist                 macOS codesign entitlements.
  - launcher.py                        Native launcher that bootstraps
                                       the embedded python-standalone
                                       interpreter and runs the agent as
                                       a subprocess.
  - scripts/download_python_standalone.sh / .ps1 / pyi_rth_pythonnet.py
  - Python, Python.framework/          Vendored macOS launcher-side
                                       Python 3.10 framework.
  - certifi/, jsonschema/,             Marker + data files consumed by
    jsonschema_specifications/         the runtime-loaded agent deps.

Adapted for Phase 1-6:
  - Ouroboros.spec datas now contains ('skills', 'skills') so the
    bundled Phase 5 weather reference skill under `skills/weather/`
    actually ships inside the .app / .exe / tarball. Without this the
    Skills page on a packaged build would show "no skills discovered"
    even with the bundled reference in source. Docstring updated to
    document the new bundled payload.

Verification:
  - `pytest tests/test_build_scripts.py tests/test_release_sync.py`
    passes locally (47 asserts; all Playwright + PyInstaller ordering
    invariants + release-sync carrier logic hold after the import).
  - `python -c "import ast; ast.parse(open('Ouroboros.spec').read())"`
    parses.

Not imported from main (intentional):
  - `.pytest-tmp-run`, pytest-cache dirs, and other transient files.
  - No existing file was overwritten by the checkout; the import is
    purely additive on top of the Phase 1-6 tree.
2026-04-22 14:31:53 +03:00