Re.Pack: cases left out of #5482 (physical iPhone, remote runs, Re.Pack 4, indirect configs)
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 38/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- react-native, typescript
- Domain
- cli, developer-experience
Research direction
Start with the Re.Pack support added in #5482 and review the related decisions in #5481; the issue does not name source files or tests. Pick one limitation to investigate, then identify the relevant entry point and test coverage. Done means the chosen case is supported and verified, with its behavior added to the compatibility matrix where applicable.
Written by the indexing model from the issue text.
Description
Problem
#5482 adds Re.Pack support with a deliberately narrow scope. These cases are refused, undetected or unverified after it, and each could be supported later.
Maintainer decision: "Can we file ticket for repack limitations where it could eventually be fixed but we excluded from this scope", 2026-11-11.
Evidence
From the review of #5482 and the decisions on #5481:
- Physical iPhone (
ios --device) is refused. Stim does not pass--host, because Re.Pack writes its host into the bundle'spublicPathand a wildcard host breaks chunk URLs. Re.Pack stays onlocalhost, which a phone on the LAN cannot reach. - Tunnel and hosted
--remoteruns are refused. Re.Pack ignoresEXPO_PACKAGER_PROXY_URLand keepspublicPathon localhost, so async chunks and assets would fail through the tunnel or the hosted Metro bridge. - Re.Pack 4 is refused. It lacks the flags Stim passes (
--no-interactive,--no-reverse-port,--json,--log-requests). - A config that gets the plugin indirectly is not detected. Detection reads
rock.config.*andreact-native.config.*as text and looks for the import of@rock-js/plugin-repack; a shared config package that re-exports it leaves the app on Metro. - False
STIM_REPACK_BINunder pnpm isolation. When@callstack/repackis installed only as a dependency of a plugin, the bin is not resolvable from the project. - Two devices of one platform in one workspace stay
unverified. Re.Pack's request records carry no client pid, so a bundle request cannot be attributed to one device. - No heartbeat and no idle stop. Each
ensureprobes the port, and a Re.Pack dev server is excluded from idle stop. - A bundle that compiled with errors is still served in development (#5485). After #5482 such a launch reports
unverified; a proven failure would be better. - Not validated on real tools: the
react-native startpath (Re.Pack registered inreact-native.config.js, without Rock), and Windows.
Cause
Scope of #5482; none is a regression.
Fix idea
- 1 and 2: pass a host and rewrite or configure
publicPathper run (Re.Pack's dev-server options), or serve chunks through Stim's bridge. - 4: evaluate the config in a child process with a timeout instead of reading text, or follow one level of re-export.
- 5: resolve the bin from the plugin's own dependency tree.
- 6: ask Re.Pack upstream for a client identifier in request logs, or attribute by connection.
- 7: a liveness signal from the child.
- 9: run both on real apps; add to the compatibility matrix.
- Dominant language
- TypeScript
- Stars
- 100
- Forks
- 8
- Avg merge
- 4h 24m
- Merged PRs (30d)
- 971
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- No contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from appandflow/stim
-
area: cli priority: P3 type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
appandflow/stim#5640 · 1 comment ·
Maintainers usually reply within 1 day
-
tests: stream tests read an empty pid file as pid 0 and kill(0, 0) succeedsPossibly taken @janicduplessis claimed this today. Openarea: cli priority: P2 type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
appandflow/stim#5637 · 1 comment ·
Maintainers usually reply within 1 day
-
area: cli priority: P2 type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
appandflow/stim#5509 ·
Maintainers usually reply within 1 day
-
area: repo priority: P2 type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
appandflow/stim#5475 ·
Maintainers usually reply within 1 day
-
area: cli priority: P3 type: bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
appandflow/stim#5403 ·
Maintainers usually reply within 1 day
Similar issues
-
🐛 The Rulekeeper - An index run that gives up on the lock ends SucceededPossibly taken @github-actions claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
SSWConsulting/SSW.Rules#2809 · 1 comment ·
Maintainers usually reply within 1 day
-
automated-triage type/bug type/ci
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
📦 expo-router Android contributor: external needs review sdk-58 severity: medium
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
Translate the READMEOpendocumentation good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
asasemahmed/openboard#68 ·
Maintainers usually reply within 1 day