Skip to content

[Refactor] Add a small event hook interface for process updates #64

@Robbo-lab

Description

@Robbo-lab

Issue Type

  • Bug report
  • Feature request
  • Documentation update
  • Other (please specify)

Other: design-pattern / infrastructure improvement

Description

The project is heading toward more structure in services, MCP tools, and LLM use. A small event hook interface would prepare the codebase for observer-style behavior without adding a full event system now. This gives a clean place for future notifications, logging, summaries, or audit-style actions when a task or process changes.

Steps to Reproduce (for bugs)

  1. Review the current service and process structure direction in the project
  2. Note that there is no small shared observer-style hook for future change events
  3. Observe that future notifications or summaries would otherwise need to be wired directly into service logic

Expected behaviour

The codebase should have one small event hook or observer interface that service logic can call without depending on transport or framework code.

Actual behaviour

There is currently no small shared observer-style interface for future change events, which makes later extension points less clear.

Screenshots

Not applicable.

Additional context

Proposed scope:

  • Add a small event hook or observer interface
  • Keep it simple and domain-neutral
  • Design it so services can call it when important actions happen
  • Do not add a full event bus

Out of scope:

  • A full observer framework
  • Real notifications
  • Logging framework work
  • Wiring every module to it right away

Acceptance criteria:

  • A small observer/event hook interface exists in shared code
  • The interface is generic enough for task or process events
  • It can be used by service logic without depending on FastAPI, MCP, or LLM code
  • The change stays small and does not introduce a full event system

Possible Solution

Add one small interface such as EventHook or ProcessObserver with a simple method like handle(event). Keep it generic and unused or lightly wired at first, so later work can adopt it without forcing a big design now.

Your Environment (for bugs):

  • Operating System: N/A
  • Browser (if applicable): N/A
  • Version of the software: current main branch

Metadata

Metadata

Assignees

No one assigned

    Labels

    DXIssue would improve the developer experienceenhancementNew feature or requestgood first issueGood for newcomers

    Projects

    Status
    In progress

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions