diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 8c1999ad039b9..da0f000995478 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -4,4 +4,6 @@ ## Exclude the package(-lock).json from code ownership to prevent version bump PRs from triggering codeowners review /airbyte-webapp/package.json /airbyte-webapp/package-lock.json +# Protocol related items /airbyte-protocol/ @airbytehq/protocol-reviewers +/docs/understanding-airbyte/airbyte-protocol.md @airbytehq/protocol-reviewers diff --git a/docs/understanding-airbyte/airbyte-protocol.md b/docs/understanding-airbyte/airbyte-protocol.md index 8a225111cd06c..6c3b805d4891d 100644 --- a/docs/understanding-airbyte/airbyte-protocol.md +++ b/docs/understanding-airbyte/airbyte-protocol.md @@ -449,7 +449,11 @@ For forwards compatibility all messages should allow for unknown properties (in Messages are structs emitted by actors. ### StreamDescriptor -A stream descriptor contains all information required to identify a Stream. `namespace` can be null if the stream does not have an associated namespace. If it does, it must be populated. `name` is required. +A stream descriptor contains all information required to identify a Stream: + +* The `name` of the stream (required). It may not be `null`. +* The `namespace` of the stream (optional). It may be `null` if the stream does not have an associated namespace, otherwise must be populated. +* Any UTF-8 string value is valid for both `name` and `namespace`, including the empty string (`""`) value. This is the new pattern for referring to a stream. As structs are updated, they are moved ot use this pattern. Structs that have not been updated still refer to streams by having top-level fields called `stream_name` and `namespace`.