Skip to content

Repair AB props defaults and reader extraction - #2

Merged
purpshell merged 1 commit into
mainfrom
abprops/extractor-followups
Oct 10, 2026
Merged

purpshell merged 1 commit into
mainfrom
abprops/extractor-followups

Conversation

@purpshell

@purpshell purpshell commented Oct 10, 2026 •

Copy link
Copy Markdown
Member

Make AB props extraction fail closed on unsupported defaults and preserve literal booleans, strings, nulls and numeric values. Extract reader-property names strictly from shipped declarations, reconcile declaration counts, and retain removed-property evidence.

Validation: Rust extractor tests pass; full extraction from WhatsApp Web 1049861608 at source revision 85b7532 produces 6002 facts and regenerates Polymorfa's Go/TypeScript catalogs byte-identically. Reader inventory includes 686 modules.

API/SDK/CLI: this extractor changes no public runtime contract. Docs: coordinated backend catalog provenance and plan. Feature releases: no package publication, rollout or customer availability change. Admin: existing generated catalog controls remain in the backend.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

Summary by CodeRabbit

  • Bug Fixes
    • A/B property extraction now reports errors for unreadable modules, malformed or unsupported defaults, and mismatches between declared and extracted entries instead of returning partial results or coercing values.
    • Defaults support JSON-compatible scalar values, including strings, numbers, booleans, and null.
    • Property and reader names now match regardless of letter case, while reader names retain their original casing.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 10, 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-10-10T03:38:34.508495Z 85b7532 PR opened
🔒 Security Review ✅ Completed 2026-10-10T03:38:16.233237Z 85b7532 PR opened
ℹ️ 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.

@coderabbitai

coderabbitai Bot commented Oct 10, 2026 •

Copy link
Copy Markdown

Review in Change Stack →Review in Change Stack →

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Team
  • Run ID: ea47466e-66d4-461d-96b3-e35cdc3a3535

📥 Commits

Reviewing files that changed from the base of the PR and between de5b581 and 85b7532.


📒 Files selected for processing (1)
  • crates/jigger-extract/src/lib.rs

Included review availability: This review used your included allowance. 0 included reviews remain after this review. Your included PR review attempts over the past 7 days set your current allowance at 1 review per hour.



📝 Walkthrough

Walkthrough

A/B property extraction now parses supported scalar defaults from module source and propagates module-read and parsing errors. It also accepts mixed-case property and reader names, validates extracted-entry counts, and includes tests for supported and rejected defaults.

Changes

A/B property extraction

Layer / File(s) Summary
Source parsing and validation
crates/jigger-extract/src/lib.rs
The extractor parses boolean and JSON scalar defaults, matches mixed-case property and reader names, and returns errors for invalid defaults or entry-count mismatches. Tests cover parsing, case preservation, and rejected inputs.

Priority: ⬇️ Low

Estimated code review effort: 3 (Moderate) | ~20 minutes

Change: Bug fix


Merge Risk: ⚪ Minimal · up to 85b75

No actionable issue is established from the available source. Merge after normal checks.

Pre-merge checks | Passed 4 | Failed 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage Warning Docstring coverage is 62.50% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 8 functions across 1 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check Passed The title clearly summarizes the main changes: repairing AB property defaults and reader extraction. It is concise and specific.
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.

  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Commit to this branch
  • Create a new PR

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@purpshell
purpshell merged commit aaa7fa3 into main Oct 10, 2026
1 check passed
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