Files
planer2/daten/Planer/.pruefung.json
2026-07-28 12:31:42 +02:00

391 lines
14 KiB
JSON

{
"abdeckung": {
"bedienen:ablehnen": {
"abdruck": "61a0e2e5f8a4c439",
"funktion": "Vorschlag annehmen"
},
"bedienen:alleAblehnen": {
"abdruck": "9d613f6b111b9b67",
"funktion": "Alle Vorschläge verwerfen"
},
"bedienen:alleAnnehmen": {
"abdruck": "9456d726b83144c9",
"funktion": "Alle Vorschläge annehmen"
},
"bedienen:annehmen": {
"abdruck": "97dc5220725e77ee",
"funktion": "Vorschlag annehmen"
},
"bedienen:auswaehlen": {
"abdruck": "31f34c41cbd1bd93",
"funktion": "Projekt aufrufen"
},
"bedienen:bereichsMenue": {
"abdruck": "421627feeb92867c",
"funktion": "Projekt aufrufen"
},
"bedienen:bestaetigen": {
"abdruck": "b1ce0152c68722c9",
"funktion": "Feature anlegen"
},
"bedienen:funktionsMenue": {
"abdruck": "67bf62e64b2af11f",
"funktion": "Funktion entfernen"
},
"bedienen:kartenMenue": {
"abdruck": "bc47fd3a97b2027c",
"funktion": "Feature entfernen"
},
"bedienen:leistenMenue": {
"abdruck": "90a66ccbe71ddc74",
"funktion": "Projekt anlegen"
},
"bedienen:projektMenue": {
"abdruck": "58ca0dac4286c61d",
"funktion": "Projekt umbenennen"
},
"bedienen:schliesse": {
"abdruck": "f78739ce74d876f5",
"funktion": ""
},
"bedienen:springe": {
"abdruck": "67b827c9bba0c05a",
"funktion": "Problemstelle anspringen"
},
"bedienen:starte": {
"abdruck": "06e7ff1e70efc603",
"funktion": "Titel anpassen"
},
"bedienen:startePruefung": {
"abdruck": "1f9ac6d1bb70cda8",
"funktion": "Stil prüfen"
},
"bedienen:umbenennen": {
"abdruck": "af404032e5814872",
"funktion": "Projekt umbenennen"
},
"bedienen:wechsleAnsicht": {
"abdruck": "ee50f2dbfa66f779",
"funktion": "Anzeigemodus umschalten"
},
"bedienen:wechsleArt": {
"abdruck": "3fcd27f68677ed3a",
"funktion": "Feature einstufen"
},
"bedienen:wechsleDarkMode": {
"abdruck": "51e5efb1e9196f3b",
"funktion": "Darkmode umschalten"
},
"lauscher:window.click": {
"abdruck": "5dd03db00120c133",
"funktion": "Kontextmenü schließen"
},
"lauscher:window.keydown": {
"abdruck": "70b3f36549535bfc",
"funktion": ""
},
"menue:+ Feature erstellen": {
"abdruck": "a9a3fefd653555c7",
"funktion": "Feature anlegen"
},
"menue:+ Funktion erstellen": {
"abdruck": "0f968068851c2f7a",
"funktion": "Feature entfernen"
},
"menue:+ Projekt erstellen": {
"abdruck": "dbbe1573ebe97251",
"funktion": "Projekt entfernen"
},
"menue:+ Vision erstellen": {
"abdruck": "1d814205e510b035",
"funktion": "Feature anlegen"
},
"menue:✎ Projekt anpassen": {
"abdruck": "cd7390c2f6852257",
"funktion": "Projekt umbenennen"
},
"menue:✕ Feature entfernen": {
"abdruck": "e773a996f84a8d7b",
"funktion": "Feature entfernen"
},
"menue:✕ Funktion entfernen": {
"abdruck": "99495f37aa040550",
"funktion": "Funktion entfernen"
},
"menue:✕ Projekt entfernen": {
"abdruck": "bc7b8c360ac3c403",
"funktion": "Projekt anlegen"
},
"menue:✕ Vision entfernen": {
"abdruck": "ec65c57f36ff14d0",
"funktion": "Anzeigemodus umschalten"
},
"route:delete /projekte/{name}": {
"abdruck": "9014a4b884cca27a",
"funktion": "Projekt entfernen"
},
"route:delete /projekte/{name}/features/{id}": {
"abdruck": "ff8d0773ef483606",
"funktion": "Feature entfernen"
},
"route:delete /projekte/{name}/pruefung": {
"abdruck": "79f2bdc0413ea88a",
"funktion": "Prüfung beenden"
},
"route:get /health": {
"abdruck": "3214361386c64911",
"funktion": ""
},
"route:get /projekte": {
"abdruck": "2f6756caafbe76b8",
"funktion": ""
},
"route:get /projekte/{name}/features": {
"abdruck": "509119bcecfd63e6",
"funktion": "Projekt aufrufen"
},
"route:get /projekte/{name}/pruefung": {
"abdruck": "f7d46d8a5be26212",
"funktion": "Stil prüfen"
},
"route:post /projekte": {
"abdruck": "c3e70befc5eb772b",
"funktion": "Projekt anlegen"
},
"route:post /projekte/{name}/features": {
"abdruck": "df08920d8f5e5d4d",
"funktion": "Feature anlegen"
},
"route:post /projekte/{name}/pruefung": {
"abdruck": "9fb8d6c9260477c7",
"funktion": "Stil prüfen"
},
"route:put /projekte/{name}": {
"abdruck": "6030731add729040",
"funktion": "Projekt umbenennen"
},
"route:put /projekte/{name}/features/{id}": {
"abdruck": "e95aea276bf795cd",
"funktion": ""
}
},
"belege": {
"[\"darkmode\", \"Darkmode umschalten\"]": {
"abdruck": "653c08d0647a7f7b",
"beleg": "function wechsleDarkMode() {\n modus.value = MODI[(MODI.indexOf(modus.value) + 1) % MODI.length]\n localStorage.setItem('darkModus', modus.value)\n wendeAn()\n}",
"datei": "frontend/src/App.vue"
},
"[\"design\", \"Kontextmenü schließen\"]": {
"abdruck": "519c5a56bf4b9810",
"beleg": "schliesseMenue()",
"datei": "frontend/src/composables/kontextmenue.js"
},
"[\"features\", \"Anzeigemodus umschalten\"]": {
"abdruck": "b22ba2dd122887fa",
"beleg": "function wechsleAnsicht() {\n gross.value = !gross.value\n}",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"features\", \"Feature anlegen\"]": {
"abdruck": "d2968bea16a06b65",
"beleg": "async function erstellen(titel) {",
"datei": "frontend/src/components/FeatureListe.vue"
},
"[\"features\", \"Feature einstufen\"]": {
"abdruck": "de473e39c7232637",
"beleg": "function wechsleArt() {\n s.value.art = s.value.art === 'kern' ? 'optional' : 'kern'\n speichern()\n}",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"features\", \"Feature entfernen\"]": {
"abdruck": "c6f27381a41a63d7",
"beleg": "def loeschen(projekt: str, id: str):\n _datei(projekt, id).unlink()",
"datei": "backend/features.py"
},
"[\"features\", \"Regeln anpassen\"]": {
"abdruck": "0af0e4eadcaae560",
"beleg": "<div v-else-if=\"s.regeln\" class=\"klickbar\" @click=\"starte('regeln')\">",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"features\", \"Titel anpassen\"]": {
"abdruck": "7f727f71dc555492",
"beleg": "<h3 v-else :title=\"gross ? 'Klicken zum Bearbeiten' : null\" @click=\"starte('titel')\">{{ s.titel }}</h3>",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"features\", \"Ziel anpassen\"]": {
"abdruck": "965b52779fa6aa35",
"beleg": "<div v-else-if=\"s.ziel\" class=\"inhalt klickbar\" v-html=\"md(s.ziel)\" @click=\"starte('ziel')\" />",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"funktionen\", \"Funktion anlegen\"]": {
"abdruck": "6250215b920cf0f0",
"beleg": "async function funktionErstellen(titel) {",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"funktionen\", \"Funktion entfernen\"]": {
"abdruck": "20e8d8e507ee6310",
"beleg": "{ text: '✕ Funktion entfernen', aktion: () => (modal.value = { art: 'entfernen', i }) },",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"funktionen\", \"Regeln anpassen\"]": {
"abdruck": "303d6988603e3d61",
"beleg": "async function starte(feld, i, j) {\n if (!gross.value) return // Bearbeiten nur in der ausführlichen Ansicht\n const original = wert(feld, i, j)\n aktiv.value = { feld, i, j, original }\n entwurf.value = original\n await nextTick()\n const el = Array.isArray(feldRef.value) ? feldRef.value[0] : feldRef.value\n el?.focus()\n if (feld === 'titel') el?.select()\n}",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"funktionen\", \"Testschritte anpassen\"]": {
"abdruck": "e303ebeaece423de",
"beleg": "<div v-else class=\"klickbar\" @click=\"starte('testen', i)\">",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"funktionen\", \"Titel anpassen\"]": {
"abdruck": "3ceaa19290c793b4",
"beleg": "s.value.funktionen[a.i].text = neu",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"funktionen\", \"Ziel anpassen\"]": {
"abdruck": "4cb617031cbf6ef4",
"beleg": "<div v-else class=\"inhalt klickbar\" v-html=\"md(f.ziel)\" @click=\"starte('ziel', i)\" />",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"karten-pruefen\", \"Alle Vorschläge annehmen\"]": {
"abdruck": "52fb2acd3d6945fa",
"beleg": "async function alleAnnehmen() {\n props.probleme.forEach(p => { if (anwenden(p)) erledige(p) })\n await speichern()\n}",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"karten-pruefen\", \"Alle Vorschläge verwerfen\"]": {
"abdruck": "f98fd3fc005b9e56",
"beleg": "function alleAblehnen() {\n props.probleme.forEach(erledige)\n}",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"karten-pruefen\", \"Code in Features prüfen\"]": {
"abdruck": "daf5820ada5ee059",
"beleg": "async def code_im_feature(features: list, punkte: list, stand: dict,",
"datei": "backend/inhalt.py"
},
"[\"karten-pruefen\", \"Features im Code prüfen\"]": {
"abdruck": "acc652c172671790",
"beleg": "ANKLAGE_AB = 4",
"datei": "backend/inhalt.py"
},
"[\"karten-pruefen\", \"Problemstelle anspringen\"]": {
"abdruck": "340a32321fd23834",
"beleg": "karte.classList.add('gesucht')",
"datei": "frontend/src/components/PruefPanel.vue"
},
"[\"karten-pruefen\", \"Prüfung beenden\"]": {
"abdruck": "7400070de29ce762",
"beleg": "<button class=\"icon-knopf\" title=\"Schließen\" @click=\"schliesse\">✕</button>",
"datei": "frontend/src/components/PruefPanel.vue"
},
"[\"karten-pruefen\", \"Stil prüfen\"]": {
"abdruck": "86c4530f5dd0bd52",
"beleg": "async def starte(projekt: str, art: str = \"stil\") -> dict:",
"datei": "backend/pruefung.py"
},
"[\"karten-pruefen\", \"Vorschlag annehmen\"]": {
"abdruck": "e4b81d800fd23fec",
"beleg": "async function annehmen(p) {\n if (anwenden(p)) erledige(p)\n await speichern()\n}",
"datei": "frontend/src/components/FeatureKarte.vue"
},
"[\"karten-pruefen\", \"Vorschlag verwerfen\"]": {
"abdruck": "b37b74ea369ed66c",
"beleg": "export function erledige(problem) {\n probleme.value = probleme.value.filter(p => p !== problem)\n}",
"datei": "frontend/src/composables/pruefung.js"
},
"[\"projekte\", \"Projekt anlegen\"]": {
"abdruck": "9b3598c9081155b2",
"beleg": "def anlegen(name: str):",
"datei": "backend/projekte.py"
},
"[\"projekte\", \"Projekt aufrufen\"]": {
"abdruck": "1071109545496535",
"beleg": "@click=\"emit('auswaehlen', p.name)\"",
"datei": "frontend/src/components/SeitenLeiste.vue"
},
"[\"projekte\", \"Projekt entfernen\"]": {
"abdruck": "e413063557fa0f13",
"beleg": "shutil.rmtree(ordner)",
"datei": "backend/projekte.py"
},
"[\"projekte\", \"Projekt umbenennen\"]": {
"abdruck": "d4e71f8ef907393c",
"beleg": "function projektMenue(e, name) {\n oeffneMenue(e, [\n { text: '✎ Projekt anpassen', aktion: () => starteUmbenennen(name) },\n { text: '✕ Projekt entfernen', aktion: () => oeffneModal({ art: 'entfernen', name }) },\n ])\n}",
"datei": "frontend/src/components/SeitenLeiste.vue"
},
"[\"vision-festhalten\", \"Anzeigemodus umschalten\"]": {
"abdruck": "b983b82c02343560",
"beleg": "const gross = ref(false)",
"datei": "frontend/src/components/VisionKarte.vue"
},
"[\"vision-festhalten\", \"Vision anlegen\"]": {
"abdruck": "58ceb9502d1754bf",
"beleg": "<div class=\"bereich\" @contextmenu.prevent=\"bereichsMenue\">",
"datei": "frontend/src/components/FeatureListe.vue"
},
"[\"vision-festhalten\", \"Vision anpassen\"]": {
"abdruck": "dd527b57b4c9685e",
"beleg": "async function fertig() {\n if (!aktiv.value) return\n aktiv.value = false\n const neu = entwurf.value.trim()\n if (neu === text.value) return\n text.value = neu\n await speichern()\n}",
"datei": "frontend/src/components/VisionKarte.vue"
},
"[\"vision-festhalten\", \"Vision entfernen\"]": {
"abdruck": "0aeb156d13b32b7e",
"beleg": "function kartenMenue(e) {\n oeffneMenue(e, [{ text: '✕ Vision entfernen', aktion: () => emit('entfernen') }])\n}",
"datei": "frontend/src/components/VisionKarte.vue"
}
},
"ohne_code": {},
"ohne_karte": {},
"paare": {
"[\"[\\\"features\\\", \\\"Anzeigemodus umschalten\\\"]\", \"[\\\"vision-festhalten\\\", \\\"Anzeigemodus umschalten\\\"]\"]": {
"abdruck": "d23706be97d6369a",
"gleich": false
},
"[\"[\\\"features\\\", \\\"Feature anlegen\\\"]\", \"[\\\"funktionen\\\", \\\"Funktion anlegen\\\"]\"]": {
"abdruck": "3eb9956887005cc4",
"gleich": false
},
"[\"[\\\"features\\\", \\\"Feature entfernen\\\"]\", \"[\\\"funktionen\\\", \\\"Funktion entfernen\\\"]\"]": {
"abdruck": "9717a5c6eab69f22",
"gleich": false
},
"[\"[\\\"features\\\", \\\"Regeln anpassen\\\"]\", \"[\\\"funktionen\\\", \\\"Regeln anpassen\\\"]\"]": {
"abdruck": "827215ea68dcbada",
"gleich": false
},
"[\"[\\\"features\\\", \\\"Titel anpassen\\\"]\", \"[\\\"features\\\", \\\"Ziel anpassen\\\"]\"]": {
"abdruck": "69360dc1502aa01f",
"gleich": false
},
"[\"[\\\"features\\\", \\\"Titel anpassen\\\"]\", \"[\\\"funktionen\\\", \\\"Titel anpassen\\\"]\"]": {
"abdruck": "01fbbfc1ca91d32a",
"gleich": false
},
"[\"[\\\"features\\\", \\\"Titel anpassen\\\"]\", \"[\\\"funktionen\\\", \\\"Ziel anpassen\\\"]\"]": {
"abdruck": "414ddf4e7bff9896",
"gleich": false
},
"[\"[\\\"features\\\", \\\"Ziel anpassen\\\"]\", \"[\\\"funktionen\\\", \\\"Titel anpassen\\\"]\"]": {
"abdruck": "83a0a87e978c859a",
"gleich": false
},
"[\"[\\\"features\\\", \\\"Ziel anpassen\\\"]\", \"[\\\"funktionen\\\", \\\"Ziel anpassen\\\"]\"]": {
"abdruck": "5e97e3c6fe9df287",
"gleich": false
},
"[\"[\\\"funktionen\\\", \\\"Funktion anlegen\\\"]\", \"[\\\"projekte\\\", \\\"Projekt anlegen\\\"]\"]": {
"abdruck": "202f51c53a73b452",
"gleich": false
},
"[\"[\\\"funktionen\\\", \\\"Funktion entfernen\\\"]\", \"[\\\"projekte\\\", \\\"Projekt entfernen\\\"]\"]": {
"abdruck": "a9d2c4dd5e70fa2c",
"gleich": false
},
"[\"[\\\"funktionen\\\", \\\"Funktion entfernen\\\"]\", \"[\\\"vision-festhalten\\\", \\\"Vision entfernen\\\"]\"]": {
"abdruck": "4090ee6826466fa3",
"gleich": false
},
"[\"[\\\"funktionen\\\", \\\"Titel anpassen\\\"]\", \"[\\\"funktionen\\\", \\\"Ziel anpassen\\\"]\"]": {
"abdruck": "17b00db94f54b62d",
"gleich": false
}
}
}