Skip to content

feat(apps): offer reusable app-authoring checks - #2387

Open
JustYannicc wants to merge 1 commit into
UsefulSoftwareCo:v2from
JustYannicc:research/1452-app-authoring-lint
Open

JustYannicc wants to merge 1 commit into
UsefulSoftwareCo:v2from
JustYannicc:research/1452-app-authoring-lint

Conversation

@JustYannicc

Copy link
Copy Markdown

Problem

App authors often find unsupported patterns during a host build or review. Issue #2384 asks for checks they can run locally while keeping the exact framework pin they tested.

Change

The existing apps package exports apps/check and apps/oxlint. The executor apps check --files <dir> command reports manifest and source-limit issues as JSON without host access. appConfig() loads the packaged Oxlint plugin by package specifier and enforces the authoring conventions. The Author an App guide documents the checks and their limits.

Scope

This adds package exports and build entries, the CLI command, a changeset, docs, and one local CLI E2E. The work stays in the existing apps package. The CLI test uses the built package with repo-pinned Oxlint 1.83.0 and covers valid input plus rejected source and manifest cases.

Verification

  • heavy-slot bun run apps:build passed.
  • Targeted oxfmt --check and git diff --check passed.
  • heavy-slot bun run e2e:local --test-name 'apps CLI prints the host.*app conventions' passed: 1 scenario.
  • The post-rebase heavy-slot bun run e2e:check run emitted the repository's existing Effect warnings and no errors.
  • e2e:prepare stopped at pack-test-apps.ts: the local npm wrapper maps npm pack to pnpm pack, whose JSON shape the script does not accept. I packed the same built apps package with pnpm pack --json; the named E2E then passed.
local-apps-cli.spec.ts

Model and harness: GPT-6 Luna in T3 Code through the Codex harness

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant