Skip to content

feat(station): build configuration#1718

Merged
samchon merged 1 commit intofeat/monorepofrom
feat/scripts
Jan 25, 2026
Merged

feat(station): build configuration#1718
samchon merged 1 commit intofeat/monorepofrom
feat/scripts

Conversation

@samchon
Copy link
Owner

@samchon samchon commented Jan 25, 2026

This pull request introduces several improvements and refactors to the build configuration, package management, and TypeScript usage across the repository. The most significant changes are the migration to a monorepo-style build workflow, the addition of a shared TypeScript configuration, and enhanced handling of TypeScript references and types in the codebase.

Build and Package Management Updates:

  • Updated .github/workflows/build.yml to support a monorepo structure, simplifying CI jobs and focusing builds on packages/* directories and workspace files. This change removes redundant jobs and streamlines dependency installation and build steps.
  • Added Prettier and related plugins as root-level dependencies in package.json to standardize code formatting across the project.
  • Fixed catalog references in internals/examples/package.json for ts-patch and typescript to ensure correct dependency resolution.

TypeScript Configuration and Usage:

  • Introduced a shared TypeScript config file at internals/config/tsconfig.json with strict type checking, improved module resolution, and consistent compiler options for all packages.
  • Changed the entry point in packages/openapi/package.json from built JS files to the TypeScript source file (src/index.ts), and moved the output file references to publishConfig for correct packaging. Also added ts-node as a dev dependency. [1] [2] [3]

Code Quality and Type Safety Improvements:

  • Improved type safety in several composer files by using non-null assertions (!) when accessing array elements and reference keys, reducing potential runtime errors related to undefined values. [1] [2] [3] [4] [5] [6] [7] [8] [9]

@samchon samchon self-assigned this Jan 25, 2026
@samchon samchon added the enhancement New feature or request label Jan 25, 2026
@socket-security
Copy link

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn Critical
Critical CVE: Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code in npm @babel/traverse

CVE: GHSA-67hx-6x53-jw92 Babel vulnerable to arbitrary code execution when compiling specifically crafted malicious code (CRITICAL)

Affected versions: < 7.23.2; >= 8.0.0-alpha.0 < 8.0.0-alpha.4

Patched version: 7.23.2

From: pnpm-lock.yamlnpm/@trivago/prettier-plugin-sort-imports@3.4.0npm/@babel/traverse@7.17.3

ℹ Read more on: This package | This alert | What is a critical CVE?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Remove or replace dependencies that include known critical CVEs. Consumers can use dependency overrides or npm audit fix --force to remove vulnerable dependencies.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/@babel/traverse@7.17.3. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

@samchon samchon marked this pull request as ready for review January 25, 2026 15:14
Copilot AI review requested due to automatic review settings January 25, 2026 15:14
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request refactors the build configuration and TypeScript setup to support a monorepo structure with shared configuration and stricter type checking. The changes introduce a centralized TypeScript config, update package entry points for workspace development, fix dependency catalog references, and add non-null assertions throughout the codebase to satisfy stricter compiler options.

Changes:

  • Simplified CI workflow to focus on monorepo packages with reduced coverage (removed testing, linting, and multi-version Node.js checks)
  • Created shared TypeScript configuration at internals/config/tsconfig.json with strict type checking including noUncheckedIndexedAccess
  • Updated package entry points to TypeScript source files for workspace development, with build outputs specified in publishConfig

Reviewed changes

Copilot reviewed 21 out of 22 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
.github/workflows/build.yml Simplified CI to only build packages/* on Node 20.x, removing tests, linting, and multi-version testing
package.json Added Prettier and related plugins as root dependencies; includes nonexistent version ^3.8.1
internals/config/tsconfig.json New shared TypeScript configuration with strict type checking and noUncheckedIndexedAccess enabled
packages/typia/tsconfig.json Refactored to extend shared config, removing 100+ lines of duplicated configuration
packages/typia/package.json Updated rimraf to use catalog reference for consistency
packages/openapi/tsconfig.json Refactored to extend shared config, removing 100+ lines of duplicated configuration
packages/openapi/package.json Changed main entry to src/index.ts with publishConfig for lib outputs, added ts-node catalog reference
packages/openapi/src/**/*.ts Added non-null assertions throughout to satisfy noUncheckedIndexedAccess from shared config
internals/examples/package.json Fixed typo in catalog references: catalogs:typescript → catalog:typescript

@samchon samchon merged commit 195c237 into feat/monorepo Jan 25, 2026
10 checks passed
@samchon samchon deleted the feat/scripts branch January 25, 2026 15:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant