feat: add Starsmith Expanded Oracles as community content#82
Open
tbsvttr wants to merge 3 commits intorsek:v0.1.0from
Open
feat: add Starsmith Expanded Oracles as community content#82tbsvttr wants to merge 3 commits intorsek:v0.1.0from
tbsvttr wants to merge 3 commits intorsek:v0.1.0from
Conversation
This PR addresses compatibility issues with TypeBox 0.34+ and updates dependencies to fix security vulnerabilities. ## TypeScript/TypeBox Fixes - Simplified complex generic types to avoid "Type instantiation is excessively deep and possibly infinite" errors in TypeBox 0.34+ - Added explicit TObject casts in schema builders to break deep type chains - Updated type definitions to use marker properties instead of deeply nested generics (e.g., `_primaryType`, `_collectionBase`) ## Dependency Security Updates - Updated release-it: ^17.6.0 → ^19.0.0 - Updated @release-it/bumper: ^6.0.1 → ^7.0.0 - Updated esbuild: 0.23.0 → ^0.25.0 - Added npm overrides for cross-spawn (^7.0.6) and micromatch (^4.0.8) to fix transitive dependency vulnerabilities ## Schema Changes - Normalized column_labels defaults for SharedRolls/SharedText types to remove redundant labels (SharedRollsLabels now only contains 'roll', SharedTextLabels only contains 'text') - This is an intentional design correction, not a breaking change ## Other Changes - Added tsconfig types arrays to fix @types/parse-path stub issues - Updated json-schema-library imports for v10 API compatibility - Added type assertions for ajv-formats compatibility - Simplified buildSchema.ts key sorting (removed json-schema-library traversal) - Added comprehensive test files (build.test.ts, runtime.test.ts) - Added .tool-versions for consistent tooling All 18,467 existing tests pass.
- Enable Starsmith in build pipeline as private package (not published to NPM) - Download and fix converted Starsmith YAML files from iron-vault-plugin repo - Add NPM package configuration for @datasworn-community-content/starsmith Starsmith by Eric Bright provides 249 additional oracles expanding Starforged. Fixes applied to source YAML: - Add proper Datasworn 0.1.0 expansion headers with source metadata - Fix oracle ID references (singular vs plural, collection paths) - Remove invalid oracle_rolls entries referencing oracle_collections - Correct stellar_object -> object reference
- Add merge test: Starsmith into Starforged - Add structure validation test for starsmith.json - Add ID consistency test for starsmith oracle IDs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
@datasworn-community-content/starsmithStarsmith Expanded Oracles by Eric Bright provides 249 additional oracles expanding Starforged.
Credits
Dependencies
This PR depends on #81 (TypeBox 0.34+ compatibility fixes) - the build system was broken and needed those fixes first.
Changes made to source YAML
The files from iron-vault-plugin required several fixes:
oracle_rollsentries that referencedoracle_collection(schema requiresoracle_rollable)stellar_object->objectreference in space oraclesTest plan
npm run build:jsoncompletes successfullynpm run build:pkgcompletes successfully