Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
344c72f
fix(face-geometry): 🧭 stabilize per-frame landmark processing
Som5ra Jul 23, 2026
5ab2d13
fix(pose): 🧠 make multi-person tracking state deterministic
Som5ra Jul 23, 2026
0a00acb
fix(geometry): 🧮 preserve dimensions and multi-face isolation
Som5ra Jul 23, 2026
9d520a8
fix(bindings): enforce safe cross-runtime ownership
Som5ra Jul 23, 2026
2798970
build(cmake): make archive builds portable
Som5ra Jul 23, 2026
a92b2a4
refactor(branding): replace former company identifiers
Som5ra Jul 23, 2026
403b287
chore(repository): remove generated build artifacts
Som5ra Jul 23, 2026
9282180
chore(repository): retire deprecated prototypes
Som5ra Jul 23, 2026
3754309
fix(portability): remove workstation-bound paths
Som5ra Jul 23, 2026
321eb3e
docs(archive): add verified handoff runbook
Som5ra Jul 23, 2026
79010b9
docs(readme): restore model and platform matrices
Som5ra Jul 23, 2026
c261219
fix(face-geometry): preserve partial result alignment
Som5ra Jul 23, 2026
cfeb422
fix(face-geometry): propagate partial result status
Som5ra Jul 23, 2026
81a8882
fix(face-geometry): retain aligned partial outputs
Som5ra Jul 23, 2026
6d4262b
fix(face-geometry): validate metadata without assertions
Som5ra Jul 23, 2026
0115ca7
fix(face-geometry): declare the pose matrix layout truthfully
Som5ra Jul 23, 2026
054992b
fix(android): reject the unavailable x86 ABI
Som5ra Jul 23, 2026
15597ea
build(android): validate the retained ABI set
Som5ra Jul 23, 2026
8156070
docs(platforms): make the support matrices code-accurate
Som5ra Jul 23, 2026
6060633
build(examples): make face geometry OpenMP-optional
Som5ra Jul 23, 2026
c7492e7
build(examples): make detection OpenMP-optional
Som5ra Jul 23, 2026
608dfa0
build(examples): use the imported runtime target
Som5ra Jul 23, 2026
0873748
build(examples): keep JSON validation serial-safe
Som5ra Jul 23, 2026
d565f65
fix(examples): validate metadata JSON without assertions
Som5ra Jul 23, 2026
bbff6b9
refactor(face-geometry): add retained detection state
Som5ra Jul 23, 2026
af477ff
feat(face-geometry): honor detection and display options
Som5ra Jul 23, 2026
4e552cd
fix(runtime): validate preprocessing tensor contracts
Som5ra Jul 23, 2026
7deaa50
fix(runtime): repair preprocessing includes
Som5ra Jul 23, 2026
8755b0e
fix(detection): validate model output shapes
Som5ra Jul 23, 2026
21aa615
fix(pose): validate SimCC outputs and drawing bounds
Som5ra Jul 23, 2026
031ef8d
test(archive): encode the reviewed P0 invariants
Som5ra Jul 23, 2026
ff848a8
fix(wasm): make model ownership and partial output explicit
Som5ra Jul 23, 2026
5aba1e9
docs(api): define buffer and ownership contracts
Som5ra Jul 23, 2026
7332643
build(6d): consolidate the experimental targets
Som5ra Jul 23, 2026
cce5e13
fix(6d): propagate object target usage requirements
Som5ra Jul 23, 2026
5bbd094
fix(config): reject incomplete model metadata
Som5ra Jul 23, 2026
a8cc9d6
ci(archive): add Linux smoke builds
Som5ra Jul 23, 2026
3da84c8
test(archive): align the tracker state invariant
Som5ra Jul 23, 2026
235a555
ci(archive): bootstrap pinned Linux dependencies
Som5ra Jul 23, 2026
f231189
fix(linux): match the pinned runtime archive layout
Som5ra Jul 23, 2026
051b58f
fix(face-geometry): make empty tuple returns unambiguous
Som5ra Jul 23, 2026
7a6a9e2
docs(readme): restore visual support markers
Som5ra Jul 23, 2026
f303ed3
fix(nms): finish the neutral rectangle rename
Som5ra Jul 23, 2026
9d3ce69
fix(unity): support OpenCV builds without image codecs
Som5ra Jul 23, 2026
6c40258
fix(detection): accept empty model outputs
Som5ra Jul 23, 2026
2b5f46d
fix(examples): preserve geometry dimension order
Som5ra Jul 23, 2026
39ec128
fix(6d): propagate platform compile definitions
Som5ra Jul 23, 2026
d63d44d
fix(headers): make BaseONNX self-contained
Som5ra Jul 23, 2026
207910a
fix(runtime): reject null model configurations
Som5ra Jul 23, 2026
71b06c7
fix(examples): gate face demo on desktop OpenCV modules
Som5ra Jul 23, 2026
7336930
fix(examples): gate detector demo on desktop OpenCV modules
Som5ra Jul 23, 2026
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
44 changes: 44 additions & 0 deletions .github/workflows/archive-readiness.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Archive readiness

on:
pull_request:
push:
branches:
- agent/p0-archive-readiness

permissions:
contents: read

concurrency:
group: archive-readiness-${{ github.ref }}
cancel-in-progress: true

jobs:
linux-smoke:
runs-on: ubuntu-22.04
timeout-minutes: 30

steps:
- name: Check out repository
uses: actions/checkout@v4

- name: Validate archive structure
run: |
python3 -m py_compile build.py scripts/check_archive_readiness.py
python3 -m json.tool CMakePresets.json >/dev/null
python3 scripts/check_archive_readiness.py

- name: Bootstrap and build core libraries
run: ./build_linux.sh

- name: Configure examples
run: >-
cmake -S . -B build/linux-examples
-DBUILD_PLATFORM=linux
-DCMAKE_BUILD_TYPE=Release
-DAI_ENGINE_BUILD_EXAMPLES=ON
-DAI_ENGINE_BUILD_STANDALONE_TOOLS=OFF
-DAI_ENGINE_BUILD_6D_TRACKING=OFF

- name: Build examples
run: cmake --build build/linux-examples --parallel 2
30 changes: 24 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,24 @@
.vscode/*
3rdparty/*
weights/*
build/build-android/*
build/build-linux/*
build/build-macos/*
.vscode/
.idea/

build/
cmake-build-*/
install/
compile_commands.json
CMakeUserPresets.json

3rdparty/onnxruntime/
3rdparty/opencv/
weights/

*.a
*.dll
*.dylib
*.o
*.obj
*.so
*.wasm
*.zip

__pycache__/
*.py[cod]
66 changes: 66 additions & 0 deletions ARCHIVE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Archive handoff

## Current state

The archive-readiness branch consolidates the maintained engine around one
neutral public API and fixes the P0 runtime defects found during review:

- face landmarks are batched per frame and per face;
- frame dimensions and flattened multi-face offsets are preserved;
- multi-person pose results have deterministic ownership and refresh state;
- Unity, WebAssembly, and face-geometry C APIs validate inputs and expose
matching destroy functions;
- success is consistently represented by status code zero;
- native build targets use portable install destinations and centralized
dependency paths;
- examples, standalone tools, and experimental 6D tracking are disabled by
default;
- generated build products and explicitly deprecated prototypes are no longer
tracked;
- company-specific identifiers and workstation paths have been removed.

## Breaking surface change

All maintained public names now use `Custom`, `CUSTOM`, or `custom` according
to their existing case convention. This changes native library names, C/C++
symbols, WebAssembly bindings, namespaces, status types, and examples.

Downstream consumers must update their imports and native declarations before
adopting the archive branch. No compatibility aliases are retained because the
goal is to remove the former-company surface completely.

## Validation completed

- Python build driver byte-compilation
- CMake preset JSON validation
- dependency-free structural regression check
- exhaustive scan of maintained text files for retired identifiers and
developer-home paths
- fast-forward-only branch publishing for every isolated change

The current workspace does not contain CMake, OpenCV, ONNX Runtime, Emscripten,
Android NDK, Xcode, or Visual Studio. A full platform compilation was therefore
not performed here and must not be inferred from the structural validation.

## Remaining archive decisions

Before making a public archive, the owner should decide whether to:

1. add an explicit project license;
2. publish checksums and provenance for the prebuilt dependency archives;
3. move demo models and large media to release assets or Git LFS;
4. run at least one native smoke build on each platform that must remain
supportable;
5. tag the final merge commit and publish a short immutable release note.

Experimental 6D tracking remains available behind
`AI_ENGINE_BUILD_6D_TRACKING=ON`, but it is not part of the default archive
build and requires additional graphics dependencies.

## Final GitHub checklist

1. Review and merge the archive-readiness pull request.
2. Run `python3 scripts/check_archive_readiness.py` from the merge commit.
3. Complete the licensing and binary-provenance decisions above.
4. Create an archive tag or release if a stable reference is desired.
5. Use GitHub repository settings to archive the repository.
Loading
Loading