$npx -y skills add zhaoxuya520/reverse-skill --skill competition-bundle-sourcemap-recoveryInternal downstream skill for ctf-sandbox-orchestrator. CTF-sandbox workflow for source maps, build manifests, chunk registries, emitted bundles, obfuscated loader flow, and frontend runtime recovery. Use when the user asks to reconstruct served JavaScript structure, inspect sour
| 1 | # Competition Bundle Sourcemap Recovery |
| 2 | |
| 3 | Use this skill only as a downstream specialization after `$ctf-sandbox-orchestrator` is already active and has established sandbox assumptions, node ownership, and evidence priorities. If that has not happened yet, return to `$ctf-sandbox-orchestrator` first. |
| 4 | |
| 5 | Use this skill when runtime truth lives in built assets, source maps, chunk tables, or obfuscated loader flow rather than in checked-in source alone. |
| 6 | |
| 7 | Reply in Simplified Chinese unless the user explicitly requests English. |
| 8 | |
| 9 | ## Quick Start |
| 10 | |
| 11 | 1. Start from the served artifact set: entry HTML, build manifest, bootstrap bundle, chunk map, and source maps. |
| 12 | 2. Record chunk ids, route chunks, loader functions, endpoint strings, and config keys before broad manual deobfuscation. |
| 13 | 3. Reconstruct the smallest runtime graph that explains which asset executes now. |
| 14 | 4. Keep served artifact truth separate from repository source unless parity is proven. |
| 15 | 5. Reproduce the smallest asset-to-runtime boundary that proves the decisive behavior. |
| 16 | |
| 17 | ## Workflow |
| 18 | |
| 19 | ### 1. Map The Served Artifact Set |
| 20 | |
| 21 | - Record entry HTML, script tags, preload hints, manifest files, asset map, chunk registry, and source map URLs. |
| 22 | - Note framework-specific artifacts such as route manifests, client reference manifests, or lazy-loader tables when present. |
| 23 | - Keep emitted filenames, hash suffixes, and route ownership tied together. |
| 24 | |
| 25 | ### 2. Reconstruct Runtime Structure |
| 26 | |
| 27 | - Follow bootstrap code, chunk loaders, module registry, string decoders, and lazy import boundaries. |
| 28 | - Use source maps, manifest files, and stable symbol clusters to recover route names, API calls, feature flags, and hidden panels. |
| 29 | - Distinguish build-time intent from the bundle that is actively served now. |
| 30 | |
| 31 | ### 3. Reduce To The Decisive Bundle Path |
| 32 | |
| 33 | - Compress the result to the smallest sequence: served asset -> loader path -> module or symbol -> runtime effect. |
| 34 | - State clearly whether the decisive weakness lives in manifest drift, chunk loading, hidden route code, string decoding, or stale source assumptions. |
| 35 | - If the task shifts from built assets to SSR or template enforcement, hand back to the tighter template-render skill. |
| 36 | |
| 37 | ## Read This Reference |
| 38 | |
| 39 | - Load `references/bundle-sourcemap-recovery.md` for the artifact checklist, deobfuscation checklist, and evidence packaging. |
| 40 | |
| 41 | ## What To Preserve |
| 42 | |
| 43 | - Served filenames, chunk ids, manifest entries, source map paths, recovered symbols, and endpoint strings |
| 44 | - The exact executing bundle or module that proves the runtime branch |
| 45 | - One minimal asset-to-runtime sequence that reaches the decisive effect |