Repository navigation
fix: resolve-did follow-ups in bns-server, cyfs-sn and gateway tests - #210
Merged
Merged
Conversation
- bns-server: an explicit `type=device` query also gets the device-slot projection (resolve-did D4), which is what callers such as node-active's device check send. The default / `type=zone` projection stays for older clients. - bns-server tests: migrate to ResolveOpts / Revision / DocResult; device DIDs are resolved with an explicit Device type; fixtures carry iat. Revoked owner policy drops the cached device; authority-level `expired` keeps the verified best selectable (2026-10-20 ruling). - bns_dv: read the published state through Source::get_document. - cyfs-sn: the Zone locker interop check uses a user with a published, signed zone JWT; an unbound user's auth-DB projection has no iat and is Unknown. - test_control_server: provider ids are now `http-provider:`. - test_dns_over_tcp: bind the control server on a free port instead of the default 13451, which a locally running gateway already holds. Needs buckyos-base d99a4f5 or later. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-ups to the resolve-did migration (5d2be8e). On main, the bns-server and cyfs-sn tests did not compile, and
test_control_serverandtest_dns_over_tcpfailed.Depends on buckyos-base d99a4f5 (already on base main). It fixes two name-client bugs these tests exposed:
revokedanswer,selectstill returned the cached document.Changes
type=devicequery now gets the device-slot projection (resolve-did D4: callers that want the device document must ask fordevice). Before this, such a query returned missing, so node-active's device check could not pass against BNS. The default /type=zoneprojection is kept for older clients; D4 / N3 plan to remove it once those clients are gone.ResolveOpts/Revision/DocResult. The old policies map as in the resolve-did TODO: RemoteAuthority →authority_only().without_local_lock().without_zone_lock().with_force_authority_query(), LocalOnly →strictly_offline(), Anchored →select_authority_current.Devicetype, and fixtures carryiat.?type=devicerequest returns the device JWT withdocType: device.expiredkeeps the verified best selectable (2026-10-20 ruling).Source::get_document.test_sn_bns_proxy_rpc_paths, using a user with a published, signed zone JWT. For a user without a zone on BNS, SN answers with an auth-DB projection that has noiat. The new client treats it as Unknown, which is accepted.http-provider:(they are only echoed back in the response).Verification
Run against buckyos-base main d99a4f5, without patches:
Not run: the ignored
bns_dve2e test needs anvil, so the migratedresolve_json_dochelper is only compile-checked.🤖 Generated with Claude Code