{
  "id": "projectalert-keyword-edge-smoke-2026-07-05",
  "generatedAt": "2026-07-05T04:51:32.287Z",
  "environment": {
    "baseUrl": "https://solcom.ddev.site",
    "route": "/projektportal/projektalert",
    "auth": "local authenticated projectpartner user uid=22; one-time-login URL not persisted",
    "destructiveActions": false,
    "submittedForm": false,
    "productionTouched": false
  },
  "scope": [
    "Jan/Teresa keyword suggestions for Project Alert",
    "include keyword suggestion for Bau",
    "exclude custom keyword Kunde",
    "same keyword in include and exclude"
  ],
  "observations": [
    {
      "step": "Initial Projectalert page",
      "result": "Form loaded, submit button visible, initial copy reported 392 matching projects before keyword filters."
    },
    {
      "step": "Type Bau into include keyword field",
      "result": "Suggestion rendered as Bauleitung; the previously reported anlagen^bau suggestion was not reproduced."
    },
    {
      "step": "Confirm include Bauleitung",
      "result": "Tag Bauleitung persisted in filter_skills and matching project count changed from 392 to 42."
    },
    {
      "step": "Type Kunde into exclude keyword field",
      "result": "UI first displayed no matching suggestions for Kunde."
    },
    {
      "step": "Confirm exclude Kunde",
      "result": "Custom tag Kunde persisted in filter_exclude_skills and matching project count changed from 42 to 40."
    },
    {
      "step": "Add Bauleitung to exclude while Bauleitung already exists in include",
      "result": "UI allowed the contradictory state without error; filter_exclude_skills contains Kunde and Bauleitung, filter_skills still contains Bauleitung, matching project count changed to 0."
    }
  ],
  "finalFormState": {
    "title": "Projekt-Alert abonnieren | SOLCOM",
    "path": "/projektportal/projektalert",
    "h1": "PROJEKT-ALERT ABONNIEREN",
    "includeSkills": [
      {
        "value": "3088",
        "entity_id": 3088,
        "label": "Bauleitung",
        "input": "Bau"
      }
    ],
    "excludeSkills": [
      {
        "label": "Kunde",
        "value": "Kunde"
      },
      {
        "value": "3088",
        "entity_id": 3088,
        "label": "Bauleitung",
        "input": "Bauleitung"
      }
    ],
    "visibleTags": [
      "Bauleitung",
      "Kunde",
      "Bauleitung"
    ],
    "projectCount": "Aktuell passen 0 Projekte",
    "validationErrors": []
  },
  "sideEffects": {
    "mailpitBeforeTotal": 9,
    "mailpitAfterTotal": 9,
    "mailpitNewMessages": 0,
    "browserConsoleErrors": 0,
    "pageErrors": 0,
    "watchdogBaselineCountFromBeforeLogin": 1682,
    "watchdogAfterCount": 1684,
    "watchdogDeltaNote": "Delta is explained by the authenticated local one-time-login/session entries before the Projectalert keyword flow; locations/tokens intentionally omitted from evidence."
  },
  "verdict": {
    "fixed": false,
    "partiallyFixed": true,
    "notes": [
      "Bau suggestion issue is not reproduced locally; Bau maps to Bauleitung.",
      "Kunde is accepted as a custom exclude keyword after Enter.",
      "Contradictory include/exclude duplicate keyword remains possible and should be treated as an open UX/validation finding."
    ]
  },
  "screenshots": [
    "projectalert-keywords-bauleitung-selected-confirm-2026-07-05.png",
    "projectalert-keywords-exclude-kunde-typed-2026-07-05.png",
    "projectalert-keywords-exclude-kunde-after-enter-2026-07-05.png",
    "projectalert-keywords-exclude-bauleitung-typed-2026-07-05.png",
    "projectalert-keywords-exclude-bauleitung-after-enter-2026-07-05.png"
  ]
}
