Skip to content

Samla användarverktyg under Profile och koppla filmer till hjälpartiklar - #273

Merged
jmfk merged 3 commits into
mainfrom
codex/profile-instruction-films
Oct 23, 2026
Merged

jmfk merged 3 commits into
mainfrom
codex/profile-instruction-films

Conversation

@jmfk

@jmfk jmfk commented Oct 22, 2026 •

Copy link
Copy Markdown
Owner

Inbox, Kanban och felrapportering låg direkt i huvudmenyn och använde ett eget visuellt uttryck. Instruktionsfilmer kunde inte kopplas till hjälpartiklar eller laddas upp i den lokala MinIO-miljön. Den här batchen gör användarverktygen tillgängliga via Profile, anpassar dem till ECEEE:s befintliga UI och kopplar privata filmer till rätt dokumentation.

Ändringar

  • Samla Inbox, Kanban och Rapportera fel på Profile på desktop och mobil. Behåll olästräknare, direktlänkar, workspace-scope och felrapportens ursprungssida.
  • Anpassa Inbox, bibliotek, rapport-/publiceringsformulär, Kanban och importpaneler till befintliga paneler, kontroller och statusrad. Lägg till en repoägd eceee-v4-design-skill med styrning i AGENTS.md.
  • Lägg till val av hjälpartikel vid publicering och på befintliga filmer. Äldre kopplade filmer kan hämtas med Visa fler instruktionsfilmer, även när de ligger efter första API-sidan. Hjälpartiklar visar arbetsytans aktiva kopplade filmer via den återanvända privata spelaren. Befintlig hjälpvideokälla finns kvar som fallback; skriftliga steg förblir synliga.
  • Lägg till validerat help_guide_id / helpGuideId, tenantavgränsat listfilter och ett tenant/guide-index. Avpublicerade filmer returneras inte för artikelkopplingen.
  • Koppla lokal konfiguration/readiness till providerägd privat supportlagring och deklarera lodash som direkt produktionsberoende.

Beroende

Provider-PR: https://github.com/jmfk/shared-local-infrastructure/pull/3

Providerändringen måste finnas innan make configure-local-infra körs med denna version. Den provisionerar bara ECEEE:s privata bucket och en begränsad kompletterande MinIO-policy. Andra pågående ändringar i infrastrukturrepot ingår inte.

Lokal verifiering mot senaste main

  • npm ci --ignore-scripts --no-audit --no-fund — passerar.
  • npm run lint — passerar, 0 fel; 969 varningar i den befintliga frontendkodbasen.
  • npm run build — passerar; kvarvarande varningar om chunkstorlek/dynamiska importer.
  • Riktade Vitest-tester — 36 passerar:
    npm run test:run -- src/components/__tests__/Navbar.test.jsx src/pages/__tests__/ProfilePage.test.jsx src/pages/__tests__/InboxPage.test.jsx src/pages/__tests__/KanbanPage.test.jsx src/pages/__tests__/HowToHelpPage.test.jsx src/components/help/__tests__/HelpInstructionVideos.test.jsx src/components/kanban/MarkdownEditor.test.jsx src/components/kanban/KanbanImport.test.jsx
  • Isolerade backendtester med aktuellt backend-image, denna arbetskopias källkod och delad nätverksnamespace med en temporär PostgreSQL-container utan exponerade portar: python manage.py test tenant_support --settings=tenant_support.test_settings_postgres --noinput --verbosity=1 — 30 passerar mot en isolerad PostgreSQL 17-instans, inga överhoppade tester.
  • Black, isort och flake8 på ändrade backendfiler — passerar i samma containerimage.
  • python3 -m unittest discover -s scripts -p test_configure_orbstack.py — 14 passerar.
  • makemigrations tenant_support --check --dry-run och skillvalidering — passerar.
  • Visuell kontroll av desktop/mobil, inklusive bibliotek och rapport-/publiceringsformulär. Syntetisk H.264-film laddades upp genom applikationens upload-view till riktig lokal MinIO och spelades upp i hjälpartikeln i webbläsaren. Signerad nedladdning fungerar, osignerad nekas med 403; inga aviseringar skickades för testfilmen.
  • Bounded credential-läckkontroll av ändrade källfiler — passerar. Ingen .env, nyckel, DB-dump eller lokal testdata ingår i PR:n.

Migrering och avgränsningar

tenant_support.0002_instruction_help_guide är en additiv schemamigrering: artikelkopplingen är valfri och ett tenant/guide-index skapas. Kolumnen tillåter NULL så den gamla backendversionen kan fortsätta publicera mellan migrering och omstart; API och idempotenta återförsök normaliserar detta till en tom sträng. Ren installation täcks av isolerade tester. Ett regressionstest använder modellen från migrering 0001 för att verifiera publicering från den tidigare versionen och återförsök mot den nya versionen efter schemauppgraderingen. Inga videofiler skrivs om, inga notiser genereras och inga destruktiva dataoperationer ingår. Indexskapandet kan låsa tabellen under migrering; en produktionsuppgradering behöver därför ordinarie migrerings-/deploygranskning. Roll-forward föredras framför att ta bort kolumnen och förlora artikelkopplingar.

Hela frontend-/backend-/Playwright-sviten har inte körts lokalt. PostgreSQL-specifika samtidighetstester har passerat lokalt; full integrationskörning för aktuell head återstår till CI/full-ci-gaten före eventuell merge. Batchen är en sammanhängande användarresa och motiverar en samlad CI-körning. Ingen merge eller produktionsdeploy ingår.

@jmfk
jmfk force-pushed the codex/profile-instruction-films branch from 85e868a to 99ecba4 Compare October 22, 2026 23:51
@jmfk jmfk added the full-ci Run every CI check before merge label Oct 22, 2026
@jmfk
jmfk merged commit 5a78cbf into main Oct 23, 2026
20 checks passed
@jmfk
jmfk deleted the codex/profile-instruction-films branch October 23, 2026 10:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

full-ci Run every CI check before merge

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant