Skip to content

Add aligned face verification utilities with exact ops parity - #32

Merged
parkjinman98 merged 9 commits into
mainfrom
feat/face-verification-c2
Nov 5, 2026
Merged

parkjinman98 merged 9 commits into
mainfrom
feat/face-verification-c2

Conversation

@parkjinman98

Copy link
Copy Markdown
Contributor

Summary

Stage c2, stacked on #30 at 81a3727893009bbb65a667e6d10ba5e6f30bd148 (Codex +1, no findings). Do not merge independently of its base.

  • Add FaceRecognitionPost inheriting EmbeddingPost, configuration dispatch, public face utility namespace, engine Results.embeddings, and prepared dataset readiness.
  • Add LFW/AgeDB-30/CFP-FP pair loaders preserving pair order, official fold IDs and existing 112x112 alignment; never detect or realign faces.
  • Add VerificationEvaluator family with exact source cosine arithmetic, 4001-point threshold grid, inclusive boundary, strictest tie, leave-one-fold-out fitting and population fold std.
  • Source decoding uses one normalized vector per image: no flip fusion. Reuse the existing bounded embedding extraction helper.
  • Record exact dataset source/config/private evaluator paths, protocol IDs and revision in YAML. Preserve the ops CFP-FP mirror caveat; no claim that it is original cfp_fp.bin.

Validation

CPU only, offline: 1433 passed, 16 deselected. Focused face/inheritance: 634 passed, including all 595 baseline variants with order-exact identity.

  • Five synthetic embedding seeds: cosine scores, per-fold accuracies, selected thresholds, mean accuracy, population std and mean threshold all match pinned ops functions exactly.
  • Three synthetic RGB sizes including 112x112 no-op resize: preprocessing byte equality, max absolute error 0, atol=0.
  • Tests cover engine Results, public exports, missing/invalid pair metadata, prepared alignment and readiness for all three datasets.
  • Wheel build, Ruff new processing modules and diff check pass.

Provenance and boundaries

Read-only ops ec537764e36ca10da963fcb7afab157ea60ca022: datasets/_shared/face_verification.py, face_pairs.py, private dataset loaders/evaluators, models/face_recognition/_shared/preprocess.py and evaluate.py, models/_shared/embeddings.py. Offline tests include verbatim numeric/preprocessing references. ArcFace_IResNet_100 distribution confirms 112x112, float32 0.5 stats, 512D.

No model weights, real dataset redistribution, HF writes, GPU/NPU, --execute, OBB/DOTA changes, CLI routing changes or version bump. Concrete published Model YAMLs remain stage d2.

🤖 Generated with Claude Code

parkjinman98 and others added 4 commits November 4, 2026 16:22
Preserve existing alias and update semantics across 334 configs and 595 variants. Add ordered resolution and CPU preprocessing regression tests without changing shipped model definitions.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
…tocol scoring

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Nov 4, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-11-04T10:26:08.594392Z d847530 Manual request
🔒 Security Review ✅ Completed 2026-11-04T10:26:39.066002Z d847530 Manual request
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 636c39058b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
@parkjinman98

Copy link
Copy Markdown
Contributor Author

@codex review

Review exact head 77478b4d3eda47524e08319f881e5fe00f6077cc, stacked on #30. Fixed and resolved thread 4465089641: source-count validation now checks every official fold independently, not just the aggregate/all ten IDs. Three regressions cover valid balanced folds and malformed same-total unbalanced folds through loader and readiness; explicit subsets still opt out. Please verify official fold counts and preservation of source numeric scoring. Full offline CPU: 1436 passed, 16 deselected; existing exact metric/byte parity and 595-variant identity remain green.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Hooray!

Reviewed commit: 77478b4d3e

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: 77478b4d3e

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

Preserve current main retrieval validation fixes and apply only original face verification changes.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
@parkjinman98

Copy link
Copy Markdown
Contributor Author

@codex review

Exact head 1c0a9b160a6e8bb75900151dec063e91c4109697. main merge only, own diff unchanged. Integrated squash main c7cf5453 (#30, including latest retrieval cutoff/ID/symlink fixes), no force. An isolated Git index applying the original PR32 own patch to current main produces exactly the integration commit tree, proving only the original face-family diff remains. Squash ancestry conflicts resolved by preserving current main and reapplying the exact face patch; no code invented. Full offline CPU 1457 passed,19 deselected, all595 identity cases and ReID/face parity included. Base main; #33 remains dependent until retarget before branch deletion. No version/publish/release/tag changes.

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: 1c0a9b160a

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1c0a9b160a

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread mblt_vision/utils/datasets/readiness.py Resolved
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
@parkjinman98

Copy link
Copy Markdown
Contributor Author

@codex review

Exact head 097c810c4d324947ee235d8ec674c787f3213562. Fixed/resolved the symlink ancestor finding with component-wise root/manifest/image checks and nine negative regressions across LFW/AgeDB/CFP. Focused 36 passed, full offline CPU 1466 passed,19 deselected including all595 identity cases and preserved retrieval fixes. Please verify prepared-cache boundary handling. No model YAML, version or publication changes.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Chef's kiss.

Reviewed commit: 097c810c4d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: 097c810c4d

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

Retain main version 0.0.7 and tiled OBB behavior; apply exact face-specific patch without guards duplication.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
@parkjinman98

Copy link
Copy Markdown
Contributor Author

@codex review

Exact head 87ff416621104842889e9661757455b3101a85ac. main merge only, own diff unchanged after #27 OBB and #31 classifier squash merges (main f6673f6). Original face-specific patch including symlink fix applied three-way to current main yields the exact integration tree (isolated Git index proof); only import context adapted to tiled OBB builder imports. No changes to OBB/DOTA implementation or YAML paths. Preserved version0.0.7. Full CPU 1665 passed,15 skipped,19 deselected, including all595 legacy variants, classifier guards and OBB tests. Prior head had exact code/security noissues receipts; please confirm this final integration head. No release/tag/publish.

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: 87ff416621

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 87ff416621

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread mblt_vision/utils/datasets/readiness.py Resolved
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
@parkjinman98

Copy link
Copy Markdown
Contributor Author

@codex review

Exact head d8475308aca34bd1b0dc4a9ad2609a1fbe7f3bb7. Fixed/resolved latest findings: per-fold same/different label balance and malformed-CSV readiness. Regressions cover three datasets, valid balanced folds, all-positive corruption, explicit subsets and csv.field_size_limit failure. Focused39 passed; fullCPU 1668 passed,15 skipped,19 deselected,595 legacy identities and OBB/main preserved. No release/tag/publish. Please review exact head for final squash approval.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Can't wait for the next one!

Reviewed commit: d8475308ac

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@chatgpt-codex-connector

Copy link
Copy Markdown

🛡️ Codex Security Review · Automatically triggered

Security review completed. No security issues were found in this pull request.

Reviewed commit: d8475308ac

View security finding report

Only the user who started this review can view the report in Codex.

ℹ️ About Codex security reviews in GitHub

This is an experimental Codex feature. Security reviews are triggered when:

  • You comment "@codex security review"
  • A regular code review gets triggered (for example, "@codex review" or when a PR is opened), and you’re opted in so security review runs alongside code review

Once complete, Codex will leave suggestions, or a comment if no findings are found.

@parkjinman98
parkjinman98 merged commit 7c8ce90 into main Nov 5, 2026
15 checks passed
@parkjinman98
parkjinman98 deleted the feat/face-verification-c2 branch November 5, 2026 01:29
@parkjinman98
parkjinman98 restored the feat/face-verification-c2 branch November 5, 2026 01:30
@parkjinman98
parkjinman98 deleted the feat/face-verification-c2 branch November 5, 2026 01:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant