fix(assistant): canonical task authority for household tools #1618

Open
lytedev wants to merge 4 commits from propose/household-tool-task-authority into propose/preauthorized-agent-actions
Owner

See the commits.

See the commits.
fix(assistant): bind household effects to canonical task authority
Some checks failed
/ check-format (push) Has been cancelled
/ build (push) Has been cancelled
b069277880
Keep ordinary human and dedicated household-service preauthorization.
Revalidate the captured task scope after the awaited library lookup.

WIP validation: 77 focused Node tests pass. Strict checking currently
reports eight errors in direct test calls through heterogeneous tool
registrations. The missing Context arguments are fixed; the remaining
fixture typing needs a follow-up without weakening argument validation.

Explicit-source nix fmt processed the four changed TypeScript files
without a configured formatter for that language. The candidate package
build passed on Bigtower under the global exclusive validation lock.
Actual assembleTextCore service factory wiring remains unproven on this
base; service proof currently uses the production authorizer through the
real role, canonical SDK resolver and Kanidm service verifier.
test(assistant): type direct household tool calls at SDK registry boundary
Some checks failed
/ check-format (push) Has been cancelled
/ build (push) Has been cancelled
bed07478b9
Supply the SDK Context argument in direct unit calls, and use its
heterogeneous Extension boundary when selecting tools by runtime name.
No parameter schemas, assertions, or deadlines are weakened.

Strict TypeScript checking of all four changed files and dependencies
passes. All 77 focused tests pass with no skips or cancellations. The
candidate package builds. Explicit-source nix fmt processes only these
four files; this flake configures no TypeScript formatter.

Checks ran exclusively on Bigtower under the global validation lock.
Logs: ~/Projects/.artifacts/household-tool-task-authority/v3/.
The factory-level service integration limit from the previous commit
remains; this follow-up only resolves the test typing failure.
test(assistant): preserve ordinary household collaborator authority
Some checks failed
/ check-format (push) Has been cancelled
/ build (push) Has been cancelled
114a81e091
A real read/write collaborator with household authority executes all
three registered immediate media tools without conversation control.
The control denial is asserted before the positive execution.

The existing canonical principal validator rejects an empty role list
before opening a session. Assert that earlier denial and zero inference
and effects rather than fabricating a role-less session or control grant.
A role-less explicitly shared tool invocation remains unrepresentable on
this base; this test does not claim otherwise.

Bigtower exclusive validation: strict checks of all changed files pass,
79 focused Node tests pass without skips, and candidate package builds.
Explicit-source nix fmt traversed only the four changed files and found
no configured TypeScript formatter. Logs are under
~/Projects/.artifacts/household-tool-task-authority/v5/.
test(assistant): use an inert compact household service token fixture
All checks were successful
/ check-format (push) Successful in 17s
/ build (push) Successful in 20m40s
9bcfb0dc7d
The independently validated prerequisite bundle accepts the actual
compact API-token shape rather than a bare fixture string. Keep its
stricter verifier unchanged; supply inert synthetic compact evidence.

Focused base: 79 tests and strict checks pass. The candidate package
builds, with explicit-source configured formatting before dependencies.
Evidence: ~/Projects/.artifacts/household-tool-task-authority/v6/.

An explicitly unpublished combination with 8cd665bd also passes 80
focused tests and strict checks. Local validation commit
5c7506378c4bd96ef317d32f567959e6ece39a55 extends the existing runtime
fixture to prove actual assembleTextCore signed service input -> current
registered TV tool -> exactly one configured mock effect -> model result.
It is not pushed because aggregate publication was explicitly forbidden.
Combined evidence: the same artifact root under factory6/.

Only Bigtower under the global exclusive lock performed heavy work.
No live providers, production effects, deployments or device I/O.
All checks were successful
/ check-format (push) Successful in 17s
/ build (push) Successful in 20m40s
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin propose/household-tool-task-authority:propose/household-tool-task-authority
git switch propose/household-tool-task-authority

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch propose/preauthorized-agent-actions
git merge --no-ff propose/household-tool-task-authority
git switch propose/household-tool-task-authority
git rebase propose/preauthorized-agent-actions
git switch propose/preauthorized-agent-actions
git merge --ff-only propose/household-tool-task-authority
git switch propose/household-tool-task-authority
git rebase propose/preauthorized-agent-actions
git switch propose/preauthorized-agent-actions
git merge --no-ff propose/household-tool-task-authority
git switch propose/preauthorized-agent-actions
git merge --squash propose/household-tool-task-authority
git switch propose/preauthorized-agent-actions
git merge --ff-only propose/household-tool-task-authority
git switch propose/preauthorized-agent-actions
git merge propose/household-tool-task-authority
git push origin propose/preauthorized-agent-actions
Sign in to join this conversation.
No reviewers
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
lytedev/nix!1618
No description provided.