Platform Help

Lint

Prerequisites

Secrets

  • GH_TOKENrequired Used for repository access and GitHub API interactions.

  • NPM_TOKENoptional Required only if private packages must be installed.

How to Call This Workflow

This workflow is consumed as a reusable workflow. Applications explicitly opt in by invoking it from their local CI configuration.

Minimal Usage (Single Repository)

jobs: lint: uses: kurocado-studio/platform/.github/workflows/workflow.lint.yml@main secrets: GH_TOKEN: ${{ secrets.GH_TOKEN }} NPM_TOKEN: ${{ secrets.NPM_TOKEN }}

Monorepo Usage

jobs: lint: uses: kurocado-studio/platform/.github/workflows/workflow.lint.yml@main with: monorepo: true secrets: GH_TOKEN: ${{ secrets.GH_TOKEN }} NPM_TOKEN: ${{ secrets.GH_TOKEN }}

Execution Sequence

The diagram below illustrates how linting is executed when the workflow is triggered.

Application RepositoryGitHub Actions RunnerLint ToolingGitHub APIalt[Lint successful][Lint failed]Trigger lint workflowCheckout repositoryInstall dependenciesExecute lint checksLint resultsReport successMark check as passingReport failureMark check as failedApplication RepositoryGitHub Actions RunnerLint ToolingGitHub API

Purpose

This workflow centralizes linting and code-quality enforcement across all Platform consumers.

It ensures consistent formatting, lint rules, and build validation without requiring each repository to define or maintain its own lint pipeline. By owning linting at the Platform level, drift is prevented and fixes propagate to all applications automatically.

If this workflow is removed or bypassed, code quality standards become inconsistent across repositories.

When to Use / When Not to Use

Use this workflow when:

  • repositories share common linting standards

  • consistent formatting and static analysis are required across products

  • monorepo and single-repo projects must behave identically

  • linting should act as a gating check for CI

Do not use this workflow when:

  • a repository requires fundamentally different lint tooling

  • linting must be conditional or environment-specific

  • experimental repos intentionally diverge from Platform standards

Repository Expectations

  • Lint scripts and configuration compatible with Platform lint rules.

  • Repository structure supported by .github/actions/lint.

Tooling

  • Node.js and pnpm Installed and configured via shared Platform actions.

Inputs & Outputs

Inputs

  • monorepo (boolean, optional) Enables workspace-aware dependency installation and lint execution.

Outputs

  • None

This workflow is intended to act as a gating quality check.

Internal Dependencies

Platform Actions

  • .github/actions/install

  • .github/actions/lint

External Dependencies

  • actions/checkout

  • Node.js runtime

  • pnpm

Structural Topology

The following diagram shows the static dependency structure of the lint workflow.

workflow.lint.yml
.github/actions/install
.github/actions/lint
pnpm

Failure Modes

Common failure cases include:

  • Missing secrets Dependency installation fails if required tokens are unavailable.

  • Lint configuration mismatch ESLint or formatting rules fail due to incompatible repo configuration.

  • Build step failure Lint workflow blocks downstream jobs if the project does not build.

All failures surface in a single, consistent location across repositories.

Last modified: 18 December 2025