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

Spec styling and consistency issues #187

Open
toddbaert opened this issue May 16, 2023 · 2 comments
Open

Spec styling and consistency issues #187

toddbaert opened this issue May 16, 2023 · 2 comments
Labels
chore CI, build, and tooling, and other housekeeping issues specification

Comments

@toddbaert
Copy link
Member

toddbaert commented May 16, 2023

As mentioned here, there's some consistency issues with the non-normative parts of the spec. It would be great to get a thorough review of this. These proposed fixes are all editorial, not functional.

Examples of ways we can improve:

  • consistent use of monospace to refer to types and glossary terms (adding more glossary terms if necessary)
  • Consistent language examples: some examples are typescript others are java. I think unless the requirement specifically demands a particular language, we use choose one example language, or a consistent pseudo-code. I recommend Java because it's explicit, typed, and generally well-understood.
  • consistent reference to types with spaces and in lower-case as described in the style guide (ex: flag metadata not flagMetadata)
  • consistent links in non-normative text (link anything relevant)
  • Consistent diagrams (I vote we use mermaid for everything). We have diagrams in the provider and hooks sections that are not mermaid.
  • Consistent pluralization: now that there's multiple providers, we need to update some language which implies there's only one. This will impact normative sections, but not in a meaningful or breaking way.

cc @tcarrio

@toddbaert toddbaert added chore CI, build, and tooling, and other housekeeping issues specification labels May 16, 2023
@aepfli
Copy link
Member

aepfli commented Jun 6, 2024

I thought I could help here with the mermaid diagrams. If you think they're fine, I can add them - they also work on GitHub, so I would also suggest using them. Please let me know, if this is suitable ;) - glad to open a pull request for this.

provider

provider

flowchart LR
    A[Application] --> |Evaluation API| B{Provider}
    B --> C[Flag managment system]
Loading

hooks

i am unsure hooks

either a state diagram (can't change it to dotted lines, but syntactically it is the correct one)

stateDiagram-v2
    direction LR
    B : "Before" Stage
    F : Flag Evaluation
    A : "After" Stage
    E : "Finally" Stage
    X : "Error" Stage

    [*] --> B
    B --> F
    B --> X : on Error
    F --> A
    F --> X : on Error
    A --> E
    X --> E
    E --> [*]
Loading

or a flowchart (looks better, but is more a hacked version with the start point)

flowchart LR
    A("Before" Stage)
    F("Flag Evaluation")
    B("After" Stage)
    C("Finally" Stage)
    E("Error" Stage)

    Start( ) --> A
    A --> F
    F --> B
    B --> C
    A -.-> E

    F -.-> E
    E -.-> C
    C --> End( )
Loading

@Kavindu-Dodan
Copy link
Contributor

state diagram

I like the state diagram as we can define the operation on the transition compared to flow chart.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore CI, build, and tooling, and other housekeeping issues specification
Projects
None yet
Development

No branches or pull requests

3 participants