►
From YouTube: Spec 3.0 meeting (November 23, 2022)
Description
A
A
B
All
right,
well,
I,
have
welcome
to
another
spec
3.0
meeting
this
time.
We
have
three
things
on
the
agenda:
small
things
I
think,
but
before
getting
into
it
do
any
of
you
want
to
have
anything
to
add
anything.
You
like
to
discussion.
A
I,
don't
know
but
I
I
think
it's
just
because
the
conference
is
over.
So
all
the
pressure
of
the
conference
and
now
the
work
is
like
like
magic.
That's.
B
C
C
C
So,
okay,
oh
yeah,
I
created
the
pull
request
with
adding
the
server
and
channel
trades
object
and
the
reason
is
the
problem
with
the
current
Channel
and
operation
relationship
in
the
next
major
version
here.
So
as
sooner
or
not,
the
messages
now
will
be
located
in
the
channel
object
in.
B
The
channel
can
you
zoom
in
a
bit
buddy
yeah
sure
thank.
C
You
that's
okay,
it
will
be
fine
yeah.
So
at
the
moment
messages
will
be
on
the
channel
level,
not
on
the
operational
level,
and
we
don't
have
yet.
But
we
have
the
problem
for
that
to
filter
some
message
on
the
operation
library.
So
it
means
that
you
will
Define
some
messages,
some
list
of
messages
that
you
can
send
or
receive
on
the
given
Channel
and
then
you
should
also
filter
the
given
message
to
create
the
subset
on
the
operation
level.
C
Yes,
but
at
the
moment
we
don't
have
that
and
functionality
so
yeah
and
another
problem
with
the
current
approach
with
this
Channel
and
operation.
Is
that
every
example
based
on
the
very
very
simple
channel?
So
we
only
create
examples
to
you
know
to
show
the
the
next
major
version
of
essence
API
and
we
simply
with
simple
Channel
with
only
the
address
and
messages.
C
But
we
forget
Abu
data,
that
if
someone
want
to
you
know
to
create
the
the
same
channel
with
the
same
information
but
with
the
different
message
list
need
to
redefine
the
given
value
each
time
for
each
Channel
yeah
yeah,
so
that
pull
request,
try
to
fix
that
and,
for
example,
you
can
see
on
this
example.
Yes,
I
created
that
example
on
another
example.
In
this
comment,
so
if
you
want,
you
can
also
go
to
do
it.
Okay,
I
will
pass
where
I
have
my.
C
Chat:
okay,
here,
yeah,
so
yeah,
you
have
the
link
to
this
priorities
in
the
chat
yeah.
So
in
this
example,
we
have
the
some
channels,
the
ping
pong
clear,
bit,
etc,
etc,
and,
as
you
can
see,
we
have
every
everything.
The
same
I
mean
this
addresses
parameters
are
the
same
servers
bindings.
Also
only
we
have
the
different
list
of
the
messages
area
so
for
the
pink
Channel
we
have
the
pink
message
and
for
the
punk
punk
message,
etc
for
her
biggest
decide.
C
But
that's
the
problem
because
for
every
channel
we
need
to
redefine
obtain
information,
and
if
we
want
to
not
to
duplicate
the
data,
we
should
go
with
the
channel
trades
to
to
have
possibility
to
create
some
reusable
part
of
the
channel
and
then
pass
this
reasonable
parts
inside
the
channel.
Yes,
Do
Not
Duplicate
the
data
and
the
same
with
the
server,
so
the
channel
trades
and
the
server
trade
will
work
in
the
same
way
as
the
operation
and
the
message
trade,
so
yeah,
yeah-
and
here
you
exactly
see
this
example
with
the
trades
yeah.
A
Not
at
all,
can
you
yeah,
can
you
go
back
one
minute
ago
you
talked
about
this
ping
pong.
You
said
that
there's
a
ping
on
channel,
pink
and.
C
C
A
At
the
moment
yeah,
but
if,
if
Channel
it's.
C
A
C
But
you
can
have
the
same
address.
You
can
have
the
same,
address
the
same
parameters
for
the
address,
the
same
servers,
information,
yeah
and
also
the
same
bindings
information,
maybe
also
the
summary
title
or
description,
and
if
you
only
want
to
filter.
So
it
means
that
at
the
moment,
yes,
you
want
to
pin
the
given
channel
in
the
given
operation.
Yes,
but
you
will
have
the
red
relationship
between
them,
so
the
operation
only
will
operate
on
the
given
message
in
this
way
in
pink
yeah.
C
At
the
moment
we
don't,
we
cannot
filter
messages
on
operation.
C
A
C
B
C
Next
major
version
we'll
have
that
feature
or
the
problem,
of
course
in
which
way?
Do
you
see
that
and
that
you
will
need
to
create
two
documents
for
client
and
the
server?
And
sometimes
the
information
for
the
channel
address
parameters?
Binding
can
be
the
same,
but
you
only
change
the
message
yeah
but,
for
example,
from
the
client
you
can
only
send,
for
example,
two
messages,
but
from
the
server
site
the
broker
site
you,
you
can
have
the
multiplier
than
another
set
of
messages,
but
yeah.
C
A
C
A
And
in
case
of
server
trades,
if
they
are
needed,
we.
A
Add
them
in
three
one
or
three
two
or
three
three
yeah
sure
and
in
case
of
Channel
trades.
The
the
problem
is
that
the
example
that
you're
showing
is
I
mean
it
I
know
where
what
it's
based
on
it's
based
on
Kraken
example
of
websocket
and
in
case
of
this
example
of
Kraken,
like
I,
would
not
rewrite
track
and
Kraken.
C
A
Would
not
rewrite
Kraken
to
point
zero
to
three
zero
in
the
way
you
did
it
because
the
Kraken
it's
a
websocket
so
and.
B
A
A
web
socket
and
there's
just
one
channel,
there's
just
one
address,
because
it's
it's
just
on
one
channel,
where
you
just
connect
one
to
Once
to
the
websocket
and
then
you
exchange.
C
A
And
it's
and
it's
beautiful
and
so
I.
What
I
would
do
I
would
basically
create
one
channel
with
address
Slash
and
then
have
messages
and
list
of
all
messages
that
are
available
on
a
given
Channel
and
then
on
the
operation
level.
I
would
use
really
the
the
the
and
the
filtering
a
message
on
a
operation
level
where
I
can
say:
okay,
this
is
pink
operation
and
that's
the
message
and
that's
the
reply.
You
know
what
I
mean
like
so.
A
C
C
A
C
Yeah
yeah
yeah
yeah,
but,
to
be
honest,
we
can
we
can.
We
can
also
use
this
Kraken
example,
of
course,
not
exactly
the
Kraken
specification,
but
only
show
that
maybe.
C
B
Honest
I
kind
of
understand
the
channel
trade
actually
because,
because,
while
you
would
do
that
for
your
websocket
example,
I
would,
for
example,
not
use
it
that
way.
I
would
have
a
channel
for
each
specific
operation
where
it's
clustered
together,
for
example,
in
a
request,
replies
scenario,
I
would
have
a
specific
Channel
for
just
one
message
and
not
having
everything
under
the
same
channel,
but
why?
Because
then
I
could
for
each
operation.
I
could
I
can
reference
that
specific
channel.
B
That
just
has
those
specific
messages
to
find
that
that
the
channel
has
for
this
specific
scenario.
B
That's
the
alternative
approach
right
yeah,
but
even
in
this
case
for
channel
Traders,
it's
like
challenge
rates
might
not
be
that
important
for
web
socket
scenarios
where
the
address
is
exactly
the
same.
But
if
you
use
parameters,
for
example,
that
go
again
in
multiple
channels,
let's
say
that
you
have
a
a
user
ID,
for
example,
as
a
parameter.
You
could
add
a
trade
for
that
or
a
channel
trade
and
then
just
reference
it
for
all
of
the
all
of
the
channels.
And
then
you
don't
have
to
define
the
specific
parameters
there.
C
C
And
because
the
same
problem
as
the
payload
in
the
message
level,
you
cannot
Define
the
payload
in
message
straight
level,
because
you
can
override
something
and
the
problem
is,
and
the
problem
with
the
trial
method
is
bigger,
because,
where
I
have
this
comment?
Okay,
this
one
yeah.
So
the
front
is
quite
we
shouldn't-
have
the
possibility
to
define
the
messages,
because.
B
C
A
I
mean
I
I
heard
when
you
said
like
when
you
were
explaining,
why
you
would
take
the
opposite
approach
and
then
you
said
like
parameters
and
then
I
lost
everything.
B
B
A
Without
example,
without
use
case,
it's
it's
hard
to
agree
to
that
future.
Basically,.
C
Not
it's
based
on
the
request
reply
previous
example
on
the
Kraken,
so
yeah
this
one
and
ianas
right
about
it
here.
C
So
you
have
this
Kraken
website
that
example,
with
the
request
reply
as
I.
Remember:
yeah
yeah!
Exactly
so
as
you
can
see,
and
you
have
them
a
few
channels
and
only
difference
with
the
message
yeah,
because
the
the
address
is
the
same
and
then
in
the
operation.
You
exactly
have
the
reference
to
the
corresponding
Channel.
With
the
you
know,
the
given
message
on
which
you
want
to
operate
and
then
on
the
reply.
You
exactly
have
the
response
Channel
with
the
response
message.
A
Yeah
but
again
like
so
it's
the
same
situation
like
with
your
pull
request.
It's
the
thing
is
that
when
this
proposal
was
opened
based
on
the
Kraken,
the
message
was
not
yet
possible
on
the
operation
level.
So
that's.
Why
that's
why
haiko
created
3-0
Kraken
in
this
way
and
he
was
basically
forced
by
the
3-0
proposal
to
do
it.
This
way.
A
I'm
not
saying
that
your
proposal
is
bad.
Just
give
me
an
a
real
life
example.
That's
it
like,
because
this
this
example
from
request
reply,
request
reply,
pull
request
is
not
yet
merged
like
it's.
The
Kraken
example
that
we're
operating
now
on
just
to
visualize
the
proposal.
It's
not
final,
that's
why
I
actually
took
time
last
week
to
rewrite
the
ideal,
which
is
like
actually
production.
A
Real
life
example
of
request
reply
to
actually
check
it
check
the
proposal
with
real
example.
That's
the
thing
like
you
know
what
I
mean
so
I
mean
I'm,
not
I'm.
Just
trying
to
give
you
a
advice
to.
A
Show
like,
for
example,
basing
on
some
like
document,
because
now
we
know
that,
like
it
like
it
really
I
I,
don't
I
mean
like
this
cracking
example.
Once
we
have
this
message
filtering
on
the
operation
level,
like
really
repeating
all
this
information
on
a
channel
level
and
having
like
Channel
per
message
in
in
this
example,
it's
a
it's
a
lot
like
it's
there's
a
there
are
like
60.
A
I'm
gonna
messages
or
something
like:
oh
no,
no
60,
not
60
like
20
or
something
so
it's
like
20
channels,
just
I
mean
so
that's
why
it's
it's
it's
hard
example.
In
my
opinion,.
C
Yeah,
where
you
can
showcase
showcase,
can
be
that
you
have
the
same
information
for
server,
but
you
only
change
the
purpose.
So
I
I
mean
change
the
Stage
production
development
Etc.
So
you
only
have
the
difference
with
the
The
Host
and
maybe
also
with
the
servers
and
sorry
the
variables,
but
the
bindings
Security
will
be
the
same
as
probably
also
we
have
in
the
example.
Yes,.
A
Just
take
some
time
to
show
the
example,
and
there
are
examples
actually
like.
Maybe
it's
one
of
the
use
cases
is
with
Kafka
when
we
added
this
tagging
on
the
servers
maybe
like.
It
makes
a
lot
of
sense
that
you're
gonna
just
have
only
tag
a
specified
per
server
and
then
the
rest
is
the
trade,
but
but
just
show
it.
On
an
example.
C
C
No,
no,
no,
we
have
I,
don't
remember
when,
but
we
have
or
maybe
spec,
where
I
have
this,
maybe
an
editor.
Now
this
one
is
also
test.
Okay,
I
will
check
that,
but
because
really
I
remember
that
we
have
some
example
with
streetlight
with
three
servers
and
we
only
change
the
stage
and
maybe
one
variable
server
value,
but
yeah.
A
Every
like
every
new
feature
in
this
pack
should
come
moving
with
an
example
yam
file
anyway,
I
agreed
because
later
it's
like
so
hard
to
explain
to
someone
like
why
you
even
added
it.
A
B
C
That,
yes,
so
we
had
the
options
to
Define,
sorry,
the
possibility
to
Define
the
action
and
the
channel.
Yes,
as
I
remember
on
operation
trade
yeah,
and
we
remove
that
because
on
the
operation
trade
tap,
this
Fields
I
required
all
right.
Sorry,
so
we
can
only
Define
on
the
operation
of
the
operation,
trade
level.
B
A
I
have
to
my
wife
is.
B
B
B
All
right,
so
the
one
that
we
talked
about
last
time
was
whenever
we
let
me
find
the
example
u3
whenever
you
reference
something
using
the.
If
you
want
your
schema
payload
to
be
draft
seven
and
you
use
references
there,
should
it
be
possible
that
the
tooling
would
automatically
map
this
reference
to
the
local
one.
That's
defined
down
here,
yeah,
yeah,
I,
remember
and
the
and
the
basic
conclusion
here
or
at
the
conclusion.
But
none
of
us
really
like
the
idea
plain
and
simple
now.
The
next
example
is
so.
This
was
for
draft
seven.
B
So
what
about
when
it's
one
of
the
new
address,
because
in
this
version
here
it's
actually
defined
what
they
call
these
compound
schemas,
which
is
where
they
finalize
that
this
should
indeed
be
possible
in
at
least
a
Json
schema
perspective,
and
this
is
how
open
API
handles
it
as
well.
So
this
is
supported
in
open
API,
where
it
should
automatically
match
these
references.
A
Exactly
yeah,
just
to
clarify,
I
didn't
get
it
so
what's
supported
like
so
in
for
us,
you
can
provide
schema
format,
you
provide
the
version
and
then
the
payload
should
match
this
version,
and
and
what's
and
what
do
you
mean
like
that
in
open
API,
it's
supported
like
that.
You
can.
B
So,
and
so
let
me
backtrack
a
bit
so
in
draft
seven,
there's
nothing
that
within
the
draft
7
schema
spec
the
specification
for
it,
there's
nothing
that
defines
this
Behavior.
It's
implicit
in
some
sense
that
this
should
be
mapped,
so
they
finalized
that
behavior
in
2019
and
upwards
now
open
API
switched
over
their
payload
definition.
B
B
I
can
even
share
a
link
with
being
described
better
I.
A
Think
we
would
have
to
change
the
the
headline
of
the
spec
that
it's
no
longer
human
readable.
We
do
it,
but
yeah
continue.
Please.
B
Yeah,
so
the
whole
point
is
that
or
what
I'm
trying
to
get
at
is
as
as
soon
as
we
said,
a
schema
format
here.
B
A
Follows
whatever
we
defined
here,
so
you
basically
need
to
check
the
schema
format
check
the
version.
If
the
version
is
this
and
not
the
other
one,
then
you
check.
If
the
reference
from
the
payload
is
in
the
components,
then
you
check
match
the
name.
Then
you
check
the
ID.
If
the
idea
is
there,
if
ID
is
there,
then
you
go
back
to
payload
reference
and
resolve
reference
and.
B
B
There's
some
people
that
want
to
use
this
feature,
and
there
are
some
that
don't
that's
just
the
reality
and
the
only
thing
I
can
say
in
terms
of
when,
when
when
we
want
to
create
a
tool
that
understands
references
in
a
context.
For
example:
well
now
I'm
loading,
an
async
API
file
and
de-reference
that
then
it
should
understand.
B
B
So
for
those
who
don't
know
in
our,
so
we
have
Json
schema
documents
that
that
we
use
to
validate
async
API
documents
and
in
those
schema
files
we
actually
use
this
very
Behavior
at
the
moment.
The
problem
is
that
the
tooling
are
not
mature
enough
to
understand
this
Behavior.
So
this
means
that
a
lot
of
different
tools,
for
example
vs
code,
don't
understand
such
a
schema
when
it's
bundled
together,
yeah
I
tried
to
reach
out
to.
B
B
Yeah
yeah,
so
so
the
bundling
tool
that
we
use
I
tried
to
ask
whether
it
would
be
whether
it
would
make
sense
that
we
support
or
whether
the
tool
would
support
two
different
behaviors
as
well.
So
either
you
do
the
default
one.
Let's
define
with
this
compound,
be
it
complex
thing
or
it
just
changes
the
references
to
Absolute
references
and
that's
it
because
then
all
tools
would
be
able
to
understand
it,
and
the
response
is
basically
it's.
C
A
B
B
A
But
it's
so
but
like
so
from
my
perspective
as
a
maintainer
of
this
API.
If,
if,
if
I
would
see
that
tool
is
there's
a
tool
that
is
not
maintained
under
async
API,
but
we
know
that
tooling
is
completely
differently
implementing
something
in
a
in
the
wrong
way
or
then
I
would
go
approach
and
try
to
help
solve
the
problem.
I
have
an
open
discussion
because
luckily
it's
all
on
GitHub
yeah
I.
A
Of
course,
I
agree
that,
like
in
the
end
like
it's,
you
can't
save
the
whole
world,
but
that's
what
you
have
stats
for
like.
So,
if
you
see
the
plugin
is
used
by
a
million
of
people
or
something
like
this,
then,
like
I,
think
it's
worth.
B
I
think
I'm
gonna
reach
out
to
what's
his
name,
so
the
tool
that
we
use
is
just
what's
it
called
Magic
Json
reference.
C
Nope
and
that's
the
problem,
because
a
lot
of
company
who
and
bass
you
know
they
product
on
the
open
API
on
describing
the
apis
to
develop
the
API.
Don't
support
every
feature
from
the
the
latest
open
API
and
that's
another
problem
that
if
we
will,
you
know,
introduce
such
a
feature.
C
A
C
C
That
and
the
problem
is
that,
for
example,
if
you
use
this
the
local
or
absolute
path
in
your
file
system
yeah
and
then,
if
you,
for
example,
change
the
the
name
of
the
file
you
exactly.
Can
you
know
check
that?
Okay,
that
document
works,
the
reference
works,
but
I
changed
the
name.
So
I
can
you
know
very
easily
change
the
the
ref
yeah,
because
we
only,
for
example,
change
only
the
name
of
the
file.
C
B
B
Yeah,
it
makes
everything
a
lot
more
complex
than
it
should
be,
but
I
think
that.
B
B
B
It
wouldn't
so,
for
example,
take
that
let's
say
that
this
display
name
is
somewhat
the
same
reference
here
and
you
have
a
definition
property
here,
then
it
would
understand
it
because
then
it's
in
the
context
of
a
Json
schema
document
and
there
it
is
supported
to
have
these
compound
schemas
so
entirely
Json
schema
right,
but
this
wouldn't
be
supported,
and
this
would
just
be
an
absolute
path
to
this,
and
that's
it.
A
Mean
I
have
to
admit
something
like
publicly
I'm
s.
A
I,
don't
want
to
use
these
words,
let's,
let's
good
use,
good
words,
because
I
don't
want
to
offend
anyone,
so
I'm
I'm,
so
weak.
Maybe
that's
not
offending
anyone,
so
I'm
I'm,
really
so
weak
that
there's
just
one
thing
in
Jason's,
Kim
I,
never
understood
the
concept
of
ID
is
a
URL,
so
I'm
I'm
not
I'm
the
for
me.
The
confusion
starts
in
this
concept,
even
on
the
lowest
level
like
why
ID
is
the
URL.
A
My
ID
is
not
an
ID,
because
for
me
somehow
in
my
brain
it
does
not
map
these
two
values
and
I
think
it
also
affects
my
thinking
long
term,
like
on
all
the
features
kinda
linked
to
this
concept
of
ID.
It's
just
like
my
head
is
not
able
to
overcome.
So
that's
why
I'm,
basically
against
or
not
in
favor
of
this
such
support,
because
from
for
me
like
from
the
very
beginning
the
idea
I
I,
could
never
understand
it
in
Json
schema
like
dollar
ID
was
always
for
me.
B
B
B
Because
this
is
just
Json
scheme,
it
has
nothing
to
do
with
with
async
API
anymore
at
all.
A
A
But
of
course
they're
I'm,
not
sure
if
others
already
discussed
that
did
you
had
opinions
from
others.
B
B
B
B
Hi
God
four
more
to
go,
but
the
next
ones
are
probably
going
to
be
more
easy
because
once
we
discuss
these,
which
are
the
more
complex
ones,
the
rest
of
them
kind
of
falls
into
place
because
it's
just
a
variance
of
it
so
yeah
all
right.
That's
it
that's
what
I
had
does
anyone
else
have
anything
to
ask?