Files
Do SikiandClaude Sonnet 5 758ee2cfed
CI Pipeline with Test Management / 🧪 Run Tests & Generate Reports (push) Canceled after 0s
Test Reporting & Gherkin Analysis / 🧪 Run Tests & Generate Reports (push) Canceled after 0s
CI Pipeline with Test Management / 🐳 Docker Integration Tests (push) Canceled after 0s
CI Pipeline with Test Management / 🏗️ Build Docker Image (push) Canceled after 0s
CI Pipeline with Test Management / 📊 Generate Test Summary (push) Canceled after 0s
Test Reporting & Gherkin Analysis / 📊 Analyze Test Coverage (push) Canceled after 0s
Test Reporting & Gherkin Analysis / 🔄 Sync with Linear (push) Canceled after 0s
Test Reporting & Gherkin Analysis / ⚡ Performance Monitoring (push) Canceled after 0s
docs(agent): refresh architecture/CLAUDE.md docs for Payload CMS (MITHOME-95)
The Content layer description across the AI-agent steering docs still
described the pre-migration JSON system as the live, current mechanism
— rule #1 in CLAUDE.md and the Content row in architecture.md
explicitly told future work (and future agent sessions) to edit
proto/src/content/pages/*.json directly, which the live site hasn't
read since MITHOME-91.

Rewrote, per the ticket's named targets:
- .agent/steering/architecture.md: system overview, the Content layer
  table row, rule #1, and the Content Management code example now
  describe Payload Globals/Collections + the payload-content.ts Local
  API adapter, with /admin as the editing surface.
- CLAUDE.md: Stack line now names Payload CMS, rule #1 rewritten the
  same way, and the project-structure tree gets the (frontend)/(payload)
  route groups, globals/, collections/, and payload.config.ts that were
  entirely missing from it.

Also fixed directly-adjacent staleness found while doing this pass —
same "how is content edited" documentation debt, just not literally
named in the ticket:
- .agent/AGENTS.md: same project-structure tree gap as CLAUDE.md.
- .agent/workflows/new-feature.md: step 3 told contributors to edit
  the JSON file directly; now points at the Payload config + admin.
- .agent/workflows/review.md: the example "flag hardcoded text" review
  comment suggested moving it into the JSON file.
- .agent/steering/development-rules.md: the TRADEOFF code example
  literally used "JSON content management vs CMS" as a live open
  decision — that decision is resolved, updated the example to match.
- README.md: the entire "Tartalomkezelés" section and a "CMS
  Publikálás gomb" paragraph described the retired content-editor.js
  workflow (git-push-based publish, JSON directory tour) as current;
  also dropped a dead link to docs/felhasznaloi-utmutato.md, deleted
  in MITHOME-93.

Doc-only change, no proto/ source touched — no gate to run beyond a
sanity re-read of each edited file.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-13 12:33:33 +02:00

84 lines
3.3 KiB
Markdown
Executable File

# mozdIT Bt. — Weboldal fejlesztés (websitedev)
Modern Next.js weboldal a mozdIT Bt. számára — webtárhely, email- és DNS-szolgáltatás, magyar IT vállalkozás.
## Stack
- **Frontend**: Next.js 15 (Turbopack), React 19, TypeScript, Tailwind CSS 4
- **CMS**: Payload CMS (self-hosted, `/admin`), MongoDB adapter, draft/publish + verziózás, hu/en lokalizáció
- **Tartalom**: Payload Globals/Collections (a korábbi JSON-alapú content rendszer, `proto/src/content/`, csak a migrációs script forrásaként és teszt-fixture-ként él tovább — MITHOME-91/93)
- **Backend**: Next.js API routes, MongoDB
- **Tesztelés**: Jest, React Testing Library, Playwright (smoke)
- **Deploy**: natív Docker Compose (`deploy.sh`) + Gitea Actions nélkül, lokálisan vezérelt
- **Monitoring**: Winston + Loki, plusz `scripts/security-scan.sh` (ntfy riasztással)
## Gyors indítás
```bash
# Fejlesztői szerver
cd proto && npm run dev
# Docker fejlesztői környezet
docker-compose -f docker-compose.dev.yml up -d
# Teljes pre-deploy tesztkészlet
scripts/pre-deploy-tests.sh
```
## Feladatkezelés (Plane)
- **Projekt**: [MITHOME](https://pm.llmdev.mozdit.hu) (workspace: `developments`)
- **TODO.md**: helyi tükör, a Plane az elsődleges forrás
- **Szinkron**: `node plane-sync.js` (Plane → TODO.md)
- **Ticket-azonosítók**: `MITHOME-XX`
## Deploy
```bash
./scripts/deploy_to_stage_on_local.sh # staging: teljes tesztkészlet + push + deploy + smoke
./deploy.sh production # éles (szerveren, staging ellenőrzése után)
```
A Payload admin (`/admin`) draft/publish + verziózás munkafolyamata (MITHOME-92) nem jár git commit-tal vagy automatikus deployjal — a tartalom közvetlenül a MongoDB-be íródik. Kódváltozás (Globals/Collections séma, frontend) továbbra is a fenti git-alapú deploy folyamaton megy át. Részletek: `.agent/workflows/deploy.md`.
## Tartalomkezelés
A weboldal szövegei Payload CMS Globals/Collections mezőkben élnek, az ügyfél a `/admin` felületen szerkeszti őket:
```
proto/src/globals/ # Home, About, Services, Contact, Common
proto/src/collections/ # LegalPages, Partners, Media, ContactSubmissions, Users
proto/src/payload.config.ts
```
Használat Server Component-ből (a Payload Local API-n keresztül):
```typescript
import { getAboutContent } from '@/lib/payload-content'
const about = await getAboutContent(locale) // locale: 'hu' | 'en'
```
A régi, JSON-alapú content rendszer (`proto/src/content/`) már csak a
`migrate-content-to-payload.ts` seed-script forrásaként és néhány
komponens-teszt fixture-jeként él tovább — élő oldal nem olvassa (MITHOME-91/93).
## Dokumentáció
- **Agent-szabályok**: `.agent/AGENTS.md`, `.agent/steering/`, `.agent/workflows/`
- **nginx vhost-ok**: `docs/nginx-vhosts.md`
- **Plane szinkron**: `PLANE-SYNC-GUIDE.md`
- **Staging deploy**: `docs/helyi-staging-deploy.md`
- **Gitea runner**: `docs/gitea-runner-telepites.md`
## Környezetek
- **Staging**: https://stage.mozdit.hu
- **CMS (staging)**: https://cms.stage.llmdev.mozdit.hu
- **ntfy (riasztás)**: `st_limidev_security` topic
## Biztonsági monitoring
`scripts/security-scan.sh` (cron, 5 percenként) kriptominer/backdoor indikátorokat figyel
(álcázott folyamatnevek, `/tmp/.kworkerd`-jellegű maradványok, magas CPU), és találat esetén
ntfy push-t küld a `st_limidev_security` topicra.