Skip to content

Number Properties content + multi-part Data Insights support (Two-Part & Table Analysis)#4

Draft
DMDaudio wants to merge 2 commits into
mainfrom
claude/zen-pasteur-j35ohw
Draft

Number Properties content + multi-part Data Insights support (Two-Part & Table Analysis)#4
DMDaudio wants to merge 2 commits into
mainfrom
claude/zen-pasteur-j35ohw

Conversation

@DMDaudio

@DMDaudio DMDaudio commented Jul 11, 2026

Copy link
Copy Markdown
Owner

What does this PR add or change?

Two related additions to the study platform.

1. Quant → Number Properties content

Fills two previously-empty subtopics with a coherent study unit: 2 lessons + 6 original problem-solving questions (before this, number-properties had a single factors question and no lesson).

  • Lessons: Odds/Evens & Signs; Remainders.
  • Questions (easy→hard, each with worked explanation + 2 hints):
    • ...odds-evens-signs-0017 (easy, A) — which expression must be even given (x+y) odd.
    • ...odds-evens-signs-0018 (medium, B) — recover the sign of (a) from (abc>0), (bc<0).
    • ...odds-evens-signs-0019 (medium, B) — which expression is always odd (via (n(n+1))).
    • ...remainders-0020 (medium, D) — remainder of (3n+5) mod 7 given (n\equiv4).
    • ...remainders-0021 (hard, C) — remainder of (3^{47}) mod 5 via cyclicity.
    • ...remainders-0022 (hard, D) — least (N>10) with (N\equiv2,(5)) and (N\equiv1,(3)).

2. Multi-part Data Insights support (study-site feature)

Previously the multi-part DI formats had no way to be selected or graded — the site's grader only understood a single answer letter. This adds first-class support:

  • New optional parts field — { PartKey: "Opt A|Opt B|Opt C" } — plus a compound answer ("Key=Value; ..."). The Practice view renders one option row per part and grades them together (correct only if every part matches, case-insensitive). Feedback shows the correct option per part, pace, explanation, and hints.
  • Single-choice and Data Sufficiency flows were refactored onto a shared feedback tail; their behavior is unchanged.
  • Browse view renders each part's options and keyed answer.
  • scripts/build.mjs passes parts through to content.json; CONTENT_SCHEMA.md documents the format.
  • Seed content (gradeable): a Two-Part Analysis question + lesson (simultaneous-conditions) and a Table Analysis question + lesson (ratios-thresholds).

Rebuilt docs/data/content.json (now 40 questions, 12 lessons) and updated the coverage note in curriculum.md.

Verification: drove the built site in a headless browser — the correct path grades as correct (parts highlighted, explanation shown), a wrong selection grades as wrong (correct answers highlighted), submit gating works, and single-choice/DS questions still grade. No runtime JS errors.

Type of change

  • New question(s)
  • New lesson(s)
  • Fix to existing content (answer / explanation / tag)
  • Tooling / docs / schema (study-site multi-part support, build passthrough, schema + curriculum docs)

Author checklist

  • This is my own original work — not copied or paraphrased from any real GMAT question or prep material.
  • Front-matter follows CONTENT_SCHEMA.md (id matches the filename; topic/subtopic exist in curriculum.md).
  • I solved every question myself and confirmed exactly one answer (or correct multi-part combination) is correct.
  • Each explanation would help someone who got the question wrong, and names the trap where relevant.
  • status is in-review. I did not set my own content to verified.

For reviewers

  • I solved the question(s) without reading the keyed answer first and got the same answer.
  • Exactly one choice / multi-part combination is correct; distractors are plausible.
  • Explanation and tags (section / topic / difficulty) are accurate.
  • Multi-part questions render and grade correctly in Practice.
  • If approving: bumped status to verified and added my handle to reviewers.

🤖 Generated with Claude Code

https://claude.ai/code/session_01YZoYqoDFwY2nF5BjKJv7qf

claude added 2 commits July 11, 2026 09:07
… 6 questions)

Fills two empty Quant subtopics with a coherent daily study unit:
- Lessons on parity/sign rules and on remainders (division identity,
  remainder arithmetic, power cyclicity, simultaneous conditions).
- Six original problem-solving questions (easy→hard) with worked
  explanations, named distractor traps, and two hints each.
- Rebuild docs/data/content.json (32→38 questions, 8→10 lessons).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YZoYqoDFwY2nF5BjKJv7qf
Unblocks the multi-part DI formats that previously had no gradeable UI.

Study site (docs/):
- New `parts` field ({ PartKey: "A|B|C" }) + compound `answer`
  ("Key=Value; ...") drive a per-part selector rendered in Practice.
- Grading requires every part to match (case-insensitive); shows the
  correct option per part, pace, explanation, and hints. Single-choice
  and Data Sufficiency flows refactored onto a shared feedback tail,
  behavior unchanged.
- Browse renders each part's options and keyed answer.

Pipeline & docs:
- build.mjs passes `parts` through to content.json.
- CONTENT_SCHEMA.md documents the `parts` format and rules.
- curriculum.md coverage note updated (DI multi-part now supported).

Seed content (all in-review):
- Two-Part Analysis question + lesson (simultaneous-conditions).
- Table Analysis question + lesson (ratios-thresholds).

Verified in a headless browser: correct/wrong paths grade as expected,
submit gating works, no runtime errors. Build: 40 questions, 12 lessons.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YZoYqoDFwY2nF5BjKJv7qf
@DMDaudio DMDaudio changed the title Add Number Properties unit: odds/evens/signs & remainders Number Properties content + multi-part Data Insights support (Two-Part & Table Analysis) Jul 11, 2026
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.

2 participants