بنقرة واحدة
update-domain-model
Add properties to an existing domain model from TMDb
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Add properties to an existing domain model from TMDb
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Build the project for testing
Build the project
Take the current plan all the way to a ready-to-merge pull request — review the plan (scaled to risk), implement it test-first, code-review and fix, security-review, verify the acceptance criteria, open the PR, and watch it green. Use after you have an approved plan (e.g. from plan mode) and want the rest of the feature pipeline run end-to-end. Invoking it is itself plan approval — it then runs autonomously to a single hard stop: ready-to-merge.
Run a specific test target or test class
Run all unit tests
Run snapshot tests
| name | update-domain-model |
| description | Add properties to an existing domain model from TMDb |
Guide for adding properties to an existing domain model from TMDb SDK types. See references/domain-model-patterns.md (in the create-domain-model skill) for code patterns, file locations, and common pitfalls.
Ask the user for:
DocC documentation: https://adamayoung.github.io/TMDb/documentation/tmdb/
Source code (in Xcode DerivedData after build):
.../SourcePackages/checkouts/TMDb/Sources/TMDb/Domain/Models/
Compare the TMDb type reference (see TMDB_MAPPING.md) with the current domain entity.
For new complex types (enums, structs), create domain entities:
Contexts/Popcorn<X>/Sources/<X>Domain/Entities/<NewType>.swiftAdd properties to the struct, init, and init defaults:
Contexts/Popcorn<X>/Sources/<X>Domain/Entities/<Name>.swiftFor each new complex type, write tests first then implement:
Adapters/.../Tests/.../Mappers/<NewType>MapperTests.swiftAdapters/.../Sources/.../Mappers/<NewType>Mapper.swiftUpdate tests then implementation:
Adapters/.../Tests/.../Mappers/<Name>MapperTests.swiftAdapters/.../Sources/.../Mappers/<Name>Mapper.swiftFor new complex types that need persistence:
Contexts/Popcorn<X>/Sources/<X>Infrastructure/DataSources/Local/Models/<Context><NewType>Entity.swiftAdd properties and relationships:
Contexts/Popcorn<X>/Sources/<X>Infrastructure/DataSources/Local/Models/<Context><Name>Entity.swiftUpdate all 3 methods (entity->domain, domain->entity, update-in-place) with tests:
Contexts/.../Tests/<X>InfrastructureTests/Mappers/<Name>MapperTests.swiftContexts/.../Sources/<X>Infrastructure/DataSources/Local/Mappers/<Name>Mapper.swiftContexts/Popcorn<X>/Sources/<X>Application/Models/<Name>Details.swiftContexts/Popcorn<X>/Sources/<X>Application/Mappers/<Name>DetailsMapper.swiftContexts/.../Tests/<X>ApplicationTests/Mappers/<Name>DetailsMapperTests.swiftUpdate <Name>+Mocks.swift in all test targets that use it.
Run the full pre-PR checklist: make lint, /build, /test (formatting is applied automatically by the PostToolUse hook)
$ARGUMENTS