Skip to content

feat: v2 modules — creational group - #18

Merged
SuperElectron merged 5 commits into
stagingfrom
feat/v2-creational
Aug 27, 2026
Merged

feat: v2 modules — creational group#18
SuperElectron merged 5 commits into
stagingfrom
feat/v2-creational

Conversation

@SuperElectron

Copy link
Copy Markdown
Owner

Phase 3 (2/6): the five creational units migrated to the module template — abstract_factory (report_renderer), builder (sql_select_builder), factory_method (feed_client on a trap-safe factory_slot), prototype (report_job_templates), singleton (app_config).

Also: engine tests made shape-robust via synthetic legacy/module fixtures; new fleet-wide test that every module unit's examples import their own pattern/ package; .claude/worktrees/ gitignored.

Reviewed (2 HIGH + 6 MEDIUM findings fixed, re-verified, merge-ready verdict). make check green: 308 tests, mypy --strict on 235 files.

🤖 Generated with Claude Code

SuperElectron and others added 5 commits August 27, 2026 11:51
…l_select_builder)

Migrate two creational units to the module template: pattern/ importable
APIs (DocumentFamily families; SelectBuilder -> frozen Query with staged
validation), docs/{fundamentals,implementation,examples}.md, runnable
mini-projects (quarterly report through two families; order analytics on
in-memory sqlite), isolated behavioral tests. Legacy variant files removed.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Migrated to the patterns-as-modules template (creational batch 2/2):
- factory_method: pattern/ = the three dodges (inject, class-attribute,
  instance-attribute factories); examples/feed_client mirrors
  http.client's response_class slot
- prototype: pattern/ = TemplateRegistry over template callables
  (partial + dataclasses.replace); examples/report_job_templates
  promotes the existing scheduler seed
- singleton: pattern/ = Shared lazy accessor with reset seam;
  examples/app_config = process-wide settings behind get_settings()
- docs/{fundamentals,implementation,examples}.md per unit; classic-form
  listings absorb the old GoF files; legacy variant files removed

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ry_method, prototype, singleton)

Assembles feat/v2-creational-1 + -2. Also: ignore agent worktrees; make
engine tests shape-robust (synthetic legacy unit fixture; pilot unit as the
stable module-shape target) so group migrations don't break them.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ide example-imports-pattern check

factory_slot trap-safe class-attribute factory; docs no longer teach the
descriptor-binding TypeError; every module unit's examples must import its
own pattern package (catalog test); legacy variant dispatch + recommend-note
tests restored against synthetic fixtures; assorted test tightenings.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@SuperElectron
SuperElectron merged commit bfce75d into staging Aug 27, 2026
@SuperElectron
SuperElectron deleted the feat/v2-creational branch August 27, 2026 19:12
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