Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
69 changes: 69 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: CI

on:
pull_request:
push:
branches:
- main

permissions:
contents: read

jobs:
windows-validation:
name: Windows validation
runs-on: windows-latest
timeout-minutes: 20
defaults:
run:
shell: pwsh

steps:
- name: Checkout
uses: actions/checkout@v6

- name: Set up pnpm
uses: pnpm/action-setup@v6
with:
version: 10
run_install: false

- name: Set up Node.js
uses: actions/setup-node@v6
with:
node-version: "24"
cache: pnpm
cache-dependency-path: pnpm-lock.yaml

- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.13"
cache: pip
cache-dependency-path: packages/image-pipeline/requirements.txt

- name: Install JavaScript dependencies
run: pnpm install --frozen-lockfile

- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -r packages\image-pipeline\requirements.txt

- name: Typecheck TypeScript workspace
run: pnpm typecheck

- name: Build TypeScript workspace
run: pnpm build

- name: Typecheck Python image pipeline
run: pnpm --filter @autopet/image-pipeline typecheck

- name: Test Python image pipeline through pnpm
run: pnpm --filter @autopet/image-pipeline test

- name: Compile Python package
run: python -m compileall packages\image-pipeline\autopet_image_pipeline

- name: Run Python unittest suite
run: python -m unittest discover -s packages\image-pipeline
12 changes: 12 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -460,6 +460,18 @@ corepack pnpm --filter @autopet/image-pipeline test
.\.venv\Scripts\python.exe -m unittest discover -s packages\image-pipeline
```

### CI

The repository includes a minimal GitHub Actions workflow that validates the
non-GUI baseline checks on Windows. It runs the TypeScript typecheck/build
checks and the Python image-pipeline compile/test checks.

CI does not replace the manual Stage 9 E2E smoke checklist. It does not launch
the Electron GUI apps or build release installers.

AutoPet is still not a v0.1 release yet. Release-readiness notes are still
pending.

---

## Runtime Window Requirements
Expand Down
57 changes: 43 additions & 14 deletions docs/dev-log.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Current Handoff State

Date: 2026-05-19
Date: 2026-05-21

AutoPet is still in the v0.1 implementation stage. This is not a v0.1 release.

Expand All @@ -29,8 +29,9 @@ Current handoff state:

```text
Stage 8 is complete.
Stage 9 has begun with a docs-only manual E2E smoke checklist and
source-of-truth cleanup.
Stage 9.1 added the manual E2E smoke checklist and source-of-truth cleanup.
Stage 9.2 manual E2E smoke passed on 2026-05-21.
Stage 9.3 is the current minimal CI workflow task.
```

Known merged pull requests documented in this log:
Expand All @@ -51,6 +52,8 @@ PR #12: Add Runtime pet package loader helper
PR #13: Load pet packages from local folders
PR #14: Add Maker image pipeline runner helper
PR #15: Export pet packages from transparent PNGs
PR #16: Refresh source of truth after Stage 8
PR #17: Add Stage 9 E2E smoke checklist
```

Completed / current stages:
Expand All @@ -70,11 +73,13 @@ Completed / current stages:
- Stage 8.1: Maker image-pipeline runner helper.
- Stage 8.2: Maker transparent PNG export UI / IPC integration.
- Stage 9.1: Manual v0.1 E2E smoke checklist and source-of-truth cleanup.
- Stage 9.2: Manual Maker export to Runtime `Load Pet...` E2E smoke passed.
- Stage 9.3: Minimal non-GUI Windows CI workflow task is current.

Latest known verification:

```powershell
corepack pnpm --filter @autopet/maker typecheck
git diff --check
corepack pnpm typecheck
corepack pnpm build
corepack pnpm --filter @autopet/image-pipeline typecheck
Expand All @@ -87,10 +92,35 @@ corepack pnpm --filter @autopet/image-pipeline test
Result:

```text
Passed during Stage 8 work.
Maker manual smoke passed for opening the export form, choosing a transparent
PNG, choosing an output folder, exporting a temporary transparent PNG, and
generating pet.json, spritesheet.png, and preview.gif.
Stage 9.2 manual E2E smoke passed on 2026-05-21.

Environment:
- Branch: test/stage9-e2e-smoke-run
- Commit: 6bf3eeb
- Node: v24.15.0
- pnpm: 10.33.4
- Python: 3.13.13

Baseline checks passed:
- git diff --check
- corepack pnpm typecheck
- corepack pnpm build
- corepack pnpm --filter @autopet/image-pipeline typecheck
- corepack pnpm --filter @autopet/image-pipeline test, 4 tests OK
- .\.venv\Scripts\python.exe -m compileall packages\image-pipeline\autopet_image_pipeline
- .\.venv\Scripts\python.exe -m unittest discover -s packages\image-pipeline, 4 tests OK

Maker transparent PNG export passed and generated pet.json, spritesheet.png,
and preview.gif outside the repository under
%TEMP%\autopet-v0.1-e2e-smoke. The generated pet.json referenced
spritesheet.png.

Runtime launch, right-click menu, Load Pet..., generated pet display, visible
animation advancement, drag, Reset Position, Always on Top toggle, and Exit
passed by human manual confirmation.

No bugfix PR was needed from the smoke run. Final git status --short was clean,
and the temporary branch test/stage9-e2e-smoke-run was deleted.
```

Current source-of-truth files for future ChatGPT / Codex threads:
Expand All @@ -101,14 +131,14 @@ AGENTS.md
docs/dev-log.md
docs/pet-schema.md
docs/workflows/codex-pr-workflow.md
docs/workflows/v0.1-e2e-smoke-checklist.md
```

Current recommended next task:

```text
Run the Stage 9.1 manual E2E smoke checklist on Windows.
If failures appear, split fixes into small bugfix PRs.
Then consider minimal CI and release-readiness notes.
Open the Stage 9.3 minimal CI PR and confirm the GitHub Actions run is green.
Then proceed to release-readiness notes.
```

Stage 9 should not assume installer creation, GitHub Release binaries, release
Expand Down Expand Up @@ -977,9 +1007,8 @@ This cleanup should be kept separate from feature work.
Recommended next task:

```text
Run the Stage 9.1 manual E2E smoke checklist on Windows.
If failures appear, split fixes into small bugfix PRs.
Then consider minimal CI and release-readiness notes.
Open the Stage 9.3 minimal CI PR and confirm the GitHub Actions run is green.
Then proceed to release-readiness notes.
```

Stage 9.1 checklist path:
Expand Down
Loading