Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added all events slated for Drop 1 and updated README with links. #3

Conversation

d-stahl-ericsson
Copy link
Contributor

No description provided.

Added descriptions of EiffelActivityFinishedEvent,
EiffelActivityStartedEvent, EiffelArtifactCreatedEvent,
EiffelArtifactPublishedEvent, EiffelConfidenceLevelModifiedEvent.
@rogpers-ericsson
Copy link

rogpers-ericsson commented May 3, 2016

  • EiffelActivityFinishedEvent.data.outcome.verdict

Not sure if "verdict" is good name for activities in general. It makes perfect sense for "checking activities" (or for activities that can be seen as predicates). And for those we should consider INCONCLUSIVE as a possible value.

For other activities it is at least not a common terminology.

  • data.persistentLogs

Is the name the tail of the URI, or is something indicating "type" of log. Test activities typically creates logs of various kinds: T&E, Syslog, ...

#### data.outcome.verdict
__Type:__ String
__Required:__ Yes
__Legal values:__ SUCCESS, FAILURE, ERROR, ABORTED, TIMEOUT

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we map those to ones that are available in Jenkins, then we could also add UNSTABLE. Which mean activity was able to run until the end, but verification check result is different from expected

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm really struggling with this. I don't want to tie into Jenkins just for the sake of it (see below), and I think UNSTABLE is a really poor term. I'd much rather go with actual standards rather than de facto standards (and I'd argue that this isn't even that).

But this is an area where I'm having a hard time coming up with really good terminology. Arguably we should use FAULT, ERROR and FAILURE, but the way they're defined (see e.g http://programmers.stackexchange.com/questions/184412/whats-the-difference-between-fault-error-and-defect) I don't think helps in this case.

Regardless what we propose, we should add crystal clear explanations of each value in the description.

@danielyinanc
Copy link

Overall we need to check for several things:

  • Legal values -- do we want to validate them?
  • Meta, Data and Links: Separate schemas inherited will reduce replication however Links at least requirements depend on event type.

@d-stahl-ericsson
Copy link
Contributor Author

Legal values: do we want to validate them? As far as feasible (and using JsonSchema enums it should be), yes.
Schema inheritance: Yes, both data and links would have to be separate. But meta should certainly be inheritable from a generic schema.
outcome.verdict: Suggestions for a better name? INCONCLUSIVE makes sense to me.
data.persistentLogs: I'm not following... is the name the tail of the URI? As for type of log: if we could actually standardize this somehow (i.e. a meaningful enum of types) that would be helpful (but I don't think we can). If we can't, it would only be another free string, which makes it only valuable to a reader with inside knowledge... and then it adds absolutely nothing to name, because if you have that knowledge you're going to know that the name implies a certain type.

Also added clarification of legal values where applicable. Left
certain values in ActivityFinished.data.outcome.verdict undefined
to solicit feedback and suggestions, as per ongoing pull request
discsussion.
SUCCESS signifies that the activity was concluded and the outcome matched expectations.
??? signifies that the activity was concluded, but the outcome did not match expectations. To exemplify, a compilation job was successfully invoked, but compilation failed.
???? signifies that the activity could not be successfully executed. To exemplify, a compilation could not be invoked, e.g. due to misconfiguration or environment issues.
ABORTED signifies that the activity could aborted before it could be concluded.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

activity could aborted => activity was aborted

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch. Fixed.

1. EiffelConfidenceLevelModifiedEvent
1. EiffelArtifactPublishedEvent
1. [EiffelActivityStartedEvent](./eiffel-vocabulary/EiffelActivityStartedEvent.md)
1. [EiffelActivityFinished](./eiffel-vocabulary/EiffelActivityFinished.md)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

EiffelActivityFinished -> EiffelActivityFinishedEvent
EiffelActivityFinished.md -> EiffelActivityFinishedEvent.md

Based on comments in pull request.
@@ -0,0 +1,40 @@
# EiffelActivityFinishedEvent
The EiffelActivityFinishedEvent declares that a previously queued activity (declared by [EiffelActivityQueuedEvent](./EiffelActivityQueuedEvent.md)) has finished.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This indicates that one could skip the started event which is not wanted behavior since we have the dequeued event for that case. Suggest to remove "previously queued" or change to "previously started".

Clarified that the finished activity should previously
have been started, not just queued.
@d-stahl-ericsson d-stahl-ericsson merged commit 1e9cb93 into eiffel-community:topic-drop1 May 10, 2016
@d-stahl-ericsson d-stahl-ericsson deleted the topic-drop1-allevents branch June 13, 2016 07:24
@magnusbaeck magnusbaeck added the protocol All protocol changes label Nov 21, 2022
e-backmark-ericsson pushed a commit to e-backmark-ericsson/eiffel that referenced this pull request Dec 21, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
protocol All protocol changes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants