June 9, 2023 Architecture Team Meeting Notes

Attendees

@Aleksander Reitsakas

@Aare Laponin

@Jukka Aaltonen (Deactivated)

@Taylor Downs

@Oleksii Danyliuk

@Meelis Zujev (Deactivated)

@Sreepathy H Vardarajan

@Wes Brown

@PSRAMKUMAR

Apologies

 

 

 

Agenda

Presenter

Duration

Discussion

Authentication and Cross-BB Authorization

@Steve Conrad

@PSRAMKUMAR

20 minutes

Walk through key questions and requirements in this document: Authentication and Cross-BB Authorization

Where should this be documented? Security spec or separate BB spec?

Sreepathy: architecture of having a single application managing makes sense and covers the flows/approach that were outlined in his email

PubSub/Rooms

@Aleksander Reitsakas

15 minutes

How should we define Rooms – are they oriented around Event Types or more broadly?

With many providers, topic is global - this is the more common pattern for PubSub

Aleksander proposes having a room with an owner and topics reside within that room.

Key question: Does an owner own a topic (and define event types for that topic) or a room? Do users subscribe to topics or to rooms? Is there benefit for the extra layer for rooms?

What is the difference between a topic and a room? What functionality does Room provide?

  • Subscribing to a Room means that every subscriber receives every message for all topics in that room

  • A user can also subscribe to specific Topics within a Room

  • A room is owned by a single entity. Topics within that room can be owned/created by multiple people

The spec should just outline the ability for an entity to create a topic with a schema that other users/entities can subscribe to. There may be multiple ways to implement.

  • The mechanisms for controlling ownership, subscriptions, topics, etc. are implementation-specific.

Capabilities

@Steve Conrad

15 minutes

How should we define Capabilities?

Document from Jaume: GovStack release capabilities

Next steps/AOB

@Steve Conrad

5 minutes

Jukka will no longer be able to participate in architecture team - has other projects that require his time.

What should we prioritize?

Action Items