Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
0a0b259
feat: UI refresh — icon header, new eval set modal
May 20, 2026
c846519
chore: gitignore prompt.md, remove pp-prompt.md
May 20, 2026
45fe626
merge main into ui-refresh
May 20, 2026
962f6d1
feat: customer-readiness — replace internal API, remove internal refe…
May 21, 2026
d0bb376
Merge branch 'ui-refresh' into dev
May 21, 2026
b709f39
fix: remove internal Google Doc link from NewEvalSetModal
May 21, 2026
9daff29
docs: add changelog and ledger entries for customer-readiness work
May 21, 2026
0a5f6c7
feat: add migration plan for transitioning Seer's web app to TanStack…
fazil-raja-glean May 22, 2026
d8a4419
feat: migrate web to TanStack Start
fazil-raja-glean May 22, 2026
5c12fe1
test: add web API smoke coverage
fazil-raja-glean May 22, 2026
73223f7
fix: make web db bootstrap artifact-safe
fazil-raja-glean May 22, 2026
da4b87e
refactor: split web UI into feature slices and extract eval config
fazil-raja-glean May 26, 2026
851ebe5
chore: add AgentSchema types and remove CLI any casts
fazil-raja-glean May 26, 2026
2cfa2ef
feat(web): re-port UI refresh modal flow onto TanStack Start
fazil-raja-glean May 26, 2026
b64e9e2
fix: harden TanStack migration for merge
fazil-raja-glean May 26, 2026
865253b
fix(web): surface latest run status
fazil-raja-glean May 26, 2026
1dd67dd
docs: add Seer Cloud target-state architecture
May 28, 2026
58146e5
docs: clarify Seer product vision
fazil-raja-glean May 28, 2026
c680a6c
docs: remove migration scratch docs
fazil-raja-glean May 28, 2026
3d93fff
feat: migrate from SQLite to PostgreSQL
May 28, 2026
ab994b1
Merge feat/pg-on-tanstack: SQLite → PostgreSQL migration
May 28, 2026
d326cfa
fix: load .env gracefully in CLI dev script
May 28, 2026
4bdacb0
docs: add PostgreSQL/Docker prerequisites to README
May 28, 2026
7e57a07
fix: make Postgres/TanStack migration merge-ready
May 29, 2026
1afbda7
feat: TLS resilience for all Glean API calls
May 29, 2026
191672f
fix: code review fixes — undici dep, lazy DB init, CLAUDE.md
May 29, 2026
775cc65
chore: bump to v0.3.0, update changelog
May 29, 2026
6353d4d
docs: unify AGENTS.md and CLAUDE.md
May 29, 2026
c9f164c
fix: update lockfile for web undici dependency
May 29, 2026
ccf210d
fix: handle golden scoring and simulator context
fazil-raja-glean Jun 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 9 additions & 2 deletions .env.example
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# PostgreSQL (docker compose up -d)
DATABASE_URL=postgresql://postgres:seer@localhost:5432/seer

# Glean API key (unified — needs chat + search + agents + documents scopes)
# Create at: Glean Settings > API > REST API tokens
GLEAN_API_KEY=your_api_key_here
GLEAN_BACKEND=https://scio-prod-be.glean.com
GLEAN_INSTANCE=scio-prod
GLEAN_BACKEND=https://your-instance-be.glean.com
GLEAN_INSTANCE=your-instance

# If corporate TLS inspection breaks Node's default CA store (local dev only).
# Put this in repo-root .env or web/.env.local — both are loaded before the dev server runs.
# SEER_GLEAN_TLS_INSECURE=1
13 changes: 6 additions & 7 deletions .githooks/post-merge
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,12 @@ cd "$REPO_ROOT"

changed_files="$(git diff --name-only ORIG_HEAD..HEAD 2>/dev/null || true)"

if printf '%s\n' "$changed_files" | grep -Eq '^(package\.json|bun\.lock)$'; then
echo "Root dependencies changed; running bun install..."
bun install
if printf '%s\n' "$changed_files" | grep -Eq '^(package\.json|pnpm-lock\.yaml|pnpm-workspace\.yaml)$'; then
echo "Workspace dependencies changed; running pnpm install..."
pnpm install
fi

if printf '%s\n' "$changed_files" | grep -Eq '^web/(package\.json|bun\.lock)$'; then
echo "Web dependencies changed; running bun install in web/..."
cd "$REPO_ROOT/web"
bun install
if printf '%s\n' "$changed_files" | grep -Eq '^web/package\.json$'; then
echo "Web dependencies changed; running pnpm install..."
pnpm install
fi
6 changes: 3 additions & 3 deletions .githooks/pre-commit
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,12 @@ echo "==> Git whitespace checks"
git diff --cached --check

