Skip to content

Conversation

@vinodreddy-g
Copy link
Contributor

No description provided.

@vinodreddy-g vinodreddy-g changed the base branch from main to feature-request-lifecycle June 25, 2025 07:46
@vinodreddy-g vinodreddy-g marked this pull request as draft June 25, 2025 07:46
@vinodreddy-g vinodreddy-g linked an issue Jun 25, 2025 that may be closed by this pull request
@vinodreddy-g vinodreddy-g force-pushed the vinod_monitoring_interface branch from 8f80c7e to b9597ae Compare June 25, 2025 08:00
@FScholPer FScholPer marked this pull request as ready for review June 27, 2025 13:43
@TWilhelmV TWilhelmV mentioned this pull request Jul 1, 2025
@TWilhelmV
Copy link

TWilhelmV commented Jul 1, 2025

Hi @vinodreddy-g thanks for the draft. I think it illustrates what shall be achieved.

I have some thoughts for your consideration:

  • Are there multiple instances of LogicalFlowSupervisors and TimeConstraintMonitors?
  • if not: enable() and disable(): Do they enable/disable all monitoring of the application?
  • what does a checkpoint_id look like? Where do they come from? How does one identify them when debugging?
  • How do reference conditions work? It is implied that inform_linked_conditions does something, but the concept doesn't say what it does (or I am missing this point).
  • Can checkpoint_ids be reused? I.e. entry of A = checkpoint 1, exit A = checkpoint 2, entry B = checkpoint 2, exit B = checkpoint 3 to construct longer flows?
  • "last_checkpoint" implies some logic based on that. Will you describe that logic? In any case, with the allowed transitions, an oriented graph is being constructed. Is "last_checkpoint" a node in that graph?
  • How to go about handling failures ("set status to failure") (note: there also a "state" besides a "status". I'd believe it's the same thing?)?

From the concepts I gather that a heartbeat would only be sent to the Launch Manager, periodically, if the current supervision state/status (see above) is OK.

BR

@vinodreddy-g vinodreddy-g force-pushed the vinod_monitoring_interface branch 2 times, most recently from e4c7af9 to 4f7c51a Compare July 2, 2025 07:37
@vinodreddy-g
Copy link
Contributor Author

vinodreddy-g commented Jul 2, 2025

Hi @TWilhelmV thanks for the review. Please check the answers below.

  • Are there multiple instances of LogicalFlowSupervisors and TimeConstraintMonitors?
    -- Yes while writing this draft , i assumed it to have multiple instances.
  • if not: enable() and disable(): Do they enable/disable all monitoring of the application?
    -- It enables or disables the particular instance.
  • what does a checkpoint_id look like? Where do they come from? How does one identify them when debugging?
    -- checkpoint is just a unique identifier, with additonal api's get some info which supervisor instances use it and in which transitions. checkpoint(id) are instantiated by the user or with config.
  • How do reference conditions work? It is implied that inform_linked_conditions does something, but the concept doesn't say what it does (or I am missing this point).
    -- I was thinking like condition is a interface(trait in rust) which can be implemented by something like alivesupervision status
    and this is injected into supervisor and linked conditions call them with status as input.
  • Can checkpoint_ids be reused? I.e. entry of A = checkpoint 1, exit A = checkpoint 2, entry B = checkpoint 2, exit B = checkpoint 3 to construct longer flows?
    -- Yes checkpoint can be reused
  • "last_checkpoint" implies some logic based on that. Will you describe that logic? In any case, with the allowed transitions, an oriented graph is being constructed. Is "last_checkpoint" a node in that graph?
    -- last_checkpoint is last reported checkpoint(node in graph) so see if the next checkpoint when reported is valid transition.
  • How to go about handling failures ("set status to failure") (note: there also a "state" besides a "status". I'd believe it's the same thing?)?
    -- status here is if the supervision is ok ,failed , disabled etc is same as state of supervisor instance.We could still have a component state kind of thing to filter like if this transition is allowed in this state.
    From the concepts I gather that a heartbeat would only be sent to the Launch Manager, periodically, if the current supervision state/status (see above) is OK.
    -- when there is failure , it could call inform_linked_conditions (status) and pass status it could update alivesupervision failed to not send heartbeat .

-- Just a draft but this was the thinking when doing it.

@vinodreddy-g vinodreddy-g linked an issue Jul 2, 2025 that may be closed by this pull request
@vinodreddy-g vinodreddy-g force-pushed the vinod_monitoring_interface branch from 4f7c51a to f8313d9 Compare July 4, 2025 06:42
@ramceb ramceb force-pushed the feature-request-lifecycle branch 2 times, most recently from edb6613 to c0714ee Compare July 8, 2025 12:28
@vinodreddy-g vinodreddy-g requested a review from ramceb July 11, 2025 05:41
@vinodreddy-g vinodreddy-g force-pushed the vinod_monitoring_interface branch from f8313d9 to cbe43d1 Compare July 14, 2025 09:58
ramceb and others added 2 commits July 14, 2025 12:01
Signed-off-by: ramceb <89037993+ramceb@users.noreply.github.com>

WIP
@vinodreddy-g vinodreddy-g force-pushed the vinod_monitoring_interface branch from cbe43d1 to 1626bb7 Compare July 14, 2025 10:02
@github-actions
Copy link

The created documentation from the pull request is available at: docu-html

@vinodreddy-g vinodreddy-g merged commit fa85986 into feature-request-lifecycle Jul 14, 2025
6 checks passed
@vinodreddy-g vinodreddy-g deleted the vinod_monitoring_interface branch July 14, 2025 10:19
@ramceb ramceb restored the vinod_monitoring_interface branch August 25, 2025 09:05
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.

Interface Definitions Feature Request for Health & Lifecycle

4 participants