Skip to content
Back to skills

Sync Core Lib

ASecurity

Sync the vendored dcc-core-lib copy after a lib fix merges upstream, then clean up temporary adapter workarounds. Use after a moonloch/dcc-core-lib PR lands, or when asked to update module/vendor/dcc-core-lib.

  • 44 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
testinggitapi

Works with

  • api

Security analysis

A100/100

Scanned November 7, 2026

npx -y skills add foundryvtt-dcc/dcc --skill sync-core-lib --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Sync Core Lib?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Sync Core Lib
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/foundryvtt-dcc-sync-core-lib/badge)](https://www.skillsdirectory.com/skills/foundryvtt-dcc-sync-core-lib)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: sync-core-lib
description: Sync the vendored dcc-core-lib copy after a lib fix merges upstream, then clean up temporary adapter workarounds. Use after a moonloch/dcc-core-lib PR lands, or when asked to update module/vendor/dcc-core-lib.
---

# Vendor sync for dcc-core-lib

The lib's compiled output lives at `module/vendor/dcc-core-lib/` and is
committed to the system repo (Foundry has no bundler). The upstream
checkout is at `/Users/timlwhite/WebstormProjects/dcc-core-lib`
(public GitHub repo `moonloch/dcc-core-lib`).

## Sync procedure

1. After the lib PR merges, pull `main` in the lib checkout. It must
   be clean and on the merged commit; otherwise `VERSION.json` records
   `"dirty": true` or a SHA that isn't on the lib's `main`.
2. From the system repo, run `pnpm run sync-core-lib`. The script
   (`scripts/sync-core-lib.mjs`) empties the lib's `dist/`, builds the lib via
   `pnpm run build` (the lib uses pnpm), copies `dist/` into the vendor directory,
   strips sourcemaps, and writes `module/vendor/dcc-core-lib/VERSION.json`
   with the source commit SHA + timestamp.
   - Override the source path with
     `DCC_CORE_LIB_SRC=/path/to/dcc-core-lib pnpm run sync-core-lib`.
   - Since lib 0.14.4, `dist/` contains no compiled test files and adds
     `dcc-core-lib.d.ts`, the whole public API in one declaration file.
3. Check the vendor diff. Changes to `.js` files outside comments mean
   behavior changes: run the affected unit tests and E2E specs. Changes
   only to `.d.ts` files are type-only.
4. Commit the resulting vendor diff with a message like
   `vendor: sync dcc-core-lib to <version> (<sha7>)`.

## Adapter cleanup follows the sync

Once the new vendor copy is in place, remove any temporary adapter
workaround added while the lib fix was in flight, and update tests
that were asserting the workaround's compensated values back to the
natural contract.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.