echo "==> Biome staged-file checks"
bunx biome check --staged --files-ignore-unknown=true --no-errors-on-unmatched
pnpm exec biome check --staged --files-ignore-unknown=true --no-errors-on-unmatched

echo "==> TypeScript typecheck"
bun run typecheck
pnpm typecheck

echo "==> Unit tests"
bun test
pnpm test

echo "All pre-commit checks passed."
6 changes: 2 additions & 4 deletions .githooks/pre-push
Original file line number Diff line number Diff line change
Expand Up @@ -38,13 +38,11 @@ if [ -z "$(printf '%s' "$changed_files" | tr -d '[:space:]')" ]; then
fi

echo "==> Root checks"
bun run check
pnpm check

if printf '%s\n' "$changed_files" | grep -q '^web/'; then
echo "==> Web build"
cd "$REPO_ROOT/web"
bun install
bun run build
pnpm --filter web build
else
echo "No web changes detected; skipping web build."
fi
Expand Down
41 changes: 36 additions & 5 deletions .github/workflows/check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,18 +8,49 @@ on:
jobs:
checks:
runs-on: ubuntu-latest
services:
postgres:
image: postgres:16-alpine
env:
POSTGRES_DB: seer
POSTGRES_USER: postgres
POSTGRES_PASSWORD: seer
ports:
- 5432:5432
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
env:
DATABASE_URL: postgresql://postgres:seer@localhost:5432/seer
strategy:
fail-fast: false
matrix:
task: [typecheck, lint, test]
task:
- pnpm typecheck
- pnpm lint
- pnpm test
- pnpm --filter seer-cli build
- pnpm --filter web typecheck
- pnpm --filter web build
- pnpm test:web-api-smoke
steps:
- uses: actions/checkout@v4

- uses: oven-sh/setup-bun@v2
- uses: pnpm/action-setup@v4
with:
bun-version: latest
version: 11.1.1

- run: bun install
- uses: actions/setup-node@v4
with:
node-version: 22
cache: pnpm

- run: pnpm install --frozen-lockfile

- name: Push DB schema
run: pnpm db:push

- name: Run ${{ matrix.task }}
run: bun run ${{ matrix.task }}
run: ${{ matrix.task }}
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
# Dependencies
node_modules/
.pnpm-store/

# Environment
.env
Expand All @@ -14,6 +15,10 @@ node_modules/
# Build
dist/
build/
.nitro/
.output/
web/.nitro/
web/.output/

# IDE
.vscode/
Expand Down
316 changes: 265 additions & 51 deletions AGENTS.md

Large diffs are not rendered by default.

25 changes: 25 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,31 @@

All notable changes to Seer are documented here.

## [0.3.0] - 2026-05-29 — Customer Readiness

### Changed
- **PostgreSQL migration**: Replaced SQLite (better-sqlite3) with PostgreSQL (node-postgres) across CLI and web. Schema uses `pgTable` with typed `jsonb` columns via `.$type<T>()`, eliminating ~25 manual `JSON.stringify`/`JSON.parse` calls. Local dev via `docker compose up -d`.
- **TLS resilience**: All outbound Glean API calls route through `gleanFetch` (undici). `SEER_GLEAN_TLS_INSECURE=1` bypasses cert verification for local dev behind corporate proxies. TLS errors fail fast with actionable messages.
- **TanStack Start migration**: Web UI migrated from Next.js to TanStack Start with Vite, feature slices, and server functions.
- **Public API only**: Workflow agents now use `POST /rest/api/v1/agents/runs/wait` (public) instead of internal `runworkflow` endpoint
- Workflow agent evals return response text only — trace data (reasoning chain, tool calls, trace IDs) available for autonomous agents only via Chat API
- All `scio-prod` references replaced with configurable placeholders
- Settings page password field now properly masked

### Removed
- `@gleanwork/api-client` dependency (unused)
- Internal documentation: `gko-eval-presentation.md`, `harness-engineering-plan.md`, `issues.md`, `glean-api-needs.md`
- Internal Google Doc link from eval set creation modal
- `alert()` calls in CaseEditor (error logging only)

### Added
- UI refresh: new header, modal-based eval set creation, app shell layout

### Documentation
- Rewrote `docs/TRACE_API_LIMITATIONS.md` — now documents trace availability per agent type
- Updated `docs/architecture.md` — correct table count (7), current API endpoints
- Updated all docs to reference public APIs only

## [0.2.0-alpha] - 2026-05-15

### Added
Expand Down
201 changes: 0 additions & 201 deletions CLAUDE.md

This file was deleted.

1 change: 1 addition & 0 deletions CLAUDE.md
Loading
Loading