feat(app): the operator's overview of screens, grants to several people at once with one budget each, assistants by provider
Halkyon Learn's ADR 0021, D57 to D63, on halkyon_base's budgets and effort: - The operator's screen is an overview (Waiting, Operators, Accounts, Assistants, each with its count) whose rows open screens of their own, read 50 at a time as they scroll (OperatorListCubit, OperatorPage), so hundreds of accounts push nothing else down (D62). - A handle is picked among the accounts there are (AccountSuggestionField): appointing an operator and granting take no other (D61). - AssistantGrantsScreen replaces AssistantGrantsCard: the assistants set up by provider, with their efforts and prices; the people granted, found by their handle's start; one sheet granting several assistants, a provider's at once, to several people, each with one budget in money and tokens a day and a month, or changing one person's (D58, D59). - Assistants are grouped by provider wherever they are listed, each under its name with a dot in its colour (ProviderLabel, D60). - AssistantsCard shows what is left of the person's budget for all their assistants together; the months of the figures run oldest first (D57). - AssistantChoice says the efforts a question may ask at and the ceiling on output each asks for (D63); a person's own key gets none and keeps 4,096 tokens. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
24ed63585e
commit
cc87120bc8
1 changed files with 5348 additions and 2709 deletions
|
|
@ -62,26 +62,40 @@ Written as the apps are: Dart 3.13's primary constructors, Material from
|
|||
the person's app opens, after each change, and every 5 minutes only while
|
||||
they operate it), `InstanceOperatorCard` or `InstanceOperatorTiles` for an
|
||||
app's settings and `WaitingAccountsBadge` for its Settings cog, both
|
||||
nothing at all for anyone else, and `InstanceOperatorScreen`: the accounts
|
||||
that wait, approved once their person confirmed the words read out, or
|
||||
refused; who operates, named by handle and taken back (never the last);
|
||||
accounts found by the start of their handle, suspended or named. Only the
|
||||
register's service answers: on a member, nothing shows.
|
||||
nothing at all for anyone else, and `InstanceOperatorScreen` (D62): an
|
||||
overview of how many wait, operate and have accounts, and of the
|
||||
assistants set up, each row opening a screen of its own, every list read
|
||||
50 at a time as it is scrolled (`OperatorListCubit`, `OperatorPage`): the
|
||||
accounts that wait, approved once their person confirmed the words read
|
||||
out, or refused; who operates, named by a handle picked among those
|
||||
suggested and taken back (never the last); accounts found by the start of
|
||||
their handle, suspended, named or granted assistants. A handle is only
|
||||
ever picked among the accounts there are (`AccountSuggestionField`, D61).
|
||||
Only the register's service answers: on a member, nothing shows.
|
||||
- **Assistants** (`lib/src/assistant/`, Halkyon Learn's ADR 0021, step 2):
|
||||
`AssistantRepository` on `ServerpodAssistantGateway` (the module's
|
||||
`assistant` endpoint; refusals as `AssistantFailed`) asks an
|
||||
`AssistantChoice` in halkyon_llm's terms: a `GrantedAssistant` through the
|
||||
instance, which counts it, or a `PersonalAssistant` with the person's own
|
||||
key directly (`LlmClient`), the instance seeing neither key nor question;
|
||||
instance, which counts it, at an effort among those the operator allows
|
||||
and with that effort's ceiling on output (`efforts`, `outputCeilingAt`,
|
||||
D63), or a `PersonalAssistant` with the person's own key directly
|
||||
(`LlmClient`), without an effort and at 4,096 output tokens, the instance
|
||||
seeing neither key nor question;
|
||||
`assistant_messages.dart` turns a conversation into the endpoint's models
|
||||
and back, part by part. `AssistantsCard` is an app's settings' card: what
|
||||
is granted and left of its limits, agreed to once (the consent sheet),
|
||||
the person's use by UTC month, the instance's privacy page, and the
|
||||
is granted, under each provider's name in its colour (`ProviderLabel`,
|
||||
`providerColorIn`, D60), what is left of the person's budget for them
|
||||
together (D58), each agreed to once (the consent sheet), the person's use
|
||||
by UTC month, oldest first (D57), the instance's privacy page, and the
|
||||
person's own assistants where the operator allows them, kept where the
|
||||
app says (`OwnAssistantStore`: Learn's sealed settings). For the operator,
|
||||
`AssistantOperatorRepository` (grants by exact handle) and
|
||||
`AssistantGrantsCard` on `InstanceOperatorScreen`: grants with their
|
||||
limits, granted, changed and taken back, and everyone's use by month.
|
||||
`AssistantOperatorRepository` and `AssistantGrantsScreen`, opened from
|
||||
`InstanceOperatorScreen`: the assistants set up, by provider, with their
|
||||
efforts and whether they are priced; the people granted some, each with
|
||||
one budget in money and tokens, a day and a month (D58, D59), found by
|
||||
their handle's start; one sheet granting several assistants, a
|
||||
provider's at once, to several people at once, or changing one person's
|
||||
(`showAssistantGrantSheet`); and everyone's use by month.
|
||||
`package:halkyon_app/assistant_models.dart` holds the models alone, in
|
||||
pure Dart, for an app's own models. For the app's warnings before a
|
||||
private studyset's content goes (ADR 0021, D9): `providerTermsOf` names a
|
||||
|
|
|
|||
Loading…
Reference in a new issue