Extracts the session-scoped policy layer from a RESOLVED realtime configuration (the object the
config cascade produced at mint).
Reads, defensively and without depending on the cascade's TypeScript types (so this keeps working as
the cascade gains fields):
channels.config.IdentityVerification — the verification channel's own knobs
session.unverifiedMaxSeconds / session.verifiedMaxSeconds — the duration caps
Duration caps in the channel's own config are honoured too; the session section wins when both
are present, because it is the dedicated, documented home for them.
Parameters
realtimeConfig: unknown
the effective realtime section (EffectiveConfig.realtime), or anything
Extracts the session-scoped policy layer from a RESOLVED realtime configuration (the object the config cascade produced at mint).
Reads, defensively and without depending on the cascade's TypeScript types (so this keeps working as the cascade gains fields):
channels.config.IdentityVerification— the verification channel's own knobssession.unverifiedMaxSeconds/session.verifiedMaxSeconds— the duration capsDuration caps in the channel's own config are honoured too; the
sessionsection wins when both are present, because it is the dedicated, documented home for them.