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

refactor: init action engine #1

Merged
merged 11 commits into from
Aug 27, 2021
Merged

refactor: init action engine #1

merged 11 commits into from
Aug 27, 2021

Conversation

kaioken
Copy link

@kaioken kaioken commented Jul 12, 2021

  • Add Action Engine RFC

@kaioken kaioken changed the title refactor: init the kanvas rcf docs refactor: init action engine Jul 12, 2021
@kaioken kaioken marked this pull request as ready for review August 9, 2021 01:17
rfcs/001-action-engine.md Outdated Show resolved Hide resolved
rfcs/001-action-engine.md Outdated Show resolved Hide resolved
rfcs/001-action-engine.md Show resolved Hide resolved
rfcs/001-action-engine.md Outdated Show resolved Hide resolved
rfcs/001-action-engine.md Outdated Show resolved Hide resolved
rfcs/001-action-engine.md Outdated Show resolved Hide resolved
rfcs/001-action-engine.md Outdated Show resolved Hide resolved
rfcs/001-action-engine.md Outdated Show resolved Hide resolved
rfcs/001-action-engine.md Show resolved Hide resolved
rfcs/001-action-engine.md Outdated Show resolved Hide resolved
rfcs/001-action-engine.md Outdated Show resolved Hide resolved
rfcs/001-action-engine.md Outdated Show resolved Hide resolved
rfcs/001-action-engine.md Outdated Show resolved Hide resolved
@jesusantguerrero
Copy link

jesusantguerrero commented Aug 17, 2021

@kaioken

First a general observation:
We need to provide the context in the PR or the channel intended for discussions. in that way, I would need to have two tabs opened one to see the rendered RFC and another for the comments (read and comment in the file changed tab is not pleasant)

example: vuejs/rfcs#370 vuejs/rfcs#367.

The focus of the action engine is to send a lead to an action page where they trigger one action and the result of this is sent back to the system. This is turn executes a set of workflows that send the result to any # of third parties, resulting in a historical feed of all the different actions the user has made over time.

From the information provided may be:

"The purpose of the action engine is to generate an action page that collects information from leads and will trigger actions when this information is submitted back to our system, this will execute a set of workflows that send the result to any # of third parties, resulting in a historical feed of all the different actions the user has made over time."

In the entities, it looks good but there's a point:

Action companies receivers: Each action has its own receiver UUID in order to know when the frontend sends a message from each action taken on the action pages

May need a little re-word in the RFC to give a clearer summary of what it does is not as clear as the others without seeing the DataBase Structure.

Missed some details to filter better comments.

  • What are the limits of this Feat?
  • Behavior flow / Life Cycle of the feature?
  • What does this not pretend to cover on purpose?

@kaioken
Copy link
Author

kaioken commented Aug 17, 2021

@jesusantguerrero thanks for the feedback will make the adjustments and add the missing details.

And what I'm trying to get from the frontend team is to look at the overall structure for how we plan to handle the action engine to see if they see anything missing or can cause issues from your end

thanks

Copy link

@larizzatg larizzatg left a comment

Choose a reason for hiding this comment

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

Nice RFC, here are my thought's/questions:

  1. In the db, the action_systems has a subsystem, can you give a specific example of why this is needed?

  2. Need a more specific example about the difference between the action_type and the action_system, my understanding is that the action_system holds the domain logic and the type indicate which mode the action will be, but it's not clear why the type is independent of the action_system.

  3. Is there a concrete case why an action_system have a subsystem?

  4. Need more information about recievers, we haven't worked a lot with this entity.

  5. I think action_data_type should be bound to an specific action_domain and action_type instead of a action. For example if I have dealer-content this is a information action that holds media content, this types are bound to the system (information) and the type (content). Also a action can hold different types.

  6. Need a concrete example of the db structure implementation, let's take finance-products and credit-app and create what it would look like with that db structure.

  7. Later (I know this is an initial RFC), we should work more in how are going to manage the action content.

  8. We need another entity to bound landings in the web with actions so we can dynamically display specific content with different layouts.

@kaioken
Copy link
Author

kaioken commented Aug 18, 2021

@larizzatg will reply to those question today ;)

@samm0023
Copy link

samm0023 commented Aug 23, 2021

To return the action list to UI mobile the engine must to acomplish with the next structure:

  [{
    screenName:'dac.ContentPreview',
    title: 'Dealer Content',
    key: 'dealer-content',
    reasonEn: 'learn more about our current offers',
    reasonEs: 'aprender más sobre nuestras ofertas actuales',
    attributes:{}
  }]

@kaioken
Copy link
Author

kaioken commented Aug 24, 2021

@larizzatg

  • Action Systems: Each action can be its own little app , so action system is the reference to that sub app (Domain) , it will have its own database structure

Update the RFC with a db example

@juanpichvrdo
Copy link

@kaioken

I think it looks good and clear. Obviously there's things I will not understand very well unless I see the more specific integration with frontend, but I get the big picture.

I made a little change to the page flow diagram, I think it will be a little bit more clear like this, what do you think?

image

@kaioken
Copy link
Author

kaioken commented Aug 26, 2021

@juanpichvrdo thanks will make those ajustments

@kaioken kaioken merged commit 56f6f03 into master Aug 27, 2021
@kaioken kaioken deleted the feature-action-engine branch August 27, 2021 04:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
7 participants