Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
5286938
chore: record verified production baseline
LQ458 Jul 22, 2026
01829a4
test: add characterization coverage
LQ458 Jul 22, 2026
39decce
fix: enforce authorization boundaries
LQ458 Jul 22, 2026
c02dbd2
refactor: separate application modules
LQ458 Jul 22, 2026
62ed657
refactor: separate backend service boundaries
LQ458 Jul 22, 2026
07f893b
refactor: centralize client data access
LQ458 Jul 22, 2026
9c36e74
perf: add lightweight catalog directory
LQ458 Jul 22, 2026
8b64a7c
perf: optimize search and image delivery
LQ458 Jul 22, 2026
210cb27
docs: align repository and operations guidance
LQ458 Jul 22, 2026
73568cc
chore: prepare isolated release verification
LQ458 Jul 22, 2026
97f5a6f
fix: apply safe dependency and build hygiene updates
LQ458 Jul 22, 2026
657d6a0
docs: record cloud deployment access gate
LQ458 Jul 22, 2026
07908e3
fix: harden native production dependencies
LQ458 Jul 22, 2026
f3a8fa9
docs: correct cloud access evidence
LQ458 Jul 22, 2026
3ba23c6
chore: separate client build dependencies
LQ458 Jul 22, 2026
da48d19
docs: publish redacted data and traffic report
LQ458 Jul 22, 2026
6c9bfb7
docs: refine origin access evidence
LQ458 Jul 22, 2026
b26172e
docs: record protected cloud deployment
LQ458 Jul 22, 2026
a2951cb
docs: update deployment evidence catalog
LQ458 Jul 22, 2026
15a8f9d
docs: record media delivery check
LQ458 Jul 22, 2026
a80bc04
docs: record search and image optimization
LQ458 Jul 22, 2026
fecb467
perf: add responsive media delivery
LQ458 Jul 22, 2026
b729394
chore: add privacy-safe evidence collectors
LQ458 Jul 22, 2026
5e8919a
docs: record verified product impact
LQ458 Jul 22, 2026
e81812e
docs: record production acceptance
LQ458 Jul 23, 2026
4168079
fix: restore frontend API routing
LQ458 Jul 23, 2026
3923394
docs: record frontend recovery
LQ458 Jul 23, 2026
c5e348e
fix: restore global button styles
LQ458 Jul 23, 2026
cea0044
docs: record button style recovery
LQ458 Jul 23, 2026
85e89e1
fix: package optimized background assets
LQ458 Jul 23, 2026
a696a6e
ci: keep legacy warnings non-blocking
LQ458 Jul 23, 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
33 changes: 33 additions & 0 deletions .github/workflows/verify.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: verify

on:
push:
branches:
- main
pull_request:

permissions:
contents: read

jobs:
verify:
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22.x
cache: npm
cache-dependency-path: |
package-lock.json
client/package-lock.json
- run: npm ci
- run: npm --prefix client ci
- run: npm run test:backend
- run: npm run test:frontend
- run: npm run build
env:
# CRA promotes the documented legacy warnings to errors under CI=true.
# Compilation errors still fail while warning cleanup remains incremental.
CI: "false"
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@ yarn-debug.log*
yarn-error.log*

/public
/uploads
/client/public/plantspic
/client/public/compressed
/client/public
/node_modules
/node_modules
27 changes: 27 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Contributing

Keep changes incremental and compatible with the current React, Express, MongoDB, Redis, and filesystem media stack. A refactor should preserve existing URLs, request bodies, response shapes, and MongoDB field names unless a separate compatibility plan is documented.

## Local workflow

1. Create a short-lived branch from the current baseline.
2. Install both npm dependency trees with `npm ci` and `npm --prefix client ci`.
3. Use local MongoDB/Redis and an ignored `.env`; never copy production credentials, accounts, logs, or media.
4. Add or update only focused characterization tests for the behavior being changed.
5. Run `npm run verify` before committing.

The root `verify` command runs backend tests, frontend tests, and the production client build. If a check cannot run locally, record the exact reason and do not replace it with an unverified claim.

## Code boundaries

- Put new HTTP composition in the relevant router or service rather than expanding unrelated legacy handlers.
- Use the shared client API and URL helpers; keep media fallback and loading behavior explicit.
- Keep authentication and authorization checks at the route boundary.
- Do not write secrets, raw request data, raw search text, or production identifiers to logs or telemetry.
- Preserve original media and database compatibility. New derived media must use a separate path and be reversible.

## Commits and review

Use ordinary Conventional Commit messages such as `test: add catalog contract coverage` or `refactor: isolate media service`. Branch names and commit metadata must not contain assistant, tool, or generated-by labels. Do not push, open a pull request, deploy, modify Nginx, restart production processes, run migrations, or backfill production media without explicit authorization.

Describe the behavior changed, tests run, production impact, unresolved risks, and rollback steps in the phase report or change description. Keep generated files, build output, dependency caches, dumps, and large media out of Git.
Loading
Loading