Skip to content

[OpenSpec] engagement-activity-digest #702

Open

Description

@github-actions

⚠️ OpenSpec-managed issue — this content is automatically synced
from the openspec/ directory. Manual edits will be overwritten on next sync.

Artifacts

Specs

Tasks

  • 1. Add four ActivitySettings classes under lib/Activity/Settings/ with the defaults in D1 and register them in appinfo/info.xml. Verify: PHPUnit per class and app-info validation. Done 9 Oct: LaunchPadActivitySetting base plus Dashboard{Shared,Published,Updated,Acknowledged}Setting; tests/Unit/Activity/Settings/ActivitySettingsTest.php (red first: build-round/digest-red.log) pins identifiers, group, defaults and the info.xml registration; appinfo/info.xml validates against Nextcloud's resources/app-info.xsd (settings precede providers, as the schema orders them).
  • 2. Emit dashboard_shared from DashboardShareService on share creation to the resolved recipients. Verify: PHPUnit with a mocked publisher.
  • 3. Emit dashboard_published from DashboardService on publication, including the first surfacing of a scheduled dashboard, once. Verify: PHPUnit.
  • 4. Emit dashboard_updated for shared and group dashboards through DebounceHelper, once per dashboard per 24 hours. Verify: PHPUnit with a fixed clock.
  • 5. Integration check: with daily batching, a share queues an activity mail row for the recipient. Verify: an integration test or a documented manual run against the dev instance. (not run: needs the live instance. Recipe: enable the activity app, set user B's activity mail to daily, as user A share a dashboard with B, then SELECT amq_type, amq_affecteduser FROM oc_activity_mq WHERE amq_appid = 'launchpad' shows one dashboard_shared row for B; edit the dashboard and confirm no dashboard_updated row is queued.)
  • 6. Add nl and en strings for the setting labels, fold the delta into openspec/specs/activity-feed-integration/spec.md on archive, and set e-digest to built in the parity matrix with evidence lines. (strings done 9 Oct in all 37 shipped locales; e-digest moved to building; the archive and the move to built wait for task 5)

Design

See design.md for technical design details.


Synced from openspec/changes/engagement-activity-digest by OpenSpec workflow
App: launchpad

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    openspecManaged by OpenSpec workflowopenspec:tasksOpenSpec phase: Tasks

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions