imperal-sdk 6.3.1__tar.gz → 6.3.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/CHANGELOG.md +8 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/PKG-INFO +1 -1
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/sdk-reference.json +1 -1
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/sdk_claims.json +1 -1
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/__init__.py +1 -1
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/code_index.py +24 -2
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_code_index_indexer.py +11 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/.cm.txt +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/.github/workflows/identity-contract.yml +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/.github/workflows/publish.yml +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/.github/workflows/test.yml +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/.gitignore +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/LICENSE +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/README.md +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/docs/sdl-facets.md +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/pyproject.toml +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/sdl_roles.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/.codebase-index-cache.pkl +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/_gateway.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/_http_retry.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/_shared_http.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/adversarial_oracle.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ai/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ai/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/app.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/apps/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/apps/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/auth/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/auth/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/auth/middleware.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/auto_ui.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/billing/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/billing/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/bom_extractor.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/cache/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/cache/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/cache/protocol.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/catalog.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/action_result.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/error_codes.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/exceptions.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/extension.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/filters.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/guards.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/kernel_primitives.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/narration.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/narration_guard.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/prompt.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/chat/refusal.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/cli/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/cli/linter.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/cli/main.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/config/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/config/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/context.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/conversations/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/conversations/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/core.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/cross_surface_bus.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/contract_checks.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/generate_api_surface.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/generate_reference.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/generate_sdk_claims.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/reference/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/reference/_flags.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/reference/_introspect.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/reference/client_methods.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/reference/dataclasses_kind.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/reference/decorators.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/reference/sdl_funcs.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/reference/sdl_roles.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/reference/ui_components.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/validate_identity_contract.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/errors.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/extension.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/extensions/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/extensions/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/gnc_guard.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/http/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/http/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/_impl.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/actions.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/custom_roles.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/migrate.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/produce.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/schema.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/skeleton.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/ui.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/ui_children.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/ui_template.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ir/validator.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/manifest.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/manifest_schema.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/manifest_schema_ui.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/notify/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/notify/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/oauth_state.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/oauth_tokens.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/pipes.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/prompts/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/prompts/icnli_integrity_rules.txt +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/prompts/kernel_formatting_rule.txt +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/prompts/kernel_proactivity_rule.txt +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/protocols.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/rbac/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/rbac/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/rpc/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/rpc/codec.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/rpc/contract.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/_platform.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/canon.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/engine.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/executor.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/hosted_client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/interpreter.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/llm_provider.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/local_engine.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/message_adapter.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/template.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/runtime/verbs.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schema/marathon_ram.sql +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/action_result.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/ai_complete.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/call.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/conditional.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/navigate.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/open.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/send.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/store_create.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/store_delete.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/store_get.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/store_list.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/actions/store_update.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/balance_info.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/chat_result.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/completion_result.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/document.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/event.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/file_info.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/function_call.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/http_response.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/imperal.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ir.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/limits_result.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/metered_event.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/subscription_info.schema.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ui_children/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ui_children/accordion.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ui_children/datatable_columns.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ui_children/datatable_rows.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ui_children/menu.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ui_children/select.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ui_children/tabs.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ui_children/timeline.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ui_children/tree.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/_generate_roles_json.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/entity.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facet_resolve.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/catalog.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/comm.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/content.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/device.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/event.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/geo.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/identity.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/media.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/metric.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/money.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/net.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/people.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/quantity.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/rating.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/security.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/task.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/facets/time.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/field.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/sdl/roles.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/search.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/secrets/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/secrets/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/secrets/exceptions.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/secrets/panel_handler.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/secrets/spec.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/security/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/security/call_token.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/security/deactivation_guard.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/signals/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/signals/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/skeleton/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/skeleton/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/storage/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/storage/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/store/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/store/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/store/exceptions.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/testing/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/testing/autonomous_mock.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/testing/mock_context.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/testing/mock_secrets.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/transport.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/typed_context.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/action_result.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/chat_result.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/client_contracts.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/contracts.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/contributions.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/events.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/health.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/identity.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/metered_event.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/models.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/pagination.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/types/store_contracts.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/actions.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/base.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/canvas.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/data.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/display.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/feedback.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/graph.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/input_components.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/interactive.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/layout.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/liquid.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/signals.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/stage.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/ui/theme.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/users/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/users/client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/validator.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/validator_v1_6_0.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/vault_ram_client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/conftest.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_action_schemas.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_artifacts_freshness.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_contract_checks_selftest.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_generate_sdk_claims.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_identity_nonempty.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_ir_schema_fresh.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_meter_lua_contract.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_metered_event_contract.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_notify_wire_payload.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_public_docstrings_engine_neutral.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_reference_completeness.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_reference_no_leak.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_sample_contract_shape.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contract/test_sdk_matches_kernel_contract.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contracts/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/contracts/test_store_contracts.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/fixtures/contract/kernel-contract.sample.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/fixtures/ir/README.md +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/fixtures/ir/archive_ended.ir.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/fixtures/ir/link_saver.ir.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/fixtures/ir/test_fixtures_valid.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/fixtures/openapi/auth-gateway.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/fixtures/openapi/registry.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/fixtures/openapi/sharelock-cases.json +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_custom_roles.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ir_impl.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ir_mapping_real_ext.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ir_migrate.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ir_produce.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ir_schema.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ir_skeleton.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ir_ui.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ir_ui_produce.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ir_validator.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ir_versions.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ui_children.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ir/test_ui_template.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/rpc/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/rpc/test_boundary_seal.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/rpc/test_codec.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/rpc/test_contract.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_canon.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_canon_template.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_engine_abc.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_engine_parity.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_executor_neutral.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_hosted_client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_interpreter.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_llm_provider_config_store.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_llm_provider_ctx_injection.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_local_engine.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_platform_shim.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_template.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_verb_ai.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_verb_call_directives.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_verb_conditional.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/runtime/test_verb_store.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/store/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/store/test_list_users_client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/store/test_query_all_client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_action_result_time_travel.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_action_result_typed.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_agent_presence.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_as_user.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_auth.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_autonomous_mock.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_billing.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_cache_client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_cache_model.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_call_token.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_callable_surface_single_source.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_chat_extension_deprecation.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_chat_extension_no_llm_router.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_chat_filters.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_chat_function_background_flag.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_chat_guards.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_chat_guards_bleed.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_chat_prompt.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_chat_result.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_cli.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_cli_sdk_commands.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_client_contracts.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_client_emit_neutral.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_code_index_contracts.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_config_client.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_context.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_context_background_task.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_context_deliver_chat_message.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_context_guards.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_contracts.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_contracts_live.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_contributions.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_core_primitives.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_data_model_kwarg.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_document_contract.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_emits_decorator.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_error_codes.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_errors.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_event_schema_v2.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_events_health.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_extension.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_extension_pipes.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_extension_v2.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_extensions_emit.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_gateway_namespaces.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_http_json_and_mock.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_http_retry.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_http_timeout_override.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_id_shape_guard.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_identity_contract.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_imperal_schema_v2.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_import_light.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_init_onboarding.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_kernel_primitives.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_liquid_ui.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest_file_sinks.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest_linter.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest_no_orchestrator_tool.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest_oauth.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest_panels.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest_roundtrip_gate.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest_schema.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest_v2_events.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest_v2_other_sections.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest_v2_webhooks.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_manifest_validator_v2.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_mock_context.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_models.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_narration_emission.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_narration_guard.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_oauth_authorize_url.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_oauth_tokens_shared.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_openai_max_completion_tokens.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_pagination.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_panel_rendering_contract.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_panel_swr_caching.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_panels.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_phase_a_dead_removal.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_phase_a_drift.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_phase_a_text.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_quantum_app.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdk_version_stamp.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_entity.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_entity_marker.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_exports.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_catalog.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_collisions.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_comm.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_content.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_device.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_event.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_exports.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_field.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_geo.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_identity.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_media.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_metric.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_money.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_net.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_people.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_quantity.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_rating.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_resolve.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_security.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_task.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facet_time.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facets_catalog.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facets_doc.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_facets_pkg.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_field.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_roles.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_roles_json.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_roles_of_facets.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sdl_vocab_version.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_search_provider.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_secret_scope_decorator.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_secret_spec_scope.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_skeleton_decorator.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_spec_validation.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_stage.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_surface_adaptation.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_sync_async_parity.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_transport_isolation.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_ui.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_ui_canvas.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_ui_fileupload_enhanced.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_ui_html.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_ui_image_enhanced.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_ui_modal.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_ui_open.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_ui_signals.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_ui_theme.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_user.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_v7_emit_refusal.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_validator.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_validator_drift.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_validator_pep563.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_validator_v1_6_0_rules.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_validator_v25.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/test_write_arg_bleed.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/tools/__init__.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/tools/test_generate_api_surface.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/tools/test_generate_reference.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/tools/test_reference_description.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/tools/test_reference_flags.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/tools/test_reference_typegraph.py +0 -0
- {imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/tests/ui/test_input_type_enum.py +0 -0
|
@@ -2,6 +2,14 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to `imperal-sdk` are documented here.
|
|
4
4
|
|
|
5
|
+
## 6.3.2 — 2026-10-20
|
|
6
|
+
|
|
7
|
+
### Security
|
|
8
|
+
- `clean_remote` (new, public): a git remote is cleaned by parsing it — a URL rebuilt from scheme, host,
|
|
9
|
+
port and path (userinfo split on its last `@`, query and fragment dropped), a `user:secret` dropped from
|
|
10
|
+
an scp-like remote, `""` for what does not parse. `git_identity` and `sftp_read_meta` use it (6.3.1's
|
|
11
|
+
regex could leave part of a password behind).
|
|
12
|
+
|
|
5
13
|
## 6.3.1 — 2026-10-20
|
|
6
14
|
|
|
7
15
|
### Security
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"""Imperal Cloud SDK — build extensions for the Imperal platform."""
|
|
2
2
|
from typing import TYPE_CHECKING
|
|
3
3
|
|
|
4
|
-
__version__ = "6.3.
|
|
4
|
+
__version__ = "6.3.2"
|
|
5
5
|
|
|
6
6
|
# 5.2.2 (2026-06-11): the package root resolves its public surface lazily
|
|
7
7
|
# (PEP 562). The eager imports pulled the HTTP transport (Context / client
|
|
@@ -1351,7 +1351,29 @@ def build_index(root: str, files: list[str]) -> ProjectIndex:
|
|
|
1351
1351
|
|
|
1352
1352
|
_HEAD_REF = re.compile(r"ref:\s*refs/heads/(\S+)")
|
|
1353
1353
|
_SHA = re.compile(r"^[0-9a-f]{40}$")
|
|
1354
|
-
|
|
1354
|
+
def clean_remote(url) -> str:
|
|
1355
|
+
"""A git remote without any credentials: a URL is rebuilt from scheme, host, port and path (the userinfo
|
|
1356
|
+
split on its LAST ``@`` and dropped, query and fragment dropped); an scp-like ``user@host:path`` keeps a
|
|
1357
|
+
plain user and drops a ``user:secret``; a value that does not parse is ``""``. Shared word for word
|
|
1358
|
+
by the vault (``stores/repos.clean_remote``)."""
|
|
1359
|
+
from urllib.parse import urlsplit, urlunsplit
|
|
1360
|
+
u = str(url or "").strip().strip('"').strip("'").strip()
|
|
1361
|
+
if not u or any(c.isspace() for c in u):
|
|
1362
|
+
return ""
|
|
1363
|
+
if "://" in u:
|
|
1364
|
+
try:
|
|
1365
|
+
parts = urlsplit(u)
|
|
1366
|
+
host, port = parts.hostname or "", parts.port
|
|
1367
|
+
except ValueError:
|
|
1368
|
+
return ""
|
|
1369
|
+
if not parts.scheme or (not host and parts.scheme != "file"):
|
|
1370
|
+
return ""
|
|
1371
|
+
netloc = (f"[{host}]" if ":" in host else host) + (f":{port}" if port else "")
|
|
1372
|
+
return urlunsplit((parts.scheme, netloc, parts.path, "", ""))
|
|
1373
|
+
user, at, rest = u.rpartition("@")
|
|
1374
|
+
if at and ":" in user:
|
|
1375
|
+
return rest # "user:secret@host:path": the secret never leaves
|
|
1376
|
+
return u
|
|
1355
1377
|
|
|
1356
1378
|
|
|
1357
1379
|
def _meta_text(meta: dict, key: str) -> str:
|
|
@@ -1390,7 +1412,7 @@ def git_identity(meta: dict) -> dict:
|
|
|
1390
1412
|
first = first or url
|
|
1391
1413
|
if section == '[remote"origin"]':
|
|
1392
1414
|
remote = url
|
|
1393
|
-
remote =
|
|
1415
|
+
remote = clean_remote(remote or first)
|
|
1394
1416
|
return {"remote": remote, "branch": branch, "commit": commit}
|
|
1395
1417
|
|
|
1396
1418
|
|
|
@@ -382,3 +382,14 @@ def test_sftp_reads_never_follow_a_link_and_never_ship_git_credentials():
|
|
|
382
382
|
assert ci.git_identity(meta["files"])["remote"] == "https://git.x/r.git"
|
|
383
383
|
many = asyncio.run(ci.sftp_read_many(S(), "/r", ["app/x.py", "out/passwd", "tsconfig.json"]))
|
|
384
384
|
assert many["files"] == {"app/x.py": b"x = 1\n"} and set(many["skipped"]) == {"out/passwd", "tsconfig.json"}
|
|
385
|
+
|
|
386
|
+
|
|
387
|
+
def test_a_remote_never_carries_credentials_however_it_is_written():
|
|
388
|
+
from imperal_sdk.code_index import clean_remote
|
|
389
|
+
assert clean_remote("https://u:p@ss@host.x/r.git") == "https://host.x/r.git"
|
|
390
|
+
assert clean_remote('"https://bob:tok@git.x:8443/r.git?x=1#f"') == "https://git.x:8443/r.git"
|
|
391
|
+
assert clean_remote("ssh://git@host/r.git") == "ssh://host/r.git"
|
|
392
|
+
assert clean_remote("git@github.com:org/r.git") == "git@github.com:org/r.git"
|
|
393
|
+
assert clean_remote("bob:secret@host:r.git") == "host:r.git"
|
|
394
|
+
assert clean_remote("https://[::1]:9/r") == "https://[::1]:9/r" and clean_remote("http://h:bad/r") == ""
|
|
395
|
+
assert clean_remote("") == "" and clean_remote("a b") == ""
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/reference/client_methods.py
RENAMED
|
File without changes
|
{imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/reference/dataclasses_kind.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/devtools/validate_identity_contract.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/completion_result.schema.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/subscription_info.schema.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ui_children/datatable_columns.json
RENAMED
|
File without changes
|
{imperal_sdk-6.3.1 → imperal_sdk-6.3.2}/src/imperal_sdk/schemas/ui_children/datatable_rows.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|