Skip to content

ci: add phase-1 GitHub Actions workflow (per-app matrix) - #77

Closed
jhamon wants to merge 1 commit into
mainfrom
ci/add-github-actions
Closed

ci: add phase-1 GitHub Actions workflow (per-app matrix)#77
jhamon wants to merge 1 commit into
mainfrom
ci/add-github-actions

Conversation

@jhamon

@jhamon jhamon commented Jul 11, 2026

Copy link
Copy Markdown
Contributor

What

Adds a CI workflow (.github/workflows/ci.yml) — the repo previously had no CI.

On push/PR to main (and manual dispatch), a matrix runs per sample app:

  • Next.js apps (legal-semantic-search, pinecone-assistant [pnpm], shop-the-look) — install + lint + build
  • namespace-notes — install client and server (via their real paths)
  • shop-the-look FastAPI backend — pip install -r requirements.txt + compileall api

Handles the mixed package managers (npm + pnpm) and the client/server split. Token scoped contents: read.

Why / phase 1

This is a phase-1, informational CI: every job is continue-on-error, so it reports per-app status without blocking main. That's deliberate — several apps currently can't install/build cleanly:

Flipping this matrix to a required gate is tracked in #71 and depends on #73/#74 landing. This PR establishes the CI surface and makes the current per-app failures visible in Actions.

Verification

YAML validated locally. Once merged (or via the PR run), the Actions tab shows per-app pass/fail — the intended signal.

Part of #71 (parent sweep #76).

🤖 Generated with Claude Code

The repo had no CI. Adds a workflow running on push/PR to main that,
per sample app, installs deps and runs lint/build (Next.js apps) or
byte-compiles the FastAPI backend (shop-the-look). Matrix covers the
mixed package managers (npm + pnpm) and the client/server split in
namespace-notes.

Jobs are non-blocking (continue-on-error) in this first phase because
some apps have known-broken installs (e.g. legal-semantic-search
`file:` deps, namespace-notes stale `install:all` path) tracked in #73
and SDK drift in #74. Flipping the matrix to a required gate is tracked
in #71 and depends on that cleanup.

Token scoped contents: read (least privilege).

Part of #71.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@jhamon

jhamon commented Jul 14, 2026

Copy link
Copy Markdown
Contributor Author

PR Feedback Autofix pass

The workflow itself is correct — the two red matrix cells are pre-existing app breakage the matrix is designed to catch (as the header comment intends), not defects in this PR:

  • legal-semantic-searchnpm ci ERESOLVE: the app pins openai to a file:langchain/llms/openai path (resolves to openai@undefined), which can't satisfy the openai peer required by @langchain/community / @browserbasehq/stagehand.
  • pinecone-assistantpnpm run lint: next lint reconfigures tsconfig.json on first run and exits 1 non-interactively in CI.

Both are real per-app remediation (dependency graph / committed tsconfig), out of scope for adding the workflow, so I filed #81 to track the fixes rather than scope-creep this PR.

Decision needed from you: for phase-1, do you want these two cells REQUIRED (PR stays red until #81 lands) or marked continue-on-error so the workflow can merge now and the failing apps are tracked in #81? I left the matrix as-is.

@jhamon

jhamon commented Jul 15, 2026

Copy link
Copy Markdown
Contributor Author

Closing as superseded by #80 (ci: execution-based test gate for all sample apps, PIN-57), which merged to main on 2026-07-13.

Both PRs create .github/workflows/ci.yml; #80 delivers a superset of this PR's goal — one job per app, build + drive-while-running, with Pinecone mocked/gated so CI needs no live key. That's strictly more than this PR's phase-1 continue-on-error informational matrix, and #77 now conflicts on ci.yml.

No unique value left here. The follow-ups this PR referenced (#71/#73/#74) remain the right place to track flipping apps to a required gate. Closing to keep the worklist clean.

@jhamon jhamon closed this Jul 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

maintenance Repo maintenance sweep

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant