fix(workspace): restore bun/turbo contract and remove ink dep#31
Open
seonghobae wants to merge 1 commit intogoogle-labs-code:mainfrom
Open
fix(workspace): restore bun/turbo contract and remove ink dep#31seonghobae wants to merge 1 commit intogoogle-labs-code:mainfrom
seonghobae wants to merge 1 commit intogoogle-labs-code:mainfrom
Conversation
This commit addresses several workspace reliability issues to restore the root build, test, and lint contract.
- Sets the root to in , which is required by Turborepo to correctly orchestrate workspace tasks.
- Removes the unused , , and dependencies from , which resolves the warning during bun install v1.2.10 (db2e7d7f)
Checked 180 installs across 183 packages (no changes) [133.00ms].
- Updates to remove stale JSX-related configuration ( and includes) that was left over after CLI rendering was simplified.
- Adds a dedicated script to to ensure type checking is performed as part of the linting process.
- Updates the CI workflow to use the root
• Packages in scope: @google/design.md
• Running build in 1 packages
• Remote caching disabled, using shared worktree cache
@google/design.md:build: cache miss, executing 73e2511429bb965a
@google/design.md:build: $ bun build src/index.ts src/linter/index.ts --outdir dist --target node && bun x tsc --project tsconfig.build.json --emitDeclarationOnly --skipLibCheck && cp src/linter/spec-config.yaml dist/linter/ && cp src/linter/spec-config.yaml dist/ && cp ../../docs/spec.md dist/ && cp ../../docs/spec.md dist/linter/
@google/design.md:build: Bundled 224 modules in 53ms
@google/design.md:build:
@google/design.md:build: index.js 0.77 MB (entry point)
@google/design.md:build: linter/index.js 0.64 MB (entry point)
@google/design.md:build:
Tasks: 1 successful, 1 total
Cached: 0 cached, 1 total
Time: 3.027s ,
• Packages in scope: @google/design.md
• Running test in 1 packages
• Remote caching disabled, using shared worktree cache
@google/design.md:build: cache hit, replaying logs 73e2511429bb965a
@google/design.md:build: $ bun build src/index.ts src/linter/index.ts --outdir dist --target node && bun x tsc --project tsconfig.build.json --emitDeclarationOnly --skipLibCheck && cp src/linter/spec-config.yaml dist/linter/ && cp src/linter/spec-config.yaml dist/ && cp ../../docs/spec.md dist/ && cp ../../docs/spec.md dist/linter/
@google/design.md:build: Bundled 224 modules in 53ms
@google/design.md:build:
@google/design.md:build: index.js 0.77 MB (entry point)
@google/design.md:build: linter/index.js 0.64 MB (entry point)
@google/design.md:build:
@google/design.md:test: cache miss, executing ab11503af37b7447
@google/design.md:test: $ bun test
@google/design.md:test: bun test v1.2.10 (db2e7d7f)
@google/design.md:test:
@google/design.md:test: src/version.test.ts:
@google/design.md:test: (pass) VERSION > matches package.json version exactly [1.90ms]
@google/design.md:test: (pass) VERSION > is a valid semver string [0.81ms]
@google/design.md:test: (pass) VERSION > is not the fallback value [0.01ms]
@google/design.md:test:
@google/design.md:test: src/linter/spec-config.test.ts:
@google/design.md:test: (pass) spec-config loader > throws when file does not exist [5.63ms]
@google/design.md:test: (pass) spec-config loader > throws when YAML is malformed [2.37ms]
@google/design.md:test: (pass) spec-config loader > throws when required fields are missing [3.95ms]
@google/design.md:test: (pass) spec-config loader > throws when sections array is empty [2.41ms]
@google/design.md:test: (pass) spec-config loader > does not write to stdout or stderr [7.46ms]
@google/design.md:test: (pass) spec-config lazy loading > getSpecConfig returns a valid config object [0.65ms]
@google/design.md:test: (pass) spec-config lazy loading > getSpecConfig returns the same cached instance on subsequent calls [0.02ms]
@google/design.md:test: (pass) spec-config structural invariants > sections are non-empty
@google/design.md:test: (pass) spec-config structural invariants > section canonical names are unique [0.05ms]
@google/design.md:test: (pass) spec-config structural invariants > no alias collides with a canonical name [0.09ms]
@google/design.md:test: (pass) spec-config structural invariants > aliases are unique across all sections [0.02ms]
@google/design.md:test: (pass) spec-config structural invariants > typography property names are unique [0.08ms]
@google/design.md:test: (pass) spec-config structural invariants > component sub-token names are unique
@google/design.md:test: (pass) spec-config structural invariants > color roles are unique
@google/design.md:test: (pass) spec-config structural invariants > units are non-empty and unique
@google/design.md:test: (pass) spec-config structural invariants > recommended token categories are non-empty
@google/design.md:test: (pass) spec-config structural invariants > examples covers colors, typography, and components [0.53ms]
@google/design.md:test: (pass) spec-config derived constants > CANONICAL_ORDER length matches SECTIONS length [0.04ms]
@google/design.md:test: (pass) spec-config derived constants > resolveAlias returns canonical for known alias
@google/design.md:test: (pass) spec-config derived constants > resolveAlias returns input for unknown heading [0.12ms]
@google/design.md:test: (pass) spec-config derived constants > VALID_TYPOGRAPHY_PROPS length matches TYPOGRAPHY_PROPERTIES
@google/design.md:test: (pass) spec-config derived constants > VALID_COMPONENT_SUB_TOKENS length matches COMPONENT_SUB_TOKENS
@google/design.md:test: (pass) spec-config derived constants > SECTION_ALIASES maps every alias to a canonical name [0.40ms]
@google/design.md:test:
@google/design.md:test: src/linter/index.test.ts:
@google/design.md:test: (pass) Integration: full pipeline > processes a frontmatter DESIGN.md through the complete pipeline [28.48ms]
@google/design.md:test: (pass) Integration: full pipeline > processes a code-block DESIGN.md with components [12.25ms]
@google/design.md:test: (pass) Integration: full pipeline > correctly detects errors in a broken DESIGN.md [3.09ms]
@google/design.md:test:
@google/design.md:test: src/linter/fixture.test.ts:
@google/design.md:test: (pass) Fixture Test > processes DESIGN-test.md [30.38ms]
@google/design.md:test:
@google/design.md:test: src/commands/spec.test.ts:
@google/design.md:test: (pass) spec command > outputs spec markdown by default [0.63ms]
@google/design.md:test: (pass) spec command > outputs spec and rules table when --rules is passed [0.32ms]
@google/design.md:test: (pass) spec command > outputs only rules table when --rules-only is passed [0.06ms]
@google/design.md:test: (pass) spec command > outputs JSON when --format json is passed [0.16ms]
@google/design.md:test: (pass) spec command > outputs JSON with rules when --format json and --rules are passed [1.05ms]
@google/design.md:test: (pass) spec command > outputs the spec from the built CLI bundle [3752.62ms]
@google/design.md:test:
@google/design.md:test: src/linter/dtcg/conformance.test.ts:
@google/design.md:test: (pass) DTCG Conformance > Terrazzo can parse our DTCG output and generate CSS [11803.30ms]
@google/design.md:test:
@google/design.md:test: src/linter/dtcg/handler.test.ts:
@google/design.md:test: (pass) DtcgEmitterHandler > empty state produces valid DTCG file with $schema [0.26ms]
@google/design.md:test: (pass) DtcgEmitterHandler > name and description → top-level $description [0.04ms]
@google/design.md:test: (pass) DtcgEmitterHandler > name without description → $description uses name [0.01ms]
@google/design.md:test: (pass) DtcgEmitterHandler > colors → DTCG color tokens with sRGB components in 0–1 range [0.88ms]
@google/design.md:test: (pass) DtcgEmitterHandler > spacing → DTCG dimension tokens with { value, unit } [0.21ms]
@google/design.md:test: (pass) DtcgEmitterHandler > rounded → DTCG dimension tokens under "rounded" group [0.04ms]
@google/design.md:test: (pass) DtcgEmitterHandler > typography → DTCG typography composite tokens [0.16ms]
@google/design.md:test: (pass) DtcgEmitterHandler > typography with missing fields omits them from $value [0.04ms]
@google/design.md:test:
@google/design.md:test: src/linter/fixer/handler.test.ts:
@google/design.md:test: (pass) FixerHandler > should reorder sections to canonical order [0.34ms]
@google/design.md:test: (pass) FixerHandler > should preserve prelude at the top [0.10ms]
@google/design.md:test: (pass) FixerHandler > should append unknown sections at the end [0.07ms]
@google/design.md:test: (pass) FixerHandler > should recognize "Brand & Style" as a known section via alias [0.14ms]
@google/design.md:test: (pass) FixerHandler > should recognize "Layout & Spacing" as a known section via alias [0.25ms]
@google/design.md:test: (pass) FixerHandler > should handle a full real-world section order with aliases [1.72ms]
@google/design.md:test:
@google/design.md:test: src/linter/linter/runner.test.ts:
@google/design.md:test: (pass) runLinter > runs default rules when none specified [0.31ms]
@google/design.md:test: (pass) runLinter > runs only the specified subset of rules [0.13ms]
@google/design.md:test: (pass) runLinter > returns empty findings for empty rules array [0.07ms]
@google/design.md:test: (pass) preEvaluate > groups findings into fixes, improvements, and suggestions [0.12ms]
@google/design.md:test: (pass) preEvaluate > accepts custom rules [0.17ms]
@google/design.md:test:
@google/design.md:test: src/linter/linter/handler.test.ts:
@google/design.md:test: (pass) LinterHandler > E3: broken token reference > emits error when a component references a non-existent token [0.53ms]
@google/design.md:test: (pass) LinterHandler > E4: circular reference > emits error when circular references are detected [0.24ms]
@google/design.md:test: (pass) LinterHandler > W1: missing primary color > emits warning when no primary color is defined [0.18ms]
@google/design.md:test: (pass) LinterHandler > W1: missing primary color > does NOT emit warning when primary color IS defined [0.12ms]
@google/design.md:test: (pass) LinterHandler > W2: WCAG contrast failure > emits warning for low contrast backgroundColor/textColor pair [0.21ms]
@google/design.md:test: (pass) LinterHandler > W2: WCAG contrast failure > does NOT emit warning for high contrast pair [0.52ms]
@google/design.md:test: (pass) LinterHandler > I1: token count summary > emits an info diagnostic summarizing the token counts [0.37ms]
@google/design.md:test: (pass) LinterHandler > clean document > produces zero errors for a valid design system [0.17ms]
@google/design.md:test: (pass) LinterHandler > preEvaluate graded menu > groups findings into fixes, improvements, and suggestions [0.16ms]
@google/design.md:test: (pass) LinterHandler > summary counts > correctly counts errors, warnings, and infos [0.09ms]
@google/design.md:test:
@google/design.md:test: src/linter/parser/handler.test.ts:
@google/design.md:test: (pass) ParserHandler > frontmatter extraction > extracts YAML from frontmatter delimiters [2.32ms]
@google/design.md:test: (pass) ParserHandler > code block extraction > extracts YAML from fenced yaml code blocks [1.05ms]
@google/design.md:test: (pass) ParserHandler > code block extraction > extracts YAML code blocks with attributes [1.86ms]
@google/design.md:test: (pass) ParserHandler > merging multiple code blocks > merges separate YAML blocks into one tree [0.82ms]
@google/design.md:test: (pass) ParserHandler > duplicate section detection > returns DUPLICATE_SECTION when same top-level key appears in multiple blocks [0.72ms]
@google/design.md:test: (pass) ParserHandler > malformed YAML > returns YAML_PARSE_ERROR on invalid YAML syntax [1.19ms]
@google/design.md:test: (pass) ParserHandler > malformed YAML > returns NO_YAML_FOUND when no YAML content exists [0.97ms]
@google/design.md:test:
@google/design.md:test: src/linter/parser/spec.test.ts:
@google/design.md:test: (pass) ParserInputSchema > rejects empty content [0.37ms]
@google/design.md:test: (pass) ParserInputSchema > accepts non-empty content [0.09ms]
@google/design.md:test: (pass) ParserInputSchema > rejects missing content field [0.11ms]
@google/design.md:test:
@google/design.md:test: src/linter/tailwind/handler.test.ts:
@google/design.md:test: (pass) TailwindEmitterHandler > colors mapping > maps resolved colors to theme.extend.colors [0.18ms]
@google/design.md:test: (pass) TailwindEmitterHandler > typography mapping > maps typography scales to fontFamily and fontSize [0.12ms]
@google/design.md:test: (pass) TailwindEmitterHandler > dimensions mapping > maps rounded to borderRadius and spacing to spacing [0.07ms]
@google/design.md:test: (pass) TailwindEmitterHandler > empty state > produces a valid config with empty extend sections [0.02ms]
@google/design.md:test:
@google/design.md:test: src/linter/model/handler.test.ts:
@google/design.md:test: (pass) ModelHandler > symbol table from colors > resolves valid hex colors into the symbol table [0.11ms]
@google/design.md:test: (pass) ModelHandler > symbol table from colors > emits diagnostic for invalid color format [0.03ms]
@google/design.md:test: (pass) ModelHandler > symbol table from colors > normalizes #RGB shorthand to #RRGGBB [0.01ms]
@google/design.md:test: (pass) ModelHandler > symbol table from colors > normalizes #RGBA shorthand to #RRGGBBAA and extracts alpha
@google/design.md:test: (pass) ModelHandler > symbol table from colors > accepts 8-digit hex colors and extracts alpha
@google/design.md:test: (pass) ModelHandler > single-level token reference resolution > resolves a direct {section.token} reference in components [0.02ms]
@google/design.md:test: (pass) ModelHandler > chained token reference resolution > resolves chained refs: {a} → {b} → #value
@google/design.md:test: (pass) ModelHandler > circular reference detection > detects circular refs and records them as unresolved [0.07ms]
@google/design.md:test: (pass) ModelHandler > circular reference detection > detects long circular reference chains [0.05ms]
@google/design.md:test: (pass) ModelHandler > non-standard dimension units > emits diagnostic for non-standard dimension units in typography [0.05ms]
@google/design.md:test: (pass) ModelHandler > typography validation > emits diagnostic when fontFamily is a hex color [0.02ms]
@google/design.md:test: (pass) ModelHandler > typography validation > emits diagnostic when fontWeight is not a number or valid number string [0.02ms]
@google/design.md:test: (pass) ModelHandler > typography validation > accepts string representations of numbers for fontWeight [0.02ms]
@google/design.md:test: (pass) ModelHandler > rounded validation > emits diagnostic for non-standard units in rounded [0.02ms]
@google/design.md:test: (pass) ModelHandler > WCAG contrast ratio > computes correct contrast ratio for black on white (21:1) [0.03ms]
@google/design.md:test: (pass) ModelHandler > WCAG contrast ratio > computes correct contrast for identical colors (1:1) [0.03ms]
@google/design.md:test: (pass) ModelHandler > return signature > returns findings array
@google/design.md:test: (pass) ModelHandler > rounded token reference resolution > resolves a direct token reference in rounded [0.02ms]
@google/design.md:test: (pass) ModelHandler > rounded token reference resolution > resolves a chained token reference in rounded [0.03ms]
@google/design.md:test: (pass) ModelHandler > rounded token reference resolution > resolved rounded reference appears in symbol table [0.02ms]
@google/design.md:test: (pass) ModelHandler > spacing token reference resolution > resolves a direct token reference in spacing [0.04ms]
@google/design.md:test: (pass) ModelHandler > spacing token reference resolution > resolves a chained token reference in spacing [0.02ms]
@google/design.md:test: (pass) ModelHandler > spacing token reference resolution > resolved spacing reference appears in symbol table [0.03ms]
@google/design.md:test: (pass) ModelHandler > spacing token reference resolution > resolved spacing reference propagates correctly to component resolution [0.06ms]
@google/design.md:test:
@google/design.md:test: src/linter/model/spec.test.ts:
@google/design.md:test: (pass) isValidColor > accepts valid hex color: #ff0000
@google/design.md:test: (pass) isValidColor > accepts valid hex color: #FF0000
@google/design.md:test: (pass) isValidColor > accepts valid hex color: #abc
@google/design.md:test: (pass) isValidColor > accepts valid hex color: #ABC
@google/design.md:test: (pass) isValidColor > accepts valid hex color: #647D66
@google/design.md:test: (pass) isValidColor > accepts valid hex color: #000
@google/design.md:test: (pass) isValidColor > accepts valid hex color: #fff
@google/design.md:test: (pass) isValidColor > rejects invalid color: red
@google/design.md:test: (pass) isValidColor > rejects invalid color: blue
@google/design.md:test: (pass) isValidColor > rejects invalid color: #gg0000 [0.03ms]
@google/design.md:test: (pass) isValidColor > rejects invalid color: #12345
@google/design.md:test: (pass) isValidColor > rejects invalid color: 647D66
@google/design.md:test: (pass) isValidColor > rejects invalid color: #1234567
@google/design.md:test: (pass) isValidColor > rejects invalid color:
@google/design.md:test: (pass) isValidColor > rejects invalid color: #
@google/design.md:test: (pass) isStandardDimension > accepts standard dimension: 12px [0.53ms]
@google/design.md:test: (pass) isStandardDimension > accepts standard dimension: 1.5rem [0.01ms]
@google/design.md:test: (pass) isStandardDimension > accepts standard dimension: 0px
@google/design.md:test: (pass) isStandardDimension > accepts standard dimension: 42px
@google/design.md:test: (pass) isStandardDimension > accepts standard dimension: 0.75rem
@google/design.md:test: (pass) isStandardDimension > accepts standard dimension: 100px
@google/design.md:test: (pass) isStandardDimension > accepts standard dimension: 12em
@google/design.md:test: (pass) isStandardDimension > accepts standard dimension: -0.02em
@google/design.md:test: (pass) isStandardDimension > rejects non-standard dimension: 42 [0.02ms]
@google/design.md:test: (pass) isStandardDimension > rejects non-standard dimension: px
@google/design.md:test: (pass) isStandardDimension > rejects non-standard dimension: rem
@google/design.md:test: (pass) isStandardDimension > rejects non-standard dimension: 12vh
@google/design.md:test: (pass) isStandardDimension > rejects non-standard dimension:
@google/design.md:test: (pass) isStandardDimension > rejects non-standard dimension: 12 px
@google/design.md:test: (pass) isStandardDimension > rejects non-standard dimension: 12vw
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: 12px [0.02ms]
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: 1.5rem
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: -0.02em
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: 100vh
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: 50%
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: 0.75rem
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: 1em
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: 12vw
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: 10cqi
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: 20lvh
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: 30dvw
@google/design.md:test: (pass) isParseableDimension > accepts parseable dimension: 5cqmin
@google/design.md:test: (pass) isParseableDimension > rejects unparseable dimension: 42
@google/design.md:test: (pass) isParseableDimension > rejects unparseable dimension: px
@google/design.md:test: (pass) isParseableDimension > rejects unparseable dimension: rem
@google/design.md:test: (pass) isParseableDimension > rejects unparseable dimension:
@google/design.md:test: (pass) isParseableDimension > rejects unparseable dimension: 12 px
@google/design.md:test: (pass) isParseableDimension > rejects unparseable dimension: auto
@google/design.md:test: (pass) isParseableDimension > rejects unparseable dimension: inherit
@google/design.md:test: (pass) parseDimensionParts > parses standard dimensions [0.02ms]
@google/design.md:test: (pass) parseDimensionParts > parses leading-zero-free decimals (.5rem)
@google/design.md:test: (pass) parseDimensionParts > returns null for bare numbers without a unit [0.13ms]
@google/design.md:test: (pass) parseDimensionParts > returns null for CSS keywords [0.01ms]
@google/design.md:test: (pass) isTokenReference > recognizes curly-brace token references
@google/design.md:test: (pass) isTokenReference > rejects non-references [0.01ms]
@google/design.md:test:
@google/design.md:test: src/linter/spec-gen/compiler.test.ts:
@google/design.md:test: (pass) compileMdx > passes plain markdown through unchanged [2.48ms]
@google/design.md:test: (pass) compileMdx > evaluates inline expressions [3.47ms]
@google/design.md:test: (pass) compileMdx > evaluates expressions with scope variables [3.42ms]
@google/design.md:test: (pass) compileMdx > evaluates block expressions that produce multi-line content [4.65ms]
@google/design.md:test: (pass) compileMdx > strips import statements from output [1.53ms]
@google/design.md:test: (pass) compileMdx > preserves expressions inside fenced code blocks [2.16ms]
@google/design.md:test: (pass) compileMdx > compiles the full spec.mdx with spec-config scope [23.55ms]
@google/design.md:test:
@google/design.md:test: src/linter/spec-gen/spec-helpers.test.ts:
@google/design.md:test: (pass) getRulesTable > returns a markdown table with rule details [1.16ms]
@google/design.md:test: (pass) getSpecContent > returns spec content with expected heading [0.40ms]
@google/design.md:test: (pass) getSpecContent > returns consistent content on repeated calls [0.21ms]
@google/design.md:test: (pass) getSpecContent > content has substantial length (not a stub) [0.10ms]
@google/design.md:test: (pass) getSpecContent > accepts an explicit specPath override [0.06ms]
@google/design.md:test:
@google/design.md:test: src/linter/linter/rules/contrast-ratio.test.ts:
@google/design.md:test: (pass) contrastCheck > emits warning for low contrast pair [0.18ms]
@google/design.md:test: (pass) contrastCheck > returns empty for high contrast pair [0.03ms]
@google/design.md:test:
@google/design.md:test: src/linter/linter/rules/types.test.ts:
@google/design.md:test: (pass) LintRule type > accepts a function that takes state and returns findings [0.42ms]
@google/design.md:test: (pass) LintRule type > accepts a RuleDescriptor object [0.01ms]
@google/design.md:test: (pass) LintRule type > has all rules in DEFAULT_RULE_DESCRIPTORS [0.03ms]
@google/design.md:test:
@google/design.md:test: src/linter/linter/rules/missing-primary.test.ts:
@google/design.md:test: (pass) missingPrimary > emits warning when colors exist but no primary [0.06ms]
@google/design.md:test: (pass) missingPrimary > returns empty when primary IS defined [0.03ms]
@google/design.md:test: (pass) missingPrimary > returns empty when no colors defined [0.06ms]
@google/design.md:test:
@google/design.md:test: src/linter/linter/rules/missing-typography.test.ts:
@google/design.md:test: (pass) missingTypography > emits warning when colors exist but no typography defined [0.13ms]
@google/design.md:test: (pass) missingTypography > returns empty when typography IS defined [0.06ms]
@google/design.md:test: (pass) missingTypography > returns empty when no colors defined (nothing to compare against) [0.02ms]
@google/design.md:test:
@google/design.md:test: src/linter/linter/rules/missing-sections.test.ts:
@google/design.md:test: (pass) missingSections > emits info when spacing is missing but colors exist [0.10ms]
@google/design.md:test: (pass) missingSections > returns empty when all sections present [0.05ms]
@google/design.md:test: (pass) missingSections > returns empty when no colors exist (nothing to compare against) [0.01ms]
@google/design.md:test:
@google/design.md:test: src/linter/linter/rules/token-summary.test.ts:
@google/design.md:test: (pass) tokenSummary > emits info diagnostic with token counts [0.11ms]
@google/design.md:test: (pass) tokenSummary > returns empty for completely empty state [0.03ms]
@google/design.md:test:
@google/design.md:test: src/linter/linter/rules/orphaned-tokens.test.ts:
@google/design.md:test: (pass) orphanedTokens > emits warning for color not referenced by any component [0.12ms]
@google/design.md:test: (pass) orphanedTokens > returns empty when no components exist [0.02ms]
@google/design.md:test:
@google/design.md:test: src/linter/linter/rules/section-order.test.ts:
@google/design.md:test: (pass) sectionOrder > should warn when sections are out of order [0.07ms]
@google/design.md:test: (pass) sectionOrder > should not warn when sections are in order [0.02ms]
@google/design.md:test: (pass) sectionOrder > should ignore unknown sections [0.02ms]
@google/design.md:test: (pass) sectionOrder > should resolve "Brand & Style" as "Overview" [0.01ms]
@google/design.md:test: (pass) sectionOrder > should resolve "Layout & Spacing" as "Layout"
@google/design.md:test: (pass) sectionOrder > should resolve "Elevation" as "Elevation & Depth" [0.02ms]
@google/design.md:test: (pass) sectionOrder > should detect out-of-order aliased sections [0.02ms]
@google/design.md:test: (pass) sectionOrder > should handle mixed aliases and canonical names
@google/design.md:test: (pass) resolveAlias > should resolve known aliases [0.04ms]
@google/design.md:test: (pass) resolveAlias > should pass through canonical names unchanged
@google/design.md:test: (pass) resolveAlias > should pass through unknown names unchanged [0.02ms]
@google/design.md:test:
@google/design.md:test: src/linter/linter/rules/broken-ref.test.ts:
@google/design.md:test: (pass) brokenRef > emits error for unresolved token reference [0.36ms]
@google/design.md:test: (pass) brokenRef > returns empty when all references resolve [0.01ms]
@google/design.md:test: (pass) brokenRef > emits warning (not error) for unknown component sub-tokens
@google/design.md:test: (pass) brokenRef > has a valid rule descriptor
@google/design.md:test:
@google/design.md:test: 204 pass
@google/design.md:test: 0 fail
@google/design.md:test: 428 expect() calls
@google/design.md:test: Ran 204 tests across 26 files. [16.09s]
Tasks: 2 successful, 2 total
Cached: 1 cached, 2 total
Time: 16.157s , and
• Packages in scope: @google/design.md
• Running lint in 1 packages
• Remote caching disabled, using shared worktree cache
@google/design.md:lint: cache miss, executing 52b9e4ae10fcfb6f
@google/design.md:lint: $ bun x tsc --project tsconfig.json --noEmit --skipLibCheck
Tasks: 1 successful, 1 total
Cached: 0 cached, 1 total
Time: 2.558s commands, ensuring the CI environment accurately reflects the local development contract. The Bun version is also now derived from the field.
These changes collectively fix the broken CI build, eliminate dependency warnings, and ensure that the workspace is in a healthy, verifiable state.
Refs google-labs-code#30
|
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA). View this failed invocation of the CLA check for more information. For the most up to date status, view the checks section at the bottom of the pull request. |
Author
|
The implementation for restoring the workspace reliability is complete and has been fully verified locally. All builds, tests, and linter checks pass with these changes. The PR is currently blocked by the check, which requires manual intervention from a contributor with the authority to sign the CLA. The code itself is ready for review and merge. |
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.
This PR restores the root workspace contract by adding the required , removing stale dependencies causing peer warnings, and aligning the CI configuration with the local development setup.
Fixes #30
Related to #29