Skip to main content

port-react-native-slice

Port one explicitly approved React Native or Expo feature slice into a declared SwiftUI target while preserving its parity contract.

ソース情報

リポジトリ
openai/community-plugins
ソースの最終更新活動
2026年8月26日 02:17
検出された SKILL.md の言語
英語
スター
14
フォーク
10

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

ファイルエクスプローラー
2 ファイル

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
port-react-native-slice
description
Port one explicitly approved React Native or Expo feature slice into a declared SwiftUI target while preserving its parity contract.
# Port a React Native Slice Implement one approved vertical slice from an existing parity contract. Reimplement behavior deliberately; do not perform generic JSX-to-Swift translation. ## Safety contract Before writing, require: - one explicitly approved feature slice and its current parity contract; - one explicit target directory and target module; - an approved backend contract and licensing/provenance decision; - permission to change the named files or create named files inside the target directory. Stop without edits if source scope, target module, backend contract, licensing, parity expectations, or file ownership is ambiguous. A broad request such as “port the app” is not approval for multiple slices. ## Write boundary - Resolve the declared target directory before editing and keep every source, test, fixture, cache, and generated output write inside it or an explicitly approved disposable verification directory. - Do not write into the React Native source, plugin package, repository root, sibling modules, home directory, or unrelated paths. - Do not overwrite unrelated Swift files. Inspect a candidate file first; if it contains unrelated behavior or ownership is unclear, stop and propose a narrower patch or a new file within the target. - Do not install Xcode, XcodeGen, Simulator runtimes, packages, or accept Apple licenses. - Do not copy source, assets, submodules, private links, credentials, generated artifacts, or customer data. Use original or properly licensed assets and synthetic fixture data. - Before editing, run the bundled `scripts/native-port.mjs authorize-write` guardrail when available. It performs no writes and must authorize every approved relative file; a refusal is a stop condition. ## Implementation shape 1. Map each approved contract behavior to a small Swift implementation unit. 2. Put validation, state transitions, parsing, deterministic serialization, and business rules in pure Swift types or modules with no `SwiftUI` or `UIKit` import. 3. Keep SwiftUI views thin: render domain state, emit intents, and delegate platform work to narrow adapters. 4. Keep UIKit or other Apple framework bridges isolated at the edge, such as sharing, permissions, or lifecycle adapters. 5. Preserve the approved backend request/response, authentication, caching, persistence, error, and offline behavior. Never invent an endpoint, schema, credential flow, or side effect. 6. Implement approved native adaptations only when the contract explains their behavioral equivalence or intentional difference. 7. Add deterministic checks for each material domain invariant and stable synthetic fixtures for the approved path. Prefer fixed clocks, seeded randomness, stable IDs, and explicit locale/time-zone inputs. 8. Add accessibility semantics and stable identifiers called for by the contract. ## Verification during the port Run the smallest deterministic checks that do not require new installations. If an available Xcode/Simulator/XCUITest gate is requested, keep its derived data under the allowed boundary. If a prerequisite is missing, report the exact blocked gate; do not install, download, accept a license, or claim it passed. ## Completion report Report: - files changed, all relative to the explicit target directory; - contract behaviors implemented, adapted, deferred, or blocked; - pure-Swift domain boundaries and platform adapters; - deterministic checks run and their results; - platform gates run, skipped, failed, or blocked; - remaining parity, accessibility, licensing, backend, and release risks. Do not describe the slice as complete when a required contract behavior has no evidence.
GitHubで見る