question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Default naming scheme, behavior for all concepts

See original GitHub issue

Default names

This specification outlines the default naming convention for all concepts in composer.

All triggers, actions start with a default name but is user editable.

Bot

There is no default name for a Bot. User must explictly provide a name.

Dialog

There is no default name for a dialog. User must explicitly provide a name.

Trigger

  • Only Intent trigger has a name property.
  • Default name for a trigger will be its type name - e.g. IntentTrigger
  • In case there already exists a trigger with the name, add a number increment as suffix - e.g. IntentTrigger, IntentTrigger1, IntentTrigger2, …
  • All trigger names within a specific dialog must be unique.
  • In case of intent trigger, the intent name will default to the trigger name.
  • If user renames the trigger in the trigger’s property editor, then the intent name is also updated.
  • If user changes the intent name of a trigger in all-up view and/ or if this intent is used as a reference in another intent, then ask the user for the intended behavior -
    • Update all references to the new name
    • Keep reference as is

Input/ prompt actions

  • Default name for an input action will be its type name - e.g. NumberInput, TextInput, ChoiceInput, ConfirmInput, DateTimeInput, OAuthInput, AttachmentInput
  • In case there already exists an input action with that name, add a number increment as suffix - e.g. NumberInput, NumberInput1, NumberInput2, …
  • All input names tied to a specific dialog must be unique.
  • The intent name for an input default to the input name.
  • The prompt LG template name defaults to the input name.
  • The unrecognized prompt LG template name defaults to <input-name>.unrecognized.prompt
  • The invalid prompt LG template name defaults to <input-name>.invalid.prompt
  • If user renames the input in the input’s property editor, then the intent name is also updated, LG template names are also updated.
  • If user changes the intent name of an input in the all-up view or changes the LG template name tied to an input in the all-up view and/ or if the intent or lG template is used as a reference in another intent/ LG template, then ask the user for the intended behavior -
    • Update all references to the new name
    • Keep reference as is

SendActivity

  • Default name is sendActivity, add an increment as suffix to de-dupe - e.g. SendActivity, SendActivity1, SendActivity2, …
  • The default LG template name is the name of the SendActivity action
  • If user renames the send activity in its property editor, then the LG template name is also updated.
  • If user changes the LG template name in all-up view and/ or if this LG template is used as a reference in other intents or templates, then ask the user for the intended behavior -
    • Update all references to the new name
    • Keep reference as is

All other actions

  • Name is available, defaults to ActionType, add a number increment suffix to de-dupe
  • These names are just for organizational purposes and readaibility and do not have any runtime implications.

Note: This impacts the current naming scheme used for LG templates in send activity action. With this change, we will no longer use our current naming scheme bfd-<ID>

Issue Analytics

  • State:closed
  • Created 4 years ago
  • Comments:11 (11 by maintainers)

github_iconTop GitHub Comments

1reaction
a-b-r-o-w-ncommented, Oct 11, 2019

What if we also prepended the trigger name to templates defined within that trigger?

0reactions
boydc2014commented, Aug 4, 2020

hey @boydc2014 I’ve asked @zhixzhan to handle the R9 changes we want to make associated with this here: #2597

Moving this to R10. What is missing is the renaming behavior, which may or may not make it in.

I think what this spec described is largely implemented, except two minor things

  1. we didn’t really named input using number like 1,2,3, we use an random id as suffix.
  2. we didn’t auto rename intents when user renaming trigger, which we triaged as too tricky to do.

so i think this one can claimed as complete in r10, let’s create new issue in r11, if we still think something can be done in this area

Read more comments on GitHub >

github_iconTop Results From Across the Web

Allow Creo Parametric PRT & ASM default naming sch...
Hello,. When working in Creo Parametric, sometimes the default naming scheme delivred by Creo can be different to the company naming rules.
Read more >
Naming conventions - Hackolade
In the properties pane, the relationship between business name and technical name can have 3 states: OFF (default), convert Business name to Technical...
Read more >
systemd.net-naming-scheme - Freedesktop.org
Different versions of those generation rules are called "naming schemes". The default naming scheme is chosen at compilation time. Usually this will be...
Read more >
Best Practices for Structuring and Naming Artifactory ... - JFrog
Implement naming convensions for Artifactory repository types. Scale Artifactory across global topologies and support teams & projects.
Read more >
Chapter 1. Consistent network interface device naming
To solve this problem, the udev device manager supports a number of different naming schemes. By default, udev assigns fixed names based on...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found