Skip to content

feat: port timer ticket creator to DevRev snap-in toolkit - #178

Open
josemfcheodevrev wants to merge 1 commit into
mainfrom
feat/ISS-376979-effect-timer-ticket-creator
Open

josemfcheodevrev wants to merge 1 commit into
mainfrom
feat/ISS-376979-effect-timer-ticket-creator

Conversation

@josemfcheodevrev

Copy link
Copy Markdown

Summary

Ports 6-timer-ticket-creator to the Effect runtime and typed manifest pattern while preserving the existing public timer and ticket-creation contract.

Connected Issues

  • #ISS-376979

Craftsmanship, Integrity, and Devil's Advocacy

  • Testing: Negative test cases cover malformed timer payloads and permanent create failures.
  • Testing: Handler replay is explicitly covered because ticket creation is non-idempotent.
  • Observing: The Effect runtime preserves request and function context in structured logs.

Story of the craft

The legacy Express/Jest execution scaffold is replaced with a bounded Effect automation handler and deterministic offline Bun tests. The typed manifest regenerates the reviewed timer configuration, keeping timer-event-source, ticket_creator, periodic_ticket_creator, the ten-minute cadence, and ticket request semantics unchanged. Two locally built runtime package artifacts are kept within this example only; unrelated snap-ins and package source workspaces are excluded.

What: Port the timer ticket creator to Effect and typed-manifest patterns.

How: Use offline SDK fixtures, generated manifest authoring, and local packaged runtime artifacts.

Why: Modernize the smallest example snap-in without changing its externally visible behavior.

Testing: npm run typecheck, npm test, npm run manifest, npm run build, npm run demo, and git diff --check.

Fixes: ISS-376979
Session: DM-sZdGDgrm

@github-actions

Copy link
Copy Markdown

⚠️ Heads-up: This repository will be blocked from any work other than patching.

File 6-timer-ticket-creator/README.md is not allowed to be modified in this patch.
The following vulnerability issues are past SLA:

Note that there is significant latency in updating this list. Please reach out on #antifragile if you are in a hurry or have an emergency.

@josemfcheodevrev

Copy link
Copy Markdown
Author

The failing patching_sla_check is unrelated to this change. global_checks and PR description validation both pass.

The SLA workflow has placed this repository in patch-only mode because ISS-360593 is a medium-severity vulnerability that is 24 days overdue. It specifically rejects the required 6-timer-ticket-creator/README.md port note.

The README change is intentional and required by ISS-376979: it documents the Effect migration, preserved timer and ticket behavior, and local verification steps. This PR does not alter the overdue vulnerability. An SLA exception or remediation from the responsible security owner is needed to unblock non-patching work.

@josemfcheodevrev josemfcheodevrev changed the title feat: port timer ticket creator to Effect feat: port timer ticket creator to DevRev snap-in toolkit Sep 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant