diff --git a/hubzilla/addon/scn01/scenarios.json b/hubzilla/addon/scn01/scenarios.json index 3eec99d..299cb56 100644 --- a/hubzilla/addon/scn01/scenarios.json +++ b/hubzilla/addon/scn01/scenarios.json @@ -1,5 +1,5 @@ { - "_note": "Sanitized scenario library for scn01. Each entry is an operator/participant-sanitized account, tagged with a single open-vocabulary category. Edited by operator/expert participants over time. Used to populate the browse carousel on /scn01/{association_slug}.", + "_note": "Sanitized scenario library for scn01. Each entry is an operator/participant-sanitized account, tagged with a single open-vocabulary category. Sanitization keeps the causal mechanism intact and removes blame, accusation, identity, and retaliation framing. Edited by operator/expert participants over time. Used to populate the browse carousel on /scn01/{association_slug}.", "scenarios": [ { "id": "scn-001", @@ -8,23 +8,73 @@ }, { "id": "scn-002", - "category": "Noise Complaint", - "text": "The same residents across several units have been playing loud music late at night, seemingly on purpose. Complaints have not resulted in any visible action." + "category": "Porch Pirates", + "text": "A package was left at the wrong door by the delivery driver and was opened by the resident who received it before the mistake was noticed." }, { "id": "scn-003", + "category": "Noise Complaint", + "text": "The same residents across several units have been playing loud music late at night, seemingly on purpose, after repeated requests to stop." + }, + { + "id": "scn-004", + "category": "Noise Complaint", + "text": "Construction or repair work in a unit starts well before the hours the rules allow, on a recurring basis." + }, + { + "id": "scn-005", "category": "Towing", "text": "A guest's car was towed overnight from a space marked for guest parking. No warning was posted and no notice was given before the tow." }, { - "id": "scn-004", + "id": "scn-006", + "category": "Towing", + "text": "A resident's car, parked in their assigned space, was towed while they were away for an extended period, with no record of why." + }, + { + "id": "scn-007", "category": "Excessive Maintenance Charges", "text": "The lawn is being mowed three times a week, which feels excessive. The frequency was not discussed with homeowners and the cost implications are unclear." }, { - "id": "scn-005", + "id": "scn-008", + "category": "Excessive Maintenance Charges", + "text": "Landscaping crews have cut back bushes so severely that several did not survive, and the cost of replacing them was billed separately." + }, + { + "id": "scn-009", "category": "Surprise Charges", "text": "A one-time charge appeared on the account for removing a tree that had been dead for years. There was no advance notice that this charge was coming or why it was billed now." + }, + { + "id": "scn-010", + "category": "Surprise Charges", + "text": "A special assessment appeared on a statement with no explanation of what it covers or when it was approved." + }, + { + "id": "scn-011", + "category": "Broken Window", + "text": "A window was broken by a soccer ball from the neighboring apartments' field. The ball was kept temporarily as leverage to get the window fixed, then returned after the situation escalated." + }, + { + "id": "scn-012", + "category": "Broken Window", + "text": "A common-area window has been broken more than once, always overnight, with no one identified as responsible either time." + }, + { + "id": "scn-013", + "category": "Broken Window", + "text": "A window was broken during an incident between two homeowners, witnessed by a third resident who is not willing to provide further detail." + }, + { + "id": "scn-014", + "category": "Broken Window", + "text": "Children in the community have been putting gravel inside snowballs and throwing them at windows \u2014 no window has broken yet, but the pattern makes it likely one will." + }, + { + "id": "scn-015", + "category": "Suspected Squatters", + "text": "A unit that's supposed to be vacant shows signs of occupancy \u2014 lights at odd hours, unfamiliar cars \u2014 with no record of who is staying there or for how long." } ] } diff --git a/hubzilla/addon/scn01/scn01_renderer.php b/hubzilla/addon/scn01/scn01_renderer.php index 821e85d..3388c7c 100644 --- a/hubzilla/addon/scn01/scn01_renderer.php +++ b/hubzilla/addon/scn01/scn01_renderer.php @@ -72,17 +72,21 @@ function scn01_render_landing($association_slug, $access) { . json_encode(['scenarios' => $scenarios], JSON_UNESCAPED_SLASHES) . ''; - // Pinned strip — populated client-side - $out .= '
'; - - // Carousel — populated client-side - $out .= '