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
15 changes: 15 additions & 0 deletions .audit/omacy-impl.tsv
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
ts phase decision why evidence result
2026-08-27T14:54:03Z frame lock done-predicate: engine FFI+parity tests green on Linux; Swift host+appex sources match architecture.md; canary idle/System Settings remains a Mac gate Linux VM cannot compile Swift or run ScreenSaverEngine; prove the engine here and ship complete macOS sources docs/architecture.md:298 docs/ffi.md docs/parity.md framed
2026-08-27T15:09:47Z harness vendor ttfx at v0.3.2 pin and copy Omarchy wordmark scaffold before features; pin is the recorded SHA not floating master vendor/ttfx/PIN assets/branding/screensaver.txt copied
2026-08-27T16:22:38Z impl snapshot fill_grid at frame() emit unstable rumble restores coords after ANSI; live pack desynced Metal from oracle vendor/ttfx/src/engine/terminal.rs store_snapshot; tests/parity.rs 37x2x2x180 green pass
2026-08-27T16:22:38Z impl ascii goldens + Fairfax HD + host/appex sources parity.md conversion matrix and architecture host+appex assets/fixtures/conversion apps/Omacy docs/macos-gates.md engine-proven; Mac idle unverified
2026-08-27T16:50:00Z impl close remaining architecture gaps atomic store, lifecycle, occupancy/atlas, dead recover, copy, panic+budget tests cargo test -p omacy-engine; cargo test --manifest-path vendor/ttfx/Cargo.toml; cargo test -p omacy-engine --release --test budget engine pass; Mac idle unverified
2026-08-27T16:46:50Z impl close remaining architecture gaps atomic store, lifecycle, occupancy/atlas, dead recover, copy, panic+budget tests docs/architecture.md testing table + host/appex sources in-progress
2026-08-27T17:01:46Z impl canary thumbnails, SVG href reject, session contract tests architecture thumbnail + FFI wait/pending/re-entrant + no file SVG cargo test -p omacy-engine pass
2026-08-27T17:06:12Z impl appex per-display loadView + duplicate pluginkit warning Settings preview 30Hz and multi-display need the real frame; PlugInKit sticky if two locations apps/Omacy/OmacyScreensaver/OmacySaverViewController.swift PluginManager.swift in-progress
2026-08-27T17:15:04Z ci add macos-15 xcodebuild of host+appex Linux cannot compile Swift; a GitHub Mac runner can prove the Aerial-path targets link .github/workflows/macos.yml in-progress
2026-08-27T17:37:02Z ci macos-26 xcodebuild + renderer NSObject + cargo PATH PaperSaver 0.2.0 needs Swift 6.2; macos-15 was 6.1; Xcode scripts drop ~/.cargo/bin; displayLink needs NSObject .github/workflows/macos.yml apps/Omacy/scripts/build-engine.sh OmacyRenderer.swift in-progress
2026-08-27T17:49:00Z ci one rust build phase (appex) macos-26 failed: both targets wrote libomacy_engine.a; host already depends on appex apps/Omacy/Omacy.xcodeproj/project.pbxproj in-progress
2026-08-27T18:11:00Z ci fix displayLink non-optional + omacy_status log macos-26 Swift: guard let on CADisplayLink; Int() on C enum apps/Omacy/Shared/OmacyRenderer.swift in-progress
2026-08-27T18:47:00Z ci host+appex BUILD SUCCEEDED on Xcode 26.6 deinit no longer calls MainActor stop; PreviewView is a typealias; one -lomacy_engine link local xcodebuild Release arm64; Omacy.app/Contents/PlugIns/OmacyScreensaver.appex pass
2026-08-27T20:10:30Z impl stop Metal drawable invalidation on layout CAMetalLayer was view.layer; layout rewrote drawableSize + rebuilt atlas every pass; busy ring presented cleared frames preview video 45% black frames; Peter confirmed host preview continuous pass
21 changes: 21 additions & 0 deletions .github/workflows/engine.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: engine

on:
push:
branches: [main]
pull_request:

jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- uses: dtolnay/rust-toolchain@master
with:
toolchain: 1.88.0
- name: Engine tests
run: cargo test -p omacy-engine
- name: Vendored ttfx tests
run: cargo test --manifest-path vendor/ttfx/Cargo.toml
46 changes: 46 additions & 0 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: macos

on:
push:
branches: [main]
pull_request:

jobs:
host:
# PaperSaver 0.2.0 is swift-tools-version 6.2. macos-15 ships Xcode 16 / Swift 6.1.
# Deployment target stays 15.0; this runner is only the compile host (Peter develops on Tahoe).
runs-on: macos-26
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
with:
toolchain: 1.88.0
targets: aarch64-apple-darwin
- name: Show compilers
run: |
xcodebuild -version
swift --version
rustc --version
cargo --version
- name: Build host app and screensaver appex
working-directory: apps/Omacy
run: |
export PATH="${CARGO_HOME:-$HOME/.cargo}/bin:$PATH"
xcodebuild \
-project Omacy.xcodeproj \
-scheme Omacy \
-configuration Release \
-destination 'generic/platform=macOS' \
-skipMacroValidation \
-skipPackagePluginValidation \
ARCHS=arm64 \
ONLY_ACTIVE_ARCH=YES \
EXCLUDED_ARCHS=x86_64 \
CODE_SIGN_IDENTITY="-" \
CODE_SIGNING_ALLOWED=NO \
CODE_SIGNING_REQUIRED=NO \
AD_HOC_CODE_SIGNING_ALLOWED=YES \
CODE_SIGN_STYLE=Manual \
DEVELOPMENT_TEAM="" \
ENABLE_HARDENED_RUNTIME=NO \
build
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,13 @@ Carthage/Build/
# https://docs.fastlane.tools/best-practices/source-control/#source-control

fastlane/report.xml
fastlane/README.md
fastlane/Preview.html
fastlane/screenshots/**/*.png
fastlane/test_output
fastlane/.env
*.p8
build/

# Rust
target/
Expand Down
Loading
Loading