CodeVetter · Repo Unpack · Contributor handoff
payloadcms/payload
Read the relevant configuration, operation, adapter, and feature fixture before editing across boundaries. Tests and CI were inspected, not executed; the suggested commands are future verification choices, not results from this investigation. The inventory is bounded, and environment files were intentionally excluded under the read-only authority. Preserve small changes and distinguish runtime behavior from stale prose, configured bypasses, and generated wiring.
- Use the current manifest and source for version-sensitive decisions: package.json says 4.0.0-canary.37, while AGENTS.md architecture notes still describe Payload 3.x and incorrectly generalize database adapters as Drizzle-based relative to MongoDB implementation.
- Before changing startup or config features, read buildConfig, sanitizeConfig, and BasePayload.init: sanitization injects internal collections and jobs, and initialization binds the actual runtime adapters.
- For HTTP mutations, inspect handleEndpoints, wrapInternalEndpoints, and the shared collection operation; body parsing and slug injection occur before operation-level authorization and persistence.
- Follow repository conventions for object arguments, types, separate import type statements, translated config labels, stable hook arguments, and logger objects using msg/err.
- Server components must reference client exports through the prescribed client bundle, and explicit named exports are required for new bundling work; the shared root renderer demonstrates the client-boundary import.
- Payload-backed integration tests should use the shared test.suite wrapper and fixture arguments; fixtures own initialization/reset/destruction, while files and other non-database side effects require test cleanup.
- Future verification can start with focused unit or integration scripts, then adapter-specific integration or production E2E checks as needed; tests and CI were inspected, not executed, and production preparation contains destructive directory-reset steps that are outside this read-only task.
- For UI changes, apply the repository accessibility requirements and token/CSS conventions; generate visual baselines only in the pinned Playwright Docker environment, and do not infer correctness from Next builds that ignore type errors.