diff --git a/.repository-projection.json b/.repository-projection.json new file mode 100644 index 0000000..bc666a3 --- /dev/null +++ b/.repository-projection.json @@ -0,0 +1,13 @@ +{ + "schemaVersion": 1, + "projection": "deixic-python", + "projectionSchemaVersion": 1, + "sourceRepository": "dx-corp/mono", + "sourceSha": "6878323651fdb771b8cbf76b08597b930938ce36", + "destinationRepository": "dx-corp/deixic-python", + "priorProjectedBase": "1a71e41b4d48efd28d8b3efdccaf714758784873", + "definitionDigest": "b278f71b9fce8cc8d4cfbe22eff3e054ef8a20caa2142f7f6a3d54005ee55119", + "toolDigest": "16fcaea2f0e7e35de09bcd8e515d915f65cdf1eb13033eaf2845f60eaa9e0a4f", + "contentDigest": "2d91766f58c81be8dd6c7a6181bdfa231c7c73a38195603bde98eba5c948b7cc", + "publicationEligible": true +} diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..ce9b8a8 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,52 @@ +# Changelog + +## Unreleased + +- Add validated, source-linked account briefs, missing-data handling, progress + output, explicit owner-authorized approvals/denials, and receipt outcomes. +- Verify clean package consumers over binary HTTP with killed workers, storage + failures, lost responses and Python/TypeScript checkpoint interoperability. +- Atomically publish and sync private checkpoint files before submission. + +## [0.1.3](https://github.com/dx-corp/mono/compare/sdk/deixic/python/v0.1.2...sdk/deixic/python/v0.1.3) (2026-09-19) + + +### Features + +* **code:** release private coding acceptance in 0.10.91 ([#9652](https://github.com/dx-corp/mono/issues/9652)) ([81e8153](https://github.com/dx-corp/mono/commit/81e8153ececc279b216058e7bdc943262d19a912)) +* **sdk:** complete the recoverable account brief application ([#9650](https://github.com/dx-corp/mono/issues/9650)) ([efac3fc](https://github.com/dx-corp/mono/commit/efac3fc80aedcac02a119b5d142d53fb4b35230e)) + +## [0.1.2](https://github.com/dx-corp/mono/compare/sdk/deixic/python/v0.1.1...sdk/deixic/python/v0.1.2) (2026-09-18) + + +### Features + +* **sdk:** add recoverable task results and account briefs ([#9602](https://github.com/dx-corp/mono/issues/9602)) ([2172f17](https://github.com/dx-corp/mono/commit/2172f1772cc919fbe3c7f1cf34fdd6d79d993fb2)) +* **sdk:** preserve task identity across Python recovery ([#9585](https://github.com/dx-corp/mono/issues/9585)) ([9ab342b](https://github.com/dx-corp/mono/commit/9ab342bbf6351ed34c8e9d9b53ff002fe939e32f)) + + +### Bug Fixes + +* **sdk:** repair Python requests and generated release metadata ([#9583](https://github.com/dx-corp/mono/issues/9583)) ([1e5f136](https://github.com/dx-corp/mono/commit/1e5f136f253ed6afd63fd782caace3a052b010ee)) + +## [0.1.1](https://github.com/dx-corp/mono/compare/sdk/deixic/python/v0.1.0...sdk/deixic/python/v0.1.1) (2026-09-18) + + +### Features + +* **sdk:** ship public Deixic clients ([#9439](https://github.com/dx-corp/mono/issues/9439)) ([79c826f](https://github.com/dx-corp/mono/commit/79c826ffac8b07361056b1d4d072b3a6dd82e3f6)) + + +### Bug Fixes + +* **runtime:** derive runtime admission from capability catalog ([#8990](https://github.com/dx-corp/mono/issues/8990)) ([15b336c](https://github.com/dx-corp/mono/commit/15b336c392c5d36a7637f938baea69f9e165cdbb)) + + +### Chores + +* **deps:** bump the cargo group across 1 directory with 2 updates ([#9342](https://github.com/dx-corp/mono/issues/9342)) ([cf94c9a](https://github.com/dx-corp/mono/commit/cf94c9a949e588d68d2e1e54956f8f8e876d5aff)) + +## 0.1.0 + +- Publish the first Deixic Python SDK for durable threads, events, messages, + controls, receipt actions, and binary Connect streaming. diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..acb5227 --- /dev/null +++ b/LICENSE @@ -0,0 +1,94 @@ +SPDX-License-Identifier: BUSL-1.1 + +Business Source License 1.1 + +License text copyright (c) 2017 MariaDB Corporation Ab, All Rights Reserved. +"Business Source License" is a trademark of MariaDB Corporation Ab. + +Licensor: + +EvalOps, Inc. + +Licensed Work: + +The Licensed Work is EvalOps Mono (Deixic), including all source code and associated files +made available in this repository, and is Copyright (c) 2026 EvalOps, Inc. + +Additional Use Grant: + +None + +Change Date: + +Four years from the date each version of the Licensed Work is first publicly +distributed. + +Change License: + +GPL Version 2.0 or any later version + +Terms + +The Licensor hereby grants you the right to copy, modify, create derivative +works, redistribute, and make non-production use of the Licensed Work. The +Licensor may make an Additional Use Grant, above, permitting limited production +use. + +Effective on the Change Date, or the fourth anniversary of the first publicly +available distribution of a specific version of the Licensed Work under this +License, whichever comes first, the Licensor hereby grants you rights under the +terms of the Change License, and the rights granted in the paragraph above +terminate. + +If your use of the Licensed Work does not comply with the requirements +currently in effect as described in this License, you must purchase a +commercial license from the Licensor, its affiliated entities, or authorized +resellers, or you must refrain from using the Licensed Work. + +All copies of the original and modified Licensed Work, and derivative works of +the Licensed Work, are subject to this License. This License applies separately +for each version of the Licensed Work and the Change Date may vary for each +version of the Licensed Work released by Licensor. + +You must conspicuously display this License on each original or modified copy +of the Licensed Work. If you receive the Licensed Work in original or modified +form from a third party, the terms and conditions set forth in this License +apply to your use of that work. + +Any use of the Licensed Work in violation of this License will automatically +terminate your rights under this License for the current and all other versions +of the Licensed Work. + +This License does not grant you any right in any trademark or logo of Licensor +or its affiliates (provided that you may use a trademark or logo of Licensor as +expressly required by this License). + +TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON AN +"AS IS" BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS, EXPRESS +OR IMPLIED, INCLUDING (WITHOUT LIMITATION) WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND TITLE. + +MariaDB hereby grants you permission to use this License's text to license your +works, and to refer to it using the trademark "Business Source License", as +long as you comply with the Covenants of Licensor below. + +Covenants of Licensor + +In consideration of the right to use this License's text and the "Business +Source License" name and trademark, Licensor covenants to MariaDB, and to all +other recipients of the licensed work to be provided by Licensor: + +1. To specify as the Change License the GPL Version 2.0 or any later version, + or a license that is compatible with GPL Version 2.0 or a later version, + where "compatible" means that software provided under the Change License can + be included in a program with software provided under GPL Version 2.0 or a + later version. Licensor may specify additional Change Licenses without + limitation. + +2. To either: (a) specify an additional grant of rights to use that does not + impose any additional restriction on the right granted in this License, as + the Additional Use Grant; or (b) insert the text "None". + +3. To specify a Change Date. + +4. Not to modify this License in any other way. diff --git a/README.md b/README.md index b90ddd3..e1022e3 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,274 @@ -# deixic-python -Deixic Python SDK. Authoritative source: dx-corp/mono. +# Deixic SDK for Python + +`deixic-sdk` is the supported Python client for applications that submit Deixic +tasks, follow durable progress, interrupt work, and approve or deny requested +actions. It uses binary Connect/protobuf requests rather than the browser-only +API. + +## Install + +```sh +pip install deixic-sdk +``` + +## Quickstart + +```python +import os + +from deixic import Deixic + +deixic = Deixic( + api_key=os.environ["DEIXIC_API_KEY"], + organization_id="org_123", + workspace_id="ws_456", +) + +task = deixic.tasks.start( + channel_id="company", + body="Review the open changes.", + idempotency_key="review-request-001", # Stable business-event ID for this request. +) + +result = task.wait(timeout=60) +if result.status == "completed": + print(result.body) +else: + print(result.status, result.reason) +``` + +Choose a different key for each new business request. Recovery of the same +request keeps its original key and body. Submission proves acceptance. +`task.wait()` follows durable events and returns the final assistant answer +linked to that accepted turn, together with its referenced receipts. + +## Task handles and setup checks + +`deixic.tasks.check_setup(channel_id="company")` makes one read request to +verify channel access and reports the owner's workspace prerequisites and +selected/default model availability. `accessible` confirms read access; `write_access` +remains `not_checked`. The report contains `next_action` and, on failure, an +SDK error with its request ID. Submission checks write authorization and execution. + +For restart recovery, use `tasks.prepare(..., on_checkpoint=save_checkpoint)` +with your application's storage adapter, then `task.submit()`. The callback +runs before submission and after acceptance or consumed event pages. Storage +errors propagate. `tasks.resume(saved_checkpoint)` restores observation +coordinates and never submits work. `task.replay()` explicitly repeats an +unacknowledged request with its original body, key, tenant and origin; it +refuses an accepted task. + +Checkpoints use the shared Python/TypeScript `deixic.task.v1` format with +decimal-string int64 cursors. They contain the request body and no SDK +credential. Protect them as customer data and use one observer/storage writer +per checkpoint. A checkpoint never proves authorization or task completion. + +`wait()` uses bounded event backfill and polling, reconnecting read requests +after transport/unavailable failures up to `max_reconnect_attempts`. It never +retries a mutation. `timeout` is the observation budget; each read timeout is +capped by the remaining budget, subject to the transport's timeout semantics. +`cancelled=lambda: ...` stops local observation. Remote interruption requires +an explicit `controls.interrupt()` call. + +`wait()` continues past a preliminary `responded` state until completion, +failure, interruption or work that needs attention. `result()` reads the current +owner state once. Outcomes are `completed`, `responded`, `waiting`, `failed`, `interrupted`, +`unfinished`, `prepared`, or `unacknowledged`. A waiting outcome includes its +turn's waiting reason and a freshly retrieved request event when retained. +Use that event's request identity with `controls.respond()` after an explicit +application/user decision. Missing request history stays +`waiting/request_not_visible`; no approval is invented or sent automatically. +Progress callbacks receive only new matching-turn events. Callbacks may be +delivered again after a storage failure or restart; make application effects +idempotent. Callback exceptions propagate. + +`result.parse(your_parser)` validates/converts the completed answer using your +application's schema. Parser failures propagate. A completed answer does not +prove that every external action succeeded; inspect the receipts' owner-resolved +lifecycle and evidence for those actions. + +## Account-brief workflow + +Use a workspace with connected CRM data and a policy that permits only CRM +reads for this workflow. The SDK creates no connector, grant or model route. +The example asks for a summary, open opportunities, risks and source references; +Platform enforces the workspace's access and action policy. + +Set the three `DEIXIC_*` variables used above, then run the installed example: + +```sh +python -m deixic.examples.account_brief check --channel company +python -m deixic.examples.account_brief start account-brief.json \ + --channel company --account 'Example account' --trigger crm-event-001 +# A separate process retrieves the result: +python -m deixic.examples.account_brief resume account-brief.json +``` + +`start` saves a private checkpoint before sending and reports acceptance. +`resume` prints the final brief and receipt IDs when completed. It returns +exit code 2 for unfinished work or work that needs attention. If acceptance was +lost, explicitly run `replay account-brief.json`, then resume. A new `start` +refuses an existing checkpoint path. The same file can be resumed by the +TypeScript account-brief example with the same tenant and origin. + + +Add `--structured` to `start` to request the versioned JSON brief and validate +facts against its declared source IDs. A restarted worker remembers the saved +format. `resume --progress` writes matching event IDs to stderr and the final +JSON to stdout. Missing CRM data is explicit; malformed results return exit 2 +with `invalid_result`, without another submission. Receipt owner, object, +lifecycle and evidence references appear separately in `actions`. A completed +answer with a failed or unavailable receipt still returns exit 2. + +The installed example also supports explicit `approve` and `deny` commands with +`--request` and `--decision-key`. They re-fetch the current owner request; +Platform checks the operator's authorization. Observation never approves work. +See the [complete application guide](https://www.deixic.com/developers/sdk/account-brief) +for the trigger/worker integration, result format, approval decisions, receipt +interpretation and tested recovery cases. The private-file storage example +requires a POSIX filesystem supporting atomic rename, hard links and fsync; +hosted applications use their existing durable storage and job queue. + +## Submit and recover a final result + +Create a **Deixic tasks** token in Settings → API access and keep it in your +server-side secret manager. Set `DEIXIC_API_KEY`, `DEIXIC_ORGANIZATION_ID`, and +`DEIXIC_WORKSPACE_ID` for that tenant. `DEIXIC_BASE_URL` defaults to +`https://app.deixic.com`; use an explicit URL for a test environment. + +The installed package includes a runnable example: + +```sh +python -m deixic.examples.task_result start task.json \ + --channel company --body 'Review the open changes.' +``` + +It saves the request body, tenant, Platform URL, and idempotency key before +submission. After acceptance it saves the turn ID and replay cursor, then +backfills events, watches progress, and fetches the final assistant message +linked to that turn and any referenced receipts. Preliminary answers and +another turn's completion do not establish success. Exit code 0 means the +matching turn completed; code 2 means unfinished, failed, interrupted, or +unacknowledged; code 1 reports an SDK error. + +After a process restart or stream closure, resume observation: + +```sh +python -m deixic.examples.task_result resume task.json +``` + +`resume` never submits work. It uses the saved cursor, and replaces its turn +projection from the owner snapshot when retention requires a reset. A stream +closing without matching completion remains `unfinished/watch_eof`. + +If the submission response was lost, the checkpoint may have no accepted +turn ID. Explicitly replay the original saved request: + +```sh +python -m deixic.examples.task_result replay task.json +``` + +Replay reuses the original request body and idempotency key; it refuses an +already accepted checkpoint. Do not start again with a new key to recover the +same request. A checkpoint cannot be moved to a different tenant or Platform +URL. Its file permissions are restricted to the current user, it contains no +credential, and it must still be protected because it contains the task body. +Use one process per checkpoint. This example does not run tools or approve +actions automatically; waiting work retains the owner's state. + +### Verify against a real test tenant + +The package also includes `deixic.examples.verify_test_journey`. Supply an +explicit dedicated test tenant, its task token, `DEIXIC_BASE_URL`, +`DEIXIC_IDENTITY_API_KEY_VALIDATE_URL` (Identity's `/v1/api-keys/validate`), +and `DEIXIC_TEST_CHANNEL_ID`, in addition to the organization/workspace +variables above. The probe self-introspects the supplied key with Identity +and requires task read/write grants in the expected organization. Platform +still owns workspace authorization and execution; the probe grants no access. + +```sh +python -m deixic.examples.verify_test_journey submit journey.json +# The first process exits after acceptance. Start a separate recovery process: +python -m deixic.examples.verify_test_journey resume journey.json +``` + +The second process reloads the checkpoint, creates a new client, and verifies +the matching turn's final linked message against a unique harmless request. +Its receipt omits the token, prompt, and generated body. It returns nonzero for +unfinished work, denied Identity grants, or mismatched output. This opt-in +probe does not provision tenants or credentials, and must not be pointed at +a customer workspace. Running fixture tests does not establish this live proof. + +For an automated run with that explicit configuration: + +```sh +DEIXIC_REAL_JOURNEY=1 python -m pytest -q \ + sdk/deixic/python/tests/test_real_journey.py +``` + +That acceptance test launches submission and recovery in separate processes. +It is skipped in ordinary unit CI because it requires real test-tenant services. + +The organization and workspace are fixed when the client is created. Every +request carries both values in the typed query and request headers. Mutations +require caller-owned idempotency keys. Mutation methods do not retry unavailable +or transport failures; task observation has the bounded read recovery described above. + +Use API keys only from trusted server-side applications. Rotating workloads can +provide a `CredentialProvider`; an authentication replay is allowed only when +the refreshed credential retains the same subject, tenant, and declared +scopes. + +## Coding output readback + +`messages.send(coding_acceptance=contract)` sends the typed coding contract and +marks the request as coding implementation. `contract.output_paths` can select +up to eight UTF-8 files whose contents differ from the admitted baseline (or +are newly added), totaling at most 64 KiB, for native completion +capture. Completion reads those files from the clean committed Git revision; +caller-provided output bytes are not a completion input. + +Native validation authenticates the candidate commit and trees, then compares +all tracked physical bytes and executable modes with committed blobs. It does +not trust Git's cached clean status or run clean filters. Paths must be UTF-8; +symlinks must resolve into the authenticated tracked tree. Submodules, dangling +or external symlinks, and missing local Git objects fail validation. Missing +objects are not fetched during validation. + +This check supports up to 100,000 tracked entries and 100,000 tree objects, +256 directory levels, 64 MiB per tracked blob, and 512 MiB of tracked content. +Commit objects are limited to 1 MiB and individual tree objects to 16 MiB. +These source-verification limits also apply when `output_paths` is omitted; +output publication remains optional. The separate 64 KiB output limit applies +to the new output bytes, so a larger baseline file may shrink to a valid output. + +When Platform accepts the runtime's coding proof, the work receipt can contain +`coding_acceptance`, including its work/run, originating actor, commit, and +immutable VFS version and SHA-256 for each output. Request the bytes explicitly: + +```python +receipt = deixic.receipts.get( + channel_id=channel_id, + receipt_id=receipt_id, + include_coding_output_content=True, +).receipt +``` + +The read requires the originating actor and exact tenant scope. Ordinary thread +and receipt responses omit output bytes. A consumer must compare the returned +bytes against its own acceptance criteria; a completed turn or an artifact +reference alone does not prove the requested result. + +These APIs do not provision execution capabilities. The hosted Operating runner +currently grants external Computer tools and excludes native `coding_task` and +Bash. Its Computer sandbox and the native coding checkout are separate owners; +this output contract alone does not make hosted coding qualification available. + +## Recovery + +Start with `deixic.threads.get()`, retain `replay_cursor`, and backfill with +`deixic.events.list()`. If an event page sets `reset_required`, replace the +local projection with its supplied snapshot and authoritative +`thread_execution.replay_cursor`. `deixic.events.watch()` yields bounded protobuf pages from one +server stream; the caller decides reconnection and resumes from the last saved +cursor. diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..03e1752 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,37 @@ +[build-system] +requires = ["setuptools>=80", "wheel"] +build-backend = "setuptools.build_meta" + +[project] +name = "deixic-sdk" +version = "0.1.3" +description = "Python SDK for submitting Deixic tasks, following progress, and resolving approvals" +readme = "README.md" +requires-python = ">=3.10" +license = "BUSL-1.1" +license-files = ["LICENSE"] +dependencies = [ + "protobuf>=7.35.0,<8", + "requests>=2.32.4,<3", +] + +[project.optional-dependencies] +test = [ + "build>=1,<2", + "pytest>=8,<10", + "twine>=6,<8", +] + +[project.urls] +Homepage = "https://www.deixic.com/developers" +Repository = "https://github.com/dx-corp/deixic-python" +Issues = "https://github.com/dx-corp/deixic-python/issues" + +[tool.setuptools.package-dir] +"" = "src" + +[tool.setuptools.packages.find] +where = ["src"] + +[tool.setuptools.package-data] +deixic = ["py.typed"] diff --git a/src/buf/validate/validate_pb2.py b/src/buf/validate/validate_pb2.py new file mode 100644 index 0000000..0517659 --- /dev/null +++ b/src/buf/validate/validate_pb2.py @@ -0,0 +1,469 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: buf/validate/validate.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'buf/validate/validate.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2 +from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2 +from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1b\x62uf/validate/validate.proto\x12\x0c\x62uf.validate\x1a google/protobuf/descriptor.proto\x1a\x1egoogle/protobuf/duration.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"P\n\x04Rule\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message\x12\x1e\n\nexpression\x18\x03 \x01(\tR\nexpression\"\xa1\x01\n\x0cMessageRules\x12%\n\x0e\x63\x65l_expression\x18\x05 \x03(\tR\rcelExpression\x12$\n\x03\x63\x65l\x18\x03 \x03(\x0b\x32\x12.buf.validate.RuleR\x03\x63\x65l\x12\x34\n\x05oneof\x18\x04 \x03(\x0b\x32\x1e.buf.validate.MessageOneofRuleR\x05oneofJ\x04\x08\x01\x10\x02R\x08\x64isabled\"F\n\x10MessageOneofRule\x12\x16\n\x06\x66ields\x18\x01 \x03(\tR\x06\x66ields\x12\x1a\n\x08required\x18\x02 \x01(\x08R\x08required\"(\n\nOneofRules\x12\x1a\n\x08required\x18\x01 \x01(\x08R\x08required\"\xe3\n\n\nFieldRules\x12%\n\x0e\x63\x65l_expression\x18\x1d \x03(\tR\rcelExpression\x12$\n\x03\x63\x65l\x18\x17 \x03(\x0b\x32\x12.buf.validate.RuleR\x03\x63\x65l\x12\x1a\n\x08required\x18\x19 \x01(\x08R\x08required\x12,\n\x06ignore\x18\x1b \x01(\x0e\x32\x14.buf.validate.IgnoreR\x06ignore\x12\x30\n\x05\x66loat\x18\x01 \x01(\x0b\x32\x18.buf.validate.FloatRulesH\x00R\x05\x66loat\x12\x33\n\x06\x64ouble\x18\x02 \x01(\x0b\x32\x19.buf.validate.DoubleRulesH\x00R\x06\x64ouble\x12\x30\n\x05int32\x18\x03 \x01(\x0b\x32\x18.buf.validate.Int32RulesH\x00R\x05int32\x12\x30\n\x05int64\x18\x04 \x01(\x0b\x32\x18.buf.validate.Int64RulesH\x00R\x05int64\x12\x33\n\x06uint32\x18\x05 \x01(\x0b\x32\x19.buf.validate.UInt32RulesH\x00R\x06uint32\x12\x33\n\x06uint64\x18\x06 \x01(\x0b\x32\x19.buf.validate.UInt64RulesH\x00R\x06uint64\x12\x33\n\x06sint32\x18\x07 \x01(\x0b\x32\x19.buf.validate.SInt32RulesH\x00R\x06sint32\x12\x33\n\x06sint64\x18\x08 \x01(\x0b\x32\x19.buf.validate.SInt64RulesH\x00R\x06sint64\x12\x36\n\x07\x66ixed32\x18\t \x01(\x0b\x32\x1a.buf.validate.Fixed32RulesH\x00R\x07\x66ixed32\x12\x36\n\x07\x66ixed64\x18\n \x01(\x0b\x32\x1a.buf.validate.Fixed64RulesH\x00R\x07\x66ixed64\x12\x39\n\x08sfixed32\x18\x0b \x01(\x0b\x32\x1b.buf.validate.SFixed32RulesH\x00R\x08sfixed32\x12\x39\n\x08sfixed64\x18\x0c \x01(\x0b\x32\x1b.buf.validate.SFixed64RulesH\x00R\x08sfixed64\x12-\n\x04\x62ool\x18\r \x01(\x0b\x32\x17.buf.validate.BoolRulesH\x00R\x04\x62ool\x12\x33\n\x06string\x18\x0e \x01(\x0b\x32\x19.buf.validate.StringRulesH\x00R\x06string\x12\x30\n\x05\x62ytes\x18\x0f \x01(\x0b\x32\x18.buf.validate.BytesRulesH\x00R\x05\x62ytes\x12-\n\x04\x65num\x18\x10 \x01(\x0b\x32\x17.buf.validate.EnumRulesH\x00R\x04\x65num\x12\x39\n\x08repeated\x18\x12 \x01(\x0b\x32\x1b.buf.validate.RepeatedRulesH\x00R\x08repeated\x12*\n\x03map\x18\x13 \x01(\x0b\x32\x16.buf.validate.MapRulesH\x00R\x03map\x12*\n\x03\x61ny\x18\x14 \x01(\x0b\x32\x16.buf.validate.AnyRulesH\x00R\x03\x61ny\x12\x39\n\x08\x64uration\x18\x15 \x01(\x0b\x32\x1b.buf.validate.DurationRulesH\x00R\x08\x64uration\x12=\n\nfield_mask\x18\x1c \x01(\x0b\x32\x1c.buf.validate.FieldMaskRulesH\x00R\tfieldMask\x12<\n\ttimestamp\x18\x16 \x01(\x0b\x32\x1c.buf.validate.TimestampRulesH\x00R\ttimestampB\x06\n\x04typeJ\x04\x08\x18\x10\x19J\x04\x08\x1a\x10\x1bR\x07skippedR\x0cignore_empty\"Z\n\x0fPredefinedRules\x12$\n\x03\x63\x65l\x18\x01 \x03(\x0b\x32\x12.buf.validate.RuleR\x03\x63\x65lJ\x04\x08\x18\x10\x19J\x04\x08\x1a\x10\x1bR\x07skippedR\x0cignore_empty\"\xae\x17\n\nFloatRules\x12\x84\x01\n\x05\x63onst\x18\x01 \x01(\x02\x42n\xc2Hk\ni\n\x0b\x66loat.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x9d\x01\n\x02lt\x18\x02 \x01(\x02\x42\x8a\x01\xc2H\x86\x01\n\x83\x01\n\x08\x66loat.lt\x1aw!has(rules.gte) && !has(rules.gt) && (this.isNan() || this >= rules.lt)? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xae\x01\n\x03lte\x18\x03 \x01(\x02\x42\x99\x01\xc2H\x95\x01\n\x92\x01\n\tfloat.lte\x1a\x84\x01!has(rules.gte) && !has(rules.gt) && (this.isNan() || this > rules.lte)? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xd4\x07\n\x02gt\x18\x04 \x01(\x02\x42\xc1\x07\xc2H\xbd\x07\n\x86\x01\n\x08\x66loat.gt\x1az!has(rules.lt) && !has(rules.lte) && (this.isNan() || this <= rules.gt)? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xbd\x01\n\x0b\x66loat.gt_lt\x1a\xad\x01has(rules.lt) && rules.lt >= rules.gt && (this.isNan() || this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc7\x01\n\x15\x66loat.gt_lt_exclusive\x1a\xad\x01has(rules.lt) && rules.lt < rules.gt && (this.isNan() || (rules.lt <= this && this <= rules.gt))? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xcd\x01\n\x0c\x66loat.gt_lte\x1a\xbc\x01has(rules.lte) && rules.lte >= rules.gt && (this.isNan() || this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xd7\x01\n\x16\x66loat.gt_lte_exclusive\x1a\xbc\x01has(rules.lte) && rules.lte < rules.gt && (this.isNan() || (rules.lte < this && this <= rules.gt))? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xa1\x08\n\x03gte\x18\x05 \x01(\x02\x42\x8c\x08\xc2H\x88\x08\n\x95\x01\n\tfloat.gte\x1a\x87\x01!has(rules.lt) && !has(rules.lte) && (this.isNan() || this < rules.gte)? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xcc\x01\n\x0c\x66loat.gte_lt\x1a\xbb\x01has(rules.lt) && rules.lt >= rules.gte && (this.isNan() || this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd6\x01\n\x16\x66loat.gte_lt_exclusive\x1a\xbb\x01has(rules.lt) && rules.lt < rules.gte && (this.isNan() || (rules.lt <= this && this < rules.gte))? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xdc\x01\n\rfloat.gte_lte\x1a\xca\x01has(rules.lte) && rules.lte >= rules.gte && (this.isNan() || this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xe6\x01\n\x17\x66loat.gte_lte_exclusive\x1a\xca\x01has(rules.lte) && rules.lte < rules.gte && (this.isNan() || (rules.lte < this && this < rules.gte))? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12}\n\x02in\x18\x06 \x03(\x02\x42m\xc2Hj\nh\n\x08\x66loat.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12w\n\x06not_in\x18\x07 \x03(\x02\x42`\xc2H]\n[\n\x0c\x66loat.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12w\n\x06\x66inite\x18\x08 \x01(\x08\x42_\xc2H\\\nZ\n\x0c\x66loat.finite\x1aJrules.finite ? (this.isNan() || this.isInf() ? \'must be finite\' : \'\') : \'\'R\x06\x66inite\x12\x34\n\x07\x65xample\x18\t \x03(\x02\x42\x1a\xc2H\x17\n\x15\n\rfloat.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xc0\x17\n\x0b\x44oubleRules\x12\x85\x01\n\x05\x63onst\x18\x01 \x01(\x01\x42o\xc2Hl\nj\n\x0c\x64ouble.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x9e\x01\n\x02lt\x18\x02 \x01(\x01\x42\x8b\x01\xc2H\x87\x01\n\x84\x01\n\tdouble.lt\x1aw!has(rules.gte) && !has(rules.gt) && (this.isNan() || this >= rules.lt)? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xaf\x01\n\x03lte\x18\x03 \x01(\x01\x42\x9a\x01\xc2H\x96\x01\n\x93\x01\n\ndouble.lte\x1a\x84\x01!has(rules.gte) && !has(rules.gt) && (this.isNan() || this > rules.lte)? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xd9\x07\n\x02gt\x18\x04 \x01(\x01\x42\xc6\x07\xc2H\xc2\x07\n\x87\x01\n\tdouble.gt\x1az!has(rules.lt) && !has(rules.lte) && (this.isNan() || this <= rules.gt)? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xbe\x01\n\x0c\x64ouble.gt_lt\x1a\xad\x01has(rules.lt) && rules.lt >= rules.gt && (this.isNan() || this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc8\x01\n\x16\x64ouble.gt_lt_exclusive\x1a\xad\x01has(rules.lt) && rules.lt < rules.gt && (this.isNan() || (rules.lt <= this && this <= rules.gt))? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xce\x01\n\rdouble.gt_lte\x1a\xbc\x01has(rules.lte) && rules.lte >= rules.gt && (this.isNan() || this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xd8\x01\n\x17\x64ouble.gt_lte_exclusive\x1a\xbc\x01has(rules.lte) && rules.lte < rules.gt && (this.isNan() || (rules.lte < this && this <= rules.gt))? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xa6\x08\n\x03gte\x18\x05 \x01(\x01\x42\x91\x08\xc2H\x8d\x08\n\x96\x01\n\ndouble.gte\x1a\x87\x01!has(rules.lt) && !has(rules.lte) && (this.isNan() || this < rules.gte)? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xcd\x01\n\rdouble.gte_lt\x1a\xbb\x01has(rules.lt) && rules.lt >= rules.gte && (this.isNan() || this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd7\x01\n\x17\x64ouble.gte_lt_exclusive\x1a\xbb\x01has(rules.lt) && rules.lt < rules.gte && (this.isNan() || (rules.lt <= this && this < rules.gte))? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xdd\x01\n\x0e\x64ouble.gte_lte\x1a\xca\x01has(rules.lte) && rules.lte >= rules.gte && (this.isNan() || this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xe7\x01\n\x18\x64ouble.gte_lte_exclusive\x1a\xca\x01has(rules.lte) && rules.lte < rules.gte && (this.isNan() || (rules.lte < this && this < rules.gte))? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12~\n\x02in\x18\x06 \x03(\x01\x42n\xc2Hk\ni\n\tdouble.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12x\n\x06not_in\x18\x07 \x03(\x01\x42\x61\xc2H^\n\\\n\rdouble.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12x\n\x06\x66inite\x18\x08 \x01(\x08\x42`\xc2H]\n[\n\rdouble.finite\x1aJrules.finite ? (this.isNan() || this.isInf() ? \'must be finite\' : \'\') : \'\'R\x06\x66inite\x12\x35\n\x07\x65xample\x18\t \x03(\x01\x42\x1b\xc2H\x18\n\x16\n\x0e\x64ouble.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xde\x14\n\nInt32Rules\x12\x84\x01\n\x05\x63onst\x18\x01 \x01(\x05\x42n\xc2Hk\ni\n\x0bint32.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x88\x01\n\x02lt\x18\x02 \x01(\x05\x42v\xc2Hs\nq\n\x08int32.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\x9a\x01\n\x03lte\x18\x03 \x01(\x05\x42\x85\x01\xc2H\x81\x01\n\x7f\n\tint32.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xfd\x06\n\x02gt\x18\x04 \x01(\x05\x42\xea\x06\xc2H\xe6\x06\nt\n\x08int32.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xad\x01\n\x0bint32.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb5\x01\n\x15int32.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbd\x01\n\x0cint32.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc5\x01\n\x16int32.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xca\x07\n\x03gte\x18\x05 \x01(\x05\x42\xb5\x07\xc2H\xb1\x07\n\x82\x01\n\tint32.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xbc\x01\n\x0cint32.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc4\x01\n\x16int32.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcc\x01\n\rint32.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd4\x01\n\x17int32.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12}\n\x02in\x18\x06 \x03(\x05\x42m\xc2Hj\nh\n\x08int32.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12w\n\x06not_in\x18\x07 \x03(\x05\x42`\xc2H]\n[\n\x0cint32.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x34\n\x07\x65xample\x18\x08 \x03(\x05\x42\x1a\xc2H\x17\n\x15\n\rint32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xde\x14\n\nInt64Rules\x12\x84\x01\n\x05\x63onst\x18\x01 \x01(\x03\x42n\xc2Hk\ni\n\x0bint64.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x88\x01\n\x02lt\x18\x02 \x01(\x03\x42v\xc2Hs\nq\n\x08int64.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\x9a\x01\n\x03lte\x18\x03 \x01(\x03\x42\x85\x01\xc2H\x81\x01\n\x7f\n\tint64.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xfd\x06\n\x02gt\x18\x04 \x01(\x03\x42\xea\x06\xc2H\xe6\x06\nt\n\x08int64.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xad\x01\n\x0bint64.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb5\x01\n\x15int64.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbd\x01\n\x0cint64.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc5\x01\n\x16int64.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xca\x07\n\x03gte\x18\x05 \x01(\x03\x42\xb5\x07\xc2H\xb1\x07\n\x82\x01\n\tint64.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xbc\x01\n\x0cint64.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc4\x01\n\x16int64.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcc\x01\n\rint64.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd4\x01\n\x17int64.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12}\n\x02in\x18\x06 \x03(\x03\x42m\xc2Hj\nh\n\x08int64.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12w\n\x06not_in\x18\x07 \x03(\x03\x42`\xc2H]\n[\n\x0cint64.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x34\n\x07\x65xample\x18\t \x03(\x03\x42\x1a\xc2H\x17\n\x15\n\rint64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xf0\x14\n\x0bUInt32Rules\x12\x85\x01\n\x05\x63onst\x18\x01 \x01(\rBo\xc2Hl\nj\n\x0cuint32.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x89\x01\n\x02lt\x18\x02 \x01(\rBw\xc2Ht\nr\n\tuint32.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\x9c\x01\n\x03lte\x18\x03 \x01(\rB\x87\x01\xc2H\x83\x01\n\x80\x01\n\nuint32.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x82\x07\n\x02gt\x18\x04 \x01(\rB\xef\x06\xc2H\xeb\x06\nu\n\tuint32.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xae\x01\n\x0cuint32.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb6\x01\n\x16uint32.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbe\x01\n\ruint32.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc6\x01\n\x17uint32.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xcf\x07\n\x03gte\x18\x05 \x01(\rB\xba\x07\xc2H\xb6\x07\n\x83\x01\n\nuint32.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xbd\x01\n\ruint32.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc5\x01\n\x17uint32.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcd\x01\n\x0euint32.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd5\x01\n\x18uint32.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12~\n\x02in\x18\x06 \x03(\rBn\xc2Hk\ni\n\tuint32.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12x\n\x06not_in\x18\x07 \x03(\rBa\xc2H^\n\\\n\ruint32.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\rB\x1b\xc2H\x18\n\x16\n\x0euint32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xf0\x14\n\x0bUInt64Rules\x12\x85\x01\n\x05\x63onst\x18\x01 \x01(\x04\x42o\xc2Hl\nj\n\x0cuint64.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x89\x01\n\x02lt\x18\x02 \x01(\x04\x42w\xc2Ht\nr\n\tuint64.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\x9c\x01\n\x03lte\x18\x03 \x01(\x04\x42\x87\x01\xc2H\x83\x01\n\x80\x01\n\nuint64.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x82\x07\n\x02gt\x18\x04 \x01(\x04\x42\xef\x06\xc2H\xeb\x06\nu\n\tuint64.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xae\x01\n\x0cuint64.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb6\x01\n\x16uint64.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbe\x01\n\ruint64.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc6\x01\n\x17uint64.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xcf\x07\n\x03gte\x18\x05 \x01(\x04\x42\xba\x07\xc2H\xb6\x07\n\x83\x01\n\nuint64.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xbd\x01\n\ruint64.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc5\x01\n\x17uint64.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcd\x01\n\x0euint64.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd5\x01\n\x18uint64.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12~\n\x02in\x18\x06 \x03(\x04\x42n\xc2Hk\ni\n\tuint64.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12x\n\x06not_in\x18\x07 \x03(\x04\x42\x61\xc2H^\n\\\n\ruint64.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\x04\x42\x1b\xc2H\x18\n\x16\n\x0euint64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xf0\x14\n\x0bSInt32Rules\x12\x85\x01\n\x05\x63onst\x18\x01 \x01(\x11\x42o\xc2Hl\nj\n\x0csint32.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x89\x01\n\x02lt\x18\x02 \x01(\x11\x42w\xc2Ht\nr\n\tsint32.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\x9c\x01\n\x03lte\x18\x03 \x01(\x11\x42\x87\x01\xc2H\x83\x01\n\x80\x01\n\nsint32.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x82\x07\n\x02gt\x18\x04 \x01(\x11\x42\xef\x06\xc2H\xeb\x06\nu\n\tsint32.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xae\x01\n\x0csint32.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb6\x01\n\x16sint32.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbe\x01\n\rsint32.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc6\x01\n\x17sint32.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xcf\x07\n\x03gte\x18\x05 \x01(\x11\x42\xba\x07\xc2H\xb6\x07\n\x83\x01\n\nsint32.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xbd\x01\n\rsint32.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc5\x01\n\x17sint32.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcd\x01\n\x0esint32.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd5\x01\n\x18sint32.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12~\n\x02in\x18\x06 \x03(\x11\x42n\xc2Hk\ni\n\tsint32.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12x\n\x06not_in\x18\x07 \x03(\x11\x42\x61\xc2H^\n\\\n\rsint32.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\x11\x42\x1b\xc2H\x18\n\x16\n\x0esint32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xf0\x14\n\x0bSInt64Rules\x12\x85\x01\n\x05\x63onst\x18\x01 \x01(\x12\x42o\xc2Hl\nj\n\x0csint64.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x89\x01\n\x02lt\x18\x02 \x01(\x12\x42w\xc2Ht\nr\n\tsint64.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\x9c\x01\n\x03lte\x18\x03 \x01(\x12\x42\x87\x01\xc2H\x83\x01\n\x80\x01\n\nsint64.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x82\x07\n\x02gt\x18\x04 \x01(\x12\x42\xef\x06\xc2H\xeb\x06\nu\n\tsint64.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xae\x01\n\x0csint64.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb6\x01\n\x16sint64.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbe\x01\n\rsint64.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc6\x01\n\x17sint64.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xcf\x07\n\x03gte\x18\x05 \x01(\x12\x42\xba\x07\xc2H\xb6\x07\n\x83\x01\n\nsint64.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xbd\x01\n\rsint64.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc5\x01\n\x17sint64.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcd\x01\n\x0esint64.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd5\x01\n\x18sint64.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12~\n\x02in\x18\x06 \x03(\x12\x42n\xc2Hk\ni\n\tsint64.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12x\n\x06not_in\x18\x07 \x03(\x12\x42\x61\xc2H^\n\\\n\rsint64.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x35\n\x07\x65xample\x18\x08 \x03(\x12\x42\x1b\xc2H\x18\n\x16\n\x0esint64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\x81\x15\n\x0c\x46ixed32Rules\x12\x86\x01\n\x05\x63onst\x18\x01 \x01(\x07\x42p\xc2Hm\nk\n\rfixed32.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x8a\x01\n\x02lt\x18\x02 \x01(\x07\x42x\xc2Hu\ns\n\nfixed32.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\x9d\x01\n\x03lte\x18\x03 \x01(\x07\x42\x88\x01\xc2H\x84\x01\n\x81\x01\n\x0b\x66ixed32.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x87\x07\n\x02gt\x18\x04 \x01(\x07\x42\xf4\x06\xc2H\xf0\x06\nv\n\nfixed32.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xaf\x01\n\rfixed32.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb7\x01\n\x17\x66ixed32.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbf\x01\n\x0e\x66ixed32.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc7\x01\n\x18\x66ixed32.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xd4\x07\n\x03gte\x18\x05 \x01(\x07\x42\xbf\x07\xc2H\xbb\x07\n\x84\x01\n\x0b\x66ixed32.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xbe\x01\n\x0e\x66ixed32.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc6\x01\n\x18\x66ixed32.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xce\x01\n\x0f\x66ixed32.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd6\x01\n\x19\x66ixed32.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12\x7f\n\x02in\x18\x06 \x03(\x07\x42o\xc2Hl\nj\n\nfixed32.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12y\n\x06not_in\x18\x07 \x03(\x07\x42\x62\xc2H_\n]\n\x0e\x66ixed32.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x36\n\x07\x65xample\x18\x08 \x03(\x07\x42\x1c\xc2H\x19\n\x17\n\x0f\x66ixed32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\x81\x15\n\x0c\x46ixed64Rules\x12\x86\x01\n\x05\x63onst\x18\x01 \x01(\x06\x42p\xc2Hm\nk\n\rfixed64.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x8a\x01\n\x02lt\x18\x02 \x01(\x06\x42x\xc2Hu\ns\n\nfixed64.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\x9d\x01\n\x03lte\x18\x03 \x01(\x06\x42\x88\x01\xc2H\x84\x01\n\x81\x01\n\x0b\x66ixed64.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x87\x07\n\x02gt\x18\x04 \x01(\x06\x42\xf4\x06\xc2H\xf0\x06\nv\n\nfixed64.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xaf\x01\n\rfixed64.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb7\x01\n\x17\x66ixed64.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xbf\x01\n\x0e\x66ixed64.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc7\x01\n\x18\x66ixed64.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xd4\x07\n\x03gte\x18\x05 \x01(\x06\x42\xbf\x07\xc2H\xbb\x07\n\x84\x01\n\x0b\x66ixed64.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xbe\x01\n\x0e\x66ixed64.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc6\x01\n\x18\x66ixed64.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xce\x01\n\x0f\x66ixed64.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd6\x01\n\x19\x66ixed64.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12\x7f\n\x02in\x18\x06 \x03(\x06\x42o\xc2Hl\nj\n\nfixed64.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12y\n\x06not_in\x18\x07 \x03(\x06\x42\x62\xc2H_\n]\n\x0e\x66ixed64.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x36\n\x07\x65xample\x18\x08 \x03(\x06\x42\x1c\xc2H\x19\n\x17\n\x0f\x66ixed64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\x93\x15\n\rSFixed32Rules\x12\x87\x01\n\x05\x63onst\x18\x01 \x01(\x0f\x42q\xc2Hn\nl\n\x0esfixed32.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x8b\x01\n\x02lt\x18\x02 \x01(\x0f\x42y\xc2Hv\nt\n\x0bsfixed32.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\x9e\x01\n\x03lte\x18\x03 \x01(\x0f\x42\x89\x01\xc2H\x85\x01\n\x82\x01\n\x0csfixed32.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x8c\x07\n\x02gt\x18\x04 \x01(\x0f\x42\xf9\x06\xc2H\xf5\x06\nw\n\x0bsfixed32.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xb0\x01\n\x0esfixed32.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb8\x01\n\x18sfixed32.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc0\x01\n\x0fsfixed32.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc8\x01\n\x19sfixed32.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xd9\x07\n\x03gte\x18\x05 \x01(\x0f\x42\xc4\x07\xc2H\xc0\x07\n\x85\x01\n\x0csfixed32.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xbf\x01\n\x0fsfixed32.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc7\x01\n\x19sfixed32.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcf\x01\n\x10sfixed32.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd7\x01\n\x1asfixed32.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12\x80\x01\n\x02in\x18\x06 \x03(\x0f\x42p\xc2Hm\nk\n\x0bsfixed32.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12z\n\x06not_in\x18\x07 \x03(\x0f\x42\x63\xc2H`\n^\n\x0fsfixed32.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x37\n\x07\x65xample\x18\x08 \x03(\x0f\x42\x1d\xc2H\x1a\n\x18\n\x10sfixed32.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\x93\x15\n\rSFixed64Rules\x12\x87\x01\n\x05\x63onst\x18\x01 \x01(\x10\x42q\xc2Hn\nl\n\x0esfixed64.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x8b\x01\n\x02lt\x18\x02 \x01(\x10\x42y\xc2Hv\nt\n\x0bsfixed64.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\x9e\x01\n\x03lte\x18\x03 \x01(\x10\x42\x89\x01\xc2H\x85\x01\n\x82\x01\n\x0csfixed64.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\x8c\x07\n\x02gt\x18\x04 \x01(\x10\x42\xf9\x06\xc2H\xf5\x06\nw\n\x0bsfixed64.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xb0\x01\n\x0esfixed64.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb8\x01\n\x18sfixed64.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc0\x01\n\x0fsfixed64.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc8\x01\n\x19sfixed64.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xd9\x07\n\x03gte\x18\x05 \x01(\x10\x42\xc4\x07\xc2H\xc0\x07\n\x85\x01\n\x0csfixed64.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xbf\x01\n\x0fsfixed64.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc7\x01\n\x19sfixed64.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcf\x01\n\x10sfixed64.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd7\x01\n\x1asfixed64.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12\x80\x01\n\x02in\x18\x06 \x03(\x10\x42p\xc2Hm\nk\n\x0bsfixed64.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12z\n\x06not_in\x18\x07 \x03(\x10\x42\x63\xc2H`\n^\n\x0fsfixed64.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x37\n\x07\x65xample\x18\x08 \x03(\x10\x42\x1d\xc2H\x1a\n\x18\n\x10sfixed64.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\xd1\x01\n\tBoolRules\x12\x83\x01\n\x05\x63onst\x18\x01 \x01(\x08\x42m\xc2Hj\nh\n\nbool.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\x33\n\x07\x65xample\x18\x02 \x03(\x08\x42\x19\xc2H\x16\n\x14\n\x0c\x62ool.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xcf?\n\x0bStringRules\x12\x87\x01\n\x05\x63onst\x18\x01 \x01(\tBq\xc2Hn\nl\n\x0cstring.const\x1a\\this != getField(rules, \'const\') ? \'must equal `%s`\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12v\n\x03len\x18\x13 \x01(\x04\x42\x64\xc2Ha\n_\n\nstring.len\x1aQuint(this.size()) != rules.len ? \'must be %s characters\'.format([rules.len]) : \'\'R\x03len\x12\x91\x01\n\x07min_len\x18\x02 \x01(\x04\x42x\xc2Hu\ns\n\x0estring.min_len\x1a\x61uint(this.size()) < rules.min_len ? \'must be at least %s characters\'.format([rules.min_len]) : \'\'R\x06minLen\x12\x90\x01\n\x07max_len\x18\x03 \x01(\x04\x42w\xc2Ht\nr\n\x0estring.max_len\x1a`uint(this.size()) > rules.max_len ? \'must be at most %s characters\'.format([rules.max_len]) : \'\'R\x06maxLen\x12\x95\x01\n\tlen_bytes\x18\x14 \x01(\x04\x42x\xc2Hu\ns\n\x10string.len_bytes\x1a_uint(bytes(this).size()) != rules.len_bytes ? \'must be %s bytes\'.format([rules.len_bytes]) : \'\'R\x08lenBytes\x12\x9e\x01\n\tmin_bytes\x18\x04 \x01(\x04\x42\x80\x01\xc2H}\n{\n\x10string.min_bytes\x1aguint(bytes(this).size()) < rules.min_bytes ? \'must be at least %s bytes\'.format([rules.min_bytes]) : \'\'R\x08minBytes\x12\x9c\x01\n\tmax_bytes\x18\x05 \x01(\x04\x42\x7f\xc2H|\nz\n\x10string.max_bytes\x1a\x66uint(bytes(this).size()) > rules.max_bytes ? \'must be at most %s bytes\'.format([rules.max_bytes]) : \'\'R\x08maxBytes\x12\x90\x01\n\x07pattern\x18\x06 \x01(\tBv\xc2Hs\nq\n\x0estring.pattern\x1a_!this.matches(rules.pattern) ? \'does not match regex pattern `%s`\'.format([rules.pattern]) : \'\'R\x07pattern\x12\x86\x01\n\x06prefix\x18\x07 \x01(\tBn\xc2Hk\ni\n\rstring.prefix\x1aX!this.startsWith(rules.prefix) ? \'does not have prefix `%s`\'.format([rules.prefix]) : \'\'R\x06prefix\x12\x84\x01\n\x06suffix\x18\x08 \x01(\tBl\xc2Hi\ng\n\rstring.suffix\x1aV!this.endsWith(rules.suffix) ? \'does not have suffix `%s`\'.format([rules.suffix]) : \'\'R\x06suffix\x12\x94\x01\n\x08\x63ontains\x18\t \x01(\tBx\xc2Hu\ns\n\x0fstring.contains\x1a`!this.contains(rules.contains) ? \'does not contain substring `%s`\'.format([rules.contains]) : \'\'R\x08\x63ontains\x12\x9e\x01\n\x0cnot_contains\x18\x17 \x01(\tB{\xc2Hx\nv\n\x13string.not_contains\x1a_this.contains(rules.not_contains) ? \'contains substring `%s`\'.format([rules.not_contains]) : \'\'R\x0bnotContains\x12~\n\x02in\x18\n \x03(\tBn\xc2Hk\ni\n\tstring.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12x\n\x06not_in\x18\x0b \x03(\tBa\xc2H^\n\\\n\rstring.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\xe0\x01\n\x05\x65mail\x18\x0c \x01(\x08\x42\xc7\x01\xc2H\xc3\x01\n[\n\x0cstring.email\x12\x1dmust be a valid email address\x1a,!rules.email || this == \'\' || this.isEmail()\nd\n\x12string.email_empty\x12\x32value is empty, which is not a valid email address\x1a\x1a!rules.email || this != \'\'H\x00R\x05\x65mail\x12\xeb\x01\n\x08hostname\x18\r \x01(\x08\x42\xcc\x01\xc2H\xc8\x01\n_\n\x0fstring.hostname\x12\x18must be a valid hostname\x1a\x32!rules.hostname || this == \'\' || this.isHostname()\ne\n\x15string.hostname_empty\x12-value is empty, which is not a valid hostname\x1a\x1d!rules.hostname || this != \'\'H\x00R\x08hostname\x12\xc5\x01\n\x02ip\x18\x0e \x01(\x08\x42\xb2\x01\xc2H\xae\x01\nO\n\tstring.ip\x12\x1amust be a valid IP address\x1a&!rules.ip || this == \'\' || this.isIp()\n[\n\x0fstring.ip_empty\x12/value is empty, which is not a valid IP address\x1a\x17!rules.ip || this != \'\'H\x00R\x02ip\x12\xd6\x01\n\x04ipv4\x18\x0f \x01(\x08\x42\xbf\x01\xc2H\xbb\x01\nV\n\x0bstring.ipv4\x12\x1cmust be a valid IPv4 address\x1a)!rules.ipv4 || this == \'\' || this.isIp(4)\na\n\x11string.ipv4_empty\x12\x31value is empty, which is not a valid IPv4 address\x1a\x19!rules.ipv4 || this != \'\'H\x00R\x04ipv4\x12\xd6\x01\n\x04ipv6\x18\x10 \x01(\x08\x42\xbf\x01\xc2H\xbb\x01\nV\n\x0bstring.ipv6\x12\x1cmust be a valid IPv6 address\x1a)!rules.ipv6 || this == \'\' || this.isIp(6)\na\n\x11string.ipv6_empty\x12\x31value is empty, which is not a valid IPv6 address\x1a\x19!rules.ipv6 || this != \'\'H\x00R\x04ipv6\x12\xbe\x01\n\x03uri\x18\x11 \x01(\x08\x42\xa9\x01\xc2H\xa5\x01\nK\n\nstring.uri\x12\x13must be a valid URI\x1a(!rules.uri || this == \'\' || this.isUri()\nV\n\x10string.uri_empty\x12(value is empty, which is not a valid URI\x1a\x18!rules.uri || this != \'\'H\x00R\x03uri\x12r\n\x07uri_ref\x18\x12 \x01(\x08\x42W\xc2HT\nR\n\x0estring.uri_ref\x12\x1dmust be a valid URI Reference\x1a!!rules.uri_ref || this.isUriRef()H\x00R\x06uriRef\x12\x92\x02\n\x07\x61\x64\x64ress\x18\x15 \x01(\x08\x42\xf5\x01\xc2H\xf1\x01\n{\n\x0estring.address\x12\'must be a valid hostname, or ip address\x1a@!rules.address || this == \'\' || this.isHostname() || this.isIp()\nr\n\x14string.address_empty\x12!rules.ipv4_with_prefixlen || this == \'\' || this.isIpPrefix(4)\n\x92\x01\n string.ipv4_with_prefixlen_empty\x12\x44value is empty, which is not a valid IPv4 address with prefix length\x1a(!rules.ipv4_with_prefixlen || this != \'\'H\x00R\x11ipv4WithPrefixlen\x12\xdc\x02\n\x13ipv6_with_prefixlen\x18\x1c \x01(\x08\x42\xa9\x02\xc2H\xa5\x02\n\x8d\x01\n\x1astring.ipv6_with_prefixlen\x12/must be a valid IPv6 address with prefix length\x1a>!rules.ipv6_with_prefixlen || this == \'\' || this.isIpPrefix(6)\n\x92\x01\n string.ipv6_with_prefixlen_empty\x12\x44value is empty, which is not a valid IPv6 address with prefix length\x1a(!rules.ipv6_with_prefixlen || this != \'\'H\x00R\x11ipv6WithPrefixlen\x12\xf6\x01\n\tip_prefix\x18\x1d \x01(\x08\x42\xd6\x01\xc2H\xd2\x01\nf\n\x10string.ip_prefix\x12\x19must be a valid IP prefix\x1a\x37!rules.ip_prefix || this == \'\' || this.isIpPrefix(true)\nh\n\x16string.ip_prefix_empty\x12.value is empty, which is not a valid IP prefix\x1a\x1e!rules.ip_prefix || this != \'\'H\x00R\x08ipPrefix\x12\x89\x02\n\x0bipv4_prefix\x18\x1e \x01(\x08\x42\xe5\x01\xc2H\xe1\x01\no\n\x12string.ipv4_prefix\x12\x1bmust be a valid IPv4 prefix\x1a!rules.host_and_port || this == \'\' || this.isHostAndPort(true)\ny\n\x1astring.host_and_port_empty\x12\x37value is empty, which is not a valid host and port pair\x1a\"!rules.host_and_port || this != \'\'H\x00R\x0bhostAndPort\x12\xf4\x01\n\x04ulid\x18# \x01(\x08\x42\xdd\x01\xc2H\xd9\x01\n|\n\x0bstring.ulid\x12\x14must be a valid ULID\x1aW!rules.ulid || this == \'\' || this.matches(\'^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$\')\nY\n\x11string.ulid_empty\x12)value is empty, which is not a valid ULID\x1a\x19!rules.ulid || this != \'\'H\x00R\x04ulid\x12\xe1\x02\n\x0cprotobuf_fqn\x18% \x01(\x08\x42\xbb\x02\xc2H\xb7\x02\n\xaf\x01\n\x13string.protobuf_fqn\x12-must be a valid fully-qualified Protobuf name\x1ai!rules.protobuf_fqn || this == \'\' || this.matches(\'^[A-Za-z_][A-Za-z_0-9]*(\\\\.[A-Za-z_][A-Za-z_0-9]*)*$\')\n\x82\x01\n\x19string.protobuf_fqn_empty\x12\x42value is empty, which is not a valid fully-qualified Protobuf name\x1a!!rules.protobuf_fqn || this != \'\'H\x00R\x0bprotobufFqn\x12\xa1\x03\n\x10protobuf_dot_fqn\x18& \x01(\x08\x42\xf4\x02\xc2H\xf0\x02\n\xcd\x01\n\x17string.protobuf_dot_fqn\x12@must be a valid fully-qualified Protobuf name with a leading dot\x1ap!rules.protobuf_dot_fqn || this == \'\' || this.matches(\'^\\\\.[A-Za-z_][A-Za-z_0-9]*(\\\\.[A-Za-z_][A-Za-z_0-9]*)*$\')\n\x9d\x01\n\x1dstring.protobuf_dot_fqn_empty\x12Uvalue is empty, which is not a valid fully-qualified Protobuf name with a leading dot\x1a%!rules.protobuf_dot_fqn || this != \'\'H\x00R\x0eprotobufDotFqn\x12\xac\x05\n\x10well_known_regex\x18\x18 \x01(\x0e\x32\x18.buf.validate.KnownRegexB\xe5\x04\xc2H\xe1\x04\n\xea\x01\n#string.well_known_regex.header_name\x12 must be a valid HTTP header name\x1a\xa0\x01rules.well_known_regex != 1 || this == \'\' || this.matches(!has(rules.strict) || rules.strict ?\'^:?[0-9a-zA-Z!#$%&\\\'*+-.^_|~\\x60]+$\' :\'^[^\\u0000\\u000A\\u000D]+$\')\n\x8d\x01\n)string.well_known_regex.header_name_empty\x12\x35value is empty, which is not a valid HTTP header name\x1a)rules.well_known_regex != 1 || this != \'\'\n\xe1\x01\n$string.well_known_regex.header_value\x12!must be a valid HTTP header value\x1a\x95\x01rules.well_known_regex != 2 || this.matches(!has(rules.strict) || rules.strict ?\'^[^\\u0000-\\u0008\\u000A-\\u001F\\u007F]*$\' :\'^[^\\u0000\\u000A\\u000D]*$\')H\x00R\x0ewellKnownRegex\x12\x16\n\x06strict\x18\x19 \x01(\x08R\x06strict\x12\x35\n\x07\x65xample\x18\" \x03(\tB\x1b\xc2H\x18\n\x16\n\x0estring.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0c\n\nwell_known\"\xca\x12\n\nBytesRules\x12\x81\x01\n\x05\x63onst\x18\x01 \x01(\x0c\x42k\xc2Hh\nf\n\x0b\x62ytes.const\x1aWthis != getField(rules, \'const\') ? \'must be %x\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12p\n\x03len\x18\r \x01(\x04\x42^\xc2H[\nY\n\tbytes.len\x1aLuint(this.size()) != rules.len ? \'must be %s bytes\'.format([rules.len]) : \'\'R\x03len\x12\x8b\x01\n\x07min_len\x18\x02 \x01(\x04\x42r\xc2Ho\nm\n\rbytes.min_len\x1a\\uint(this.size()) < rules.min_len ? \'must be at least %s bytes\'.format([rules.min_len]) : \'\'R\x06minLen\x12\x8a\x01\n\x07max_len\x18\x03 \x01(\x04\x42q\xc2Hn\nl\n\rbytes.max_len\x1a[uint(this.size()) > rules.max_len ? \'must be at most %s bytes\'.format([rules.max_len]) : \'\'R\x06maxLen\x12\x93\x01\n\x07pattern\x18\x04 \x01(\tBy\xc2Hv\nt\n\rbytes.pattern\x1a\x63!string(this).matches(rules.pattern) ? \'must match regex pattern `%s`\'.format([rules.pattern]) : \'\'R\x07pattern\x12\x83\x01\n\x06prefix\x18\x05 \x01(\x0c\x42k\xc2Hh\nf\n\x0c\x62ytes.prefix\x1aV!this.startsWith(rules.prefix) ? \'does not have prefix %x\'.format([rules.prefix]) : \'\'R\x06prefix\x12\x81\x01\n\x06suffix\x18\x06 \x01(\x0c\x42i\xc2Hf\nd\n\x0c\x62ytes.suffix\x1aT!this.endsWith(rules.suffix) ? \'does not have suffix %x\'.format([rules.suffix]) : \'\'R\x06suffix\x12\x87\x01\n\x08\x63ontains\x18\x07 \x01(\x0c\x42k\xc2Hh\nf\n\x0e\x62ytes.contains\x1aT!this.contains(rules.contains) ? \'does not contain %x\'.format([rules.contains]) : \'\'R\x08\x63ontains\x12\xa5\x01\n\x02in\x18\x08 \x03(\x0c\x42\x94\x01\xc2H\x90\x01\n\x8d\x01\n\x08\x62ytes.in\x1a\x80\x01getField(rules, \'in\').size() > 0 && !(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12w\n\x06not_in\x18\t \x03(\x0c\x42`\xc2H]\n[\n\x0c\x62ytes.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\xe9\x01\n\x02ip\x18\n \x01(\x08\x42\xd6\x01\xc2H\xd2\x01\nn\n\x08\x62ytes.ip\x12\x1amust be a valid IP address\x1a\x46!rules.ip || this.size() == 0 || this.size() == 4 || this.size() == 16\n`\n\x0e\x62ytes.ip_empty\x12/value is empty, which is not a valid IP address\x1a\x1d!rules.ip || this.size() != 0H\x00R\x02ip\x12\xe4\x01\n\x04ipv4\x18\x0b \x01(\x08\x42\xcd\x01\xc2H\xc9\x01\n_\n\nbytes.ipv4\x12\x1cmust be a valid IPv4 address\x1a\x33!rules.ipv4 || this.size() == 0 || this.size() == 4\nf\n\x10\x62ytes.ipv4_empty\x12\x31value is empty, which is not a valid IPv4 address\x1a\x1f!rules.ipv4 || this.size() != 0H\x00R\x04ipv4\x12\xe5\x01\n\x04ipv6\x18\x0c \x01(\x08\x42\xce\x01\xc2H\xca\x01\n`\n\nbytes.ipv6\x12\x1cmust be a valid IPv6 address\x1a\x34!rules.ipv6 || this.size() == 0 || this.size() == 16\nf\n\x10\x62ytes.ipv6_empty\x12\x31value is empty, which is not a valid IPv6 address\x1a\x1f!rules.ipv6 || this.size() != 0H\x00R\x04ipv6\x12\xd5\x01\n\x04uuid\x18\x0f \x01(\x08\x42\xbe\x01\xc2H\xba\x01\nX\n\nbytes.uuid\x12\x14must be a valid UUID\x1a\x34!rules.uuid || this.size() == 0 || this.size() == 16\n^\n\x10\x62ytes.uuid_empty\x12)value is empty, which is not a valid UUID\x1a\x1f!rules.uuid || this.size() != 0H\x00R\x04uuid\x12\x34\n\x07\x65xample\x18\x0e \x03(\x0c\x42\x1a\xc2H\x17\n\x15\n\rbytes.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0c\n\nwell_known\"\xea\x03\n\tEnumRules\x12\x83\x01\n\x05\x63onst\x18\x01 \x01(\x05\x42m\xc2Hj\nh\n\nenum.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12!\n\x0c\x64\x65\x66ined_only\x18\x02 \x01(\x08R\x0b\x64\x65\x66inedOnly\x12|\n\x02in\x18\x03 \x03(\x05\x42l\xc2Hi\ng\n\x07\x65num.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12v\n\x06not_in\x18\x04 \x03(\x05\x42_\xc2H\\\nZ\n\x0b\x65num.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12\x33\n\x07\x65xample\x18\x05 \x03(\x05\x42\x19\xc2H\x16\n\x14\n\x0c\x65num.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\x90\x04\n\rRepeatedRules\x12\xa0\x01\n\tmin_items\x18\x01 \x01(\x04\x42\x82\x01\xc2H\x7f\n}\n\x12repeated.min_items\x1aguint(this.size()) < rules.min_items ? \'must contain at least %d item(s)\'.format([rules.min_items]) : \'\'R\x08minItems\x12\xa6\x01\n\tmax_items\x18\x02 \x01(\x04\x42\x88\x01\xc2H\x84\x01\n\x81\x01\n\x12repeated.max_items\x1akuint(this.size()) > rules.max_items ? \'must contain no more than %s item(s)\'.format([rules.max_items]) : \'\'R\x08maxItems\x12x\n\x06unique\x18\x03 \x01(\x08\x42`\xc2H]\n[\n\x0frepeated.unique\x12(repeated value must contain unique items\x1a\x1e!rules.unique || this.unique()R\x06unique\x12.\n\x05items\x18\x04 \x01(\x0b\x32\x18.buf.validate.FieldRulesR\x05items*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xac\x03\n\x08MapRules\x12\x99\x01\n\tmin_pairs\x18\x01 \x01(\x04\x42|\xc2Hy\nw\n\rmap.min_pairs\x1a\x66uint(this.size()) < rules.min_pairs ? \'map must be at least %d entries\'.format([rules.min_pairs]) : \'\'R\x08minPairs\x12\x98\x01\n\tmax_pairs\x18\x02 \x01(\x04\x42{\xc2Hx\nv\n\rmap.max_pairs\x1a\x65uint(this.size()) > rules.max_pairs ? \'map must be at most %d entries\'.format([rules.max_pairs]) : \'\'R\x08maxPairs\x12,\n\x04keys\x18\x04 \x01(\x0b\x32\x18.buf.validate.FieldRulesR\x04keys\x12\x30\n\x06values\x18\x05 \x01(\x0b\x32\x18.buf.validate.FieldRulesR\x06values*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"1\n\x08\x41nyRules\x12\x0e\n\x02in\x18\x02 \x03(\tR\x02in\x12\x15\n\x06not_in\x18\x03 \x03(\tR\x05notIn\"\xec\x16\n\rDurationRules\x12\xa2\x01\n\x05\x63onst\x18\x02 \x01(\x0b\x32\x19.google.protobuf.DurationBq\xc2Hn\nl\n\x0e\x64uration.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\xa6\x01\n\x02lt\x18\x03 \x01(\x0b\x32\x19.google.protobuf.DurationBy\xc2Hv\nt\n\x0b\x64uration.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xb9\x01\n\x03lte\x18\x04 \x01(\x0b\x32\x19.google.protobuf.DurationB\x89\x01\xc2H\x85\x01\n\x82\x01\n\x0c\x64uration.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12\xa7\x07\n\x02gt\x18\x05 \x01(\x0b\x32\x19.google.protobuf.DurationB\xf9\x06\xc2H\xf5\x06\nw\n\x0b\x64uration.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xb0\x01\n\x0e\x64uration.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb8\x01\n\x18\x64uration.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc0\x01\n\x0f\x64uration.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc8\x01\n\x19\x64uration.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xf4\x07\n\x03gte\x18\x06 \x01(\x0b\x32\x19.google.protobuf.DurationB\xc4\x07\xc2H\xc0\x07\n\x85\x01\n\x0c\x64uration.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xbf\x01\n\x0f\x64uration.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc7\x01\n\x19\x64uration.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xcf\x01\n\x10\x64uration.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd7\x01\n\x1a\x64uration.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12\x9b\x01\n\x02in\x18\x07 \x03(\x0b\x32\x19.google.protobuf.DurationBp\xc2Hm\nk\n\x0b\x64uration.in\x1a\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12\x95\x01\n\x06not_in\x18\x08 \x03(\x0b\x32\x19.google.protobuf.DurationBc\xc2H`\n^\n\x0f\x64uration.not_in\x1aKthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'R\x05notIn\x12R\n\x07\x65xample\x18\t \x03(\x0b\x32\x19.google.protobuf.DurationB\x1d\xc2H\x1a\n\x18\n\x10\x64uration.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"\x86\x06\n\x0e\x46ieldMaskRules\x12\xc0\x01\n\x05\x63onst\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x8d\x01\xc2H\x89\x01\n\x86\x01\n\x10\x66ield_mask.const\x1arthis.paths != getField(rules, \'const\').paths ? \'must equal paths %s\'.format([getField(rules, \'const\').paths]) : \'\'R\x05\x63onst\x12\xd7\x01\n\x02in\x18\x02 \x03(\tB\xc6\x01\xc2H\xc2\x01\n\xbf\x01\n\rfield_mask.in\x1a\xad\x01!this.paths.all(p, p in getField(rules, \'in\') || getField(rules, \'in\').exists(f, p.startsWith(f+\'.\'))) ? \'must only contain paths in %s\'.format([getField(rules, \'in\')]) : \'\'R\x02in\x12\xf4\x01\n\x06not_in\x18\x03 \x03(\tB\xdc\x01\xc2H\xd8\x01\n\xd5\x01\n\x11\x66ield_mask.not_in\x1a\xbf\x01!this.paths.all(p, !(p in getField(rules, \'not_in\') || getField(rules, \'not_in\').exists(f, p.startsWith(f+\'.\')))) ? \'must not contain any paths in %s\'.format([getField(rules, \'not_in\')]) : \'\'R\x05notIn\x12U\n\x07\x65xample\x18\x04 \x03(\x0b\x32\x1a.google.protobuf.FieldMaskB\x1f\xc2H\x1c\n\x1a\n\x12\x66ield_mask.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\"\xe8\x17\n\x0eTimestampRules\x12\xa4\x01\n\x05\x63onst\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampBr\xc2Ho\nm\n\x0ftimestamp.const\x1aZthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'R\x05\x63onst\x12\xa8\x01\n\x02lt\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampBz\xc2Hw\nu\n\x0ctimestamp.lt\x1a\x65!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'H\x00R\x02lt\x12\xbb\x01\n\x03lte\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x8a\x01\xc2H\x86\x01\n\x83\x01\n\rtimestamp.lte\x1ar!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'H\x00R\x03lte\x12m\n\x06lt_now\x18\x07 \x01(\x08\x42T\xc2HQ\nO\n\x10timestamp.lt_now\x1a;(rules.lt_now && this > now) ? \'must be less than now\' : \'\'H\x00R\x05ltNow\x12\xad\x07\n\x02gt\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\xfe\x06\xc2H\xfa\x06\nx\n\x0ctimestamp.gt\x1ah!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\xb1\x01\n\x0ftimestamp.gt_lt\x1a\x9d\x01has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xb9\x01\n\x19timestamp.gt_lt_exclusive\x1a\x9b\x01has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\xc1\x01\n\x10timestamp.gt_lte\x1a\xac\x01has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\xc9\x01\n\x1atimestamp.gt_lte_exclusive\x1a\xaa\x01has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'H\x01R\x02gt\x12\xfa\x07\n\x03gte\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\xc9\x07\xc2H\xc5\x07\n\x86\x01\n\rtimestamp.gte\x1au!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\xc0\x01\n\x10timestamp.gte_lt\x1a\xab\x01has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xc8\x01\n\x1atimestamp.gte_lt_exclusive\x1a\xa9\x01has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\xd0\x01\n\x11timestamp.gte_lte\x1a\xba\x01has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\xd8\x01\n\x1btimestamp.gte_lte_exclusive\x1a\xb8\x01has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'H\x01R\x03gte\x12p\n\x06gt_now\x18\x08 \x01(\x08\x42W\xc2HT\nR\n\x10timestamp.gt_now\x1a>(rules.gt_now && this < now) ? \'must be greater than now\' : \'\'H\x01R\x05gtNow\x12\xb9\x01\n\x06within\x18\t \x01(\x0b\x32\x19.google.protobuf.DurationB\x85\x01\xc2H\x81\x01\n\x7f\n\x10timestamp.within\x1akthis < now-rules.within || this > now+rules.within ? \'must be within %s of now\'.format([rules.within]) : \'\'R\x06within\x12T\n\x07\x65xample\x18\n \x03(\x0b\x32\x1a.google.protobuf.TimestampB\x1e\xc2H\x1b\n\x19\n\x11timestamp.example\x1a\x04trueR\x07\x65xample*\t\x08\xe8\x07\x10\x80\x80\x80\x80\x02\x42\x0b\n\tless_thanB\x0e\n\x0cgreater_than\"E\n\nViolations\x12\x37\n\nviolations\x18\x01 \x03(\x0b\x32\x17.buf.validate.ViolationR\nviolations\"\xc5\x01\n\tViolation\x12-\n\x05\x66ield\x18\x05 \x01(\x0b\x32\x17.buf.validate.FieldPathR\x05\x66ield\x12+\n\x04rule\x18\x06 \x01(\x0b\x32\x17.buf.validate.FieldPathR\x04rule\x12\x17\n\x07rule_id\x18\x02 \x01(\tR\x06ruleId\x12\x18\n\x07message\x18\x03 \x01(\tR\x07message\x12\x17\n\x07\x66or_key\x18\x04 \x01(\x08R\x06\x66orKeyJ\x04\x08\x01\x10\x02R\nfield_path\"G\n\tFieldPath\x12:\n\x08\x65lements\x18\x01 \x03(\x0b\x32\x1e.buf.validate.FieldPathElementR\x08\x65lements\"\xcc\x03\n\x10\x46ieldPathElement\x12!\n\x0c\x66ield_number\x18\x01 \x01(\x05R\x0b\x66ieldNumber\x12\x1d\n\nfield_name\x18\x02 \x01(\tR\tfieldName\x12I\n\nfield_type\x18\x03 \x01(\x0e\x32*.google.protobuf.FieldDescriptorProto.TypeR\tfieldType\x12\x45\n\x08key_type\x18\x04 \x01(\x0e\x32*.google.protobuf.FieldDescriptorProto.TypeR\x07keyType\x12I\n\nvalue_type\x18\x05 \x01(\x0e\x32*.google.protobuf.FieldDescriptorProto.TypeR\tvalueType\x12\x16\n\x05index\x18\x06 \x01(\x04H\x00R\x05index\x12\x1b\n\x08\x62ool_key\x18\x07 \x01(\x08H\x00R\x07\x62oolKey\x12\x19\n\x07int_key\x18\x08 \x01(\x03H\x00R\x06intKey\x12\x1b\n\x08uint_key\x18\t \x01(\x04H\x00R\x07uintKey\x12\x1f\n\nstring_key\x18\n \x01(\tH\x00R\tstringKeyB\x0b\n\tsubscript*\xa1\x01\n\x06Ignore\x12\x16\n\x12IGNORE_UNSPECIFIED\x10\x00\x12\x18\n\x14IGNORE_IF_ZERO_VALUE\x10\x01\x12\x11\n\rIGNORE_ALWAYS\x10\x03\"\x04\x08\x02\x10\x02*\x0cIGNORE_EMPTY*\x0eIGNORE_DEFAULT*\x17IGNORE_IF_DEFAULT_VALUE*\x15IGNORE_IF_UNPOPULATED*n\n\nKnownRegex\x12\x1b\n\x17KNOWN_REGEX_UNSPECIFIED\x10\x00\x12 \n\x1cKNOWN_REGEX_HTTP_HEADER_NAME\x10\x01\x12!\n\x1dKNOWN_REGEX_HTTP_HEADER_VALUE\x10\x02:V\n\x07message\x12\x1f.google.protobuf.MessageOptions\x18\x87\t \x01(\x0b\x32\x1a.buf.validate.MessageRulesR\x07message:N\n\x05oneof\x12\x1d.google.protobuf.OneofOptions\x18\x87\t \x01(\x0b\x32\x18.buf.validate.OneofRulesR\x05oneof:N\n\x05\x66ield\x12\x1d.google.protobuf.FieldOptions\x18\x87\t \x01(\x0b\x32\x18.buf.validate.FieldRulesR\x05\x66ield:]\n\npredefined\x12\x1d.google.protobuf.FieldOptions\x18\x88\t \x01(\x0b\x32\x1d.buf.validate.PredefinedRulesR\npredefinedBn\n\x12\x62uild.buf.validateB\rValidateProtoP\x01ZGbuf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'buf.validate.validate_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n\022build.buf.validateB\rValidateProtoP\001ZGbuf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate' + _globals['_FLOATRULES'].fields_by_name['const']._loaded_options = None + _globals['_FLOATRULES'].fields_by_name['const']._serialized_options = b'\302Hk\ni\n\013float.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_FLOATRULES'].fields_by_name['lt']._loaded_options = None + _globals['_FLOATRULES'].fields_by_name['lt']._serialized_options = b'\302H\206\001\n\203\001\n\010float.lt\032w!has(rules.gte) && !has(rules.gt) && (this.isNan() || this >= rules.lt)? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_FLOATRULES'].fields_by_name['lte']._loaded_options = None + _globals['_FLOATRULES'].fields_by_name['lte']._serialized_options = b'\302H\225\001\n\222\001\n\tfloat.lte\032\204\001!has(rules.gte) && !has(rules.gt) && (this.isNan() || this > rules.lte)? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_FLOATRULES'].fields_by_name['gt']._loaded_options = None + _globals['_FLOATRULES'].fields_by_name['gt']._serialized_options = b'\302H\275\007\n\206\001\n\010float.gt\032z!has(rules.lt) && !has(rules.lte) && (this.isNan() || this <= rules.gt)? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\275\001\n\013float.gt_lt\032\255\001has(rules.lt) && rules.lt >= rules.gt && (this.isNan() || this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\307\001\n\025float.gt_lt_exclusive\032\255\001has(rules.lt) && rules.lt < rules.gt && (this.isNan() || (rules.lt <= this && this <= rules.gt))? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\315\001\n\014float.gt_lte\032\274\001has(rules.lte) && rules.lte >= rules.gt && (this.isNan() || this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\327\001\n\026float.gt_lte_exclusive\032\274\001has(rules.lte) && rules.lte < rules.gt && (this.isNan() || (rules.lte < this && this <= rules.gt))? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_FLOATRULES'].fields_by_name['gte']._loaded_options = None + _globals['_FLOATRULES'].fields_by_name['gte']._serialized_options = b'\302H\210\010\n\225\001\n\tfloat.gte\032\207\001!has(rules.lt) && !has(rules.lte) && (this.isNan() || this < rules.gte)? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\314\001\n\014float.gte_lt\032\273\001has(rules.lt) && rules.lt >= rules.gte && (this.isNan() || this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\326\001\n\026float.gte_lt_exclusive\032\273\001has(rules.lt) && rules.lt < rules.gte && (this.isNan() || (rules.lt <= this && this < rules.gte))? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\334\001\n\rfloat.gte_lte\032\312\001has(rules.lte) && rules.lte >= rules.gte && (this.isNan() || this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\346\001\n\027float.gte_lte_exclusive\032\312\001has(rules.lte) && rules.lte < rules.gte && (this.isNan() || (rules.lte < this && this < rules.gte))? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_FLOATRULES'].fields_by_name['in']._loaded_options = None + _globals['_FLOATRULES'].fields_by_name['in']._serialized_options = b'\302Hj\nh\n\010float.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_FLOATRULES'].fields_by_name['not_in']._loaded_options = None + _globals['_FLOATRULES'].fields_by_name['not_in']._serialized_options = b'\302H]\n[\n\014float.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_FLOATRULES'].fields_by_name['finite']._loaded_options = None + _globals['_FLOATRULES'].fields_by_name['finite']._serialized_options = b'\302H\\\nZ\n\014float.finite\032Jrules.finite ? (this.isNan() || this.isInf() ? \'must be finite\' : \'\') : \'\'' + _globals['_FLOATRULES'].fields_by_name['example']._loaded_options = None + _globals['_FLOATRULES'].fields_by_name['example']._serialized_options = b'\302H\027\n\025\n\rfloat.example\032\004true' + _globals['_DOUBLERULES'].fields_by_name['const']._loaded_options = None + _globals['_DOUBLERULES'].fields_by_name['const']._serialized_options = b'\302Hl\nj\n\014double.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_DOUBLERULES'].fields_by_name['lt']._loaded_options = None + _globals['_DOUBLERULES'].fields_by_name['lt']._serialized_options = b'\302H\207\001\n\204\001\n\tdouble.lt\032w!has(rules.gte) && !has(rules.gt) && (this.isNan() || this >= rules.lt)? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_DOUBLERULES'].fields_by_name['lte']._loaded_options = None + _globals['_DOUBLERULES'].fields_by_name['lte']._serialized_options = b'\302H\226\001\n\223\001\n\ndouble.lte\032\204\001!has(rules.gte) && !has(rules.gt) && (this.isNan() || this > rules.lte)? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_DOUBLERULES'].fields_by_name['gt']._loaded_options = None + _globals['_DOUBLERULES'].fields_by_name['gt']._serialized_options = b'\302H\302\007\n\207\001\n\tdouble.gt\032z!has(rules.lt) && !has(rules.lte) && (this.isNan() || this <= rules.gt)? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\276\001\n\014double.gt_lt\032\255\001has(rules.lt) && rules.lt >= rules.gt && (this.isNan() || this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\310\001\n\026double.gt_lt_exclusive\032\255\001has(rules.lt) && rules.lt < rules.gt && (this.isNan() || (rules.lt <= this && this <= rules.gt))? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\316\001\n\rdouble.gt_lte\032\274\001has(rules.lte) && rules.lte >= rules.gt && (this.isNan() || this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\330\001\n\027double.gt_lte_exclusive\032\274\001has(rules.lte) && rules.lte < rules.gt && (this.isNan() || (rules.lte < this && this <= rules.gt))? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_DOUBLERULES'].fields_by_name['gte']._loaded_options = None + _globals['_DOUBLERULES'].fields_by_name['gte']._serialized_options = b'\302H\215\010\n\226\001\n\ndouble.gte\032\207\001!has(rules.lt) && !has(rules.lte) && (this.isNan() || this < rules.gte)? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\315\001\n\rdouble.gte_lt\032\273\001has(rules.lt) && rules.lt >= rules.gte && (this.isNan() || this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\327\001\n\027double.gte_lt_exclusive\032\273\001has(rules.lt) && rules.lt < rules.gte && (this.isNan() || (rules.lt <= this && this < rules.gte))? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\335\001\n\016double.gte_lte\032\312\001has(rules.lte) && rules.lte >= rules.gte && (this.isNan() || this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\347\001\n\030double.gte_lte_exclusive\032\312\001has(rules.lte) && rules.lte < rules.gte && (this.isNan() || (rules.lte < this && this < rules.gte))? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_DOUBLERULES'].fields_by_name['in']._loaded_options = None + _globals['_DOUBLERULES'].fields_by_name['in']._serialized_options = b'\302Hk\ni\n\tdouble.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_DOUBLERULES'].fields_by_name['not_in']._loaded_options = None + _globals['_DOUBLERULES'].fields_by_name['not_in']._serialized_options = b'\302H^\n\\\n\rdouble.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_DOUBLERULES'].fields_by_name['finite']._loaded_options = None + _globals['_DOUBLERULES'].fields_by_name['finite']._serialized_options = b'\302H]\n[\n\rdouble.finite\032Jrules.finite ? (this.isNan() || this.isInf() ? \'must be finite\' : \'\') : \'\'' + _globals['_DOUBLERULES'].fields_by_name['example']._loaded_options = None + _globals['_DOUBLERULES'].fields_by_name['example']._serialized_options = b'\302H\030\n\026\n\016double.example\032\004true' + _globals['_INT32RULES'].fields_by_name['const']._loaded_options = None + _globals['_INT32RULES'].fields_by_name['const']._serialized_options = b'\302Hk\ni\n\013int32.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_INT32RULES'].fields_by_name['lt']._loaded_options = None + _globals['_INT32RULES'].fields_by_name['lt']._serialized_options = b'\302Hs\nq\n\010int32.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_INT32RULES'].fields_by_name['lte']._loaded_options = None + _globals['_INT32RULES'].fields_by_name['lte']._serialized_options = b'\302H\201\001\n\177\n\tint32.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_INT32RULES'].fields_by_name['gt']._loaded_options = None + _globals['_INT32RULES'].fields_by_name['gt']._serialized_options = b'\302H\346\006\nt\n\010int32.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\255\001\n\013int32.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\265\001\n\025int32.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\275\001\n\014int32.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\305\001\n\026int32.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_INT32RULES'].fields_by_name['gte']._loaded_options = None + _globals['_INT32RULES'].fields_by_name['gte']._serialized_options = b'\302H\261\007\n\202\001\n\tint32.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\274\001\n\014int32.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\304\001\n\026int32.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\314\001\n\rint32.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\324\001\n\027int32.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_INT32RULES'].fields_by_name['in']._loaded_options = None + _globals['_INT32RULES'].fields_by_name['in']._serialized_options = b'\302Hj\nh\n\010int32.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_INT32RULES'].fields_by_name['not_in']._loaded_options = None + _globals['_INT32RULES'].fields_by_name['not_in']._serialized_options = b'\302H]\n[\n\014int32.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_INT32RULES'].fields_by_name['example']._loaded_options = None + _globals['_INT32RULES'].fields_by_name['example']._serialized_options = b'\302H\027\n\025\n\rint32.example\032\004true' + _globals['_INT64RULES'].fields_by_name['const']._loaded_options = None + _globals['_INT64RULES'].fields_by_name['const']._serialized_options = b'\302Hk\ni\n\013int64.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_INT64RULES'].fields_by_name['lt']._loaded_options = None + _globals['_INT64RULES'].fields_by_name['lt']._serialized_options = b'\302Hs\nq\n\010int64.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_INT64RULES'].fields_by_name['lte']._loaded_options = None + _globals['_INT64RULES'].fields_by_name['lte']._serialized_options = b'\302H\201\001\n\177\n\tint64.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_INT64RULES'].fields_by_name['gt']._loaded_options = None + _globals['_INT64RULES'].fields_by_name['gt']._serialized_options = b'\302H\346\006\nt\n\010int64.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\255\001\n\013int64.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\265\001\n\025int64.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\275\001\n\014int64.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\305\001\n\026int64.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_INT64RULES'].fields_by_name['gte']._loaded_options = None + _globals['_INT64RULES'].fields_by_name['gte']._serialized_options = b'\302H\261\007\n\202\001\n\tint64.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\274\001\n\014int64.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\304\001\n\026int64.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\314\001\n\rint64.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\324\001\n\027int64.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_INT64RULES'].fields_by_name['in']._loaded_options = None + _globals['_INT64RULES'].fields_by_name['in']._serialized_options = b'\302Hj\nh\n\010int64.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_INT64RULES'].fields_by_name['not_in']._loaded_options = None + _globals['_INT64RULES'].fields_by_name['not_in']._serialized_options = b'\302H]\n[\n\014int64.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_INT64RULES'].fields_by_name['example']._loaded_options = None + _globals['_INT64RULES'].fields_by_name['example']._serialized_options = b'\302H\027\n\025\n\rint64.example\032\004true' + _globals['_UINT32RULES'].fields_by_name['const']._loaded_options = None + _globals['_UINT32RULES'].fields_by_name['const']._serialized_options = b'\302Hl\nj\n\014uint32.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_UINT32RULES'].fields_by_name['lt']._loaded_options = None + _globals['_UINT32RULES'].fields_by_name['lt']._serialized_options = b'\302Ht\nr\n\tuint32.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_UINT32RULES'].fields_by_name['lte']._loaded_options = None + _globals['_UINT32RULES'].fields_by_name['lte']._serialized_options = b'\302H\203\001\n\200\001\n\nuint32.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_UINT32RULES'].fields_by_name['gt']._loaded_options = None + _globals['_UINT32RULES'].fields_by_name['gt']._serialized_options = b'\302H\353\006\nu\n\tuint32.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\256\001\n\014uint32.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\266\001\n\026uint32.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\276\001\n\ruint32.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\306\001\n\027uint32.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_UINT32RULES'].fields_by_name['gte']._loaded_options = None + _globals['_UINT32RULES'].fields_by_name['gte']._serialized_options = b'\302H\266\007\n\203\001\n\nuint32.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\275\001\n\ruint32.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\305\001\n\027uint32.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\315\001\n\016uint32.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\325\001\n\030uint32.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_UINT32RULES'].fields_by_name['in']._loaded_options = None + _globals['_UINT32RULES'].fields_by_name['in']._serialized_options = b'\302Hk\ni\n\tuint32.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_UINT32RULES'].fields_by_name['not_in']._loaded_options = None + _globals['_UINT32RULES'].fields_by_name['not_in']._serialized_options = b'\302H^\n\\\n\ruint32.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_UINT32RULES'].fields_by_name['example']._loaded_options = None + _globals['_UINT32RULES'].fields_by_name['example']._serialized_options = b'\302H\030\n\026\n\016uint32.example\032\004true' + _globals['_UINT64RULES'].fields_by_name['const']._loaded_options = None + _globals['_UINT64RULES'].fields_by_name['const']._serialized_options = b'\302Hl\nj\n\014uint64.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_UINT64RULES'].fields_by_name['lt']._loaded_options = None + _globals['_UINT64RULES'].fields_by_name['lt']._serialized_options = b'\302Ht\nr\n\tuint64.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_UINT64RULES'].fields_by_name['lte']._loaded_options = None + _globals['_UINT64RULES'].fields_by_name['lte']._serialized_options = b'\302H\203\001\n\200\001\n\nuint64.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_UINT64RULES'].fields_by_name['gt']._loaded_options = None + _globals['_UINT64RULES'].fields_by_name['gt']._serialized_options = b'\302H\353\006\nu\n\tuint64.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\256\001\n\014uint64.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\266\001\n\026uint64.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\276\001\n\ruint64.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\306\001\n\027uint64.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_UINT64RULES'].fields_by_name['gte']._loaded_options = None + _globals['_UINT64RULES'].fields_by_name['gte']._serialized_options = b'\302H\266\007\n\203\001\n\nuint64.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\275\001\n\ruint64.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\305\001\n\027uint64.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\315\001\n\016uint64.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\325\001\n\030uint64.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_UINT64RULES'].fields_by_name['in']._loaded_options = None + _globals['_UINT64RULES'].fields_by_name['in']._serialized_options = b'\302Hk\ni\n\tuint64.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_UINT64RULES'].fields_by_name['not_in']._loaded_options = None + _globals['_UINT64RULES'].fields_by_name['not_in']._serialized_options = b'\302H^\n\\\n\ruint64.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_UINT64RULES'].fields_by_name['example']._loaded_options = None + _globals['_UINT64RULES'].fields_by_name['example']._serialized_options = b'\302H\030\n\026\n\016uint64.example\032\004true' + _globals['_SINT32RULES'].fields_by_name['const']._loaded_options = None + _globals['_SINT32RULES'].fields_by_name['const']._serialized_options = b'\302Hl\nj\n\014sint32.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_SINT32RULES'].fields_by_name['lt']._loaded_options = None + _globals['_SINT32RULES'].fields_by_name['lt']._serialized_options = b'\302Ht\nr\n\tsint32.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_SINT32RULES'].fields_by_name['lte']._loaded_options = None + _globals['_SINT32RULES'].fields_by_name['lte']._serialized_options = b'\302H\203\001\n\200\001\n\nsint32.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_SINT32RULES'].fields_by_name['gt']._loaded_options = None + _globals['_SINT32RULES'].fields_by_name['gt']._serialized_options = b'\302H\353\006\nu\n\tsint32.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\256\001\n\014sint32.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\266\001\n\026sint32.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\276\001\n\rsint32.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\306\001\n\027sint32.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_SINT32RULES'].fields_by_name['gte']._loaded_options = None + _globals['_SINT32RULES'].fields_by_name['gte']._serialized_options = b'\302H\266\007\n\203\001\n\nsint32.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\275\001\n\rsint32.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\305\001\n\027sint32.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\315\001\n\016sint32.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\325\001\n\030sint32.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_SINT32RULES'].fields_by_name['in']._loaded_options = None + _globals['_SINT32RULES'].fields_by_name['in']._serialized_options = b'\302Hk\ni\n\tsint32.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_SINT32RULES'].fields_by_name['not_in']._loaded_options = None + _globals['_SINT32RULES'].fields_by_name['not_in']._serialized_options = b'\302H^\n\\\n\rsint32.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_SINT32RULES'].fields_by_name['example']._loaded_options = None + _globals['_SINT32RULES'].fields_by_name['example']._serialized_options = b'\302H\030\n\026\n\016sint32.example\032\004true' + _globals['_SINT64RULES'].fields_by_name['const']._loaded_options = None + _globals['_SINT64RULES'].fields_by_name['const']._serialized_options = b'\302Hl\nj\n\014sint64.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_SINT64RULES'].fields_by_name['lt']._loaded_options = None + _globals['_SINT64RULES'].fields_by_name['lt']._serialized_options = b'\302Ht\nr\n\tsint64.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_SINT64RULES'].fields_by_name['lte']._loaded_options = None + _globals['_SINT64RULES'].fields_by_name['lte']._serialized_options = b'\302H\203\001\n\200\001\n\nsint64.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_SINT64RULES'].fields_by_name['gt']._loaded_options = None + _globals['_SINT64RULES'].fields_by_name['gt']._serialized_options = b'\302H\353\006\nu\n\tsint64.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\256\001\n\014sint64.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\266\001\n\026sint64.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\276\001\n\rsint64.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\306\001\n\027sint64.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_SINT64RULES'].fields_by_name['gte']._loaded_options = None + _globals['_SINT64RULES'].fields_by_name['gte']._serialized_options = b'\302H\266\007\n\203\001\n\nsint64.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\275\001\n\rsint64.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\305\001\n\027sint64.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\315\001\n\016sint64.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\325\001\n\030sint64.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_SINT64RULES'].fields_by_name['in']._loaded_options = None + _globals['_SINT64RULES'].fields_by_name['in']._serialized_options = b'\302Hk\ni\n\tsint64.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_SINT64RULES'].fields_by_name['not_in']._loaded_options = None + _globals['_SINT64RULES'].fields_by_name['not_in']._serialized_options = b'\302H^\n\\\n\rsint64.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_SINT64RULES'].fields_by_name['example']._loaded_options = None + _globals['_SINT64RULES'].fields_by_name['example']._serialized_options = b'\302H\030\n\026\n\016sint64.example\032\004true' + _globals['_FIXED32RULES'].fields_by_name['const']._loaded_options = None + _globals['_FIXED32RULES'].fields_by_name['const']._serialized_options = b'\302Hm\nk\n\rfixed32.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_FIXED32RULES'].fields_by_name['lt']._loaded_options = None + _globals['_FIXED32RULES'].fields_by_name['lt']._serialized_options = b'\302Hu\ns\n\nfixed32.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_FIXED32RULES'].fields_by_name['lte']._loaded_options = None + _globals['_FIXED32RULES'].fields_by_name['lte']._serialized_options = b'\302H\204\001\n\201\001\n\013fixed32.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_FIXED32RULES'].fields_by_name['gt']._loaded_options = None + _globals['_FIXED32RULES'].fields_by_name['gt']._serialized_options = b'\302H\360\006\nv\n\nfixed32.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\257\001\n\rfixed32.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\267\001\n\027fixed32.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\277\001\n\016fixed32.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\307\001\n\030fixed32.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_FIXED32RULES'].fields_by_name['gte']._loaded_options = None + _globals['_FIXED32RULES'].fields_by_name['gte']._serialized_options = b'\302H\273\007\n\204\001\n\013fixed32.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\276\001\n\016fixed32.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\306\001\n\030fixed32.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\316\001\n\017fixed32.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\326\001\n\031fixed32.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_FIXED32RULES'].fields_by_name['in']._loaded_options = None + _globals['_FIXED32RULES'].fields_by_name['in']._serialized_options = b'\302Hl\nj\n\nfixed32.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_FIXED32RULES'].fields_by_name['not_in']._loaded_options = None + _globals['_FIXED32RULES'].fields_by_name['not_in']._serialized_options = b'\302H_\n]\n\016fixed32.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_FIXED32RULES'].fields_by_name['example']._loaded_options = None + _globals['_FIXED32RULES'].fields_by_name['example']._serialized_options = b'\302H\031\n\027\n\017fixed32.example\032\004true' + _globals['_FIXED64RULES'].fields_by_name['const']._loaded_options = None + _globals['_FIXED64RULES'].fields_by_name['const']._serialized_options = b'\302Hm\nk\n\rfixed64.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_FIXED64RULES'].fields_by_name['lt']._loaded_options = None + _globals['_FIXED64RULES'].fields_by_name['lt']._serialized_options = b'\302Hu\ns\n\nfixed64.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_FIXED64RULES'].fields_by_name['lte']._loaded_options = None + _globals['_FIXED64RULES'].fields_by_name['lte']._serialized_options = b'\302H\204\001\n\201\001\n\013fixed64.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_FIXED64RULES'].fields_by_name['gt']._loaded_options = None + _globals['_FIXED64RULES'].fields_by_name['gt']._serialized_options = b'\302H\360\006\nv\n\nfixed64.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\257\001\n\rfixed64.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\267\001\n\027fixed64.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\277\001\n\016fixed64.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\307\001\n\030fixed64.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_FIXED64RULES'].fields_by_name['gte']._loaded_options = None + _globals['_FIXED64RULES'].fields_by_name['gte']._serialized_options = b'\302H\273\007\n\204\001\n\013fixed64.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\276\001\n\016fixed64.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\306\001\n\030fixed64.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\316\001\n\017fixed64.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\326\001\n\031fixed64.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_FIXED64RULES'].fields_by_name['in']._loaded_options = None + _globals['_FIXED64RULES'].fields_by_name['in']._serialized_options = b'\302Hl\nj\n\nfixed64.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_FIXED64RULES'].fields_by_name['not_in']._loaded_options = None + _globals['_FIXED64RULES'].fields_by_name['not_in']._serialized_options = b'\302H_\n]\n\016fixed64.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_FIXED64RULES'].fields_by_name['example']._loaded_options = None + _globals['_FIXED64RULES'].fields_by_name['example']._serialized_options = b'\302H\031\n\027\n\017fixed64.example\032\004true' + _globals['_SFIXED32RULES'].fields_by_name['const']._loaded_options = None + _globals['_SFIXED32RULES'].fields_by_name['const']._serialized_options = b'\302Hn\nl\n\016sfixed32.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_SFIXED32RULES'].fields_by_name['lt']._loaded_options = None + _globals['_SFIXED32RULES'].fields_by_name['lt']._serialized_options = b'\302Hv\nt\n\013sfixed32.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_SFIXED32RULES'].fields_by_name['lte']._loaded_options = None + _globals['_SFIXED32RULES'].fields_by_name['lte']._serialized_options = b'\302H\205\001\n\202\001\n\014sfixed32.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_SFIXED32RULES'].fields_by_name['gt']._loaded_options = None + _globals['_SFIXED32RULES'].fields_by_name['gt']._serialized_options = b'\302H\365\006\nw\n\013sfixed32.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\260\001\n\016sfixed32.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\270\001\n\030sfixed32.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\300\001\n\017sfixed32.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\310\001\n\031sfixed32.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_SFIXED32RULES'].fields_by_name['gte']._loaded_options = None + _globals['_SFIXED32RULES'].fields_by_name['gte']._serialized_options = b'\302H\300\007\n\205\001\n\014sfixed32.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\277\001\n\017sfixed32.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\307\001\n\031sfixed32.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\317\001\n\020sfixed32.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\327\001\n\032sfixed32.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_SFIXED32RULES'].fields_by_name['in']._loaded_options = None + _globals['_SFIXED32RULES'].fields_by_name['in']._serialized_options = b'\302Hm\nk\n\013sfixed32.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_SFIXED32RULES'].fields_by_name['not_in']._loaded_options = None + _globals['_SFIXED32RULES'].fields_by_name['not_in']._serialized_options = b'\302H`\n^\n\017sfixed32.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_SFIXED32RULES'].fields_by_name['example']._loaded_options = None + _globals['_SFIXED32RULES'].fields_by_name['example']._serialized_options = b'\302H\032\n\030\n\020sfixed32.example\032\004true' + _globals['_SFIXED64RULES'].fields_by_name['const']._loaded_options = None + _globals['_SFIXED64RULES'].fields_by_name['const']._serialized_options = b'\302Hn\nl\n\016sfixed64.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_SFIXED64RULES'].fields_by_name['lt']._loaded_options = None + _globals['_SFIXED64RULES'].fields_by_name['lt']._serialized_options = b'\302Hv\nt\n\013sfixed64.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_SFIXED64RULES'].fields_by_name['lte']._loaded_options = None + _globals['_SFIXED64RULES'].fields_by_name['lte']._serialized_options = b'\302H\205\001\n\202\001\n\014sfixed64.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_SFIXED64RULES'].fields_by_name['gt']._loaded_options = None + _globals['_SFIXED64RULES'].fields_by_name['gt']._serialized_options = b'\302H\365\006\nw\n\013sfixed64.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\260\001\n\016sfixed64.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\270\001\n\030sfixed64.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\300\001\n\017sfixed64.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\310\001\n\031sfixed64.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_SFIXED64RULES'].fields_by_name['gte']._loaded_options = None + _globals['_SFIXED64RULES'].fields_by_name['gte']._serialized_options = b'\302H\300\007\n\205\001\n\014sfixed64.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\277\001\n\017sfixed64.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\307\001\n\031sfixed64.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\317\001\n\020sfixed64.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\327\001\n\032sfixed64.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_SFIXED64RULES'].fields_by_name['in']._loaded_options = None + _globals['_SFIXED64RULES'].fields_by_name['in']._serialized_options = b'\302Hm\nk\n\013sfixed64.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_SFIXED64RULES'].fields_by_name['not_in']._loaded_options = None + _globals['_SFIXED64RULES'].fields_by_name['not_in']._serialized_options = b'\302H`\n^\n\017sfixed64.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_SFIXED64RULES'].fields_by_name['example']._loaded_options = None + _globals['_SFIXED64RULES'].fields_by_name['example']._serialized_options = b'\302H\032\n\030\n\020sfixed64.example\032\004true' + _globals['_BOOLRULES'].fields_by_name['const']._loaded_options = None + _globals['_BOOLRULES'].fields_by_name['const']._serialized_options = b'\302Hj\nh\n\nbool.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_BOOLRULES'].fields_by_name['example']._loaded_options = None + _globals['_BOOLRULES'].fields_by_name['example']._serialized_options = b'\302H\026\n\024\n\014bool.example\032\004true' + _globals['_STRINGRULES'].fields_by_name['const']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['const']._serialized_options = b'\302Hn\nl\n\014string.const\032\\this != getField(rules, \'const\') ? \'must equal `%s`\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['len']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['len']._serialized_options = b'\302Ha\n_\n\nstring.len\032Quint(this.size()) != rules.len ? \'must be %s characters\'.format([rules.len]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['min_len']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['min_len']._serialized_options = b'\302Hu\ns\n\016string.min_len\032auint(this.size()) < rules.min_len ? \'must be at least %s characters\'.format([rules.min_len]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['max_len']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['max_len']._serialized_options = b'\302Ht\nr\n\016string.max_len\032`uint(this.size()) > rules.max_len ? \'must be at most %s characters\'.format([rules.max_len]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['len_bytes']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['len_bytes']._serialized_options = b'\302Hu\ns\n\020string.len_bytes\032_uint(bytes(this).size()) != rules.len_bytes ? \'must be %s bytes\'.format([rules.len_bytes]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['min_bytes']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['min_bytes']._serialized_options = b'\302H}\n{\n\020string.min_bytes\032guint(bytes(this).size()) < rules.min_bytes ? \'must be at least %s bytes\'.format([rules.min_bytes]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['max_bytes']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['max_bytes']._serialized_options = b'\302H|\nz\n\020string.max_bytes\032fuint(bytes(this).size()) > rules.max_bytes ? \'must be at most %s bytes\'.format([rules.max_bytes]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['pattern']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['pattern']._serialized_options = b'\302Hs\nq\n\016string.pattern\032_!this.matches(rules.pattern) ? \'does not match regex pattern `%s`\'.format([rules.pattern]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['prefix']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['prefix']._serialized_options = b'\302Hk\ni\n\rstring.prefix\032X!this.startsWith(rules.prefix) ? \'does not have prefix `%s`\'.format([rules.prefix]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['suffix']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['suffix']._serialized_options = b'\302Hi\ng\n\rstring.suffix\032V!this.endsWith(rules.suffix) ? \'does not have suffix `%s`\'.format([rules.suffix]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['contains']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['contains']._serialized_options = b'\302Hu\ns\n\017string.contains\032`!this.contains(rules.contains) ? \'does not contain substring `%s`\'.format([rules.contains]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['not_contains']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['not_contains']._serialized_options = b'\302Hx\nv\n\023string.not_contains\032_this.contains(rules.not_contains) ? \'contains substring `%s`\'.format([rules.not_contains]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['in']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['in']._serialized_options = b'\302Hk\ni\n\tstring.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['not_in']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['not_in']._serialized_options = b'\302H^\n\\\n\rstring.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_STRINGRULES'].fields_by_name['email']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['email']._serialized_options = b'\302H\303\001\n[\n\014string.email\022\035must be a valid email address\032,!rules.email || this == \'\' || this.isEmail()\nd\n\022string.email_empty\0222value is empty, which is not a valid email address\032\032!rules.email || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['hostname']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['hostname']._serialized_options = b'\302H\310\001\n_\n\017string.hostname\022\030must be a valid hostname\0322!rules.hostname || this == \'\' || this.isHostname()\ne\n\025string.hostname_empty\022-value is empty, which is not a valid hostname\032\035!rules.hostname || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['ip']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['ip']._serialized_options = b'\302H\256\001\nO\n\tstring.ip\022\032must be a valid IP address\032&!rules.ip || this == \'\' || this.isIp()\n[\n\017string.ip_empty\022/value is empty, which is not a valid IP address\032\027!rules.ip || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['ipv4']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['ipv4']._serialized_options = b'\302H\273\001\nV\n\013string.ipv4\022\034must be a valid IPv4 address\032)!rules.ipv4 || this == \'\' || this.isIp(4)\na\n\021string.ipv4_empty\0221value is empty, which is not a valid IPv4 address\032\031!rules.ipv4 || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['ipv6']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['ipv6']._serialized_options = b'\302H\273\001\nV\n\013string.ipv6\022\034must be a valid IPv6 address\032)!rules.ipv6 || this == \'\' || this.isIp(6)\na\n\021string.ipv6_empty\0221value is empty, which is not a valid IPv6 address\032\031!rules.ipv6 || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['uri']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['uri']._serialized_options = b'\302H\245\001\nK\n\nstring.uri\022\023must be a valid URI\032(!rules.uri || this == \'\' || this.isUri()\nV\n\020string.uri_empty\022(value is empty, which is not a valid URI\032\030!rules.uri || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['uri_ref']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['uri_ref']._serialized_options = b'\302HT\nR\n\016string.uri_ref\022\035must be a valid URI Reference\032!!rules.uri_ref || this.isUriRef()' + _globals['_STRINGRULES'].fields_by_name['address']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['address']._serialized_options = b'\302H\361\001\n{\n\016string.address\022\'must be a valid hostname, or ip address\032@!rules.address || this == \'\' || this.isHostname() || this.isIp()\nr\n\024string.address_empty\022!rules.ipv4_with_prefixlen || this == \'\' || this.isIpPrefix(4)\n\222\001\n string.ipv4_with_prefixlen_empty\022Dvalue is empty, which is not a valid IPv4 address with prefix length\032(!rules.ipv4_with_prefixlen || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['ipv6_with_prefixlen']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['ipv6_with_prefixlen']._serialized_options = b'\302H\245\002\n\215\001\n\032string.ipv6_with_prefixlen\022/must be a valid IPv6 address with prefix length\032>!rules.ipv6_with_prefixlen || this == \'\' || this.isIpPrefix(6)\n\222\001\n string.ipv6_with_prefixlen_empty\022Dvalue is empty, which is not a valid IPv6 address with prefix length\032(!rules.ipv6_with_prefixlen || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['ip_prefix']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['ip_prefix']._serialized_options = b'\302H\322\001\nf\n\020string.ip_prefix\022\031must be a valid IP prefix\0327!rules.ip_prefix || this == \'\' || this.isIpPrefix(true)\nh\n\026string.ip_prefix_empty\022.value is empty, which is not a valid IP prefix\032\036!rules.ip_prefix || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['ipv4_prefix']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['ipv4_prefix']._serialized_options = b'\302H\341\001\no\n\022string.ipv4_prefix\022\033must be a valid IPv4 prefix\032!rules.host_and_port || this == \'\' || this.isHostAndPort(true)\ny\n\032string.host_and_port_empty\0227value is empty, which is not a valid host and port pair\032\"!rules.host_and_port || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['ulid']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['ulid']._serialized_options = b'\302H\331\001\n|\n\013string.ulid\022\024must be a valid ULID\032W!rules.ulid || this == \'\' || this.matches(\'^[0-7][0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{25}$\')\nY\n\021string.ulid_empty\022)value is empty, which is not a valid ULID\032\031!rules.ulid || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['protobuf_fqn']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['protobuf_fqn']._serialized_options = b'\302H\267\002\n\257\001\n\023string.protobuf_fqn\022-must be a valid fully-qualified Protobuf name\032i!rules.protobuf_fqn || this == \'\' || this.matches(\'^[A-Za-z_][A-Za-z_0-9]*(\\\\.[A-Za-z_][A-Za-z_0-9]*)*$\')\n\202\001\n\031string.protobuf_fqn_empty\022Bvalue is empty, which is not a valid fully-qualified Protobuf name\032!!rules.protobuf_fqn || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['protobuf_dot_fqn']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['protobuf_dot_fqn']._serialized_options = b'\302H\360\002\n\315\001\n\027string.protobuf_dot_fqn\022@must be a valid fully-qualified Protobuf name with a leading dot\032p!rules.protobuf_dot_fqn || this == \'\' || this.matches(\'^\\\\.[A-Za-z_][A-Za-z_0-9]*(\\\\.[A-Za-z_][A-Za-z_0-9]*)*$\')\n\235\001\n\035string.protobuf_dot_fqn_empty\022Uvalue is empty, which is not a valid fully-qualified Protobuf name with a leading dot\032%!rules.protobuf_dot_fqn || this != \'\'' + _globals['_STRINGRULES'].fields_by_name['well_known_regex']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['well_known_regex']._serialized_options = b'\302H\341\004\n\352\001\n#string.well_known_regex.header_name\022 must be a valid HTTP header name\032\240\001rules.well_known_regex != 1 || this == \'\' || this.matches(!has(rules.strict) || rules.strict ?\'^:?[0-9a-zA-Z!#$%&\\\'*+-.^_|~\\x60]+$\' :\'^[^\\u0000\\u000A\\u000D]+$\')\n\215\001\n)string.well_known_regex.header_name_empty\0225value is empty, which is not a valid HTTP header name\032)rules.well_known_regex != 1 || this != \'\'\n\341\001\n$string.well_known_regex.header_value\022!must be a valid HTTP header value\032\225\001rules.well_known_regex != 2 || this.matches(!has(rules.strict) || rules.strict ?\'^[^\\u0000-\\u0008\\u000A-\\u001F\\u007F]*$\' :\'^[^\\u0000\\u000A\\u000D]*$\')' + _globals['_STRINGRULES'].fields_by_name['example']._loaded_options = None + _globals['_STRINGRULES'].fields_by_name['example']._serialized_options = b'\302H\030\n\026\n\016string.example\032\004true' + _globals['_BYTESRULES'].fields_by_name['const']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['const']._serialized_options = b'\302Hh\nf\n\013bytes.const\032Wthis != getField(rules, \'const\') ? \'must be %x\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_BYTESRULES'].fields_by_name['len']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['len']._serialized_options = b'\302H[\nY\n\tbytes.len\032Luint(this.size()) != rules.len ? \'must be %s bytes\'.format([rules.len]) : \'\'' + _globals['_BYTESRULES'].fields_by_name['min_len']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['min_len']._serialized_options = b'\302Ho\nm\n\rbytes.min_len\032\\uint(this.size()) < rules.min_len ? \'must be at least %s bytes\'.format([rules.min_len]) : \'\'' + _globals['_BYTESRULES'].fields_by_name['max_len']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['max_len']._serialized_options = b'\302Hn\nl\n\rbytes.max_len\032[uint(this.size()) > rules.max_len ? \'must be at most %s bytes\'.format([rules.max_len]) : \'\'' + _globals['_BYTESRULES'].fields_by_name['pattern']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['pattern']._serialized_options = b'\302Hv\nt\n\rbytes.pattern\032c!string(this).matches(rules.pattern) ? \'must match regex pattern `%s`\'.format([rules.pattern]) : \'\'' + _globals['_BYTESRULES'].fields_by_name['prefix']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['prefix']._serialized_options = b'\302Hh\nf\n\014bytes.prefix\032V!this.startsWith(rules.prefix) ? \'does not have prefix %x\'.format([rules.prefix]) : \'\'' + _globals['_BYTESRULES'].fields_by_name['suffix']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['suffix']._serialized_options = b'\302Hf\nd\n\014bytes.suffix\032T!this.endsWith(rules.suffix) ? \'does not have suffix %x\'.format([rules.suffix]) : \'\'' + _globals['_BYTESRULES'].fields_by_name['contains']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['contains']._serialized_options = b'\302Hh\nf\n\016bytes.contains\032T!this.contains(rules.contains) ? \'does not contain %x\'.format([rules.contains]) : \'\'' + _globals['_BYTESRULES'].fields_by_name['in']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['in']._serialized_options = b'\302H\220\001\n\215\001\n\010bytes.in\032\200\001getField(rules, \'in\').size() > 0 && !(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_BYTESRULES'].fields_by_name['not_in']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['not_in']._serialized_options = b'\302H]\n[\n\014bytes.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_BYTESRULES'].fields_by_name['ip']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['ip']._serialized_options = b'\302H\322\001\nn\n\010bytes.ip\022\032must be a valid IP address\032F!rules.ip || this.size() == 0 || this.size() == 4 || this.size() == 16\n`\n\016bytes.ip_empty\022/value is empty, which is not a valid IP address\032\035!rules.ip || this.size() != 0' + _globals['_BYTESRULES'].fields_by_name['ipv4']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['ipv4']._serialized_options = b'\302H\311\001\n_\n\nbytes.ipv4\022\034must be a valid IPv4 address\0323!rules.ipv4 || this.size() == 0 || this.size() == 4\nf\n\020bytes.ipv4_empty\0221value is empty, which is not a valid IPv4 address\032\037!rules.ipv4 || this.size() != 0' + _globals['_BYTESRULES'].fields_by_name['ipv6']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['ipv6']._serialized_options = b'\302H\312\001\n`\n\nbytes.ipv6\022\034must be a valid IPv6 address\0324!rules.ipv6 || this.size() == 0 || this.size() == 16\nf\n\020bytes.ipv6_empty\0221value is empty, which is not a valid IPv6 address\032\037!rules.ipv6 || this.size() != 0' + _globals['_BYTESRULES'].fields_by_name['uuid']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['uuid']._serialized_options = b'\302H\272\001\nX\n\nbytes.uuid\022\024must be a valid UUID\0324!rules.uuid || this.size() == 0 || this.size() == 16\n^\n\020bytes.uuid_empty\022)value is empty, which is not a valid UUID\032\037!rules.uuid || this.size() != 0' + _globals['_BYTESRULES'].fields_by_name['example']._loaded_options = None + _globals['_BYTESRULES'].fields_by_name['example']._serialized_options = b'\302H\027\n\025\n\rbytes.example\032\004true' + _globals['_ENUMRULES'].fields_by_name['const']._loaded_options = None + _globals['_ENUMRULES'].fields_by_name['const']._serialized_options = b'\302Hj\nh\n\nenum.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_ENUMRULES'].fields_by_name['in']._loaded_options = None + _globals['_ENUMRULES'].fields_by_name['in']._serialized_options = b'\302Hi\ng\n\007enum.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_ENUMRULES'].fields_by_name['not_in']._loaded_options = None + _globals['_ENUMRULES'].fields_by_name['not_in']._serialized_options = b'\302H\\\nZ\n\013enum.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_ENUMRULES'].fields_by_name['example']._loaded_options = None + _globals['_ENUMRULES'].fields_by_name['example']._serialized_options = b'\302H\026\n\024\n\014enum.example\032\004true' + _globals['_REPEATEDRULES'].fields_by_name['min_items']._loaded_options = None + _globals['_REPEATEDRULES'].fields_by_name['min_items']._serialized_options = b'\302H\177\n}\n\022repeated.min_items\032guint(this.size()) < rules.min_items ? \'must contain at least %d item(s)\'.format([rules.min_items]) : \'\'' + _globals['_REPEATEDRULES'].fields_by_name['max_items']._loaded_options = None + _globals['_REPEATEDRULES'].fields_by_name['max_items']._serialized_options = b'\302H\204\001\n\201\001\n\022repeated.max_items\032kuint(this.size()) > rules.max_items ? \'must contain no more than %s item(s)\'.format([rules.max_items]) : \'\'' + _globals['_REPEATEDRULES'].fields_by_name['unique']._loaded_options = None + _globals['_REPEATEDRULES'].fields_by_name['unique']._serialized_options = b'\302H]\n[\n\017repeated.unique\022(repeated value must contain unique items\032\036!rules.unique || this.unique()' + _globals['_MAPRULES'].fields_by_name['min_pairs']._loaded_options = None + _globals['_MAPRULES'].fields_by_name['min_pairs']._serialized_options = b'\302Hy\nw\n\rmap.min_pairs\032fuint(this.size()) < rules.min_pairs ? \'map must be at least %d entries\'.format([rules.min_pairs]) : \'\'' + _globals['_MAPRULES'].fields_by_name['max_pairs']._loaded_options = None + _globals['_MAPRULES'].fields_by_name['max_pairs']._serialized_options = b'\302Hx\nv\n\rmap.max_pairs\032euint(this.size()) > rules.max_pairs ? \'map must be at most %d entries\'.format([rules.max_pairs]) : \'\'' + _globals['_DURATIONRULES'].fields_by_name['const']._loaded_options = None + _globals['_DURATIONRULES'].fields_by_name['const']._serialized_options = b'\302Hn\nl\n\016duration.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_DURATIONRULES'].fields_by_name['lt']._loaded_options = None + _globals['_DURATIONRULES'].fields_by_name['lt']._serialized_options = b'\302Hv\nt\n\013duration.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_DURATIONRULES'].fields_by_name['lte']._loaded_options = None + _globals['_DURATIONRULES'].fields_by_name['lte']._serialized_options = b'\302H\205\001\n\202\001\n\014duration.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_DURATIONRULES'].fields_by_name['gt']._loaded_options = None + _globals['_DURATIONRULES'].fields_by_name['gt']._serialized_options = b'\302H\365\006\nw\n\013duration.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\260\001\n\016duration.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\270\001\n\030duration.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\300\001\n\017duration.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\310\001\n\031duration.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_DURATIONRULES'].fields_by_name['gte']._loaded_options = None + _globals['_DURATIONRULES'].fields_by_name['gte']._serialized_options = b'\302H\300\007\n\205\001\n\014duration.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\277\001\n\017duration.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\307\001\n\031duration.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\317\001\n\020duration.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\327\001\n\032duration.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_DURATIONRULES'].fields_by_name['in']._loaded_options = None + _globals['_DURATIONRULES'].fields_by_name['in']._serialized_options = b'\302Hm\nk\n\013duration.in\032\\!(this in getField(rules, \'in\')) ? \'must be in list %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_DURATIONRULES'].fields_by_name['not_in']._loaded_options = None + _globals['_DURATIONRULES'].fields_by_name['not_in']._serialized_options = b'\302H`\n^\n\017duration.not_in\032Kthis in rules.not_in ? \'must not be in list %s\'.format([rules.not_in]) : \'\'' + _globals['_DURATIONRULES'].fields_by_name['example']._loaded_options = None + _globals['_DURATIONRULES'].fields_by_name['example']._serialized_options = b'\302H\032\n\030\n\020duration.example\032\004true' + _globals['_FIELDMASKRULES'].fields_by_name['const']._loaded_options = None + _globals['_FIELDMASKRULES'].fields_by_name['const']._serialized_options = b'\302H\211\001\n\206\001\n\020field_mask.const\032rthis.paths != getField(rules, \'const\').paths ? \'must equal paths %s\'.format([getField(rules, \'const\').paths]) : \'\'' + _globals['_FIELDMASKRULES'].fields_by_name['in']._loaded_options = None + _globals['_FIELDMASKRULES'].fields_by_name['in']._serialized_options = b'\302H\302\001\n\277\001\n\rfield_mask.in\032\255\001!this.paths.all(p, p in getField(rules, \'in\') || getField(rules, \'in\').exists(f, p.startsWith(f+\'.\'))) ? \'must only contain paths in %s\'.format([getField(rules, \'in\')]) : \'\'' + _globals['_FIELDMASKRULES'].fields_by_name['not_in']._loaded_options = None + _globals['_FIELDMASKRULES'].fields_by_name['not_in']._serialized_options = b'\302H\330\001\n\325\001\n\021field_mask.not_in\032\277\001!this.paths.all(p, !(p in getField(rules, \'not_in\') || getField(rules, \'not_in\').exists(f, p.startsWith(f+\'.\')))) ? \'must not contain any paths in %s\'.format([getField(rules, \'not_in\')]) : \'\'' + _globals['_FIELDMASKRULES'].fields_by_name['example']._loaded_options = None + _globals['_FIELDMASKRULES'].fields_by_name['example']._serialized_options = b'\302H\034\n\032\n\022field_mask.example\032\004true' + _globals['_TIMESTAMPRULES'].fields_by_name['const']._loaded_options = None + _globals['_TIMESTAMPRULES'].fields_by_name['const']._serialized_options = b'\302Ho\nm\n\017timestamp.const\032Zthis != getField(rules, \'const\') ? \'must equal %s\'.format([getField(rules, \'const\')]) : \'\'' + _globals['_TIMESTAMPRULES'].fields_by_name['lt']._loaded_options = None + _globals['_TIMESTAMPRULES'].fields_by_name['lt']._serialized_options = b'\302Hw\nu\n\014timestamp.lt\032e!has(rules.gte) && !has(rules.gt) && this >= rules.lt? \'must be less than %s\'.format([rules.lt]) : \'\'' + _globals['_TIMESTAMPRULES'].fields_by_name['lte']._loaded_options = None + _globals['_TIMESTAMPRULES'].fields_by_name['lte']._serialized_options = b'\302H\206\001\n\203\001\n\rtimestamp.lte\032r!has(rules.gte) && !has(rules.gt) && this > rules.lte? \'must be less than or equal to %s\'.format([rules.lte]) : \'\'' + _globals['_TIMESTAMPRULES'].fields_by_name['lt_now']._loaded_options = None + _globals['_TIMESTAMPRULES'].fields_by_name['lt_now']._serialized_options = b'\302HQ\nO\n\020timestamp.lt_now\032;(rules.lt_now && this > now) ? \'must be less than now\' : \'\'' + _globals['_TIMESTAMPRULES'].fields_by_name['gt']._loaded_options = None + _globals['_TIMESTAMPRULES'].fields_by_name['gt']._serialized_options = b'\302H\372\006\nx\n\014timestamp.gt\032h!has(rules.lt) && !has(rules.lte) && this <= rules.gt? \'must be greater than %s\'.format([rules.gt]) : \'\'\n\261\001\n\017timestamp.gt_lt\032\235\001has(rules.lt) && rules.lt >= rules.gt && (this >= rules.lt || this <= rules.gt)? \'must be greater than %s and less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\271\001\n\031timestamp.gt_lt_exclusive\032\233\001has(rules.lt) && rules.lt < rules.gt && (rules.lt <= this && this <= rules.gt)? \'must be greater than %s or less than %s\'.format([rules.gt, rules.lt]) : \'\'\n\301\001\n\020timestamp.gt_lte\032\254\001has(rules.lte) && rules.lte >= rules.gt && (this > rules.lte || this <= rules.gt)? \'must be greater than %s and less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'\n\311\001\n\032timestamp.gt_lte_exclusive\032\252\001has(rules.lte) && rules.lte < rules.gt && (rules.lte < this && this <= rules.gt)? \'must be greater than %s or less than or equal to %s\'.format([rules.gt, rules.lte]) : \'\'' + _globals['_TIMESTAMPRULES'].fields_by_name['gte']._loaded_options = None + _globals['_TIMESTAMPRULES'].fields_by_name['gte']._serialized_options = b'\302H\305\007\n\206\001\n\rtimestamp.gte\032u!has(rules.lt) && !has(rules.lte) && this < rules.gte? \'must be greater than or equal to %s\'.format([rules.gte]) : \'\'\n\300\001\n\020timestamp.gte_lt\032\253\001has(rules.lt) && rules.lt >= rules.gte && (this >= rules.lt || this < rules.gte)? \'must be greater than or equal to %s and less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\310\001\n\032timestamp.gte_lt_exclusive\032\251\001has(rules.lt) && rules.lt < rules.gte && (rules.lt <= this && this < rules.gte)? \'must be greater than or equal to %s or less than %s\'.format([rules.gte, rules.lt]) : \'\'\n\320\001\n\021timestamp.gte_lte\032\272\001has(rules.lte) && rules.lte >= rules.gte && (this > rules.lte || this < rules.gte)? \'must be greater than or equal to %s and less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'\n\330\001\n\033timestamp.gte_lte_exclusive\032\270\001has(rules.lte) && rules.lte < rules.gte && (rules.lte < this && this < rules.gte)? \'must be greater than or equal to %s or less than or equal to %s\'.format([rules.gte, rules.lte]) : \'\'' + _globals['_TIMESTAMPRULES'].fields_by_name['gt_now']._loaded_options = None + _globals['_TIMESTAMPRULES'].fields_by_name['gt_now']._serialized_options = b'\302HT\nR\n\020timestamp.gt_now\032>(rules.gt_now && this < now) ? \'must be greater than now\' : \'\'' + _globals['_TIMESTAMPRULES'].fields_by_name['within']._loaded_options = None + _globals['_TIMESTAMPRULES'].fields_by_name['within']._serialized_options = b'\302H\201\001\n\177\n\020timestamp.within\032kthis < now-rules.within || this > now+rules.within ? \'must be within %s of now\'.format([rules.within]) : \'\'' + _globals['_TIMESTAMPRULES'].fields_by_name['example']._loaded_options = None + _globals['_TIMESTAMPRULES'].fields_by_name['example']._serialized_options = b'\302H\033\n\031\n\021timestamp.example\032\004true' + _globals['_IGNORE']._serialized_start=54642 + _globals['_IGNORE']._serialized_end=54803 + _globals['_KNOWNREGEX']._serialized_start=54805 + _globals['_KNOWNREGEX']._serialized_end=54915 + _globals['_RULE']._serialized_start=178 + _globals['_RULE']._serialized_end=258 + _globals['_MESSAGERULES']._serialized_start=261 + _globals['_MESSAGERULES']._serialized_end=422 + _globals['_MESSAGEONEOFRULE']._serialized_start=424 + _globals['_MESSAGEONEOFRULE']._serialized_end=494 + _globals['_ONEOFRULES']._serialized_start=496 + _globals['_ONEOFRULES']._serialized_end=536 + _globals['_FIELDRULES']._serialized_start=539 + _globals['_FIELDRULES']._serialized_end=1918 + _globals['_PREDEFINEDRULES']._serialized_start=1920 + _globals['_PREDEFINEDRULES']._serialized_end=2010 + _globals['_FLOATRULES']._serialized_start=2013 + _globals['_FLOATRULES']._serialized_end=5003 + _globals['_DOUBLERULES']._serialized_start=5006 + _globals['_DOUBLERULES']._serialized_end=8014 + _globals['_INT32RULES']._serialized_start=8017 + _globals['_INT32RULES']._serialized_end=10671 + _globals['_INT64RULES']._serialized_start=10674 + _globals['_INT64RULES']._serialized_end=13328 + _globals['_UINT32RULES']._serialized_start=13331 + _globals['_UINT32RULES']._serialized_end=16003 + _globals['_UINT64RULES']._serialized_start=16006 + _globals['_UINT64RULES']._serialized_end=18678 + _globals['_SINT32RULES']._serialized_start=18681 + _globals['_SINT32RULES']._serialized_end=21353 + _globals['_SINT64RULES']._serialized_start=21356 + _globals['_SINT64RULES']._serialized_end=24028 + _globals['_FIXED32RULES']._serialized_start=24031 + _globals['_FIXED32RULES']._serialized_end=26720 + _globals['_FIXED64RULES']._serialized_start=26723 + _globals['_FIXED64RULES']._serialized_end=29412 + _globals['_SFIXED32RULES']._serialized_start=29415 + _globals['_SFIXED32RULES']._serialized_end=32122 + _globals['_SFIXED64RULES']._serialized_start=32125 + _globals['_SFIXED64RULES']._serialized_end=34832 + _globals['_BOOLRULES']._serialized_start=34835 + _globals['_BOOLRULES']._serialized_end=35044 + _globals['_STRINGRULES']._serialized_start=35047 + _globals['_STRINGRULES']._serialized_end=43190 + _globals['_BYTESRULES']._serialized_start=43193 + _globals['_BYTESRULES']._serialized_end=45571 + _globals['_ENUMRULES']._serialized_start=45574 + _globals['_ENUMRULES']._serialized_end=46064 + _globals['_REPEATEDRULES']._serialized_start=46067 + _globals['_REPEATEDRULES']._serialized_end=46595 + _globals['_MAPRULES']._serialized_start=46598 + _globals['_MAPRULES']._serialized_end=47026 + _globals['_ANYRULES']._serialized_start=47028 + _globals['_ANYRULES']._serialized_end=47077 + _globals['_DURATIONRULES']._serialized_start=47080 + _globals['_DURATIONRULES']._serialized_end=50004 + _globals['_FIELDMASKRULES']._serialized_start=50007 + _globals['_FIELDMASKRULES']._serialized_end=50781 + _globals['_TIMESTAMPRULES']._serialized_start=50784 + _globals['_TIMESTAMPRULES']._serialized_end=53832 + _globals['_VIOLATIONS']._serialized_start=53834 + _globals['_VIOLATIONS']._serialized_end=53903 + _globals['_VIOLATION']._serialized_start=53906 + _globals['_VIOLATION']._serialized_end=54103 + _globals['_FIELDPATH']._serialized_start=54105 + _globals['_FIELDPATH']._serialized_end=54176 + _globals['_FIELDPATHELEMENT']._serialized_start=54179 + _globals['_FIELDPATHELEMENT']._serialized_end=54639 +# @@protoc_insertion_point(module_scope) diff --git a/src/common/v1/analytics_pb2.py b/src/common/v1/analytics_pb2.py new file mode 100644 index 0000000..d921ef6 --- /dev/null +++ b/src/common/v1/analytics_pb2.py @@ -0,0 +1,45 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: common/v1/analytics.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'common/v1/analytics.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19\x63ommon/v1/analytics.proto\x12\tcommon.v1\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"}\n\tTimeRange\x12\x39\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\"D\n\x05Money\x12#\n\rcurrency_code\x18\x01 \x01(\tR\x0c\x63urrencyCode\x12\x16\n\x06\x61mount\x18\x02 \x01(\x01R\x06\x61mount\"\xa7\x02\n\x0b\x45videnceRef\x12\x30\n\x06source\x18\x01 \x01(\x0e\x32\x18.common.v1.InsightSourceR\x06source\x12\x1b\n\trecord_id\x18\x02 \x01(\tR\x08recordId\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12;\n\x0bobserved_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nobservedAt\x12\x16\n\x06weight\x18\x05 \x01(\x01R\x06weight\x12\x33\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12\x1d\n\nlineage_id\x18\x07 \x01(\tR\tlineageId*\x91\x02\n\rInsightSource\x12\x1e\n\x1aINSIGHT_SOURCE_UNSPECIFIED\x10\x00\x12\x19\n\x15INSIGHT_SOURCE_TRACES\x10\x01\x12\x1e\n\x1aINSIGHT_SOURCE_ATTRIBUTION\x10\x02\x12\x18\n\x14INSIGHT_SOURCE_METER\x10\x03\x12\x1c\n\x18INSIGHT_SOURCE_APPROVALS\x10\x04\x12\x18\n\x14INSIGHT_SOURCE_AUDIT\x10\x05\x12\x1d\n\x19INSIGHT_SOURCE_GOVERNANCE\x10\x06\x12\x1b\n\x17INSIGHT_SOURCE_REGISTRY\x10\x07\x12\x17\n\x13INSIGHT_SOURCE_EVAL\x10\x08\x42\x37Z5github.com/evalops/platform/gen/go/common/v1;commonv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'common.v1.analytics_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z5github.com/evalops/platform/gen/go/common/v1;commonv1' + _globals['_INSIGHTSOURCE']._serialized_start=599 + _globals['_INSIGHTSOURCE']._serialized_end=872 + _globals['_TIMERANGE']._serialized_start=103 + _globals['_TIMERANGE']._serialized_end=228 + _globals['_MONEY']._serialized_start=230 + _globals['_MONEY']._serialized_end=298 + _globals['_EVIDENCEREF']._serialized_start=301 + _globals['_EVIDENCEREF']._serialized_end=596 +# @@protoc_insertion_point(module_scope) diff --git a/src/common/v1/authz_pb2.py b/src/common/v1/authz_pb2.py new file mode 100644 index 0000000..ef6afd6 --- /dev/null +++ b/src/common/v1/authz_pb2.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: common/v1/authz.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'common/v1/authz.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from common.v1 import risk_pb2 as common_dot_v1_dot_risk__pb2 +from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15\x63ommon/v1/authz.proto\x12\tcommon.v1\x1a\x14\x63ommon/v1/risk.proto\x1a google/protobuf/descriptor.proto:I\n\x0frequired_scopes\x12\x1e.google.protobuf.MethodOptions\x18\xb9\x8e\x03 \x03(\tR\x0erequiredScopes:T\n\x15workspace_scope_field\x12\x1e.google.protobuf.MethodOptions\x18\xba\x8e\x03 \x01(\tR\x13workspaceScopeField:Z\n\x18organization_scope_field\x12\x1e.google.protobuf.MethodOptions\x18\xbd\x8e\x03 \x01(\tR\x16organizationScopeField:U\n\nrisk_level\x12\x1e.google.protobuf.MethodOptions\x18\xbb\x8e\x03 \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel:8\n\x06public\x12\x1e.google.protobuf.MethodOptions\x18\xbc\x8e\x03 \x01(\x08R\x06public:V\n\x16staff_account_required\x12\x1e.google.protobuf.MethodOptions\x18\xbe\x8e\x03 \x01(\x08R\x14staffAccountRequired:N\n\x12staff_cross_tenant\x12\x1e.google.protobuf.MethodOptions\x18\xbf\x8e\x03 \x01(\x08R\x10staffCrossTenantB7Z5github.com/evalops/platform/gen/go/common/v1;commonv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'common.v1.authz_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z5github.com/evalops/platform/gen/go/common/v1;commonv1' +# @@protoc_insertion_point(module_scope) diff --git a/src/common/v1/classification_pb2.py b/src/common/v1/classification_pb2.py new file mode 100644 index 0000000..c494860 --- /dev/null +++ b/src/common/v1/classification_pb2.py @@ -0,0 +1,38 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: common/v1/classification.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'common/v1/classification.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1e\x63ommon/v1/classification.proto\x12\tcommon.v1\x1a google/protobuf/descriptor.proto*\xde\x01\n\x12\x44\x61taClassification\x12#\n\x1f\x44\x41TA_CLASSIFICATION_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x44\x41TA_CLASSIFICATION_SAFE\x10\x01\x12\"\n\x1e\x44\x41TA_CLASSIFICATION_IDENTIFIER\x10\x02\x12\x1c\n\x18\x44\x41TA_CLASSIFICATION_PATH\x10\x03\x12\x1f\n\x1b\x44\x41TA_CLASSIFICATION_CONTENT\x10\x04\x12\"\n\x1e\x44\x41TA_CLASSIFICATION_CREDENTIAL\x10\x05:f\n\x0e\x63lassification\x12\x1d.google.protobuf.FieldOptions\x18\xc0\x8e\x03 \x01(\x0e\x32\x1d.common.v1.DataClassificationR\x0e\x63lassificationB7Z5github.com/evalops/platform/gen/go/common/v1;commonv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'common.v1.classification_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z5github.com/evalops/platform/gen/go/common/v1;commonv1' + _globals['_DATACLASSIFICATION']._serialized_start=80 + _globals['_DATACLASSIFICATION']._serialized_end=302 +# @@protoc_insertion_point(module_scope) diff --git a/src/common/v1/risk_pb2.py b/src/common/v1/risk_pb2.py new file mode 100644 index 0000000..0e0becb --- /dev/null +++ b/src/common/v1/risk_pb2.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: common/v1/risk.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'common/v1/risk.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14\x63ommon/v1/risk.proto\x12\tcommon.v1*\x80\x01\n\tRiskLevel\x12\x1a\n\x16RISK_LEVEL_UNSPECIFIED\x10\x00\x12\x12\n\x0eRISK_LEVEL_LOW\x10\x01\x12\x15\n\x11RISK_LEVEL_MEDIUM\x10\x02\x12\x13\n\x0fRISK_LEVEL_HIGH\x10\x03\x12\x17\n\x13RISK_LEVEL_CRITICAL\x10\x04\x42\x37Z5github.com/evalops/platform/gen/go/common/v1;commonv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'common.v1.risk_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z5github.com/evalops/platform/gen/go/common/v1;commonv1' + _globals['_RISKLEVEL']._serialized_start=36 + _globals['_RISKLEVEL']._serialized_end=164 +# @@protoc_insertion_point(module_scope) diff --git a/src/common/v1/surface_pb2.py b/src/common/v1/surface_pb2.py new file mode 100644 index 0000000..955be19 --- /dev/null +++ b/src/common/v1/surface_pb2.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: common/v1/surface.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'common/v1/surface.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x63ommon/v1/surface.proto\x12\tcommon.v1*\xa5\x01\n\x07Surface\x12\x17\n\x13SURFACE_UNSPECIFIED\x10\x00\x12\x14\n\x10SURFACE_ENSEMBLE\x10\x01\x12\x10\n\x0cSURFACE_CHAT\x10\x02\x12\x13\n\x0fSURFACE_MAESTRO\x10\x03\x12\x15\n\x11SURFACE_CONDUCTOR\x10\x04\x12\x11\n\rSURFACE_SLACK\x10\x05\x12\x1a\n\x16SURFACE_EXTERNAL_AGENT\x10\x06\x42\x37Z5github.com/evalops/platform/gen/go/common/v1;commonv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'common.v1.surface_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z5github.com/evalops/platform/gen/go/common/v1;commonv1' + _globals['_SURFACE']._serialized_start=39 + _globals['_SURFACE']._serialized_end=204 +# @@protoc_insertion_point(module_scope) diff --git a/src/connectors/v1/connectors_pb2.py b/src/connectors/v1/connectors_pb2.py new file mode 100644 index 0000000..fc9d228 --- /dev/null +++ b/src/connectors/v1/connectors_pb2.py @@ -0,0 +1,622 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: connectors/v1/connectors.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'connectors/v1/connectors.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 +from common.v1 import authz_pb2 as common_dot_v1_dot_authz__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1e\x63onnectors/v1/connectors.proto\x12\rconnectors.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x15\x63ommon/v1/authz.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xa2\x06\n\nConnection\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\x1f\n\x0bprovider_id\x18\x03 \x01(\tR\nproviderId\x12!\n\x0c\x64isplay_name\x18\x04 \x01(\tR\x0b\x64isplayName\x12\x34\n\tauth_type\x18\x05 \x01(\x0e\x32\x17.connectors.v1.AuthTypeR\x08\x61uthType\x12\x16\n\x06scopes\x18\x06 \x03(\tR\x06scopes\x12@\n\rhealth_status\x18\x07 \x01(\x0e\x32\x1b.connectors.v1.HealthStatusR\x0chealthStatus\x12\x42\n\x0flast_healthy_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\rlastHealthyAt\x12\x39\n\ncreated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12V\n\x0f\x63redential_refs\x18\x0b \x03(\x0b\x32-.connectors.v1.Connection.CredentialRefsEntryR\x0e\x63redentialRefs\x12\'\n\x0forganization_id\x18\x0c \x01(\tR\x0eorganizationId\x12#\n\rhealth_reason\x18\r \x01(\tR\x0chealthReason\x12N\n\x15\x63redential_expires_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x13\x63redentialExpiresAt\x12\x1a\n\x08revision\x18\x0f \x01(\x04R\x08revision\x1a\x41\n\x13\x43redentialRefsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xfd\x05\n\x14ProviderInstallation\x12,\n\rconnection_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x63onnectionId\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12(\n\x0bprovider_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nproviderId\x12\x1e\n\x06\x61pp_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05\x61ppId\x12;\n\x15provider_workspace_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x13providerWorkspaceId\x12\x34\n\x16provider_enterprise_id\x18\x07 \x01(\tR\x14providerEnterpriseId\x12/\n\x14provider_bot_user_id\x18\x08 \x01(\tR\x11providerBotUserId\x12M\n\rinstall_state\x18\t \x01(\x0e\x32(.connectors.v1.ProviderInstallationStateR\x0cinstallState\x12@\n\rhealth_status\x18\n \x01(\x0e\x32\x1b.connectors.v1.HealthStatusR\x0chealthStatus\x12%\n\x0egranted_scopes\x18\x0b \x03(\tR\rgrantedScopes\x12=\n\x0cinstalled_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0binstalledAt\x12\x39\n\nupdated_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x39\n\nrevoked_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\trevokedAt\"\xe1\x01\n\"ResolveProviderInstallationRequest\x12(\n\x0bprovider_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nproviderId\x12\x1e\n\x06\x61pp_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05\x61ppId\x12;\n\x15provider_workspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x13providerWorkspaceId\x12\x34\n\x16provider_enterprise_id\x18\x04 \x01(\tR\x14providerEnterpriseId\"\xa9\x01\n#ResolveProviderInstallationResponse\x12\x39\n\nconnection\x18\x01 \x01(\x0b\x32\x19.connectors.v1.ConnectionR\nconnection\x12G\n\x0cinstallation\x18\x02 \x01(\x0b\x32#.connectors.v1.ProviderInstallationR\x0cinstallation\"\xab\x01\n\x1dVerifyConnectionActiveRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12,\n\rconnection_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x63onnectionId\"\xb6\x03\n\x1eVerifyConnectionActiveResponse\x12,\n\rconnection_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x63onnectionId\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x44\n\x10state_updated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0estateUpdatedAt\x12;\n\x0bverified_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nverifiedAt\x12T\n\x10source_authority\x18\x06 \x01(\x0b\x32).connectors.v1.SourceAuthorityObservationR\x0fsourceAuthority\x12/\n\x13\x63onnection_revision\x18\x07 \x01(\x04R\x12\x63onnectionRevision\"\xb2\x03\n\x1aSourceAuthorityObservation\x12\x43\n\x05state\x18\x01 \x01(\x0e\x32#.connectors.v1.SourceAuthorityStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\"\n\x06reason\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x06reason\x12\x62\n\x10\x66reshness_method\x18\x03 \x01(\x0e\x32-.connectors.v1.SourceAuthorityFreshnessMethodB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0f\x66reshnessMethod\x12;\n\x0bobserved_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nobservedAt\x12\x46\n\x11last_confirmed_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0flastConfirmedAt\x12\x42\n\x18owner_snapshot_reference\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x16ownerSnapshotReference\"\xe3\x01\n\x10\x43onnectionHealth\x12\x33\n\x06status\x18\x01 \x01(\x0e\x32\x1b.connectors.v1.HealthStatusR\x06status\x12\x1d\n\nlatency_ms\x18\x02 \x01(\x05R\tlatencyMs\x12>\n\rlast_check_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0blastCheckAt\x12#\n\rerror_message\x18\x04 \x01(\tR\x0c\x65rrorMessage\x12\x16\n\x06reason\x18\x05 \x01(\tR\x06reason\"\xcd\x03\n\x18\x43onnectorCredentialField\x12\x1b\n\x04name\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x1a\n\x08required\x18\x03 \x01(\x08R\x08required\x12\x16\n\x06secret\x18\x04 \x01(\x08R\x06secret\x12<\n\x1a\x61\x63\x63\x65pted_reference_schemes\x18\x05 \x03(\tR\x18\x61\x63\x63\x65ptedReferenceSchemes\x12\'\n\x0f\x63redential_type\x18\x06 \x01(\tR\x0e\x63redentialType\x12\x1c\n\tversioned\x18\x07 \x01(\x08R\tversioned\x12\x1c\n\trotatable\x18\x08 \x01(\x08R\trotatable\x12\x1c\n\trevocable\x18\t \x01(\x08R\trevocable\x12\x18\n\x07\x65xpires\x18\n \x01(\x08R\x07\x65xpires\x12$\n\tstable_id\x18\x0b \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08stableId\x12I\n\nprovenance\x18\x0c \x01(\x0b\x32).connectors.v1.ConnectorCatalogProvenanceR\nprovenance\"\xac\x02\n\"ConnectorCredentialLifecyclePolicy\x12<\n\x1asupported_credential_types\x18\x01 \x03(\tR\x18supportedCredentialTypes\x12/\n\x13supports_versioning\x18\x02 \x01(\x08R\x12supportsVersioning\x12+\n\x11supports_rotation\x18\x03 \x01(\x08R\x10supportsRotation\x12/\n\x13supports_revocation\x18\x04 \x01(\x08R\x12supportsRevocation\x12\x39\n\x14rotation_notice_days\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x12rotationNoticeDays\"\xb5\x05\n\x10\x43onnectorRuntime\x12\x19\n\x08\x62\x61se_url\x18\x01 \x01(\tR\x07\x62\x61seUrl\x12+\n\x11verification_path\x18\x02 \x01(\tR\x10verificationPath\x12S\n\x11resource_families\x18\x03 \x03(\x0b\x32&.connectors.v1.ConnectorResourceFamilyR\x10resourceFamilies\x12N\n\x0f\x63hild_resources\x18\x04 \x03(\x0b\x32%.connectors.v1.ConnectorChildResourceR\x0e\x63hildResources\x12\x33\n\x13requests_per_window\x18\x05 \x01(\rH\x00R\x11requestsPerWindow\x88\x01\x01\x12*\n\x0ewindow_seconds\x18\x06 \x01(\rH\x01R\rwindowSeconds\x88\x01\x01\x12,\n\x0fmax_concurrency\x18\x07 \x01(\rH\x02R\x0emaxConcurrency\x88\x01\x01\x12K\n\x0estatic_headers\x18\x08 \x03(\x0b\x32$.connectors.v1.ConnectorStaticHeaderR\rstaticHeaders\x12\x44\n\x1e\x63redential_destination_origins\x18\t \x03(\tR\x1c\x63redentialDestinationOrigins\x12S\n\x10provider_actions\x18\n \x03(\x0b\x32(.connectors.v1.ConnectorActionDefinitionR\x0fproviderActionsB\x16\n\x14_requests_per_windowB\x11\n\x0f_window_secondsB\x12\n\x10_max_concurrency\"\xd2\x04\n\x19\x43onnectorActionDefinition\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\'\n\ncapability\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\ncapability\x12(\n\x0bhttp_method\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nhttpMethod\x12\x1b\n\x04path\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04path\x12+\n\x11\x61pproval_required\x18\x05 \x01(\x08R\x10\x61pprovalRequired\x12 \n\x0b\x64\x65structive\x18\x06 \x01(\x08R\x0b\x64\x65structive\x12$\n\tstable_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08stableId\x12I\n\nprovenance\x18\x08 \x01(\x0b\x32).connectors.v1.ConnectorCatalogProvenanceR\nprovenance\x12#\n\x08\x62\x61se_url\x18\t \x01(\tB\x08\xbaH\x05r\x03\x88\x01\x01R\x07\x62\x61seUrl\x12\'\n\x0frequired_scopes\x18\n \x03(\tR\x0erequiredScopes\x12*\n\x11input_schema_json\x18\x0b \x01(\tR\x0finputSchemaJson\x12\x16\n\x06\x64igest\x18\x0c \x01(\tR\x06\x64igest\x12\x16\n\x06\x65\x66\x66\x65\x63t\x18\r \x01(\tR\x06\x65\x66\x66\x65\x63t\x12\x42\n\x08governed\x18\x0e \x01(\x0b\x32&.connectors.v1.ConnectorGovernedActionR\x08governed\"\x87\x03\n\x17\x43onnectorGovernedAction\x12\x1b\n\ttool_name\x18\x01 \x01(\tR\x08toolName\x12\x18\n\x07version\x18\x02 \x01(\rR\x07version\x12\x33\n\x15\x63ompatibility_aliases\x18\x03 \x03(\tR\x14\x63ompatibilityAliases\x12 \n\x0b\x64\x65scription\x18\x04 \x01(\tR\x0b\x64\x65scription\x12\'\n\x0fmention_default\x18\x05 \x01(\x08R\x0ementionDefault\x12)\n\x10mention_keywords\x18\x06 \x03(\tR\x0fmentionKeywords\x12,\n\x12output_schema_json\x18\x07 \x01(\tR\x10outputSchemaJson\x12,\n\x12input_example_json\x18\x08 \x01(\tR\x10inputExampleJson\x12.\n\x13output_example_json\x18\t \x01(\tR\x11outputExampleJson\"\xa0\x02\n\x1a\x43onnectorCatalogProvenance\x12\x14\n\x05\x62\x61sis\x18\x01 \x01(\tR\x05\x62\x61sis\x12\x1d\n\nsource_url\x18\x02 \x01(\tR\tsourceUrl\x12(\n\x10last_verified_at\x18\x03 \x01(\tR\x0elastVerifiedAt\x12X\n\x12verification_level\x18\x04 \x01(\x0e\x32).connectors.v1.ConnectorVerificationLevelR\x11verificationLevel\x12I\n\revidence_kind\x18\x05 \x01(\x0e\x32$.connectors.v1.ConnectorEvidenceKindR\x0c\x65videnceKind\"\xe1\x02\n\x14\x43onnectorAuthBinding\x12\x1b\n\tstable_id\x18\x01 \x01(\tR\x08stableId\x12)\n\x10\x63redential_field\x18\x02 \x01(\tR\x0f\x63redentialField\x12\x1c\n\tplacement\x18\x03 \x01(\tR\tplacement\x12\x16\n\x06scheme\x18\x04 \x01(\tR\x06scheme\x12\x1f\n\x0bheader_name\x18\x05 \x01(\tR\nheaderName\x12\x1f\n\x0bquery_param\x18\x06 \x01(\tR\nqueryParam\x12I\n\nprovenance\x18\x07 \x01(\x0b\x32).connectors.v1.ConnectorCatalogProvenanceR\nprovenance\x12!\n\x0cvalue_prefix\x18\x08 \x01(\tR\x0bvaluePrefix\x12\x1b\n\tvalue_key\x18\t \x01(\tR\x08valueKey\"_\n\x15\x43onnectorStaticHeader\x12\x1c\n\tplacement\x18\x01 \x01(\tR\tplacement\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x14\n\x05value\x18\x03 \x01(\tR\x05value\"\xa4\x08\n\x17\x43onnectorResourceFamily\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x1b\n\x04path\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04path\x12&\n\nevent_kind\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\teventKind\x12\x1f\n\x0bhttp_method\x18\x04 \x01(\tR\nhttpMethod\x12\x39\n\x19\x64\x65\x66\x61ult_request_body_json\x18\x05 \x01(\tR\x16\x64\x65\x66\x61ultRequestBodyJson\x12\x1b\n\tstable_id\x18\x06 \x01(\tR\x08stableId\x12\x18\n\x07\x61liases\x18\x07 \x03(\tR\x07\x61liases\x12I\n\nprovenance\x18\x08 \x01(\x0b\x32).connectors.v1.ConnectorCatalogProvenanceR\nprovenance\x12\'\n\x0frecord_selector\x18\t \x01(\tR\x0erecordSelector\x12\x1f\n\x0bprimary_key\x18\n \x03(\tR\nprimaryKey\x12!\n\x0c\x63ursor_field\x18\x0b \x01(\tR\x0b\x63ursorField\x12J\n\npagination\x18\x0c \x01(\x0b\x32*.connectors.v1.ConnectorPaginationContractR\npagination\x12\x33\n\x13requests_per_window\x18\r \x01(\rH\x00R\x11requestsPerWindow\x88\x01\x01\x12*\n\x0ewindow_seconds\x18\x0e \x01(\rH\x01R\rwindowSeconds\x88\x01\x01\x12,\n\x0fmax_concurrency\x18\x0f \x01(\rH\x02R\x0emaxConcurrency\x88\x01\x01\x12\x1e\n\x08\x62\x61se_url\x18\x10 \x01(\tH\x03R\x07\x62\x61seUrl\x88\x01\x01\x12[\n\x14query_param_bindings\x18\x11 \x03(\x0b\x32).connectors.v1.ConnectorQueryParamBindingR\x12queryParamBindings\x12L\n\x0bincremental\x18\x12 \x01(\x0b\x32*.connectors.v1.ConnectorIncrementalBindingR\x0bincremental\x12\x32\n\x15synthetic_primary_key\x18\x13 \x01(\x08R\x13syntheticPrimaryKey\x12:\n\x04\x63ost\x18\x14 \x01(\x0b\x32&.connectors.v1.ConnectorCostProjectionR\x04\x63ostB\x16\n\x14_requests_per_windowB\x11\n\x0f_window_secondsB\x12\n\x10_max_concurrencyB\x0b\n\t_base_url\"\xe5\x06\n\x17\x43onnectorCostProjection\x12*\n\x11spend_month_field\x18\x01 \x01(\tR\x0fspendMonthField\x12*\n\x11spend_today_field\x18\x02 \x01(\tR\x0fspendTodayField\x12*\n\x11\x61sset_name_fields\x18\x03 \x03(\tR\x0f\x61ssetNameFields\x12\x1f\n\x0bmodel_field\x18\x04 \x01(\tR\nmodelField\x12(\n\x10source_url_field\x18\x05 \x01(\tR\x0esourceUrlField\x12,\n\x12resource_id_source\x18\x06 \x01(\tR\x10resourceIdSource\x12\x1f\n\x0brecord_kind\x18\x07 \x01(\tR\nrecordKind\x12!\n\x0cperiod_field\x18\x08 \x01(\tR\x0bperiodField\x12*\n\x11occurred_at_field\x18\t \x01(\tR\x0foccurredAtField\x12,\n\x12input_tokens_field\x18\n \x01(\tR\x10inputTokensField\x12.\n\x13output_tokens_field\x18\x0b \x01(\tR\x11outputTokensField\x12.\n\x13request_count_field\x18\x0c \x01(\tR\x11requestCountField\x12.\n\x13request_count_value\x18\r \x01(\x04R\x11requestCountValue\x12\x1d\n\nspend_unit\x18\x0e \x01(\tR\tspendUnit\x12,\n\x12occurred_at_format\x18\x0f \x01(\tR\x10occurredAtFormat\x12\'\n\x0fresult_selector\x18\x10 \x01(\tR\x0eresultSelector\x12!\n\x0c\x61mount_field\x18\x11 \x01(\tR\x0b\x61mountField\x12%\n\x0e\x63urrency_field\x18\x12 \x01(\tR\rcurrencyField\x12)\n\x10\x64imension_fields\x18\x13 \x03(\tR\x0f\x64imensionFields\x12\x34\n\x16source_identity_fields\x18\x14 \x03(\tR\x14sourceIdentityFields\"\x8b\x03\n\x1b\x43onnectorIncrementalBinding\x12#\n\rrequest_param\x18\x01 \x01(\tR\x0crequestParam\x12\x1e\n\ncomparison\x18\x02 \x01(\tR\ncomparison\x12=\n\x18initial_lookback_seconds\x18\x03 \x01(\x04H\x00R\x16initialLookbackSeconds\x88\x01\x01\x12\x36\n\x17initial_lookback_format\x18\x04 \x01(\tR\x15initialLookbackFormat\x12(\n\rslice_seconds\x18\x05 \x01(\x04H\x01R\x0csliceSeconds\x88\x01\x01\x12;\n\x17resume_lookback_seconds\x18\x06 \x01(\x04H\x02R\x15resumeLookbackSeconds\x88\x01\x01\x42\x1b\n\x19_initial_lookback_secondsB\x10\n\x0e_slice_secondsB\x1a\n\x18_resume_lookback_seconds\"\xca\x01\n\x1a\x43onnectorQueryParamBinding\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x16\n\x06source\x18\x02 \x01(\tR\x06source\x12!\n\x0cstatic_value\x18\x03 \x01(\tR\x0bstaticValue\x12)\n\x10\x63redential_field\x18\x04 \x01(\tR\x0f\x63redentialField\x12\x32\n\x15\x63onnection_config_key\x18\x05 \x01(\tR\x13\x63onnectionConfigKey\"\x86\x04\n\x1b\x43onnectorPaginationContract\x12\x12\n\x04kind\x18\x01 \x01(\tR\x04kind\x12!\n\x0c\x63ursor_param\x18\x02 \x01(\tR\x0b\x63ursorParam\x12\x30\n\x14\x63ursor_response_path\x18\x03 \x01(\tR\x12\x63ursorResponsePath\x12\x1d\n\npage_param\x18\x04 \x01(\tR\tpageParam\x12!\n\x0coffset_param\x18\x05 \x01(\tR\x0boffsetParam\x12&\n\x0fpage_size_param\x18\x06 \x01(\tR\rpageSizeParam\x12/\n\x11page_size_default\x18\x07 \x01(\rH\x00R\x0fpageSizeDefault\x88\x01\x01\x12(\n\rinitial_value\x18\x08 \x01(\rH\x01R\x0cinitialValue\x88\x01\x01\x12!\n\tincrement\x18\t \x01(\rH\x02R\tincrement\x88\x01\x01\x12\x33\n\x16next_url_response_path\x18\n \x01(\tR\x13nextUrlResponsePath\x12+\n\x12stop_on_short_page\x18\x0b \x01(\x08R\x0fstopOnShortPageB\x14\n\x12_page_size_defaultB\x10\n\x0e_initial_valueB\x0c\n\n_increment\"\x91\x02\n\x16\x43onnectorChildResource\x12$\n\tfamily_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08\x66\x61milyId\x12\x31\n\x10parent_family_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eparentFamilyId\x12M\n\x0bpath_params\x18\x03 \x03(\x0b\x32,.connectors.v1.ConnectorPathParameterBindingR\npathParams\x12O\n\x0cquery_params\x18\x04 \x03(\x0b\x32,.connectors.v1.ConnectorPathParameterBindingR\x0bqueryParams\"j\n\x1d\x43onnectorPathParameterBinding\x12\x1d\n\x05param\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05param\x12*\n\x0csource_field\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bsourceField\"\xe1\x06\n\x11\x43onnectorProvider\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12!\n\x0c\x64isplay_name\x18\x02 \x01(\tR\x0b\x64isplayName\x12M\n\x11\x64\x65\x66\x61ult_auth_type\x18\x03 \x01(\x0e\x32\x17.connectors.v1.AuthTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0f\x64\x65\x66\x61ultAuthType\x12%\n\x0e\x64\x65\x66\x61ult_scopes\x18\x04 \x03(\tR\rdefaultScopes\x12\"\n\x0c\x63\x61pabilities\x18\x05 \x03(\tR\x0c\x63\x61pabilities\x12#\n\rsupports_pkce\x18\x06 \x01(\x08R\x0csupportsPkce\x12)\n\x10supports_refresh\x18\x07 \x01(\x08R\x0fsupportsRefresh\x12T\n\x11\x63redential_fields\x18\x08 \x03(\x0b\x32\'.connectors.v1.ConnectorCredentialFieldR\x10\x63redentialFields\x12q\n\x1b\x63redential_lifecycle_policy\x18\t \x01(\x0b\x32\x31.connectors.v1.ConnectorCredentialLifecyclePolicyR\x19\x63redentialLifecyclePolicy\x12\'\n\x0foauth_supported\x18\n \x01(\x08R\x0eoauthSupported\x12-\n\x12\x63\x61talog_categories\x18\x0b \x03(\tR\x11\x63\x61talogCategories\x12\x39\n\x07runtime\x18\x0c \x01(\x0b\x32\x1f.connectors.v1.ConnectorRuntimeR\x07runtime\x12\x1b\n\tstable_id\x18\r \x01(\tR\x08stableId\x12\x18\n\x07\x61liases\x18\x0e \x03(\tR\x07\x61liases\x12I\n\nprovenance\x18\x0f \x01(\x0b\x32).connectors.v1.ConnectorCatalogProvenanceR\nprovenance\x12H\n\rauth_bindings\x18\x10 \x03(\x0b\x32#.connectors.v1.ConnectorAuthBindingR\x0c\x61uthBindings\"\xbb\x02\n\x1d\x43ustomConnectorActionMetadata\x12$\n\taction_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08\x61\x63tionId\x12\x1b\n\ttool_name\x18\x02 \x01(\tR\x08toolName\x12)\n\x10tool_description\x18\x03 \x01(\tR\x0ftoolDescription\x12\x16\n\x06\x65\x66\x66\x65\x63t\x18\x04 \x01(\tR\x06\x65\x66\x66\x65\x63t\x12\x18\n\x07\x65nabled\x18\x05 \x01(\x08R\x07\x65nabled\x12\x36\n\x17\x65stimated_schema_tokens\x18\x06 \x01(\rR\x15\x65stimatedSchemaTokens\x12\x42\n\x1d\x64\x65scription_proposal_reviewed\x18\x07 \x01(\x08R\x1b\x64\x65scriptionProposalReviewed\"\xdf\x04\n\x0f\x43ustomConnector\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\x04name\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12 \n\x0b\x64\x65scription\x18\x05 \x01(\tR\x0b\x64\x65scription\x12(\n\x0bsource_type\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nsourceType\x12\x1d\n\nsource_uri\x18\x07 \x01(\tR\tsourceUri\x12(\n\x0bprovider_id\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nproviderId\x12(\n\x0bspec_sha256\x18\t \x01(\tB\x07\xbaH\x04r\x02\x10@R\nspecSha256\x12\x1f\n\x06status\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06status\x12\x46\n\x07\x61\x63tions\x18\x0b \x03(\x0b\x32,.connectors.v1.CustomConnectorActionMetadataR\x07\x61\x63tions\x12\x39\n\ncreated_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x1a\n\x08revision\x18\x0e \x01(\x04R\x08revision\"\xe9\x03\n\x1dPreviewCustomConnectorRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\x04name\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12 \n\x0b\x64\x65scription\x18\x04 \x01(\tR\x0b\x64\x65scription\x12(\n\x0bsource_type\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nsourceType\x12#\n\x08\x64ocument\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08\x64ocument\x12\x1d\n\nsource_uri\x18\x07 \x01(\tR\tsourceUri\x12@\n\x1c\x61pproved_destination_origins\x18\x08 \x03(\tR\x1a\x61pprovedDestinationOrigins\x12\x46\n\x07\x61\x63tions\x18\t \x03(\x0b\x32,.connectors.v1.CustomConnectorActionMetadataR\x07\x61\x63tions\x12\x33\n\x15\x64\x65scriptions_reviewed\x18\n \x01(\x08R\x14\x64\x65scriptionsReviewed\"\x80\x01\n\x1ePreviewCustomConnectorResponse\x12<\n\tconnector\x18\x01 \x01(\x0b\x32\x1e.connectors.v1.CustomConnectorR\tconnector\x12 \n\x0b\x64iagnostics\x18\x02 \x03(\tR\x0b\x64iagnostics\"l\n\x1c\x43reateCustomConnectorRequest\x12L\n\ndefinition\x18\x01 \x01(\x0b\x32,.connectors.v1.PreviewCustomConnectorRequestR\ndefinition\"]\n\x1d\x43reateCustomConnectorResponse\x12<\n\tconnector\x18\x01 \x01(\x0b\x32\x1e.connectors.v1.CustomConnectorR\tconnector\"4\n\x19GetCustomConnectorRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\"Z\n\x1aGetCustomConnectorResponse\x12<\n\tconnector\x18\x01 \x01(\x0b\x32\x1e.connectors.v1.CustomConnectorR\tconnector\"{\n\x1bListCustomConnectorsRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"^\n\x1cListCustomConnectorsResponse\x12>\n\nconnectors\x18\x01 \x03(\x0b\x32\x1e.connectors.v1.CustomConnectorR\nconnectors\"\xc8\x02\n\x1cUpdateCustomConnectorRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x05 \x01(\tR\x0b\x64\x65scription\x12\x46\n\x07\x61\x63tions\x18\x06 \x03(\x0b\x32,.connectors.v1.CustomConnectorActionMetadataR\x07\x61\x63tions\x12\x33\n\x15\x64\x65scriptions_reviewed\x18\x07 \x01(\x08R\x14\x64\x65scriptionsReviewed\"]\n\x1dUpdateCustomConnectorResponse\x12<\n\tconnector\x18\x01 \x01(\x0b\x32\x1e.connectors.v1.CustomConnectorR\tconnector\"\x95\x01\n\x1c\x44\x65leteCustomConnectorRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"G\n\x1d\x44\x65leteCustomConnectorResponse\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x16\n\x06status\x18\x02 \x01(\tR\x06status\"\x9c\x02\n\x13SourceOfTruthPolicy\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x34\n\x04\x61rea\x18\x02 \x01(\x0e\x32 .connectors.v1.SourceOfTruthAreaR\x04\x61rea\x12;\n\x15primary_connection_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x13primaryConnectionId\x12\x34\n\x16\x66\x61llback_connection_id\x18\x04 \x01(\tR\x14\x66\x61llbackConnectionId\x12\x30\n\x0forganization_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\"\xb7\x01\n\x12\x44\x65gradedReadPolicy\x12\x12\n\x04mode\x18\x01 \x01(\tR\x04mode\x12\x31\n\x14\x61llowed_integrations\x18\x02 \x03(\tR\x13\x61llowedIntegrations\x12&\n\x0fmax_age_minutes\x18\x03 \x01(\x05R\rmaxAgeMinutes\x12\x32\n\x15queue_primary_refresh\x18\x04 \x01(\x08R\x13queuePrimaryRefresh\"\xff\x03\n\x19RegisterConnectionRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12(\n\x0bprovider_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nproviderId\x12!\n\x0c\x64isplay_name\x18\x03 \x01(\tR\x0b\x64isplayName\x12\x34\n\tauth_type\x18\x04 \x01(\x0e\x32\x17.connectors.v1.AuthTypeR\x08\x61uthType\x12\x16\n\x06scopes\x18\x05 \x03(\tR\x06scopes\x12[\n\x0b\x63redentials\x18\x06 \x03(\x0b\x32\x39.connectors.v1.RegisterConnectionRequest.CredentialsEntryR\x0b\x63redentials\x12\x30\n\x0forganization_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12\'\n\x0fidempotency_key\x18\x08 \x01(\tR\x0eidempotencyKey\x12#\n\rconnection_id\x18\t \x01(\tR\x0c\x63onnectionId\x1a>\n\x10\x43redentialsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"W\n\x1aRegisterConnectionResponse\x12\x39\n\nconnection\x18\x01 \x01(\x0b\x32\x19.connectors.v1.ConnectionR\nconnection\"/\n\x14GetConnectionRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\"R\n\x15GetConnectionResponse\x12\x39\n\nconnection\x18\x01 \x01(\x0b\x32\x19.connectors.v1.ConnectionR\nconnection\"\xbd\x03\n\x16ListConnectionsRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12 \n\x05limit\x18\x02 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xc8\x01(\x00R\x05limit\x12\x1f\n\x06offset\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\x12\x30\n\x0forganization_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12\x1f\n\x0bprovider_id\x18\x05 \x01(\tR\nproviderId\x12\x34\n\tauth_type\x18\x06 \x01(\x0e\x32\x17.connectors.v1.AuthTypeR\x08\x61uthType\x12\x1e\n\ncapability\x18\x07 \x01(\tR\ncapability\x12@\n\rhealth_status\x18\x08 \x01(\x0e\x32\x1b.connectors.v1.HealthStatusR\x0chealthStatus\x12I\n\x10\x63redential_state\x18\t \x01(\x0e\x32\x1e.connectors.v1.CredentialStateR\x0f\x63redentialState\"l\n\x17ListConnectionsResponse\x12;\n\x0b\x63onnections\x18\x01 \x03(\x0b\x32\x19.connectors.v1.ConnectionR\x0b\x63onnections\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\"\x99\x01\n\x18ListUpcomingCallsRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1f\n\x05limit\x18\x03 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x05limit\"\x99\x01\n\x19ListUpcomingCallsResponse\x12\x31\n\x05\x63\x61lls\x18\x01 \x03(\x0b\x32\x1b.connectors.v1.UpcomingCallR\x05\x63\x61lls\x12I\n\x0csource_state\x18\x02 \x01(\x0e\x32&.connectors.v1.UpcomingCallSourceStateR\x0bsourceState\"\xda\x01\n\x0cUpcomingCall\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x1e\n\x05title\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\x05title\x12#\n\x08join_url\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x88\x01\x01R\x07joinUrl\x12\x37\n\tstarts_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x08startsAt\x12\x33\n\x07\x65nds_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x06\x65ndsAt\"\xaf\x01\n\x14ListProvidersRequest\x12\x14\n\x05query\x18\x01 \x01(\tR\x05query\x12>\n\tauth_type\x18\x02 \x01(\x0e\x32\x17.connectors.v1.AuthTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08\x61uthType\x12 \n\x05limit\x18\x03 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xc8\x01(\x00R\x05limit\x12\x1f\n\x06offset\x18\x04 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"\x9f\x01\n\x15ListProvidersResponse\x12>\n\tproviders\x18\x01 \x03(\x0b\x32 .connectors.v1.ConnectorProviderR\tproviders\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\'\n\x0f\x63\x61talog_version\x18\x03 \x01(\tR\x0e\x63\x61talogVersion\"3\n\x18RefreshConnectionRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\"V\n\x19RefreshConnectionResponse\x12\x39\n\nconnection\x18\x01 \x01(\x0b\x32\x19.connectors.v1.ConnectionR\nconnection\"T\n\x17RevokeConnectionRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12 \n\x06reason\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\x06reason\"\x1a\n\x18RevokeConnectionResponse\"@\n\x10GetHealthRequest\x12,\n\rconnection_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x63onnectionId\"L\n\x11GetHealthResponse\x12\x37\n\x06health\x18\x01 \x01(\x0b\x32\x1f.connectors.v1.ConnectionHealthR\x06health\"\xb1\x01\n\x1bResolveSourceOfTruthRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x34\n\x04\x61rea\x18\x02 \x01(\x0e\x32 .connectors.v1.SourceOfTruthAreaR\x04\x61rea\x12\x30\n\x0forganization_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\"\xa4\x01\n\x1cResolveSourceOfTruthResponse\x12:\n\x06policy\x18\x01 \x01(\x0b\x32\".connectors.v1.SourceOfTruthPolicyR\x06policy\x12H\n\x12primary_connection\x18\x02 \x01(\x0b\x32\x19.connectors.v1.ConnectionR\x11primaryConnection\"|\n\x1cGetDegradedReadPolicyRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\"Z\n\x1dGetDegradedReadPolicyResponse\x12\x39\n\x06policy\x18\x01 \x01(\x0b\x32!.connectors.v1.DegradedReadPolicyR\x06policy\"c\n\x1dSetSourceOfTruthPolicyRequest\x12\x42\n\x06policy\x18\x01 \x01(\x0b\x32\".connectors.v1.SourceOfTruthPolicyB\x06\xbaH\x03\xc8\x01\x01R\x06policy\"\\\n\x1eSetSourceOfTruthPolicyResponse\x12:\n\x06policy\x18\x01 \x01(\x0b\x32\".connectors.v1.SourceOfTruthPolicyR\x06policy\"F\n\x16GetCapabilitiesRequest\x12,\n\rconnection_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x63onnectionId\"=\n\x17GetCapabilitiesResponse\x12\"\n\x0c\x63\x61pabilities\x18\x01 \x03(\tR\x0c\x63\x61pabilities\"\x9e\x02\n\x18InitiateOAuthFlowRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12(\n\x0bprovider_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nproviderId\x12\x16\n\x06scopes\x18\x04 \x03(\tR\x06scopes\x12*\n\x0credirect_uri\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bredirectUri\x12\x36\n\x17github_existing_account\x18\x06 \x01(\tR\x15githubExistingAccount\"\xc7\x01\n\x19InitiateOAuthFlowResponse\x12#\n\rauthorize_url\x18\x01 \x01(\tR\x0c\x61uthorizeUrl\x12\x14\n\x05state\x18\x02 \x01(\tR\x05state\x12\x39\n\nexpires_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x34\n\x16github_installation_id\x18\x04 \x01(\x04R\x14githubInstallationId\"\x8c\x03\n\x18\x43ompleteOAuthFlowRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12(\n\x0bprovider_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nproviderId\x12\x1d\n\x05state\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05state\x12\x1b\n\x04\x63ode\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04\x63ode\x12*\n\x0credirect_uri\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bredirectUri\x12!\n\x0c\x64isplay_name\x18\x07 \x01(\tR\x0b\x64isplayName\x12\'\n\x0fidempotency_key\x18\x08 \x01(\tR\x0eidempotencyKey\x12\x34\n\x16github_installation_id\x18\t \x01(\x04R\x14githubInstallationId\"V\n\x19\x43ompleteOAuthFlowResponse\x12\x39\n\nconnection\x18\x01 \x01(\x0b\x32\x19.connectors.v1.ConnectionR\nconnection\"\xe5\x04\n\x1bInitiateMcpOAuthFlowRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12$\n\tserver_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08serverId\x12&\n\nprofile_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tprofileId\x12*\n\x0cprofile_name\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bprofileName\x12*\n\x0csubject_kind\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bsubjectKind\x12&\n\nsubject_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsubjectId\x12+\n\x0cresource_url\x18\x08 \x01(\tB\x08\xbaH\x05r\x03\x90\x01\x01R\x0bresourceUrl\x12\x16\n\x06scopes\x18\t \x03(\tR\x06scopes\x12+\n\x0credirect_uri\x18\n \x01(\tB\x08\xbaH\x05r\x03\x88\x01\x01R\x0bredirectUri\x12\x1b\n\tclient_id\x18\x0b \x01(\tR\x08\x63lientId\x12*\n\x11\x63lient_secret_ref\x18\x0c \x01(\tR\x0f\x63lientSecretRef\x12\'\n\x0fidempotency_key\x18\r \x01(\tR\x0eidempotencyKey\x12\x36\n\x12profile_generation\x18\x0e \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x11profileGeneration\"\xb0\x02\n\x1cInitiateMcpOAuthFlowResponse\x12#\n\rauthorize_url\x18\x01 \x01(\tR\x0c\x61uthorizeUrl\x12\x14\n\x05state\x18\x02 \x01(\tR\x05state\x12\x39\n\nexpires_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x32\n\x15resource_metadata_url\x18\x04 \x01(\tR\x13resourceMetadataUrl\x12\x31\n\x14\x61uthorization_server\x18\x05 \x01(\tR\x13\x61uthorizationServer\x12\x16\n\x06scopes\x18\x06 \x03(\tR\x06scopes\x12\x1b\n\tclient_id\x18\x07 \x01(\tR\x08\x63lientId\"\xe4\x04\n\x1b\x43ompleteMcpOAuthFlowRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12$\n\tserver_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08serverId\x12&\n\nprofile_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tprofileId\x12\x1d\n\x05state\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05state\x12\x12\n\x04\x63ode\x18\x06 \x01(\tR\x04\x63ode\x12+\n\x0credirect_uri\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x88\x01\x01R\x0bredirectUri\x12\x30\n\x0fidempotency_key\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12\x36\n\x12profile_generation\x18\t \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x11profileGeneration\x12<\n\x1a\x61uthorization_response_iss\x18\n \x01(\tR\x18\x61uthorizationResponseIss\x12%\n\x0eprovider_error\x18\x0b \x01(\tR\rproviderError\x12<\n\x1aprovider_error_description\x18\x0c \x01(\tR\x18providerErrorDescription\x12,\n\x12provider_error_uri\x18\r \x01(\tR\x10providerErrorUri\"\xf7\x01\n\x1c\x43ompleteMcpOAuthFlowResponse\x12%\n\x0e\x63onnection_ref\x18\x01 \x01(\tR\rconnectionRef\x12\x19\n\x08grant_id\x18\x02 \x01(\tR\x07grantId\x12\x16\n\x06scopes\x18\x03 \x03(\tR\x06scopes\x12\x39\n\nexpires_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12#\n\rgrant_version\x18\x05 \x01(\x03R\x0cgrantVersion\x12\x1d\n\nprofile_id\x18\x06 \x01(\tR\tprofileId\"\xcf\x02\n\x1aRevokeMcpOAuthGrantRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\"\n\x08grant_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07grantId\x12.\n\x0e\x63onnection_ref\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rconnectionRef\x12(\n\x0breason_code\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nreasonCode\x12\x1d\n\nprofile_id\x18\x06 \x01(\tR\tprofileId\x12\x36\n\x12profile_generation\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x11profileGeneration\"R\n\x1bRevokeMcpOAuthGrantResponse\x12\x18\n\x07revoked\x18\x01 \x01(\x08R\x07revoked\x12\x19\n\x08grant_id\x18\x02 \x01(\tR\x07grantId\"\xb5\x01\n\x12TriggerSyncRequest\x12,\n\rconnection_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x63onnectionId\x12\x19\n\x08run_type\x18\x02 \x01(\tR\x07runType\x12\x30\n\x0fidempotency_key\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12$\n\tstream_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08streamId\"\xa5\x01\n\x13TriggerSyncResponse\x12\x19\n\x08queue_id\x18\x01 \x01(\tR\x07queueId\x12#\n\rconnection_id\x18\x02 \x01(\tR\x0c\x63onnectionId\x12\x19\n\x08run_type\x18\x03 \x01(\tR\x07runType\x12\x16\n\x06status\x18\x04 \x01(\tR\x06status\x12\x1b\n\tstream_id\x18\x05 \x01(\tR\x08streamId\"\xe0\x04\n\x1d\x45xecuteConnectorActionRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12,\n\rconnection_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x63onnectionId\x12$\n\taction_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08\x61\x63tionId\x12\x30\n\x0fidempotency_key\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12.\n\x13\x61pproval_request_id\x18\x06 \x01(\tR\x11\x61pprovalRequestId\x12,\n\raction_digest\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x61\x63tionDigest\x12\x1b\n\tbody_json\x18\x08 \x01(\tR\x08\x62odyJson\x12<\n\x1a\x65xpected_provider_revision\x18\t \x01(\tR\x18\x65xpectedProviderRevision\x12,\n\x12\x61uthority_grant_id\x18\n \x01(\tR\x10\x61uthorityGrantId\x12:\n\x19\x65xecution_authority_token\x18\x0b \x01(\tR\x17\x65xecutionAuthorityToken\x12\x38\n\x18\x63\x61nonical_request_digest\x18\x0c \x01(\tR\x16\x63\x61nonicalRequestDigest\"\xaf\x06\n\x1e\x45xecuteConnectorActionResponse\x12\x41\n\x1d\x63onnector_action_execution_id\x18\x01 \x01(\tR\x1a\x63onnectorActionExecutionId\x12\x18\n\x05state\x18\x02 \x01(\tB\x02\x18\x01R\x05state\x12,\n\x12provider_object_id\x18\x03 \x01(\tR\x10providerObjectId\x12+\n\x11provider_revision\x18\x04 \x01(\tR\x10providerRevision\x12+\n\x11idempotent_replay\x18\x05 \x01(\x08R\x10idempotentReplay\x12\x30\n\x14redacted_result_json\x18\x06 \x01(\tR\x12redactedResultJson\x12Y\n\x0c\x61\x63tion_state\x18\x07 \x01(\x0e\x32,.connectors.v1.ConnectorActionExecutionStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0b\x61\x63tionState\x12\x46\n\nerror_kind\x18\x08 \x01(\x0e\x32\'.connectors.v1.ConnectorActionErrorKindR\terrorKind\x12\x1d\n\nerror_code\x18\t \x01(\tR\terrorCode\x12%\n\x0eretry_eligible\x18\n \x01(\x08R\rretryEligible\x12\x33\n\x13retry_after_seconds\x18\x0b \x01(\x04H\x00R\x11retryAfterSeconds\x88\x01\x01\x12\'\n\x0foperator_detail\x18\x0c \x01(\tR\x0eoperatorDetail\x12.\n\x13provider_channel_id\x18\r \x01(\tR\x11providerChannelId\x12.\n\x13provider_message_ts\x18\x0e \x01(\tR\x11providerMessageTs\x12\x37\n\x17reconciliation_required\x18\x0f \x01(\x08R\x16reconciliationRequiredB\x16\n\x14_retry_after_seconds\"\xca\x01\n\x11StreamCursorState\x12\x1b\n\tstream_id\x18\x01 \x01(\tR\x08streamId\x12\x1b\n\tstable_id\x18\x02 \x01(\tR\x08stableId\x12\x1d\n\nhas_cursor\x18\x03 \x01(\x08R\thasCursor\x12!\n\x0c\x63ursor_value\x18\x04 \x01(\tR\x0b\x63ursorValue\x12\x39\n\nupdated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"\x89\x02\n\x10StreamRunSummary\x12(\n\x10\x63onnector_run_id\x18\x01 \x01(\tR\x0e\x63onnectorRunId\x12\x16\n\x06status\x18\x02 \x01(\tR\x06status\x12\x18\n\x07outcome\x18\x03 \x01(\tR\x07outcome\x12\x39\n\nstarted_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartedAt\x12;\n\x0b\x66inished_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nfinishedAt\x12!\n\x0c\x65rror_detail\x18\x06 \x01(\tR\x0b\x65rrorDetail\"\x81\x03\n\x10\x43onnectionStream\x12\x1b\n\tstream_id\x18\x01 \x01(\tR\x08streamId\x12\x1b\n\tstable_id\x18\x02 \x01(\tR\x08stableId\x12I\n\x10replication_mode\x18\x03 \x01(\x0e\x32\x1e.connectors.v1.ReplicationModeR\x0freplicationMode\x12.\n\x13selected_by_default\x18\x04 \x01(\x08R\x11selectedByDefault\x12\x1f\n\x0bprimary_key\x18\x05 \x03(\tR\nprimaryKey\x12!\n\x0c\x63ursor_field\x18\x06 \x01(\tR\x0b\x63ursorField\x12\x38\n\x06\x63ursor\x18\x07 \x01(\x0b\x32 .connectors.v1.StreamCursorStateR\x06\x63ursor\x12:\n\x08last_run\x18\x08 \x01(\x0b\x32\x1f.connectors.v1.StreamRunSummaryR\x07lastRun\"C\n\x1cListConnectionStreamsRequest\x12#\n\rconnection_id\x18\x01 \x01(\tR\x0c\x63onnectionId\"Z\n\x1dListConnectionStreamsResponse\x12\x39\n\x07streams\x18\x01 \x03(\x0b\x32\x1f.connectors.v1.ConnectionStreamR\x07streams\"\xa3\x02\n\x12SyncPartitionState\x12#\n\rpartition_key\x18\x01 \x01(\tR\x0cpartitionKey\x12*\n\x11\x63ursor_value_json\x18\x02 \x01(\tR\x0f\x63ursorValueJson\x12.\n\x13high_watermark_json\x18\x03 \x01(\tR\x11highWatermarkJson\x12.\n\x13signpost_value_json\x18\x04 \x01(\tR\x11signpostValueJson\x12!\n\x0cstate_status\x18\x05 \x01(\tR\x0bstateStatus\x12\x39\n\nupdated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"Y\n\x15GetStreamStateRequest\x12#\n\rconnection_id\x18\x01 \x01(\tR\x0c\x63onnectionId\x12\x1b\n\tstream_id\x18\x02 \x01(\tR\x08streamId\"\xc0\x01\n\x16GetStreamStateResponse\x12\x37\n\x06stream\x18\x01 \x01(\x0b\x32\x1f.connectors.v1.ConnectionStreamR\x06stream\x12\x41\n\npartitions\x18\x02 \x03(\x0b\x32!.connectors.v1.SyncPartitionStateR\npartitions\x12*\n\x11\x64\x65\x61\x64_letter_count\x18\x03 \x01(\x03R\x0f\x64\x65\x61\x64LetterCount\"\xbd\x01\n\x17ResetStreamStateRequest\x12#\n\rconnection_id\x18\x01 \x01(\tR\x0c\x63onnectionId\x12\x1b\n\tstream_id\x18\x02 \x01(\tR\x08streamId\x12&\n\x0c\x63ursor_value\x18\x03 \x01(\tH\x00R\x0b\x63ursorValue\x88\x01\x01\x12\'\n\x0fidempotency_key\x18\x04 \x01(\tR\x0eidempotencyKeyB\x0f\n\r_cursor_value\"T\n\x18ResetStreamStateResponse\x12\x38\n\x06\x63ursor\x18\x01 \x01(\x0b\x32 .connectors.v1.StreamCursorStateR\x06\x63ursor\"\x82\x04\n\x0cSyncSchedule\x12#\n\rconnection_id\x18\x01 \x01(\tR\x0c\x63onnectionId\x12\x1b\n\tstream_id\x18\x02 \x01(\tR\x08streamId\x12\'\n\x0forganization_id\x18\x03 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x04 \x01(\tR\x0bworkspaceId\x12\x19\n\x08run_type\x18\x05 \x01(\tR\x07runType\x12)\n\x10interval_seconds\x18\x06 \x01(\x05R\x0fintervalSeconds\x12\x18\n\x07\x65nabled\x18\x07 \x01(\x08R\x07\x65nabled\x12\x46\n\x11last_scheduled_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0flastScheduledAt\x12\x39\n\ncreated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x46\n\x11last_completed_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0flastCompletedAt\"\x97\x02\n\x19\x43reateSyncScheduleRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12#\n\rconnection_id\x18\x03 \x01(\tR\x0c\x63onnectionId\x12\x1b\n\tstream_id\x18\x04 \x01(\tR\x08streamId\x12)\n\x10interval_seconds\x18\x05 \x01(\x05R\x0fintervalSeconds\x12\x18\n\x07\x65nabled\x18\x06 \x01(\x08R\x07\x65nabled\x12\'\n\x0fidempotency_key\x18\x07 \x01(\tR\x0eidempotencyKey\"\x82\x01\n\x1a\x43reateSyncScheduleResponse\x12\x37\n\x08schedule\x18\x01 \x01(\x0b\x32\x1b.connectors.v1.SyncScheduleR\x08schedule\x12+\n\x11idempotent_replay\x18\x02 \x01(\x08R\x10idempotentReplay\"?\n\x18ListSyncSchedulesRequest\x12#\n\rconnection_id\x18\x01 \x01(\tR\x0c\x63onnectionId\"V\n\x19ListSyncSchedulesResponse\x12\x39\n\tschedules\x18\x01 \x03(\x0b\x32\x1b.connectors.v1.SyncScheduleR\tschedules\"\xe4\x07\n\x18ProviderResourceEnvelope\x12%\n\x0eschema_version\x18\x01 \x01(\tR\rschemaVersion\x12,\n\x12stable_resource_id\x18\x02 \x01(\tR\x10stableResourceId\x12\'\n\x0forganization_id\x18\x03 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x04 \x01(\tR\x0bworkspaceId\x12\x1f\n\x0bprovider_id\x18\x05 \x01(\tR\nproviderId\x12#\n\rconnection_id\x18\x06 \x01(\tR\x0c\x63onnectionId\x12(\n\x10source_family_id\x18\x07 \x01(\tR\x0esourceFamilyId\x12\x38\n\x18originating_principal_id\x18\x08 \x01(\tR\x16originatingPrincipalId\x12#\n\rresource_kind\x18\t \x01(\tR\x0cresourceKind\x12,\n\x12parent_resource_id\x18\n \x01(\tR\x10parentResourceId\x12Y\n\x10visibility_class\x18\x0b \x01(\x0e\x32..connectors.v1.ProviderResourceVisibilityClassR\x0fvisibilityClass\x12\x38\n\x18visibility_principal_ids\x18\x0c \x03(\tR\x16visibilityPrincipalIds\x12:\n\x19visibility_membership_ref\x18\r \x01(\tR\x17visibilityMembershipRef\x12H\n\rcontent_trust\x18\x0e \x01(\x0e\x32#.connectors.v1.ProviderContentTrustR\x0c\x63ontentTrust\x12%\n\x0epayload_sha256\x18\x0f \x01(\tR\rpayloadSha256\x12+\n\x11provider_revision\x18\x10 \x01(\tR\x10providerRevision\x12V\n\x0flifecycle_state\x18\x11 \x01(\x0e\x32-.connectors.v1.ProviderResourceLifecycleStateR\x0elifecycleState\x12\x31\n\x14lifecycle_generation\x18\x12 \x01(\x04R\x13lifecycleGeneration\x12\x30\n\x14purge_correlation_id\x18\x13 \x01(\tR\x12purgeCorrelationId\"\x85\x02\n\x1eGetBusinessSourceRecordRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12,\n\rconnection_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x63onnectionId\x12\x31\n\x10\x66\x61mily_stable_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0e\x66\x61milyStableId\x12$\n\trecord_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08recordId\"\xa5\x02\n\x1fGetBusinessSourceRecordResponse\x12\x43\n\x08\x65nvelope\x18\x01 \x01(\x0b\x32\'.connectors.v1.ProviderResourceEnvelopeR\x08\x65nvelope\x12\"\n\rlast_event_id\x18\x02 \x01(\tR\x0blastEventId\x12\x1f\n\x0b\x65xternal_id\x18\x03 \x01(\tR\nexternalId\x12!\n\x0c\x64isplay_name\x18\x04 \x01(\tR\x0b\x64isplayName\x12;\n\x0bobserved_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nobservedAt\x12\x18\n\x07website\x18\x06 \x01(\tR\x07website*\x95\x01\n\x08\x41uthType\x12\x19\n\x15\x41UTH_TYPE_UNSPECIFIED\x10\x00\x12\x14\n\x10\x41UTH_TYPE_OAUTH2\x10\x01\x12\x15\n\x11\x41UTH_TYPE_API_KEY\x10\x02\x12\x13\n\x0f\x41UTH_TYPE_BASIC\x10\x03\x12\x12\n\x0e\x41UTH_TYPE_MTLS\x10\x04\x12\x18\n\x14\x41UTH_TYPE_GITHUB_APP\x10\x05*\x9c\x01\n\x0cHealthStatus\x12\x1d\n\x19HEALTH_STATUS_UNSPECIFIED\x10\x00\x12\x19\n\x15HEALTH_STATUS_HEALTHY\x10\x01\x12\x1a\n\x16HEALTH_STATUS_DEGRADED\x10\x02\x12\x1b\n\x17HEALTH_STATUS_UNHEALTHY\x10\x03\x12\x19\n\x15HEALTH_STATUS_UNKNOWN\x10\x04*\xcd\x01\n\x19ProviderInstallationState\x12+\n\'PROVIDER_INSTALLATION_STATE_UNSPECIFIED\x10\x00\x12&\n\"PROVIDER_INSTALLATION_STATE_ACTIVE\x10\x01\x12\x32\n.PROVIDER_INSTALLATION_STATE_RECONNECT_REQUIRED\x10\x02\x12\'\n#PROVIDER_INSTALLATION_STATE_REVOKED\x10\x03*\x8b\x01\n\x0f\x43redentialState\x12 \n\x1c\x43REDENTIAL_STATE_UNSPECIFIED\x10\x00\x12\x1a\n\x16\x43REDENTIAL_STATE_READY\x10\x01\x12\x1c\n\x18\x43REDENTIAL_STATE_MISSING\x10\x02\x12\x1c\n\x18\x43REDENTIAL_STATE_REVOKED\x10\x03*\xd6\x01\n\x14SourceAuthorityState\x12&\n\"SOURCE_AUTHORITY_STATE_UNSPECIFIED\x10\x00\x12%\n!SOURCE_AUTHORITY_STATE_SUFFICIENT\x10\x01\x12\'\n#SOURCE_AUTHORITY_STATE_INSUFFICIENT\x10\x02\x12\"\n\x1eSOURCE_AUTHORITY_STATE_UNKNOWN\x10\x03\x12\"\n\x1eSOURCE_AUTHORITY_STATE_REVOKED\x10\x04*\x82\x03\n\x1eSourceAuthorityFreshnessMethod\x12\x31\n-SOURCE_AUTHORITY_FRESHNESS_METHOD_UNSPECIFIED\x10\x00\x12\x32\n.SOURCE_AUTHORITY_FRESHNESS_METHOD_NOT_OBSERVED\x10\x01\x12\x33\n/SOURCE_AUTHORITY_FRESHNESS_METHOD_INTROSPECTION\x10\x02\x12-\n)SOURCE_AUTHORITY_FRESHNESS_METHOD_WEBHOOK\x10\x03\x12-\n)SOURCE_AUTHORITY_FRESHNESS_METHOD_POLLING\x10\x04\x12/\n+SOURCE_AUTHORITY_FRESHNESS_METHOD_SHORT_TTL\x10\x05\x12\x35\n1SOURCE_AUTHORITY_FRESHNESS_METHOD_REFRESH_FAILURE\x10\x06*\xde\x01\n\x11SourceOfTruthArea\x12$\n SOURCE_OF_TRUTH_AREA_UNSPECIFIED\x10\x00\x12\x1c\n\x18SOURCE_OF_TRUTH_AREA_CRM\x10\x01\x12 \n\x1cSOURCE_OF_TRUTH_AREA_SUPPORT\x10\x02\x12 \n\x1cSOURCE_OF_TRUTH_AREA_BILLING\x10\x03\x12\"\n\x1eSOURCE_OF_TRUTH_AREA_ANALYTICS\x10\x04\x12\x1d\n\x19SOURCE_OF_TRUTH_AREA_HRIS\x10\x05*x\n\x0fReplicationMode\x12 \n\x1cREPLICATION_MODE_UNSPECIFIED\x10\x00\x12!\n\x1dREPLICATION_MODE_FULL_REFRESH\x10\x01\x12 \n\x1cREPLICATION_MODE_INCREMENTAL\x10\x02*\xbf\x02\n\x1a\x43onnectorVerificationLevel\x12,\n(CONNECTOR_VERIFICATION_LEVEL_UNSPECIFIED\x10\x00\x12)\n%CONNECTOR_VERIFICATION_LEVEL_DECLARED\x10\x01\x12-\n)CONNECTOR_VERIFICATION_LEVEL_SPEC_DERIVED\x10\x02\x12\x31\n-CONNECTOR_VERIFICATION_LEVEL_FIXTURE_VERIFIED\x10\x03\x12.\n*CONNECTOR_VERIFICATION_LEVEL_LIVE_VERIFIED\x10\x04\x12\x36\n2CONNECTOR_VERIFICATION_LEVEL_CONTINUOUSLY_VERIFIED\x10\x05*\x8c\x02\n\x15\x43onnectorEvidenceKind\x12\'\n#CONNECTOR_EVIDENCE_KIND_UNSPECIFIED\x10\x00\x12!\n\x1d\x43ONNECTOR_EVIDENCE_KIND_PROBE\x10\x01\x12#\n\x1f\x43ONNECTOR_EVIDENCE_KIND_FIXTURE\x10\x02\x12\"\n\x1e\x43ONNECTOR_EVIDENCE_KIND_CANARY\x10\x03\x12&\n\"CONNECTOR_EVIDENCE_KIND_PRODUCTION\x10\x04\x12\x36\n2CONNECTOR_EVIDENCE_KIND_UNPROVABLE_UNAUTHENTICATED\x10\x05*\x9d\x01\n\x17UpcomingCallSourceState\x12*\n&UPCOMING_CALL_SOURCE_STATE_UNSPECIFIED\x10\x00\x12(\n$UPCOMING_CALL_SOURCE_STATE_AVAILABLE\x10\x01\x12,\n(UPCOMING_CALL_SOURCE_STATE_NOT_CONNECTED\x10\x02*\xde\x01\n\x1d\x43onnectorActionExecutionState\x12\x30\n,CONNECTOR_ACTION_EXECUTION_STATE_UNSPECIFIED\x10\x00\x12.\n*CONNECTOR_ACTION_EXECUTION_STATE_EXECUTING\x10\x01\x12.\n*CONNECTOR_ACTION_EXECUTION_STATE_SUCCEEDED\x10\x02\x12+\n\'CONNECTOR_ACTION_EXECUTION_STATE_FAILED\x10\x03*\xdd\x02\n\x18\x43onnectorActionErrorKind\x12+\n\'CONNECTOR_ACTION_ERROR_KIND_UNSPECIFIED\x10\x00\x12,\n(CONNECTOR_ACTION_ERROR_KIND_RATE_LIMITED\x10\x01\x12(\n$CONNECTOR_ACTION_ERROR_KIND_PROVIDER\x10\x02\x12,\n(CONNECTOR_ACTION_ERROR_KIND_INVALID_AUTH\x10\x03\x12-\n)CONNECTOR_ACTION_ERROR_KIND_MISSING_SCOPE\x10\x04\x12\x34\n0CONNECTOR_ACTION_ERROR_KIND_INACCESSIBLE_CHANNEL\x10\x05\x12)\n%CONNECTOR_ACTION_ERROR_KIND_AMBIGUOUS\x10\x06*\xbe\x02\n\x1fProviderResourceVisibilityClass\x12\x32\n.PROVIDER_RESOURCE_VISIBILITY_CLASS_UNSPECIFIED\x10\x00\x12\x37\n3PROVIDER_RESOURCE_VISIBILITY_CLASS_WORKSPACE_PUBLIC\x10\x01\x12:\n6PROVIDER_RESOURCE_VISIBILITY_CLASS_EXPLICIT_PRINCIPALS\x10\x02\x12\x37\n3PROVIDER_RESOURCE_VISIBILITY_CLASS_GROUP_MEMBERSHIP\x10\x03\x12\x39\n5PROVIDER_RESOURCE_VISIBILITY_CLASS_CONNECTION_PRIVATE\x10\x04*\xcd\x02\n\x1eProviderResourceLifecycleState\x12\x31\n-PROVIDER_RESOURCE_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12,\n(PROVIDER_RESOURCE_LIFECYCLE_STATE_ACTIVE\x10\x01\x12.\n*PROVIDER_RESOURCE_LIFECYCLE_STATE_ARCHIVED\x10\x02\x12-\n)PROVIDER_RESOURCE_LIFECYCLE_STATE_DELETED\x10\x03\x12\x38\n4PROVIDER_RESOURCE_LIFECYCLE_STATE_CONNECTION_REVOKED\x10\x04\x12\x31\n-PROVIDER_RESOURCE_LIFECYCLE_STATE_QUARANTINED\x10\x05*u\n\x14ProviderContentTrust\x12&\n\"PROVIDER_CONTENT_TRUST_UNSPECIFIED\x10\x00\x12\x35\n1PROVIDER_CONTENT_TRUST_UNTRUSTED_PROVIDER_CONTENT\x10\x01\x32\xb8(\n\x10\x43onnectorService\x12\xa6\x01\n\x12RegisterConnection\x12(.connectors.v1.RegisterConnectionRequest\x1a).connectors.v1.RegisterConnectionResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12s\n\rGetConnection\x12#.connectors.v1.GetConnectionRequest\x1a$.connectors.v1.GetConnectionResponse\"\x17\xca\xf3\x18\x0f\x63onnectors:read\xd8\xf3\x18\x01\x12\xb4\x01\n\x17GetBusinessSourceRecord\x12-.connectors.v1.GetBusinessSourceRecordRequest\x1a..connectors.v1.GetBusinessSourceRecordResponse\":\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\x9c\x01\n\x0fListConnections\x12%.connectors.v1.ListConnectionsRequest\x1a&.connectors.v1.ListConnectionsResponse\":\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xa2\x01\n\x11ListUpcomingCalls\x12\'.connectors.v1.ListUpcomingCallsRequest\x1a(.connectors.v1.ListUpcomingCallsResponse\":\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12s\n\rListProviders\x12#.connectors.v1.ListProvidersRequest\x1a$.connectors.v1.ListProvidersResponse\"\x17\xca\xf3\x18\x0f\x63onnectors:read\xd8\xf3\x18\x01\x12\xb2\x01\n\x16PreviewCustomConnector\x12,.connectors.v1.PreviewCustomConnectorRequest\x1a-.connectors.v1.PreviewCustomConnectorResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xaf\x01\n\x15\x43reateCustomConnector\x12+.connectors.v1.CreateCustomConnectorRequest\x1a,.connectors.v1.CreateCustomConnectorResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\x82\x01\n\x12GetCustomConnector\x12(.connectors.v1.GetCustomConnectorRequest\x1a).connectors.v1.GetCustomConnectorResponse\"\x17\xca\xf3\x18\x0f\x63onnectors:read\xd8\xf3\x18\x01\x12\xab\x01\n\x14ListCustomConnectors\x12*.connectors.v1.ListCustomConnectorsRequest\x1a+.connectors.v1.ListCustomConnectorsResponse\":\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xaf\x01\n\x15UpdateCustomConnector\x12+.connectors.v1.UpdateCustomConnectorRequest\x1a,.connectors.v1.UpdateCustomConnectorResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xaf\x01\n\x15\x44\x65leteCustomConnector\x12+.connectors.v1.DeleteCustomConnectorRequest\x1a,.connectors.v1.DeleteCustomConnectorResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\x9d\x01\n\x1bResolveProviderInstallation\x12\x31.connectors.v1.ResolveProviderInstallationRequest\x1a\x32.connectors.v1.ResolveProviderInstallationResponse\"\x17\xca\xf3\x18\x0f\x63onnectors:read\xd8\xf3\x18\x01\x12\xc5\x01\n\x16VerifyConnectionActive\x12,.connectors.v1.VerifyConnectionActiveRequest\x1a-.connectors.v1.VerifyConnectionActiveResponse\"N\xca\xf3\x18#connectors:connection-active:verify\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\x80\x01\n\x11RefreshConnection\x12\'.connectors.v1.RefreshConnectionRequest\x1a(.connectors.v1.RefreshConnectionResponse\"\x18\xca\xf3\x18\x10\x63onnectors:write\xd8\xf3\x18\x02\x12}\n\x10RevokeConnection\x12&.connectors.v1.RevokeConnectionRequest\x1a\'.connectors.v1.RevokeConnectionResponse\"\x18\xca\xf3\x18\x10\x63onnectors:write\xd8\xf3\x18\x03\x12g\n\tGetHealth\x12\x1f.connectors.v1.GetHealthRequest\x1a .connectors.v1.GetHealthResponse\"\x17\xca\xf3\x18\x0f\x63onnectors:read\xd8\xf3\x18\x01\x12\xab\x01\n\x14ResolveSourceOfTruth\x12*.connectors.v1.ResolveSourceOfTruthRequest\x1a+.connectors.v1.ResolveSourceOfTruthResponse\":\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xae\x01\n\x15GetDegradedReadPolicy\x12+.connectors.v1.GetDegradedReadPolicyRequest\x1a,.connectors.v1.GetDegradedReadPolicyResponse\":\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xc0\x01\n\x16SetSourceOfTruthPolicy\x12,.connectors.v1.SetSourceOfTruthPolicyRequest\x1a-.connectors.v1.SetSourceOfTruthPolicyResponse\"I\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x13policy.workspace_id\xd8\xf3\x18\x04\xea\xf3\x18\x16policy.organization_id\x12y\n\x0fGetCapabilities\x12%.connectors.v1.GetCapabilitiesRequest\x1a&.connectors.v1.GetCapabilitiesResponse\"\x17\xca\xf3\x18\x0f\x63onnectors:read\xd8\xf3\x18\x01\x12\xa3\x01\n\x11InitiateOAuthFlow\x12\'.connectors.v1.InitiateOAuthFlowRequest\x1a(.connectors.v1.InitiateOAuthFlowResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xa3\x01\n\x11\x43ompleteOAuthFlow\x12\'.connectors.v1.CompleteOAuthFlowRequest\x1a(.connectors.v1.CompleteOAuthFlowResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x04\xea\xf3\x18\x0forganization_id\x12\xac\x01\n\x14InitiateMcpOAuthFlow\x12*.connectors.v1.InitiateMcpOAuthFlowRequest\x1a+.connectors.v1.InitiateMcpOAuthFlowResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xac\x01\n\x14\x43ompleteMcpOAuthFlow\x12*.connectors.v1.CompleteMcpOAuthFlowRequest\x1a+.connectors.v1.CompleteMcpOAuthFlowResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x04\xea\xf3\x18\x0forganization_id\x12\xa9\x01\n\x13RevokeMcpOAuthGrant\x12).connectors.v1.RevokeMcpOAuthGrantRequest\x1a*.connectors.v1.RevokeMcpOAuthGrantResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12n\n\x0bTriggerSync\x12!.connectors.v1.TriggerSyncRequest\x1a\".connectors.v1.TriggerSyncResponse\"\x18\xca\xf3\x18\x10\x63onnectors:write\xd8\xf3\x18\x02\x12\x8b\x01\n\x15ListConnectionStreams\x12+.connectors.v1.ListConnectionStreamsRequest\x1a,.connectors.v1.ListConnectionStreamsResponse\"\x17\xca\xf3\x18\x0f\x63onnectors:read\xd8\xf3\x18\x01\x12v\n\x0eGetStreamState\x12$.connectors.v1.GetStreamStateRequest\x1a%.connectors.v1.GetStreamStateResponse\"\x17\xca\xf3\x18\x0f\x63onnectors:read\xd8\xf3\x18\x01\x12}\n\x10ResetStreamState\x12&.connectors.v1.ResetStreamStateRequest\x1a\'.connectors.v1.ResetStreamStateResponse\"\x18\xca\xf3\x18\x10\x63onnectors:write\xd8\xf3\x18\x02\x12\xb2\x01\n\x16\x45xecuteConnectorAction\x12,.connectors.v1.ExecuteConnectorActionRequest\x1a-.connectors.v1.ExecuteConnectorActionResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\xa6\x01\n\x12\x43reateSyncSchedule\x12(.connectors.v1.CreateSyncScheduleRequest\x1a).connectors.v1.CreateSyncScheduleResponse\";\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\x7f\n\x11ListSyncSchedules\x12\'.connectors.v1.ListSyncSchedulesRequest\x1a(.connectors.v1.ListSyncSchedulesResponse\"\x17\xca\xf3\x18\x0f\x63onnectors:read\xd8\xf3\x18\x01\x42?Z=github.com/evalops/platform/gen/go/connectors/v1;connectorsv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'connectors.v1.connectors_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z=github.com/evalops/platform/gen/go/connectors/v1;connectorsv1' + _globals['_CONNECTION_CREDENTIALREFSENTRY']._loaded_options = None + _globals['_CONNECTION_CREDENTIALREFSENTRY']._serialized_options = b'8\001' + _globals['_PROVIDERINSTALLATION'].fields_by_name['connection_id']._loaded_options = None + _globals['_PROVIDERINSTALLATION'].fields_by_name['connection_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROVIDERINSTALLATION'].fields_by_name['organization_id']._loaded_options = None + _globals['_PROVIDERINSTALLATION'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROVIDERINSTALLATION'].fields_by_name['workspace_id']._loaded_options = None + _globals['_PROVIDERINSTALLATION'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROVIDERINSTALLATION'].fields_by_name['provider_id']._loaded_options = None + _globals['_PROVIDERINSTALLATION'].fields_by_name['provider_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROVIDERINSTALLATION'].fields_by_name['app_id']._loaded_options = None + _globals['_PROVIDERINSTALLATION'].fields_by_name['app_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROVIDERINSTALLATION'].fields_by_name['provider_workspace_id']._loaded_options = None + _globals['_PROVIDERINSTALLATION'].fields_by_name['provider_workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESOLVEPROVIDERINSTALLATIONREQUEST'].fields_by_name['provider_id']._loaded_options = None + _globals['_RESOLVEPROVIDERINSTALLATIONREQUEST'].fields_by_name['provider_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESOLVEPROVIDERINSTALLATIONREQUEST'].fields_by_name['app_id']._loaded_options = None + _globals['_RESOLVEPROVIDERINSTALLATIONREQUEST'].fields_by_name['app_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESOLVEPROVIDERINSTALLATIONREQUEST'].fields_by_name['provider_workspace_id']._loaded_options = None + _globals['_RESOLVEPROVIDERINSTALLATIONREQUEST'].fields_by_name['provider_workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VERIFYCONNECTIONACTIVEREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_VERIFYCONNECTIONACTIVEREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VERIFYCONNECTIONACTIVEREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_VERIFYCONNECTIONACTIVEREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VERIFYCONNECTIONACTIVEREQUEST'].fields_by_name['connection_id']._loaded_options = None + _globals['_VERIFYCONNECTIONACTIVEREQUEST'].fields_by_name['connection_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VERIFYCONNECTIONACTIVERESPONSE'].fields_by_name['connection_id']._loaded_options = None + _globals['_VERIFYCONNECTIONACTIVERESPONSE'].fields_by_name['connection_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VERIFYCONNECTIONACTIVERESPONSE'].fields_by_name['organization_id']._loaded_options = None + _globals['_VERIFYCONNECTIONACTIVERESPONSE'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VERIFYCONNECTIONACTIVERESPONSE'].fields_by_name['workspace_id']._loaded_options = None + _globals['_VERIFYCONNECTIONACTIVERESPONSE'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SOURCEAUTHORITYOBSERVATION'].fields_by_name['state']._loaded_options = None + _globals['_SOURCEAUTHORITYOBSERVATION'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_SOURCEAUTHORITYOBSERVATION'].fields_by_name['reason']._loaded_options = None + _globals['_SOURCEAUTHORITYOBSERVATION'].fields_by_name['reason']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_SOURCEAUTHORITYOBSERVATION'].fields_by_name['freshness_method']._loaded_options = None + _globals['_SOURCEAUTHORITYOBSERVATION'].fields_by_name['freshness_method']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_SOURCEAUTHORITYOBSERVATION'].fields_by_name['owner_snapshot_reference']._loaded_options = None + _globals['_SOURCEAUTHORITYOBSERVATION'].fields_by_name['owner_snapshot_reference']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_CONNECTORCREDENTIALFIELD'].fields_by_name['name']._loaded_options = None + _globals['_CONNECTORCREDENTIALFIELD'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORCREDENTIALFIELD'].fields_by_name['stable_id']._loaded_options = None + _globals['_CONNECTORCREDENTIALFIELD'].fields_by_name['stable_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORCREDENTIALLIFECYCLEPOLICY'].fields_by_name['rotation_notice_days']._loaded_options = None + _globals['_CONNECTORCREDENTIALLIFECYCLEPOLICY'].fields_by_name['rotation_notice_days']._serialized_options = b'\272H\004\032\002(\000' + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['id']._loaded_options = None + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['capability']._loaded_options = None + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['capability']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['http_method']._loaded_options = None + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['http_method']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['path']._loaded_options = None + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['stable_id']._loaded_options = None + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['stable_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['base_url']._loaded_options = None + _globals['_CONNECTORACTIONDEFINITION'].fields_by_name['base_url']._serialized_options = b'\272H\005r\003\210\001\001' + _globals['_CONNECTORRESOURCEFAMILY'].fields_by_name['id']._loaded_options = None + _globals['_CONNECTORRESOURCEFAMILY'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORRESOURCEFAMILY'].fields_by_name['path']._loaded_options = None + _globals['_CONNECTORRESOURCEFAMILY'].fields_by_name['path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORRESOURCEFAMILY'].fields_by_name['event_kind']._loaded_options = None + _globals['_CONNECTORRESOURCEFAMILY'].fields_by_name['event_kind']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORCHILDRESOURCE'].fields_by_name['family_id']._loaded_options = None + _globals['_CONNECTORCHILDRESOURCE'].fields_by_name['family_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORCHILDRESOURCE'].fields_by_name['parent_family_id']._loaded_options = None + _globals['_CONNECTORCHILDRESOURCE'].fields_by_name['parent_family_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORPATHPARAMETERBINDING'].fields_by_name['param']._loaded_options = None + _globals['_CONNECTORPATHPARAMETERBINDING'].fields_by_name['param']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORPATHPARAMETERBINDING'].fields_by_name['source_field']._loaded_options = None + _globals['_CONNECTORPATHPARAMETERBINDING'].fields_by_name['source_field']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORPROVIDER'].fields_by_name['id']._loaded_options = None + _globals['_CONNECTORPROVIDER'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORPROVIDER'].fields_by_name['default_auth_type']._loaded_options = None + _globals['_CONNECTORPROVIDER'].fields_by_name['default_auth_type']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_CUSTOMCONNECTORACTIONMETADATA'].fields_by_name['action_id']._loaded_options = None + _globals['_CUSTOMCONNECTORACTIONMETADATA'].fields_by_name['action_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CUSTOMCONNECTOR'].fields_by_name['id']._loaded_options = None + _globals['_CUSTOMCONNECTOR'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CUSTOMCONNECTOR'].fields_by_name['organization_id']._loaded_options = None + _globals['_CUSTOMCONNECTOR'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CUSTOMCONNECTOR'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CUSTOMCONNECTOR'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CUSTOMCONNECTOR'].fields_by_name['name']._loaded_options = None + _globals['_CUSTOMCONNECTOR'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CUSTOMCONNECTOR'].fields_by_name['source_type']._loaded_options = None + _globals['_CUSTOMCONNECTOR'].fields_by_name['source_type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CUSTOMCONNECTOR'].fields_by_name['provider_id']._loaded_options = None + _globals['_CUSTOMCONNECTOR'].fields_by_name['provider_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CUSTOMCONNECTOR'].fields_by_name['spec_sha256']._loaded_options = None + _globals['_CUSTOMCONNECTOR'].fields_by_name['spec_sha256']._serialized_options = b'\272H\004r\002\020@' + _globals['_CUSTOMCONNECTOR'].fields_by_name['status']._loaded_options = None + _globals['_CUSTOMCONNECTOR'].fields_by_name['status']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PREVIEWCUSTOMCONNECTORREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_PREVIEWCUSTOMCONNECTORREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PREVIEWCUSTOMCONNECTORREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_PREVIEWCUSTOMCONNECTORREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PREVIEWCUSTOMCONNECTORREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_PREVIEWCUSTOMCONNECTORREQUEST'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PREVIEWCUSTOMCONNECTORREQUEST'].fields_by_name['source_type']._loaded_options = None + _globals['_PREVIEWCUSTOMCONNECTORREQUEST'].fields_by_name['source_type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PREVIEWCUSTOMCONNECTORREQUEST'].fields_by_name['document']._loaded_options = None + _globals['_PREVIEWCUSTOMCONNECTORREQUEST'].fields_by_name['document']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCUSTOMCONNECTORREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_GETCUSTOMCONNECTORREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTCUSTOMCONNECTORSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTCUSTOMCONNECTORSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTCUSTOMCONNECTORSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTCUSTOMCONNECTORSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATECUSTOMCONNECTORREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_UPDATECUSTOMCONNECTORREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATECUSTOMCONNECTORREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_UPDATECUSTOMCONNECTORREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATECUSTOMCONNECTORREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_UPDATECUSTOMCONNECTORREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DELETECUSTOMCONNECTORREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_DELETECUSTOMCONNECTORREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DELETECUSTOMCONNECTORREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_DELETECUSTOMCONNECTORREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DELETECUSTOMCONNECTORREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_DELETECUSTOMCONNECTORREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SOURCEOFTRUTHPOLICY'].fields_by_name['workspace_id']._loaded_options = None + _globals['_SOURCEOFTRUTHPOLICY'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SOURCEOFTRUTHPOLICY'].fields_by_name['primary_connection_id']._loaded_options = None + _globals['_SOURCEOFTRUTHPOLICY'].fields_by_name['primary_connection_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SOURCEOFTRUTHPOLICY'].fields_by_name['organization_id']._loaded_options = None + _globals['_SOURCEOFTRUTHPOLICY'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REGISTERCONNECTIONREQUEST_CREDENTIALSENTRY']._loaded_options = None + _globals['_REGISTERCONNECTIONREQUEST_CREDENTIALSENTRY']._serialized_options = b'8\001' + _globals['_REGISTERCONNECTIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_REGISTERCONNECTIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REGISTERCONNECTIONREQUEST'].fields_by_name['provider_id']._loaded_options = None + _globals['_REGISTERCONNECTIONREQUEST'].fields_by_name['provider_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REGISTERCONNECTIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_REGISTERCONNECTIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCONNECTIONREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_GETCONNECTIONREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTCONNECTIONSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTCONNECTIONSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTCONNECTIONSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTCONNECTIONSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\310\001(\000' + _globals['_LISTCONNECTIONSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTCONNECTIONSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTCONNECTIONSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTCONNECTIONSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTUPCOMINGCALLSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTUPCOMINGCALLSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTUPCOMINGCALLSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTUPCOMINGCALLSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTUPCOMINGCALLSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTUPCOMINGCALLSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\006\032\004\030d(\000' + _globals['_UPCOMINGCALL'].fields_by_name['id']._loaded_options = None + _globals['_UPCOMINGCALL'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPCOMINGCALL'].fields_by_name['title']._loaded_options = None + _globals['_UPCOMINGCALL'].fields_by_name['title']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_UPCOMINGCALL'].fields_by_name['join_url']._loaded_options = None + _globals['_UPCOMINGCALL'].fields_by_name['join_url']._serialized_options = b'\272H\005r\003\210\001\001' + _globals['_LISTPROVIDERSREQUEST'].fields_by_name['auth_type']._loaded_options = None + _globals['_LISTPROVIDERSREQUEST'].fields_by_name['auth_type']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_LISTPROVIDERSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTPROVIDERSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\310\001(\000' + _globals['_LISTPROVIDERSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTPROVIDERSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTPROVIDERSRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTPROVIDERSRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_REFRESHCONNECTIONREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_REFRESHCONNECTIONREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKECONNECTIONREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_REVOKECONNECTIONREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKECONNECTIONREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_REVOKECONNECTIONREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_GETHEALTHREQUEST'].fields_by_name['connection_id']._loaded_options = None + _globals['_GETHEALTHREQUEST'].fields_by_name['connection_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESOLVESOURCEOFTRUTHREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_RESOLVESOURCEOFTRUTHREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESOLVESOURCEOFTRUTHREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_RESOLVESOURCEOFTRUTHREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETDEGRADEDREADPOLICYREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETDEGRADEDREADPOLICYREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETDEGRADEDREADPOLICYREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETDEGRADEDREADPOLICYREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETSOURCEOFTRUTHPOLICYREQUEST'].fields_by_name['policy']._loaded_options = None + _globals['_SETSOURCEOFTRUTHPOLICYREQUEST'].fields_by_name['policy']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETCAPABILITIESREQUEST'].fields_by_name['connection_id']._loaded_options = None + _globals['_GETCAPABILITIESREQUEST'].fields_by_name['connection_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEOAUTHFLOWREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_INITIATEOAUTHFLOWREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEOAUTHFLOWREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_INITIATEOAUTHFLOWREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEOAUTHFLOWREQUEST'].fields_by_name['provider_id']._loaded_options = None + _globals['_INITIATEOAUTHFLOWREQUEST'].fields_by_name['provider_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEOAUTHFLOWREQUEST'].fields_by_name['redirect_uri']._loaded_options = None + _globals['_INITIATEOAUTHFLOWREQUEST'].fields_by_name['redirect_uri']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['provider_id']._loaded_options = None + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['provider_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['state']._loaded_options = None + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['state']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['code']._loaded_options = None + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['code']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['redirect_uri']._loaded_options = None + _globals['_COMPLETEOAUTHFLOWREQUEST'].fields_by_name['redirect_uri']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['server_id']._loaded_options = None + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['server_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['profile_id']._loaded_options = None + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['profile_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['profile_name']._loaded_options = None + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['profile_name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['subject_kind']._loaded_options = None + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['subject_kind']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['subject_id']._loaded_options = None + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['subject_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['resource_url']._loaded_options = None + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['resource_url']._serialized_options = b'\272H\005r\003\220\001\001' + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['redirect_uri']._loaded_options = None + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['redirect_uri']._serialized_options = b'\272H\005r\003\210\001\001' + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['profile_generation']._loaded_options = None + _globals['_INITIATEMCPOAUTHFLOWREQUEST'].fields_by_name['profile_generation']._serialized_options = b'\272H\004\"\002 \000' + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['server_id']._loaded_options = None + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['server_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['profile_id']._loaded_options = None + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['profile_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['state']._loaded_options = None + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['state']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['redirect_uri']._loaded_options = None + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['redirect_uri']._serialized_options = b'\272H\005r\003\210\001\001' + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['profile_generation']._loaded_options = None + _globals['_COMPLETEMCPOAUTHFLOWREQUEST'].fields_by_name['profile_generation']._serialized_options = b'\272H\004\"\002 \000' + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['grant_id']._loaded_options = None + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['grant_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['connection_ref']._loaded_options = None + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['connection_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['reason_code']._loaded_options = None + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['reason_code']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['profile_generation']._loaded_options = None + _globals['_REVOKEMCPOAUTHGRANTREQUEST'].fields_by_name['profile_generation']._serialized_options = b'\272H\004\"\002 \000' + _globals['_TRIGGERSYNCREQUEST'].fields_by_name['connection_id']._loaded_options = None + _globals['_TRIGGERSYNCREQUEST'].fields_by_name['connection_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TRIGGERSYNCREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_TRIGGERSYNCREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TRIGGERSYNCREQUEST'].fields_by_name['stream_id']._loaded_options = None + _globals['_TRIGGERSYNCREQUEST'].fields_by_name['stream_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['connection_id']._loaded_options = None + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['connection_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['action_id']._loaded_options = None + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['action_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['action_digest']._loaded_options = None + _globals['_EXECUTECONNECTORACTIONREQUEST'].fields_by_name['action_digest']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXECUTECONNECTORACTIONRESPONSE'].fields_by_name['state']._loaded_options = None + _globals['_EXECUTECONNECTORACTIONRESPONSE'].fields_by_name['state']._serialized_options = b'\030\001' + _globals['_EXECUTECONNECTORACTIONRESPONSE'].fields_by_name['action_state']._loaded_options = None + _globals['_EXECUTECONNECTORACTIONRESPONSE'].fields_by_name['action_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_GETBUSINESSSOURCERECORDREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETBUSINESSSOURCERECORDREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETBUSINESSSOURCERECORDREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETBUSINESSSOURCERECORDREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETBUSINESSSOURCERECORDREQUEST'].fields_by_name['connection_id']._loaded_options = None + _globals['_GETBUSINESSSOURCERECORDREQUEST'].fields_by_name['connection_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETBUSINESSSOURCERECORDREQUEST'].fields_by_name['family_stable_id']._loaded_options = None + _globals['_GETBUSINESSSOURCERECORDREQUEST'].fields_by_name['family_stable_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETBUSINESSSOURCERECORDREQUEST'].fields_by_name['record_id']._loaded_options = None + _globals['_GETBUSINESSSOURCERECORDREQUEST'].fields_by_name['record_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORSERVICE'].methods_by_name['RegisterConnection']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['RegisterConnection']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['GetConnection']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['GetConnection']._serialized_options = b'\312\363\030\017connectors:read\330\363\030\001' + _globals['_CONNECTORSERVICE'].methods_by_name['GetBusinessSourceRecord']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['GetBusinessSourceRecord']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['ListConnections']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['ListConnections']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['ListUpcomingCalls']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['ListUpcomingCalls']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['ListProviders']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['ListProviders']._serialized_options = b'\312\363\030\017connectors:read\330\363\030\001' + _globals['_CONNECTORSERVICE'].methods_by_name['PreviewCustomConnector']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['PreviewCustomConnector']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['CreateCustomConnector']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['CreateCustomConnector']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['GetCustomConnector']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['GetCustomConnector']._serialized_options = b'\312\363\030\017connectors:read\330\363\030\001' + _globals['_CONNECTORSERVICE'].methods_by_name['ListCustomConnectors']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['ListCustomConnectors']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['UpdateCustomConnector']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['UpdateCustomConnector']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['DeleteCustomConnector']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['DeleteCustomConnector']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['ResolveProviderInstallation']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['ResolveProviderInstallation']._serialized_options = b'\312\363\030\017connectors:read\330\363\030\001' + _globals['_CONNECTORSERVICE'].methods_by_name['VerifyConnectionActive']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['VerifyConnectionActive']._serialized_options = b'\312\363\030#connectors:connection-active:verify\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['RefreshConnection']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['RefreshConnection']._serialized_options = b'\312\363\030\020connectors:write\330\363\030\002' + _globals['_CONNECTORSERVICE'].methods_by_name['RevokeConnection']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['RevokeConnection']._serialized_options = b'\312\363\030\020connectors:write\330\363\030\003' + _globals['_CONNECTORSERVICE'].methods_by_name['GetHealth']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['GetHealth']._serialized_options = b'\312\363\030\017connectors:read\330\363\030\001' + _globals['_CONNECTORSERVICE'].methods_by_name['ResolveSourceOfTruth']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['ResolveSourceOfTruth']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['GetDegradedReadPolicy']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['GetDegradedReadPolicy']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['SetSourceOfTruthPolicy']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['SetSourceOfTruthPolicy']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\023policy.workspace_id\330\363\030\004\352\363\030\026policy.organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['GetCapabilities']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['GetCapabilities']._serialized_options = b'\312\363\030\017connectors:read\330\363\030\001' + _globals['_CONNECTORSERVICE'].methods_by_name['InitiateOAuthFlow']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['InitiateOAuthFlow']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['CompleteOAuthFlow']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['CompleteOAuthFlow']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\004\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['InitiateMcpOAuthFlow']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['InitiateMcpOAuthFlow']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['CompleteMcpOAuthFlow']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['CompleteMcpOAuthFlow']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\004\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['RevokeMcpOAuthGrant']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['RevokeMcpOAuthGrant']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['TriggerSync']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['TriggerSync']._serialized_options = b'\312\363\030\020connectors:write\330\363\030\002' + _globals['_CONNECTORSERVICE'].methods_by_name['ListConnectionStreams']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['ListConnectionStreams']._serialized_options = b'\312\363\030\017connectors:read\330\363\030\001' + _globals['_CONNECTORSERVICE'].methods_by_name['GetStreamState']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['GetStreamState']._serialized_options = b'\312\363\030\017connectors:read\330\363\030\001' + _globals['_CONNECTORSERVICE'].methods_by_name['ResetStreamState']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['ResetStreamState']._serialized_options = b'\312\363\030\020connectors:write\330\363\030\002' + _globals['_CONNECTORSERVICE'].methods_by_name['ExecuteConnectorAction']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['ExecuteConnectorAction']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['CreateSyncSchedule']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['CreateSyncSchedule']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONNECTORSERVICE'].methods_by_name['ListSyncSchedules']._loaded_options = None + _globals['_CONNECTORSERVICE'].methods_by_name['ListSyncSchedules']._serialized_options = b'\312\363\030\017connectors:read\330\363\030\001' + _globals['_AUTHTYPE']._serialized_start=27100 + _globals['_AUTHTYPE']._serialized_end=27249 + _globals['_HEALTHSTATUS']._serialized_start=27252 + _globals['_HEALTHSTATUS']._serialized_end=27408 + _globals['_PROVIDERINSTALLATIONSTATE']._serialized_start=27411 + _globals['_PROVIDERINSTALLATIONSTATE']._serialized_end=27616 + _globals['_CREDENTIALSTATE']._serialized_start=27619 + _globals['_CREDENTIALSTATE']._serialized_end=27758 + _globals['_SOURCEAUTHORITYSTATE']._serialized_start=27761 + _globals['_SOURCEAUTHORITYSTATE']._serialized_end=27975 + _globals['_SOURCEAUTHORITYFRESHNESSMETHOD']._serialized_start=27978 + _globals['_SOURCEAUTHORITYFRESHNESSMETHOD']._serialized_end=28364 + _globals['_SOURCEOFTRUTHAREA']._serialized_start=28367 + _globals['_SOURCEOFTRUTHAREA']._serialized_end=28589 + _globals['_REPLICATIONMODE']._serialized_start=28591 + _globals['_REPLICATIONMODE']._serialized_end=28711 + _globals['_CONNECTORVERIFICATIONLEVEL']._serialized_start=28714 + _globals['_CONNECTORVERIFICATIONLEVEL']._serialized_end=29033 + _globals['_CONNECTOREVIDENCEKIND']._serialized_start=29036 + _globals['_CONNECTOREVIDENCEKIND']._serialized_end=29304 + _globals['_UPCOMINGCALLSOURCESTATE']._serialized_start=29307 + _globals['_UPCOMINGCALLSOURCESTATE']._serialized_end=29464 + _globals['_CONNECTORACTIONEXECUTIONSTATE']._serialized_start=29467 + _globals['_CONNECTORACTIONEXECUTIONSTATE']._serialized_end=29689 + _globals['_CONNECTORACTIONERRORKIND']._serialized_start=29692 + _globals['_CONNECTORACTIONERRORKIND']._serialized_end=30041 + _globals['_PROVIDERRESOURCEVISIBILITYCLASS']._serialized_start=30044 + _globals['_PROVIDERRESOURCEVISIBILITYCLASS']._serialized_end=30362 + _globals['_PROVIDERRESOURCELIFECYCLESTATE']._serialized_start=30365 + _globals['_PROVIDERRESOURCELIFECYCLESTATE']._serialized_end=30698 + _globals['_PROVIDERCONTENTTRUST']._serialized_start=30700 + _globals['_PROVIDERCONTENTTRUST']._serialized_end=30817 + _globals['_CONNECTION']._serialized_start=135 + _globals['_CONNECTION']._serialized_end=937 + _globals['_CONNECTION_CREDENTIALREFSENTRY']._serialized_start=872 + _globals['_CONNECTION_CREDENTIALREFSENTRY']._serialized_end=937 + _globals['_PROVIDERINSTALLATION']._serialized_start=940 + _globals['_PROVIDERINSTALLATION']._serialized_end=1705 + _globals['_RESOLVEPROVIDERINSTALLATIONREQUEST']._serialized_start=1708 + _globals['_RESOLVEPROVIDERINSTALLATIONREQUEST']._serialized_end=1933 + _globals['_RESOLVEPROVIDERINSTALLATIONRESPONSE']._serialized_start=1936 + _globals['_RESOLVEPROVIDERINSTALLATIONRESPONSE']._serialized_end=2105 + _globals['_VERIFYCONNECTIONACTIVEREQUEST']._serialized_start=2108 + _globals['_VERIFYCONNECTIONACTIVEREQUEST']._serialized_end=2279 + _globals['_VERIFYCONNECTIONACTIVERESPONSE']._serialized_start=2282 + _globals['_VERIFYCONNECTIONACTIVERESPONSE']._serialized_end=2720 + _globals['_SOURCEAUTHORITYOBSERVATION']._serialized_start=2723 + _globals['_SOURCEAUTHORITYOBSERVATION']._serialized_end=3157 + _globals['_CONNECTIONHEALTH']._serialized_start=3160 + _globals['_CONNECTIONHEALTH']._serialized_end=3387 + _globals['_CONNECTORCREDENTIALFIELD']._serialized_start=3390 + _globals['_CONNECTORCREDENTIALFIELD']._serialized_end=3851 + _globals['_CONNECTORCREDENTIALLIFECYCLEPOLICY']._serialized_start=3854 + _globals['_CONNECTORCREDENTIALLIFECYCLEPOLICY']._serialized_end=4154 + _globals['_CONNECTORRUNTIME']._serialized_start=4157 + _globals['_CONNECTORRUNTIME']._serialized_end=4850 + _globals['_CONNECTORACTIONDEFINITION']._serialized_start=4853 + _globals['_CONNECTORACTIONDEFINITION']._serialized_end=5447 + _globals['_CONNECTORGOVERNEDACTION']._serialized_start=5450 + _globals['_CONNECTORGOVERNEDACTION']._serialized_end=5841 + _globals['_CONNECTORCATALOGPROVENANCE']._serialized_start=5844 + _globals['_CONNECTORCATALOGPROVENANCE']._serialized_end=6132 + _globals['_CONNECTORAUTHBINDING']._serialized_start=6135 + _globals['_CONNECTORAUTHBINDING']._serialized_end=6488 + _globals['_CONNECTORSTATICHEADER']._serialized_start=6490 + _globals['_CONNECTORSTATICHEADER']._serialized_end=6585 + _globals['_CONNECTORRESOURCEFAMILY']._serialized_start=6588 + _globals['_CONNECTORRESOURCEFAMILY']._serialized_end=7648 + _globals['_CONNECTORCOSTPROJECTION']._serialized_start=7651 + _globals['_CONNECTORCOSTPROJECTION']._serialized_end=8520 + _globals['_CONNECTORINCREMENTALBINDING']._serialized_start=8523 + _globals['_CONNECTORINCREMENTALBINDING']._serialized_end=8918 + _globals['_CONNECTORQUERYPARAMBINDING']._serialized_start=8921 + _globals['_CONNECTORQUERYPARAMBINDING']._serialized_end=9123 + _globals['_CONNECTORPAGINATIONCONTRACT']._serialized_start=9126 + _globals['_CONNECTORPAGINATIONCONTRACT']._serialized_end=9644 + _globals['_CONNECTORCHILDRESOURCE']._serialized_start=9647 + _globals['_CONNECTORCHILDRESOURCE']._serialized_end=9920 + _globals['_CONNECTORPATHPARAMETERBINDING']._serialized_start=9922 + _globals['_CONNECTORPATHPARAMETERBINDING']._serialized_end=10028 + _globals['_CONNECTORPROVIDER']._serialized_start=10031 + _globals['_CONNECTORPROVIDER']._serialized_end=10896 + _globals['_CUSTOMCONNECTORACTIONMETADATA']._serialized_start=10899 + _globals['_CUSTOMCONNECTORACTIONMETADATA']._serialized_end=11214 + _globals['_CUSTOMCONNECTOR']._serialized_start=11217 + _globals['_CUSTOMCONNECTOR']._serialized_end=11824 + _globals['_PREVIEWCUSTOMCONNECTORREQUEST']._serialized_start=11827 + _globals['_PREVIEWCUSTOMCONNECTORREQUEST']._serialized_end=12316 + _globals['_PREVIEWCUSTOMCONNECTORRESPONSE']._serialized_start=12319 + _globals['_PREVIEWCUSTOMCONNECTORRESPONSE']._serialized_end=12447 + _globals['_CREATECUSTOMCONNECTORREQUEST']._serialized_start=12449 + _globals['_CREATECUSTOMCONNECTORREQUEST']._serialized_end=12557 + _globals['_CREATECUSTOMCONNECTORRESPONSE']._serialized_start=12559 + _globals['_CREATECUSTOMCONNECTORRESPONSE']._serialized_end=12652 + _globals['_GETCUSTOMCONNECTORREQUEST']._serialized_start=12654 + _globals['_GETCUSTOMCONNECTORREQUEST']._serialized_end=12706 + _globals['_GETCUSTOMCONNECTORRESPONSE']._serialized_start=12708 + _globals['_GETCUSTOMCONNECTORRESPONSE']._serialized_end=12798 + _globals['_LISTCUSTOMCONNECTORSREQUEST']._serialized_start=12800 + _globals['_LISTCUSTOMCONNECTORSREQUEST']._serialized_end=12923 + _globals['_LISTCUSTOMCONNECTORSRESPONSE']._serialized_start=12925 + _globals['_LISTCUSTOMCONNECTORSRESPONSE']._serialized_end=13019 + _globals['_UPDATECUSTOMCONNECTORREQUEST']._serialized_start=13022 + _globals['_UPDATECUSTOMCONNECTORREQUEST']._serialized_end=13350 + _globals['_UPDATECUSTOMCONNECTORRESPONSE']._serialized_start=13352 + _globals['_UPDATECUSTOMCONNECTORRESPONSE']._serialized_end=13445 + _globals['_DELETECUSTOMCONNECTORREQUEST']._serialized_start=13448 + _globals['_DELETECUSTOMCONNECTORREQUEST']._serialized_end=13597 + _globals['_DELETECUSTOMCONNECTORRESPONSE']._serialized_start=13599 + _globals['_DELETECUSTOMCONNECTORRESPONSE']._serialized_end=13670 + _globals['_SOURCEOFTRUTHPOLICY']._serialized_start=13673 + _globals['_SOURCEOFTRUTHPOLICY']._serialized_end=13957 + _globals['_DEGRADEDREADPOLICY']._serialized_start=13960 + _globals['_DEGRADEDREADPOLICY']._serialized_end=14143 + _globals['_REGISTERCONNECTIONREQUEST']._serialized_start=14146 + _globals['_REGISTERCONNECTIONREQUEST']._serialized_end=14657 + _globals['_REGISTERCONNECTIONREQUEST_CREDENTIALSENTRY']._serialized_start=14595 + _globals['_REGISTERCONNECTIONREQUEST_CREDENTIALSENTRY']._serialized_end=14657 + _globals['_REGISTERCONNECTIONRESPONSE']._serialized_start=14659 + _globals['_REGISTERCONNECTIONRESPONSE']._serialized_end=14746 + _globals['_GETCONNECTIONREQUEST']._serialized_start=14748 + _globals['_GETCONNECTIONREQUEST']._serialized_end=14795 + _globals['_GETCONNECTIONRESPONSE']._serialized_start=14797 + _globals['_GETCONNECTIONRESPONSE']._serialized_end=14879 + _globals['_LISTCONNECTIONSREQUEST']._serialized_start=14882 + _globals['_LISTCONNECTIONSREQUEST']._serialized_end=15327 + _globals['_LISTCONNECTIONSRESPONSE']._serialized_start=15329 + _globals['_LISTCONNECTIONSRESPONSE']._serialized_end=15437 + _globals['_LISTUPCOMINGCALLSREQUEST']._serialized_start=15440 + _globals['_LISTUPCOMINGCALLSREQUEST']._serialized_end=15593 + _globals['_LISTUPCOMINGCALLSRESPONSE']._serialized_start=15596 + _globals['_LISTUPCOMINGCALLSRESPONSE']._serialized_end=15749 + _globals['_UPCOMINGCALL']._serialized_start=15752 + _globals['_UPCOMINGCALL']._serialized_end=15970 + _globals['_LISTPROVIDERSREQUEST']._serialized_start=15973 + _globals['_LISTPROVIDERSREQUEST']._serialized_end=16148 + _globals['_LISTPROVIDERSRESPONSE']._serialized_start=16151 + _globals['_LISTPROVIDERSRESPONSE']._serialized_end=16310 + _globals['_REFRESHCONNECTIONREQUEST']._serialized_start=16312 + _globals['_REFRESHCONNECTIONREQUEST']._serialized_end=16363 + _globals['_REFRESHCONNECTIONRESPONSE']._serialized_start=16365 + _globals['_REFRESHCONNECTIONRESPONSE']._serialized_end=16451 + _globals['_REVOKECONNECTIONREQUEST']._serialized_start=16453 + _globals['_REVOKECONNECTIONREQUEST']._serialized_end=16537 + _globals['_REVOKECONNECTIONRESPONSE']._serialized_start=16539 + _globals['_REVOKECONNECTIONRESPONSE']._serialized_end=16565 + _globals['_GETHEALTHREQUEST']._serialized_start=16567 + _globals['_GETHEALTHREQUEST']._serialized_end=16631 + _globals['_GETHEALTHRESPONSE']._serialized_start=16633 + _globals['_GETHEALTHRESPONSE']._serialized_end=16709 + _globals['_RESOLVESOURCEOFTRUTHREQUEST']._serialized_start=16712 + _globals['_RESOLVESOURCEOFTRUTHREQUEST']._serialized_end=16889 + _globals['_RESOLVESOURCEOFTRUTHRESPONSE']._serialized_start=16892 + _globals['_RESOLVESOURCEOFTRUTHRESPONSE']._serialized_end=17056 + _globals['_GETDEGRADEDREADPOLICYREQUEST']._serialized_start=17058 + _globals['_GETDEGRADEDREADPOLICYREQUEST']._serialized_end=17182 + _globals['_GETDEGRADEDREADPOLICYRESPONSE']._serialized_start=17184 + _globals['_GETDEGRADEDREADPOLICYRESPONSE']._serialized_end=17274 + _globals['_SETSOURCEOFTRUTHPOLICYREQUEST']._serialized_start=17276 + _globals['_SETSOURCEOFTRUTHPOLICYREQUEST']._serialized_end=17375 + _globals['_SETSOURCEOFTRUTHPOLICYRESPONSE']._serialized_start=17377 + _globals['_SETSOURCEOFTRUTHPOLICYRESPONSE']._serialized_end=17469 + _globals['_GETCAPABILITIESREQUEST']._serialized_start=17471 + _globals['_GETCAPABILITIESREQUEST']._serialized_end=17541 + _globals['_GETCAPABILITIESRESPONSE']._serialized_start=17543 + _globals['_GETCAPABILITIESRESPONSE']._serialized_end=17604 + _globals['_INITIATEOAUTHFLOWREQUEST']._serialized_start=17607 + _globals['_INITIATEOAUTHFLOWREQUEST']._serialized_end=17893 + _globals['_INITIATEOAUTHFLOWRESPONSE']._serialized_start=17896 + _globals['_INITIATEOAUTHFLOWRESPONSE']._serialized_end=18095 + _globals['_COMPLETEOAUTHFLOWREQUEST']._serialized_start=18098 + _globals['_COMPLETEOAUTHFLOWREQUEST']._serialized_end=18494 + _globals['_COMPLETEOAUTHFLOWRESPONSE']._serialized_start=18496 + _globals['_COMPLETEOAUTHFLOWRESPONSE']._serialized_end=18582 + _globals['_INITIATEMCPOAUTHFLOWREQUEST']._serialized_start=18585 + _globals['_INITIATEMCPOAUTHFLOWREQUEST']._serialized_end=19198 + _globals['_INITIATEMCPOAUTHFLOWRESPONSE']._serialized_start=19201 + _globals['_INITIATEMCPOAUTHFLOWRESPONSE']._serialized_end=19505 + _globals['_COMPLETEMCPOAUTHFLOWREQUEST']._serialized_start=19508 + _globals['_COMPLETEMCPOAUTHFLOWREQUEST']._serialized_end=20120 + _globals['_COMPLETEMCPOAUTHFLOWRESPONSE']._serialized_start=20123 + _globals['_COMPLETEMCPOAUTHFLOWRESPONSE']._serialized_end=20370 + _globals['_REVOKEMCPOAUTHGRANTREQUEST']._serialized_start=20373 + _globals['_REVOKEMCPOAUTHGRANTREQUEST']._serialized_end=20708 + _globals['_REVOKEMCPOAUTHGRANTRESPONSE']._serialized_start=20710 + _globals['_REVOKEMCPOAUTHGRANTRESPONSE']._serialized_end=20792 + _globals['_TRIGGERSYNCREQUEST']._serialized_start=20795 + _globals['_TRIGGERSYNCREQUEST']._serialized_end=20976 + _globals['_TRIGGERSYNCRESPONSE']._serialized_start=20979 + _globals['_TRIGGERSYNCRESPONSE']._serialized_end=21144 + _globals['_EXECUTECONNECTORACTIONREQUEST']._serialized_start=21147 + _globals['_EXECUTECONNECTORACTIONREQUEST']._serialized_end=21755 + _globals['_EXECUTECONNECTORACTIONRESPONSE']._serialized_start=21758 + _globals['_EXECUTECONNECTORACTIONRESPONSE']._serialized_end=22573 + _globals['_STREAMCURSORSTATE']._serialized_start=22576 + _globals['_STREAMCURSORSTATE']._serialized_end=22778 + _globals['_STREAMRUNSUMMARY']._serialized_start=22781 + _globals['_STREAMRUNSUMMARY']._serialized_end=23046 + _globals['_CONNECTIONSTREAM']._serialized_start=23049 + _globals['_CONNECTIONSTREAM']._serialized_end=23434 + _globals['_LISTCONNECTIONSTREAMSREQUEST']._serialized_start=23436 + _globals['_LISTCONNECTIONSTREAMSREQUEST']._serialized_end=23503 + _globals['_LISTCONNECTIONSTREAMSRESPONSE']._serialized_start=23505 + _globals['_LISTCONNECTIONSTREAMSRESPONSE']._serialized_end=23595 + _globals['_SYNCPARTITIONSTATE']._serialized_start=23598 + _globals['_SYNCPARTITIONSTATE']._serialized_end=23889 + _globals['_GETSTREAMSTATEREQUEST']._serialized_start=23891 + _globals['_GETSTREAMSTATEREQUEST']._serialized_end=23980 + _globals['_GETSTREAMSTATERESPONSE']._serialized_start=23983 + _globals['_GETSTREAMSTATERESPONSE']._serialized_end=24175 + _globals['_RESETSTREAMSTATEREQUEST']._serialized_start=24178 + _globals['_RESETSTREAMSTATEREQUEST']._serialized_end=24367 + _globals['_RESETSTREAMSTATERESPONSE']._serialized_start=24369 + _globals['_RESETSTREAMSTATERESPONSE']._serialized_end=24453 + _globals['_SYNCSCHEDULE']._serialized_start=24456 + _globals['_SYNCSCHEDULE']._serialized_end=24970 + _globals['_CREATESYNCSCHEDULEREQUEST']._serialized_start=24973 + _globals['_CREATESYNCSCHEDULEREQUEST']._serialized_end=25252 + _globals['_CREATESYNCSCHEDULERESPONSE']._serialized_start=25255 + _globals['_CREATESYNCSCHEDULERESPONSE']._serialized_end=25385 + _globals['_LISTSYNCSCHEDULESREQUEST']._serialized_start=25387 + _globals['_LISTSYNCSCHEDULESREQUEST']._serialized_end=25450 + _globals['_LISTSYNCSCHEDULESRESPONSE']._serialized_start=25452 + _globals['_LISTSYNCSCHEDULESRESPONSE']._serialized_end=25538 + _globals['_PROVIDERRESOURCEENVELOPE']._serialized_start=25541 + _globals['_PROVIDERRESOURCEENVELOPE']._serialized_end=26537 + _globals['_GETBUSINESSSOURCERECORDREQUEST']._serialized_start=26540 + _globals['_GETBUSINESSSOURCERECORDREQUEST']._serialized_end=26801 + _globals['_GETBUSINESSSOURCERECORDRESPONSE']._serialized_start=26804 + _globals['_GETBUSINESSSOURCERECORDRESPONSE']._serialized_end=27097 + _globals['_CONNECTORSERVICE']._serialized_start=30820 + _globals['_CONNECTORSERVICE']._serialized_end=35996 +# @@protoc_insertion_point(module_scope) diff --git a/src/console/v1/console_pb2.py b/src/console/v1/console_pb2.py new file mode 100644 index 0000000..681e345 --- /dev/null +++ b/src/console/v1/console_pb2.py @@ -0,0 +1,5588 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: console/v1/console.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'console/v1/console.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 +from common.v1 import authz_pb2 as common_dot_v1_dot_authz__pb2 +from common.v1 import classification_pb2 as common_dot_v1_dot_classification__pb2 +from common.v1 import risk_pb2 as common_dot_v1_dot_risk__pb2 +from connectors.v1 import connectors_pb2 as connectors_dot_v1_dot_connectors__pb2 +from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from memory.v1 import memory_pb2 as memory_dot_v1_dot_memory__pb2 +from meter.v1 import meter_pb2 as meter_dot_v1_dot_meter__pb2 +from orbcontrol.v1 import orb_control_pb2 as orbcontrol_dot_v1_dot_orb__control__pb2 +from evalops_platform.v1 import platform_pb2 as platform_dot_v1_dot_platform__pb2 +from remoterunner.v1 import remoterunner_pb2 as remoterunner_dot_v1_dot_remoterunner__pb2 +from toolexecution.v1 import toolexecution_pb2 as toolexecution_dot_v1_dot_toolexecution__pb2 +from traces.v1 import traces_pb2 as traces_dot_v1_dot_traces__pb2 +from vfs.v1 import filesystem_pb2 as vfs_dot_v1_dot_filesystem__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x18\x63onsole/v1/console.proto\x12\nconsole.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x15\x63ommon/v1/authz.proto\x1a\x1e\x63ommon/v1/classification.proto\x1a\x14\x63ommon/v1/risk.proto\x1a\x1e\x63onnectors/v1/connectors.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x16memory/v1/memory.proto\x1a\x14meter/v1/meter.proto\x1a\x1forbcontrol/v1/orb_control.proto\x1a\x1aplatform/v1/platform.proto\x1a\"remoterunner/v1/remoterunner.proto\x1a$toolexecution/v1/toolexecution.proto\x1a\x16traces/v1/traces.proto\x1a\x17vfs/v1/filesystem.proto\"|\n\x1cGetWorkspaceKeyConfigRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"\xf6\x01\n\x1cPutWorkspaceKeyConfigRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12#\n\x08provider\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08provider\x12\x17\n\x07key_arn\x18\x04 \x01(\tR\x06keyArn\x12\x19\n\x08role_arn\x18\x05 \x01(\tR\x07roleArn\x12\x1f\n\x0b\x65xternal_id\x18\x06 \x01(\tR\nexternalId\"\x7f\n\x1f\x44\x65leteWorkspaceKeyConfigRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"\xff\x01\n\x1aWorkspaceKeyConfigResponse\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\x1a\n\x08provider\x18\x03 \x01(\tR\x08provider\x12\x17\n\x07key_arn\x18\x04 \x01(\tR\x06keyArn\x12\x19\n\x08role_arn\x18\x05 \x01(\tR\x07roleArn\x12&\n\x0fhas_external_id\x18\x06 \x01(\x08R\rhasExternalId\x12\x1d\n\nupdated_at\x18\x07 \x01(\tR\tupdatedAt\"}\n\tTimeRange\x12\x39\n\nstart_time\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\"\xcd\x03\n\x0c\x43onsoleQuery\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x34\n\ntime_range\x18\x02 \x01(\x0b\x32\x15.console.v1.TimeRangeR\ttimeRange\x12 \n\x0b\x65nvironment\x18\x03 \x01(\tR\x0b\x65nvironment\x12\x17\n\x07team_id\x18\x04 \x01(\tR\x06teamId\x12\x14\n\x05owner\x18\x05 \x01(\tR\x05owner\x12\x33\n\nrisk_level\x18\x06 \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12\x1d\n\nasset_type\x18\x07 \x01(\tR\tassetType\x12\x16\n\x06status\x18\x08 \x01(\tR\x06status\x12 \n\x05limit\x18\t \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xf4\x03(\x00R\x05limit\x12\x1f\n\x06offset\x18\n \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\x12\x16\n\x06search\x18\x0b \x01(\tR\x06search\x12\x1a\n\x08provider\x18\x0c \x01(\tR\x08provider\x12\'\n\x0forganization_id\x18\r \x01(\tR\x0eorganizationId\"\x9c\x02\n\x18OperatingCapabilityState\x12\x18\n\x07service\x18\x01 \x01(\tR\x07service\x12\x16\n\x06status\x18\x02 \x01(\tR\x06status\x12\x14\n\x05label\x18\x03 \x01(\tR\x05label\x12\x16\n\x06\x64\x65tail\x18\x04 \x01(\tR\x06\x64\x65tail\x12\x31\n\x14missing_requirements\x18\x05 \x03(\tR\x13missingRequirements\x12m\n\x1amissing_requirement_states\x18\x06 \x03(\x0b\x32/.console.v1.OperatingCapabilityRequirementStateR\x18missingRequirementStates\"\xf1\x02\n\x12OperatingTurnRoute\x12\x36\n\x04kind\x18\x01 \x01(\x0e\x32\".console.v1.OperatingTurnRouteKindR\x04kind\x12\x44\n\x0bintent_kind\x18\x02 \x01(\x0e\x32#.console.v1.OperatingTurnIntentKindR\nintentKind\x12\x44\n\x0b\x61nswer_kind\x18\x03 \x01(\x0e\x32#.console.v1.OperatingTurnAnswerKindR\nanswerKind\x12\x44\n\x0bsafety_kind\x18\x04 \x01(\x0e\x32#.console.v1.OperatingTurnSafetyKindR\nsafetyKind\x12\x16\n\x06router\x18\x05 \x01(\tR\x06router\x12\x39\n\ndecided_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tdecidedAt\"\xe4\x04\n\x10OperatingChannel\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x12\n\x04kind\x18\x03 \x01(\tR\x04kind\x12%\n\x0esource_service\x18\x04 \x01(\tR\rsourceService\x12!\n\x0cunread_count\x18\x05 \x01(\x05R\x0bunreadCount\x12\x1d\n\nopen_count\x18\x06 \x01(\x05R\topenCount\x12O\n\x10\x63\x61pability_state\x18\x07 \x01(\x0b\x32$.console.v1.OperatingCapabilityStateR\x0f\x63\x61pabilityState\x12\x16\n\x06\x64\x65tail\x18\x08 \x01(\tR\x06\x64\x65tail\x12\x39\n\nupdated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12>\n\x07surface\x18\n \x01(\x0b\x32$.console.v1.OperatingSurfaceMetadataR\x07surface\x12\x1a\n\x08\x61rchived\x18\x0b \x01(\x08R\x08\x61rchived\x12;\n\x0b\x61rchived_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\narchivedAt\x12\x37\n\x18\x61rchived_by_principal_id\x18\r \x01(\tR\x15\x61rchivedByPrincipalId\x12\x37\n\x18\x61rchived_by_display_name\x18\x0e \x01(\tR\x15\x61rchivedByDisplayName\"\xd5\x02\n\x18OperatingSurfaceMetadata\x12>\n\x04kind\x18\x01 \x01(\x0e\x32 .console.v1.OperatingSurfaceKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12\x1f\n\x0bprovider_id\x18\x02 \x01(\tR\nproviderId\x12#\n\rconnection_id\x18\x03 \x01(\tR\x0c\x63onnectionId\x12\x32\n\x15provider_workspace_id\x18\x04 \x01(\tR\x13providerWorkspaceId\x12.\n\x13provider_channel_id\x18\x05 \x01(\tR\x11providerChannelId\x12,\n\x12provider_thread_id\x18\x06 \x01(\tR\x10providerThreadId\x12!\n\x0c\x62inding_kind\x18\x07 \x01(\tR\x0b\x62indingKind\"_\n\x17OperatingModelSelection\x12$\n\x08provider\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x08provider\x12\x1e\n\x05model\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x05model\"\xc1\x04\n\x10OperatingMessage\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1d\n\nchannel_id\x18\x02 \x01(\tR\tchannelId\x12\x12\n\x04role\x18\x03 \x01(\tR\x04role\x12\x1f\n\x0b\x61\x63tor_label\x18\x04 \x01(\tR\nactorLabel\x12\x12\n\x04\x62ody\x18\x05 \x01(\tR\x04\x62ody\x12\x39\n\ncreated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x1f\n\x0breceipt_ids\x18\x07 \x03(\tR\nreceiptIds\x12\x34\n\x05route\x18\x08 \x01(\x0b\x32\x1e.console.v1.OperatingTurnRouteR\x05route\x12\x44\n\x0b\x61ttachments\x18\t \x03(\x0b\x32\".console.v1.OperatingAttachmentRefR\x0b\x61ttachments\x12@\n\x0bturn_record\x18\n \x01(\x0b\x32\x1f.console.v1.OperatingTurnRecordR\nturnRecord\x12L\n\x0fmodel_selection\x18\x0b \x01(\x0b\x32#.console.v1.OperatingModelSelectionR\x0emodelSelection\x12M\n\x10\x61uto_model_route\x18\x0c \x01(\x0b\x32#.console.v1.OperatingAutoModelRouteR\x0e\x61utoModelRoute\"\xc3\x01\n\x12OperatingToolEvent\x12\x17\n\x07\x63\x61ll_id\x18\x01 \x01(\tR\x06\x63\x61llId\x12\x1b\n\ttool_name\x18\x02 \x01(\tR\x08toolName\x12\x16\n\x06status\x18\x03 \x01(\tR\x06status\x12\x1d\n\nreceipt_id\x18\x04 \x01(\tR\treceiptId\x12@\n\revidence_refs\x18\x05 \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\"\xe9\x08\n\x13OperatingTurnRecord\x12\x1d\n\nsession_id\x18\x01 \x01(\tR\tsessionId\x12\x17\n\x07turn_id\x18\x02 \x01(\tR\x06turnId\x12#\n\x08sequence\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x08sequence\x12\x1c\n\x04goal\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\xd0\x0fR\x04goal\x12\x32\n\x15\x63ontext_digest_sha256\x18\x05 \x01(\tR\x13\x63ontextDigestSha256\x12>\n\x05state\x18\x06 \x01(\x0e\x32\x1e.console.v1.OperatingTurnStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12_\n\x12verification_state\x18\x07 \x01(\x0e\x32&.console.v1.OperatingVerificationStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x11verificationState\x12I\n\x0btool_events\x18\x08 \x03(\x0b\x32\x1e.console.v1.OperatingToolEventB\x08\xbaH\x05\x92\x01\x02\x10@R\ntoolEvents\x12J\n\revidence_refs\x18\t \x03(\x0b\x32\x1b.console.v1.RelatedResourceB\x08\xbaH\x05\x92\x01\x02\x10@R\x0c\x65videnceRefs\x12\x1d\n\nerror_code\x18\n \x01(\tR\terrorCode\x12\x39\n\nupdated_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\\\n\x11\x61nswer_provenance\x18\x0c \x01(\x0e\x32%.console.v1.OperatingAnswerProvenanceB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x10\x61nswerProvenance\x12\'\n\ncontext_id\x18\r \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\tcontextId\x12!\n\x07task_id\x18\x0e \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x06taskId\x12,\n\rtask_revision\x18\x0f \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0ctaskRevision\x12?\n\x12reference_task_ids\x18\x10 \x03(\tB\x11\xbaH\x0e\x92\x01\x0b\x10\x10\"\x07r\x05\x10\x01\x18\x80\x02R\x10referenceTaskIds\x12\x39\n\x14\x61rtifact_intent_kind\x18\x11 \x01(\tB\x07\xbaH\x04r\x02\x18 R\x12\x61rtifactIntentKind\x12h\n\x19\x63ustomer_outcome_identity\x18\x12 \x01(\x0b\x32,.console.v1.OperatingCustomerOutcomeIdentityR\x17\x63ustomerOutcomeIdentity\x12S\n\x0eproject_source\x18\x13 \x01(\x0b\x32,.toolexecution.v1.ToolExecutionProjectSourceR\rprojectSource\"\xa0\x06\n OperatingCustomerOutcomeIdentity\x12,\n\rstudy_org_key\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x0bstudyOrgKey\x12,\n\rconsent_state\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x18 R\x0c\x63onsentState\x12=\n\x16\x63onsent_policy_version\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x18@R\x14\x63onsentPolicyVersion\x12\x30\n\x0fsource_revision\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x18@R\x0esourceRevision\x12)\n\x0bworkflow_id\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\nworkflowId\x12\x32\n\x10workflow_version\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x18@R\x0fworkflowVersion\x12#\n\x08model_id\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x07modelId\x12/\n\x0emodel_revision\x18\x08 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\rmodelRevision\x12)\n\x0bprovider_id\x18\t \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\nproviderId\x12/\n\x0eprovider_route\x18\n \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\rproviderRoute\x12-\n\rconfig_digest\x18\x0b \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x0c\x63onfigDigest\x12\x42\n\x18prompt_template_revision\x18\x0c \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x16promptTemplateRevision\x12\x37\n\x12toolchain_revision\x18\r \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x11toolchainRevision\x12I\n\x1c\x66\x65\x61ture_flag_snapshot_digest\x18\x0e \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x19\x66\x65\x61tureFlagSnapshotDigest\x12\'\n\nrollout_id\x18\x0f \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\trolloutId\"\x90\x05\n\x1aOperatingExecutionIdentity\x12I\n\x07runtime\x18\x01 \x01(\x0e\x32%.console.v1.OperatingExecutionRuntimeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07runtime\x12!\n\x06run_id\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x05runId\x12\x36\n\x11runner_session_id\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x0frunnerSessionId\x12\x35\n\x10protocol_version\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0fprotocolVersion\x12\x36\n\x12runtime_generation\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x11runtimeGeneration\x12*\n\x0c\x65vent_cursor\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0b\x65ventCursor\x12\x34\n\x11\x63\x61usal_receipt_id\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x0f\x63\x61usalReceiptId\x12\x36\n\x12maestro_session_id\x18\x08 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x10maestroSessionId\x12.\n\x0emaestro_run_id\x18\t \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x0cmaestroRunId\x12G\n\x1bresident_process_generation\x18\n \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x19residentProcessGeneration\x12!\n\x07turn_id\x18\x0b \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x06turnId\x12\'\n\x0f\x61ppend_replayed\x18\x0c \x01(\x08R\x0e\x61ppendReplayed\"\xb9\x04\n\x18OperatingThreadExecution\x12\x1b\n\tthread_id\x18\x01 \x01(\tR\x08threadId\x12I\n\x05state\x18\x02 \x01(\x0e\x32).console.v1.OperatingThreadExecutionStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\x39\n\x14\x61\x63tive_turn_sequence\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x12\x61\x63tiveTurnSequence\x12,\n\rreplay_cursor\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0creplayCursor\x12\x39\n\nupdated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12U\n\x12\x65xecution_identity\x18\x06 \x01(\x0b\x32&.console.v1.OperatingExecutionIdentityR\x11\x65xecutionIdentity\x12=\n\x16terminal_turn_sequence\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x14terminalTurnSequence\x12\x32\n\x10\x63ontroller_owner\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x18@R\x0f\x63ontrollerOwner\x12G\n\x1b\x63ontroller_lease_generation\x18\t \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x19\x63ontrollerLeaseGeneration\"\xbc\x05\n\x13OperatingThreadTurn\x12\x17\n\x07turn_id\x18\x01 \x01(\tR\x06turnId\x12#\n\x08sequence\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x08sequence\x12&\n\x0fuser_message_id\x18\x03 \x01(\tR\ruserMessageId\x12\x30\n\x14\x61ssistant_message_id\x18\x04 \x01(\tR\x12\x61ssistantMessageId\x12>\n\x05state\x18\x05 \x01(\x0e\x32\x1e.console.v1.OperatingTurnStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12Y\n\x0ewaiting_reason\x18\x06 \x01(\x0e\x32(.console.v1.OperatingThreadWaitingReasonB\x08\xbaH\x05\x82\x01\x02\x10\x01R\rwaitingReason\x12*\n\x0c\x66irst_cursor\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0b\x66irstCursor\x12(\n\x0blast_cursor\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\nlastCursor\x12\x1d\n\nerror_code\x18\t \x01(\tR\terrorCode\x12\x39\n\ncreated_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12=\n\x0c\x63ompleted_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0b\x63ompletedAt\x12H\n\x0eterminal_error\x18\r \x01(\x0b\x32!.console.v1.TerminalErrorEnvelopeR\rterminalError\"\xdb\x05\n\x14OperatingThreadEvent\x12\x1f\n\x06\x63ursor\x18\x01 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x06\x63ursor\x12\x19\n\x08\x65vent_id\x18\x02 \x01(\tR\x07\x65ventId\x12\x17\n\x07turn_id\x18\x03 \x01(\tR\x06turnId\x12\x42\n\x04kind\x18\x04 \x01(\x0e\x32$.console.v1.OperatingThreadEventKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12%\n\tsafe_text\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80 R\x08safeText\x12J\n\rartifact_refs\x18\x06 \x03(\x0b\x32\x1b.console.v1.RelatedResourceB\x08\xbaH\x05\x92\x01\x02\x10 R\x0c\x61rtifactRefs\x12\x39\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12U\n\x12\x65xecution_identity\x18\x08 \x01(\x0b\x32&.console.v1.OperatingExecutionIdentityR\x11\x65xecutionIdentity\x12\'\n\nrequest_id\x18\t \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\trequestId\x12S\n\x0crequest_type\x18\n \x01(\x0e\x32&.console.v1.OperatingThreadRequestTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0brequestType\x12+\n\x0crequest_tool\x18\x0b \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x0brequestTool\x12\x30\n\x0frequest_call_id\x18\x0c \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\rrequestCallId\x12H\n\x0eterminal_error\x18\r \x01(\x0b\x32!.console.v1.TerminalErrorEnvelopeR\rterminalError\"\xf6\x02\n\x17OperatingThreadResponse\x12)\n\nrequest_id\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\trequestId\x12!\n\x07\x63\x61ll_id\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x06\x63\x61llId\x12S\n\x0crequest_type\x18\x03 \x01(\x0e\x32&.console.v1.OperatingThreadRequestTypeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0brequestType\x12K\n\x06\x61\x63tion\x18\x04 \x01(\x0e\x32).console.v1.OperatingThreadResponseActionB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06\x61\x63tion\x12\x1d\n\x04text\x18\x05 \x01(\tB\t\xbaH\x06r\x04\x18\x80\x80\x04R\x04text\x12\x19\n\x08is_error\x18\x06 \x01(\x08R\x07isError\x12\x31\n\x0fidempotency_key\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\x0eidempotencyKey\"\xd3\x04\n\x16OperatingAttachmentRef\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1b\n\tobject_id\x18\x02 \x01(\tR\x08objectId\x12\x1d\n\nversion_id\x18\x03 \x01(\tR\tversionId\x12\x44\n\x05scope\x18\x04 \x01(\x0e\x32$.console.v1.OperatingAttachmentScopeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05scope\x12\x1d\n\nchannel_id\x18\x05 \x01(\tR\tchannelId\x12\x1a\n\x08\x66ilename\x18\x06 \x01(\tR\x08\x66ilename\x12!\n\x0c\x63ontent_type\x18\x07 \x01(\tR\x0b\x63ontentType\x12+\n\nsize_bytes\x18\x08 \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\x80\x80\x19(\x00R\tsizeBytes\x12\x16\n\x06sha256\x18\t \x01(\tR\x06sha256\x12\x63\n\x10processing_state\x18\n \x01(\x0e\x32..console.v1.OperatingAttachmentProcessingStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0fprocessingState\x12\x30\n\x14\x65xtraction_object_id\x18\x0b \x01(\tR\x12\x65xtractionObjectId\x12\x32\n\x15\x65xtraction_version_id\x18\x0c \x01(\tR\x13\x65xtractionVersionId\x12\x39\n\ncreated_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\"\xa1\x06\n\x10OperatingReceipt\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04kind\x18\x02 \x01(\tR\x04kind\x12\x14\n\x05title\x18\x03 \x01(\tR\x05title\x12\x18\n\x07summary\x18\x04 \x01(\tR\x07summary\x12\x16\n\x06status\x18\x05 \x01(\tR\x06status\x12#\n\rowner_service\x18\x06 \x01(\tR\x0cownerService\x12\x1b\n\tobject_id\x18\x07 \x01(\tR\x08objectId\x12!\n\x0cobjective_id\x18\x08 \x01(\tR\x0bobjectiveId\x12\x15\n\x06run_id\x18\t \x01(\tR\x05runId\x12.\n\x13\x61pproval_request_id\x18\n \x01(\tR\x11\x61pprovalRequestId\x12\x19\n\x08trace_id\x18\x0b \x01(\tR\x07traceId\x12\x33\n\nrisk_level\x18\x0c \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12\x39\n\nupdated_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12K\n\x0f\x61llowed_actions\x18\x0e \x03(\x0b\x32\".console.v1.OperatingReceiptActionR\x0e\x61llowedActions\x12@\n\revidence_refs\x18\x0f \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\x12\x31\n\x07payload\x18\x10 \x01(\x0b\x32\x17.google.protobuf.StructR\x07payload\x12T\n\x0flifecycle_state\x18\x11 \x01(\x0e\x32!.console.v1.ReceiptLifecycleStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0elifecycleState\x12R\n\x11\x63oding_acceptance\x18\x12 \x01(\x0b\x32%.console.v1.OperatingCodingAcceptanceR\x10\x63odingAcceptance\"\xa1\x02\n\x16OperatingReceiptAction\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x12\n\x04kind\x18\x03 \x01(\tR\x04kind\x12\x1f\n\x0btarget_kind\x18\x04 \x01(\tR\ntargetKind\x12\x1b\n\ttarget_id\x18\x05 \x01(\tR\x08targetId\x12\x33\n\x15requires_confirmation\x18\x06 \x01(\x08R\x14requiresConfirmation\x12\'\n\x0f\x64isabled_reason\x18\x07 \x01(\tR\x0e\x64isabledReason\x12\x31\n\x07payload\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructR\x07payload\"\xb1\x01\n\x1cListOperatingChannelsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12Y\n\x0e\x61rchive_filter\x18\x02 \x01(\x0e\x32(.console.v1.OperatingThreadArchiveFilterB\x08\xbaH\x05\x82\x01\x02\x10\x01R\rarchiveFilter\"\xfd\x01\n\x1dListOperatingChannelsResponse\x12\x38\n\x08\x63hannels\x18\x01 \x03(\x0b\x32\x1c.console.v1.OperatingChannelR\x08\x63hannels\x12H\n\x0c\x63\x61pabilities\x18\x02 \x03(\x0b\x32$.console.v1.OperatingCapabilityStateR\x0c\x63\x61pabilities\x12X\n\x13homepage_suggestion\x18\x03 \x01(\x0b\x32\'.console.v1.OperatingHomepageSuggestionR\x12homepageSuggestion\"\xd8\x01\n\x1d\x41rchiveOperatingThreadRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nchannel_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tchannelId\x12\x1a\n\x08\x61rchived\x18\x03 \x01(\x08R\x08\x61rchived\x12\x37\n\x0fidempotency_key\x18\x04 \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\x80\x04\x80\xf4\x18\x02R\x0eidempotencyKey\"\x96\x01\n\x1e\x41rchiveOperatingThreadResponse\x12>\n\x07\x63hannel\x18\x01 \x01(\x0b\x32\x1c.console.v1.OperatingChannelB\x06\xbaH\x03\xc8\x01\x01R\x07\x63hannel\x12\x18\n\x07\x63hanged\x18\x02 \x01(\x08R\x07\x63hanged\x12\x1a\n\x08replayed\x18\x03 \x01(\x08R\x08replayed\"\xa7\x01\n\x1cRenameOperatingThreadRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nchannel_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tchannelId\x12#\n\x05title\x18\x03 \x01(\tB\r\xbaH\x06r\x04\x10\x01\x18P\x80\xf4\x18\x04R\x05title\"y\n\x1dRenameOperatingThreadResponse\x12>\n\x07\x63hannel\x18\x01 \x01(\x0b\x32\x1c.console.v1.OperatingChannelB\x06\xbaH\x03\xc8\x01\x01R\x07\x63hannel\x12\x18\n\x07\x63hanged\x18\x02 \x01(\x08R\x07\x63hanged\"\xc7\x01\n\x19GetOperatingThreadRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12#\n\nchannel_id\x18\x02 \x01(\tB\x04\x80\xf4\x18\x02R\tchannelId\x12 \n\x05limit\x18\x03 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xc8\x01(\x00R\x05limit\x12+\n\npage_token\x18\x04 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x10\x80\xf4\x18\x02R\tpageToken\"\xe6\x05\n\x1aGetOperatingThreadResponse\x12\x36\n\x07\x63hannel\x18\x01 \x01(\x0b\x32\x1c.console.v1.OperatingChannelR\x07\x63hannel\x12\x38\n\x08messages\x18\x02 \x03(\x0b\x32\x1c.console.v1.OperatingMessageR\x08messages\x12\x38\n\x08receipts\x18\x03 \x03(\x0b\x32\x1c.console.v1.OperatingReceiptR\x08receipts\x12H\n\x0c\x63\x61pabilities\x18\x04 \x03(\x0b\x32$.console.v1.OperatingCapabilityStateR\x0c\x63\x61pabilities\x12O\n\x10thread_execution\x18\x05 \x01(\x0b\x32$.console.v1.OperatingThreadExecutionR\x0fthreadExecution\x12\x35\n\x05turns\x18\x06 \x03(\x0b\x32\x1f.console.v1.OperatingThreadTurnR\x05turns\x12,\n\rreplay_cursor\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0creplayCursor\x12\x34\n\x0fnext_page_token\x18\x08 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x10\x80\xf4\x18\x02R\rnextPageToken\x12L\n\x0fmodel_selection\x18\t \x01(\x0b\x32#.console.v1.OperatingModelSelectionR\x0emodelSelection\x12N\n\x10\x61vailable_models\x18\n \x03(\x0b\x32#.console.v1.InferenceProviderTargetR\x0f\x61vailableModels\x12H\n\rdefault_model\x18\x0b \x01(\x0b\x32#.console.v1.InferenceProviderTargetR\x0c\x64\x65\x66\x61ultModel\"\xab\x02\n\x1dRespondOperatingThreadRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nchannel_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tchannelId\x12$\n\x07turn_id\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x06turnId\x12G\n\x08response\x18\x04 \x01(\x0b\x32#.console.v1.OperatingThreadResponseB\x06\xbaH\x03\xc8\x01\x01R\x08response\x12\x37\n\x0fidempotency_key\x18\x05 \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\x80\x04\x80\xf4\x18\x02R\x0eidempotencyKey\"\x98\x02\n\x1eRespondOperatingThreadResponse\x12$\n\x0eruntime_run_id\x18\x01 \x01(\tR\x0cruntimeRunId\x12\x1a\n\x08replayed\x18\x02 \x01(\x08R\x08replayed\x12O\n\x10thread_execution\x18\x03 \x01(\x0b\x32$.console.v1.OperatingThreadExecutionR\x0fthreadExecution\x12\x35\n\x05turns\x18\x04 \x03(\x0b\x32\x1f.console.v1.OperatingThreadTurnR\x05turns\x12,\n\rreplay_cursor\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0creplayCursor\"\x83\x02\n\x1fInterruptOperatingThreadRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nchannel_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tchannelId\x12\x1d\n\x07turn_id\x18\x03 \x01(\tB\x04\x80\xf4\x18\x02R\x06turnId\x12\x37\n\x0fidempotency_key\x18\x04 \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\x80\x04\x80\xf4\x18\x02R\x0eidempotencyKey\x12$\n\x06reason\x18\x05 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x04\x80\xf4\x18\x04R\x06reason\"\xc5\x02\n InterruptOperatingThreadResponse\x12\x17\n\x07turn_id\x18\x01 \x01(\tR\x06turnId\x12\x1a\n\x08replayed\x18\x02 \x01(\x08R\x08replayed\x12O\n\x10thread_execution\x18\x03 \x01(\x0b\x32$.console.v1.OperatingThreadExecutionR\x0fthreadExecution\x12\x35\n\x05turns\x18\x04 \x03(\x0b\x32\x1f.console.v1.OperatingThreadTurnR\x05turns\x12,\n\rreplay_cursor\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0creplayCursor\x12\x36\n\x12\x63\x61ncelled_work_ids\x18\x06 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10 R\x10\x63\x61ncelledWorkIds\"\xd4\x01\n ListOperatingThreadEventsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nchannel_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tchannelId\x12*\n\x0c\x61\x66ter_cursor\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0b\x61\x66terCursor\x12 \n\x05limit\x18\x04 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xc8\x01(\x01R\x05limit\"\xed\x02\n!ListOperatingThreadEventsResponse\x12\x43\n\x06\x65vents\x18\x01 \x03(\x0b\x32 .console.v1.OperatingThreadEventB\t\xbaH\x06\x92\x01\x03\x10\xc8\x01R\x06\x65vents\x12(\n\x0bnext_cursor\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\nnextCursor\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\x12%\n\x0ereset_required\x18\x04 \x01(\x08R\rresetRequired\x12O\n\x10thread_execution\x18\x05 \x01(\x0b\x32$.console.v1.OperatingThreadExecutionR\x0fthreadExecution\x12\x46\n\x0esnapshot_turns\x18\x06 \x03(\x0b\x32\x1f.console.v1.OperatingThreadTurnR\rsnapshotTurns\"\xad\x01\n\x1bWatchOperatingThreadRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nchannel_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tchannelId\x12*\n\x0c\x61\x66ter_cursor\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0b\x61\x66terCursor\"\xcc\x02\n\x1cWatchOperatingThreadResponse\x12\x42\n\x06\x65vents\x18\x01 \x03(\x0b\x32 .console.v1.OperatingThreadEventB\x08\xbaH\x05\x92\x01\x02\x10\x32R\x06\x65vents\x12(\n\x0bnext_cursor\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\nnextCursor\x12%\n\x0ereset_required\x18\x03 \x01(\x08R\rresetRequired\x12O\n\x10thread_execution\x18\x04 \x01(\x0b\x32$.console.v1.OperatingThreadExecutionR\x0fthreadExecution\x12\x46\n\x0esnapshot_turns\x18\x05 \x03(\x0b\x32\x1f.console.v1.OperatingThreadTurnR\rsnapshotTurns\"\x95\x04\n\x18\x43odingAcceptanceContract\x12!\n\x07task_id\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x06taskId\x12/\n\rrepository_id\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x0crepositoryId\x12\'\n\ngeneration\x18\x03 \x01(\x04\x42\x07\xbaH\x04\x32\x02 \x00R\ngeneration\x12\x41\n\x16required_assertion_ids\x18\x04 \x03(\tB\x0b\xbaH\x08\x92\x01\x05\x08\x01\x10\x80\x01R\x14requiredAssertionIds\x12%\n\x0erequire_review\x18\x05 \x01(\x08R\rrequireReview\x12)\n\x10require_behavior\x18\x06 \x01(\x08R\x0frequireBehavior\x12@\n\x16readiness_requirements\x18\x07 \x03(\tB\t\xbaH\x06\x92\x01\x03\x10\x80\x01R\x15readinessRequirements\x12\x34\n\x10\x61uthorized_skips\x18\x08 \x03(\tB\t\xbaH\x06\x92\x01\x03\x10\x80\x01R\x0f\x61uthorizedSkips\x12\x42\n\x17\x61uthorized_dispositions\x18\t \x03(\tB\t\xbaH\x06\x92\x01\x03\x10\x80\x01R\x16\x61uthorizedDispositions\x12+\n\x0coutput_paths\x18\n \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0boutputPaths\"\x9f\x06\n\x1dSubmitOperatingMessageRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12#\n\nchannel_id\x18\x02 \x01(\tB\x04\x80\xf4\x18\x02R\tchannelId\x12!\n\x04\x62ody\x18\x03 \x01(\tB\r\xbaH\x06r\x04\x18\xa0\x9c\x01\x80\xf4\x18\x04R\x04\x62ody\x12-\n\x0fidempotency_key\x18\x04 \x01(\tB\x04\x80\xf4\x18\x02R\x0eidempotencyKey\x12N\n\x0b\x61ttachments\x18\x05 \x03(\x0b\x32\".console.v1.OperatingAttachmentRefB\x08\xbaH\x05\x92\x01\x02\x10\x01R\x0b\x61ttachments\x12>\n\x14\x63ontinuation_task_id\x18\x06 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x02\x80\xf4\x18\x02R\x12\x63ontinuationTaskId\x12\x43\n\x12reference_task_ids\x18\x07 \x03(\tB\x15\xbaH\x0e\x92\x01\x0b\x10\x10\"\x07r\x05\x10\x01\x18\x80\x02\x80\xf4\x18\x02R\x10referenceTaskIds\x12\x36\n\x10\x64raft_prewarm_id\x18\x08 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x02\x80\xf4\x18\x02R\x0e\x64raftPrewarmId\x12L\n\x0fmodel_selection\x18\t \x01(\x0b\x32#.console.v1.OperatingModelSelectionR\x0emodelSelection\x12Q\n\x11\x63oding_acceptance\x18\n \x01(\x0b\x32$.console.v1.CodingAcceptanceContractR\x10\x63odingAcceptance\x12\x43\n\x13project_resource_id\x18\x0b \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\xff\x01\x80\xf4\x18\x02H\x00R\x11projectResourceId\x88\x01\x01\x12\x44\n\ttask_kind\x18\x0c \x01(\x0e\x32\x1d.console.v1.OperatingTaskKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08taskKindB\x16\n\x14_project_resource_id\"\xb4\x03\n%BeginOperatingAttachmentUploadRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nchannel_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tchannelId\x12\'\n\x08\x66ilename\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x03R\x08\x66ilename\x12.\n\x0c\x63ontent_type\x18\x04 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x01R\x0b\x63ontentType\x12+\n\nsize_bytes\x18\x05 \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\x80\x80\x19 \x00R\tsizeBytes\x12#\n\x06sha256\x18\x06 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x06sha256\x12\x46\n\x05scope\x18\x07 \x01(\x0e\x32$.console.v1.OperatingAttachmentScopeB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x05scope\x12\x34\n\x0fidempotency_key\x18\x08 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0eidempotencyKey\"\xfe\x01\n&BeginOperatingAttachmentUploadResponse\x12\x42\n\nattachment\x18\x01 \x01(\x0b\x32\".console.v1.OperatingAttachmentRefR\nattachment\x12\x19\n\x08lease_id\x18\x02 \x01(\tR\x07leaseId\x12\x1f\n\x0blease_token\x18\x03 \x01(\tR\nleaseToken\x12#\n\rfencing_token\x18\x04 \x01(\x03R\x0c\x66\x65ncingToken\x12/\n\x06upload\x18\x05 \x01(\x0b\x32\x17.vfs.v1.VfsUploadTargetR\x06upload\"\xc9\x04\n(CompleteOperatingAttachmentUploadRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nchannel_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tchannelId\x12\x30\n\rattachment_id\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0c\x61ttachmentId\x12&\n\x08lease_id\x18\x04 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x07leaseId\x12,\n\x0blease_token\x18\x05 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x05R\nleaseToken\x12,\n\rfencing_token\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x01R\x0c\x66\x65ncingToken\x12+\n\nsize_bytes\x18\x07 \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\x80\x80\x19 \x00R\tsizeBytes\x12#\n\x06sha256\x18\x08 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x06sha256\x12\'\n\x0cstorage_etag\x18\t \x01(\tB\x04\x80\xf4\x18\x02R\x0bstorageEtag\x12\x34\n\x0fidempotency_key\x18\n \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0eidempotencyKey\x12R\n\x0f\x63ompleted_parts\x18\x0b \x03(\x0b\x32\x1e.vfs.v1.VfsCompletedUploadPartB\t\xbaH\x06\x92\x01\x03\x10\x90NR\x0e\x63ompletedParts\"o\n)CompleteOperatingAttachmentUploadResponse\x12\x42\n\nattachment\x18\x01 \x01(\x0b\x32\".console.v1.OperatingAttachmentRefR\nattachment\"\x86\x02\n\x1fListOperatingAttachmentsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12#\n\nchannel_id\x18\x02 \x01(\tB\x04\x80\xf4\x18\x02R\tchannelId\x12\x44\n\x05scope\x18\x03 \x01(\x0e\x32$.console.v1.OperatingAttachmentScopeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05scope\x12\x1f\n\x05limit\x18\x04 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x05limit\x12\x1f\n\x06offset\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"\x83\x01\n ListOperatingAttachmentsResponse\x12\x44\n\x0b\x61ttachments\x18\x01 \x03(\x0b\x32\".console.v1.OperatingAttachmentRefR\x0b\x61ttachments\x12\x19\n\x08has_more\x18\x02 \x01(\x08R\x07hasMore\"\xc0\x03\n\x1eSubmitOperatingMessageResponse\x12\x36\n\x07message\x18\x01 \x01(\x0b\x32\x1c.console.v1.OperatingMessageR\x07message\x12\x38\n\x08receipts\x18\x02 \x03(\x0b\x32\x1c.console.v1.OperatingReceiptR\x08receipts\x12H\n\x0c\x63\x61pabilities\x18\x03 \x03(\x0b\x32$.console.v1.OperatingCapabilityStateR\x0c\x63\x61pabilities\x12\x38\n\x08messages\x18\x04 \x03(\x0b\x32\x1c.console.v1.OperatingMessageR\x08messages\x12\x34\n\x05route\x18\x05 \x01(\x0b\x32\x1e.console.v1.OperatingTurnRouteR\x05route\x12\x44\n\raccepted_turn\x18\x06 \x01(\x0b\x32\x1f.console.v1.OperatingThreadTurnR\x0c\x61\x63\x63\x65ptedTurn\x12,\n\rreplay_cursor\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0creplayCursor\"\xdf\x05\n\x1c\x44\x65xComputerCorrectionEpisode\x12\x1f\n\x06schema\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06schema\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12,\n\rcorrection_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x63orrectionId\x12\x33\n\x11source_episode_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0fsourceEpisodeId\x12I\n\x1csource_episode_digest_sha256\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x98\x01@R\x19sourceEpisodeDigestSha256\x12O\n\x06labels\x18\x07 \x03(\x0e\x32&.console.v1.DexComputerCorrectionLabelB\x0f\xbaH\x0c\x92\x01\t\"\x07\x82\x01\x04\x10\x01 \x00R\x06labels\x12I\n\x17\x65vidence_digests_sha256\x18\x08 \x03(\tB\x11\xbaH\x0e\x92\x01\x0b\x08\x01\x10@\"\x05r\x03\x98\x01@R\x15\x65videnceDigestsSha256\x12W\n\x0creview_state\x18\t \x01(\x0e\x32*.console.v1.OperatingCorrectionReviewStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0breviewState\x12/\n\x13production_learning\x18\n \x01(\x08R\x12productionLearning\x12.\n\x0ereuse_boundary\x18\x0b \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rreuseBoundary\x12<\n\x15\x65pisode_digest_sha256\x18\x0c \x01(\tB\x08\xbaH\x05r\x03\x98\x01@R\x13\x65pisodeDigestSha256\"\xc2\x06\n\x1cOperatingCorrectionCandidate\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1d\n\nchannel_id\x18\x02 \x01(\tR\tchannelId\x12\x1d\n\nmessage_id\x18\x03 \x01(\tR\tmessageId\x12M\n\x08\x63\x61tegory\x18\x04 \x01(\x0e\x32\'.console.v1.OperatingCorrectionCategoryB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08\x63\x61tegory\x12\x34\n\x16\x66\x65\x65\x64\x62\x61\x63k_digest_sha256\x18\x05 \x01(\tR\x14\x66\x65\x65\x64\x62\x61\x63kDigestSha256\x12-\n\x12remember_requested\x18\x06 \x01(\x08R\x11rememberRequested\x12+\n\x11learning_eligible\x18\x07 \x01(\x08R\x10learningEligible\x12W\n\x0creview_state\x18\x08 \x01(\x0e\x32*.console.v1.OperatingCorrectionReviewStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0breviewState\x12\x1f\n\x0breviewer_id\x18\t \x01(\tR\nreviewerId\x12J\n\revidence_refs\x18\n \x03(\x0b\x32\x1b.console.v1.RelatedResourceB\x08\xbaH\x05\x92\x01\x02\x10@R\x0c\x65videnceRefs\x12\x39\n\ncreated_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12;\n\x0breviewed_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nreviewedAt\x12T\n\x11review_capability\x18\r \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x10reviewCapability\x12_\n\x12\x63orrection_episode\x18\x0e \x01(\x0b\x32(.console.v1.DexComputerCorrectionEpisodeB\x06\xbaH\x03\xc8\x01\x01R\x11\x63orrectionEpisode\"\xff\x02\n SubmitOperatingCorrectionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nchannel_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tchannelId\x12*\n\nmessage_id\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tmessageId\x12O\n\x08\x63\x61tegory\x18\x04 \x01(\x0e\x32\'.console.v1.OperatingCorrectionCategoryB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x08\x63\x61tegory\x12(\n\x08\x66\x65\x65\x64\x62\x61\x63k\x18\x05 \x01(\tB\x0c\xbaH\x05r\x03\x18\xa0\x1f\x80\xf4\x18\x04R\x08\x66\x65\x65\x64\x62\x61\x63k\x12\x1a\n\x08remember\x18\x06 \x01(\x08R\x08remember\x12\x34\n\x0fidempotency_key\x18\x07 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0eidempotencyKey\"u\n!SubmitOperatingCorrectionResponse\x12P\n\ncorrection\x18\x01 \x01(\x0b\x32(.console.v1.OperatingCorrectionCandidateB\x06\xbaH\x03\xc8\x01\x01R\ncorrection\"\xff\t\n\x11OperatingFeedback\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1d\n\nchannel_id\x18\x02 \x01(\tR\tchannelId\x12\x1d\n\nmessage_id\x18\x03 \x01(\tR\tmessageId\x12N\n\tsentiment\x18\x04 \x01(\x0e\x32&.console.v1.OperatingFeedbackSentimentB\x08\xbaH\x05\x82\x01\x02\x10\x01R\tsentiment\x12M\n\x08\x63\x61tegory\x18\x05 \x01(\x0e\x32\'.console.v1.OperatingCorrectionCategoryB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08\x63\x61tegory\x12p\n\x15\x63lassification_source\x18\x06 \x01(\x0e\x32\x31.console.v1.OperatingFeedbackClassificationSourceB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x14\x63lassificationSource\x12)\n\x10taxonomy_version\x18\x07 \x01(\tR\x0ftaxonomyVersion\x12-\n\x12\x63orrection_present\x18\x08 \x01(\x08R\x11\x63orrectionPresent\x12#\n\rcorrection_id\x18\t \x01(\tR\x0c\x63orrectionId\x12+\n\x11learning_eligible\x18\n \x01(\x08R\x10learningEligible\x12g\n\x12remediation_action\x18\x0b \x01(\x0e\x32..console.v1.OperatingFeedbackRemediationActionB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x11remediationAction\x12\x34\n\x16remediation_attempt_id\x18\x0c \x01(\tR\x14remediationAttemptId\x12j\n\x13remediation_outcome\x18\r \x01(\x0e\x32/.console.v1.OperatingFeedbackRemediationOutcomeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x12remediationOutcome\x12\x39\n\ncreated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12;\n\x0bresolved_at\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nresolvedAt\x12\x45\n\x06reason\x18\x11 \x01(\x0e\x32#.console.v1.OperatingFeedbackReasonB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06reason\x12^\n\x0flifecycle_state\x18\x12 \x01(\x0e\x32+.console.v1.OperatingFeedbackLifecycleStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0elifecycleState\x12(\n\x10root_feedback_id\x18\x13 \x01(\tR\x0erootFeedbackId\x12\x1a\n\x08revision\x18\x14 \x01(\x04R\x08revision\x12\x34\n\x16supersedes_feedback_id\x18\x15 \x01(\tR\x14supersedesFeedbackId\"\xdf\x07\n\x1eSubmitOperatingFeedbackRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nchannel_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tchannelId\x12*\n\nmessage_id\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tmessageId\x12P\n\tsentiment\x18\x04 \x01(\x0e\x32&.console.v1.OperatingFeedbackSentimentB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\tsentiment\x12M\n\x08\x63\x61tegory\x18\x05 \x01(\x0e\x32\'.console.v1.OperatingCorrectionCategoryB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08\x63\x61tegory\x12r\n\x15\x63lassification_source\x18\x06 \x01(\x0e\x32\x31.console.v1.OperatingFeedbackClassificationSourceB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x14\x63lassificationSource\x12,\n\ncorrection\x18\x07 \x01(\tB\x0c\xbaH\x05r\x03\x18\xa0\x1f\x80\xf4\x18\x04R\ncorrection\x12\x1a\n\x08remember\x18\x08 \x01(\x08R\x08remember\x12i\n\x12remediation_action\x18\t \x01(\x0e\x32..console.v1.OperatingFeedbackRemediationActionB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x11remediationAction\x12\x42\n\x16remediation_attempt_id\x18\n \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x02\x80\xf4\x18\x02R\x14remediationAttemptId\x12\x34\n\x0fidempotency_key\x18\x0b \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0eidempotencyKey\x12\x45\n\x06reason\x18\x0c \x01(\x0e\x32#.console.v1.OperatingFeedbackReasonB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06reason\x12^\n\x0flifecycle_state\x18\r \x01(\x0e\x32+.console.v1.OperatingFeedbackLifecycleStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0elifecycleState\x12\x42\n\x16supersedes_feedback_id\x18\x0e \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x02\x80\xf4\x18\x02R\x14supersedesFeedbackId\"\xfa\x01\n\x1fSubmitOperatingFeedbackResponse\x12\x41\n\x08\x66\x65\x65\x64\x62\x61\x63k\x18\x01 \x01(\x0b\x32\x1d.console.v1.OperatingFeedbackB\x06\xbaH\x03\xc8\x01\x01R\x08\x66\x65\x65\x64\x62\x61\x63k\x12H\n\ncorrection\x18\x02 \x01(\x0b\x32(.console.v1.OperatingCorrectionCandidateR\ncorrection\x12J\n\x0c\x66\x61\x63t_receipt\x18\x03 \x01(\x0b\x32\'.console.v1.CustomerIntelligenceReceiptR\x0b\x66\x61\x63tReceipt\"\xe1\x01\n\x12ProductIssueReport\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1c\n\treference\x18\x02 \x01(\tR\treference\x12\x31\n\x14\x64iagnostics_included\x18\x03 \x01(\x08R\x13\x64iagnosticsIncluded\x12/\n\x13screenshot_attached\x18\x04 \x01(\x08R\x12screenshotAttached\x12\x39\n\ncreated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\"\xa6\x05\n\x1fSubmitProductIssueReportRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12,\n\x0b\x64\x65scription\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xa0\x1fR\x0b\x64\x65scription\x12\x35\n\x11\x65xpected_behavior\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xa0\x1fR\x10\x65xpectedBehavior\x12#\n\x08page_url\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x10R\x07pageUrl\x12)\n\x0b\x61pp_version\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\nappVersion\x12\"\n\x07\x62rowser\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\x07\x62rowser\x12#\n\x08viewport\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x18@R\x08viewport\x12\x39\n\x13screenshot_filename\x18\x08 \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\x12screenshotFilename\x12?\n\x17screenshot_content_type\x18\t \x01(\tB\x07\xbaH\x04r\x02\x18@R\x15screenshotContentType\x12*\n\nscreenshot\x18\n \x01(\x0c\x42\n\xbaH\x07z\x05\x18\x80\x80\xc0\x02R\nscreenshot\x12/\n\x13include_diagnostics\x18\x0b \x01(\x08R\x12includeDiagnostics\x12\x33\n\x0fidempotency_key\x18\x0c \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x0eidempotencyKey\x12?\n\x07\x63ontext\x18\r \x01(\x0b\x32%.console.v1.ProductIssueReportContextR\x07\x63ontext\"\xb2\x03\n%SubmitNativeProductIssueReportRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\xa0\x1f\x80\xf4\x18\x04R\x0b\x64\x65scription\x12\x39\n\x11\x65xpected_behavior\x18\x03 \x01(\tB\x0c\xbaH\x05r\x03\x18\xa0\x1f\x80\xf4\x18\x04R\x10\x65xpectedBehavior\x12-\n\x0b\x61pp_version\x18\x05 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x01\x80\xf4\x18\x01R\nappVersion\x12/\n\x13include_diagnostics\x18\x0b \x01(\x08R\x12includeDiagnostics\x12\x37\n\x0fidempotency_key\x18\x0c \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\x80\x04\x80\xf4\x18\x02R\x0eidempotencyKey\x12?\n\x07\x63ontext\x18\r \x01(\x0b\x32%.console.v1.ProductIssueReportContextR\x07\x63ontextJ\x04\x08\x04\x10\x05J\x04\x08\x06\x10\x0b\"\xca\x01\n\x19ProductIssueReportContext\x12;\n\x12reproduction_steps\x18\x01 \x01(\tB\x0c\xbaH\x05r\x03\x18\xa0\x1f\x80\xf4\x18\x04R\x11reproductionSteps\x12\"\n\x05model\x18\x02 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x02\x80\xf4\x18\x01R\x05model\x12L\n\x08\x65vidence\x18\x03 \x03(\x0b\x32&.console.v1.ProductIssueReportEvidenceB\x08\xbaH\x05\x92\x01\x02\x10\nR\x08\x65vidence\"\x8a\x01\n\x1aProductIssueReportEvidence\x12\x1f\n\x04kind\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x18 \x80\xf4\x18\x01R\x04kind\x12)\n\tsource_id\x18\x02 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x02\x80\xf4\x18\x02R\x08sourceId\x12 \n\x04text\x18\x03 \x01(\tB\x0c\xbaH\x05r\x03\x18\xa0\x1f\x80\xf4\x18\x04R\x04text\"b\n SubmitProductIssueReportResponse\x12>\n\x06report\x18\x01 \x01(\x0b\x32\x1e.console.v1.ProductIssueReportB\x06\xbaH\x03\xc8\x01\x01R\x06report\"\xec\x08\n\x17StaffProductIssueReport\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\x0e\n\x02id\x18\x03 \x01(\tR\x02id\x12\x1c\n\treference\x18\x04 \x01(\tR\treference\x12 \n\x0b\x64\x65scription\x18\x05 \x01(\tR\x0b\x64\x65scription\x12+\n\x11\x65xpected_behavior\x18\x06 \x01(\tR\x10\x65xpectedBehavior\x12\x19\n\x08page_url\x18\x07 \x01(\tR\x07pageUrl\x12\x1f\n\x0b\x61pp_version\x18\x08 \x01(\tR\nappVersion\x12\x18\n\x07\x62rowser\x18\t \x01(\tR\x07\x62rowser\x12\x1a\n\x08viewport\x18\n \x01(\tR\x08viewport\x12\x31\n\x14\x64iagnostics_included\x18\x0b \x01(\x08R\x13\x64iagnosticsIncluded\x12/\n\x13screenshot_attached\x18\x0c \x01(\x08R\x12screenshotAttached\x12/\n\x13screenshot_filename\x18\r \x01(\tR\x12screenshotFilename\x12\x36\n\x17screenshot_content_type\x18\x0e \x01(\tR\x15screenshotContentType\x12\x35\n\x17\x63reated_by_principal_id\x18\x0f \x01(\tR\x14\x63reatedByPrincipalId\x12\x39\n\ncreated_at\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12)\n\x10\x65ngagement_state\x18\x11 \x01(\tR\x0f\x65ngagementState\x12\x39\n\nengaged_at\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tengagedAt\x12\x35\n\x17\x65ngaged_by_principal_id\x18\x13 \x01(\tR\x14\x65ngagedByPrincipalId\x12\'\n\x0f\x65ngagement_note\x18\x14 \x01(\tR\x0e\x65ngagementNote\x12?\n\x07\x63ontext\x18\x15 \x01(\x0b\x32%.console.v1.ProductIssueReportContextR\x07\x63ontext\x12)\n\rsymptom_group\x18\x16 \x01(\tB\x04\x80\xf4\x18\x02R\x0csymptomGroup\x12\x35\n\x14\x62\x61seline_test_run_id\x18\x17 \x01(\tB\x04\x80\xf4\x18\x02R\x11\x62\x61selineTestRunId\x12=\n\x18verification_test_run_id\x18\x18 \x01(\tB\x04\x80\xf4\x18\x02R\x15verificationTestRunId\x12/\n\x10regression_state\x18\x19 \x01(\tB\x04\x80\xf4\x18\x01R\x0fregressionState\"z\n#ListStaffProductIssueReportsRequest\x12\x32\n\x10\x65ngagement_state\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x18 R\x0f\x65ngagementState\x12\x1f\n\x05limit\x18\x02 \x01(\rB\t\xbaH\x06*\x04\x18\x64(\x01R\x05limit\"e\n$ListStaffProductIssueReportsResponse\x12=\n\x07reports\x18\x01 \x03(\x0b\x32#.console.v1.StaffProductIssueReportR\x07reports\"\xd0\x02\n$EngageStaffProductIssueReportRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12$\n\treport_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08reportId\x12\x1e\n\x04note\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xe8\x07R\x04note\x12=\n\x14\x62\x61seline_test_run_id\x18\x05 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x02\x80\xf4\x18\x02R\x11\x62\x61selineTestRunId\x12\x45\n\x18verification_test_run_id\x18\x06 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x02\x80\xf4\x18\x02R\x15verificationTestRunId\"l\n%EngageStaffProductIssueReportResponse\x12\x43\n\x06report\x18\x01 \x01(\x0b\x32#.console.v1.StaffProductIssueReportB\x06\xbaH\x03\xc8\x01\x01R\x06report\"\xad\x01\n\x1bGetOperatingFeedbackRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nchannel_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tchannelId\x12*\n\nmessage_id\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tmessageId\"Y\n\x1cGetOperatingFeedbackResponse\x12\x39\n\x08\x66\x65\x65\x64\x62\x61\x63k\x18\x01 \x01(\x0b\x32\x1d.console.v1.OperatingFeedbackR\x08\x66\x65\x65\x64\x62\x61\x63k\"\xa1\x02\n*ResolveOperatingFeedbackRemediationRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12,\n\x0b\x66\x65\x65\x64\x62\x61\x63k_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\nfeedbackId\x12W\n\x07outcome\x18\x03 \x01(\x0e\x32/.console.v1.OperatingFeedbackRemediationOutcomeB\x0c\xbaH\t\x82\x01\x06\x10\x01\x18\x02\x18\x03R\x07outcome\x12\x34\n\x0fidempotency_key\x18\x04 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0eidempotencyKey\"\xbc\x01\n+ResolveOperatingFeedbackRemediationResponse\x12\x41\n\x08\x66\x65\x65\x64\x62\x61\x63k\x18\x01 \x01(\x0b\x32\x1d.console.v1.OperatingFeedbackB\x06\xbaH\x03\xc8\x01\x01R\x08\x66\x65\x65\x64\x62\x61\x63k\x12J\n\x0c\x66\x61\x63t_receipt\x18\x02 \x01(\x0b\x32\'.console.v1.CustomerIntelligenceReceiptR\x0b\x66\x61\x63tReceipt\"\xd0\x02\n\x1f\x43ustomerIntelligenceEvidenceRef\x12(\n\nowner_type\x18\x01 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\townerType\x12%\n\x08owner_id\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x07ownerId\x12+\n\x0b\x65vidence_id\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\nevidenceId\x12X\n\x08polarity\x18\x04 \x01(\x0e\x32\x30.console.v1.CustomerIntelligenceEvidencePolarityB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x08polarity\x12-\n\rdigest_sha256\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x98\x01@R\x0c\x64igestSha256\x12&\n\nsafe_label\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x18xR\tsafeLabel\"\xdd\x0b\n CustomerIntelligenceFactRevision\x12\x17\n\x07\x66\x61\x63t_id\x18\x01 \x01(\tR\x06\x66\x61\x63tId\x12#\n\x08revision\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x08revision\x12\'\n\x0forganization_id\x18\x03 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x04 \x01(\tR\x0bworkspaceId\x12Z\n\x0csubject_kind\x18\x05 \x01(\x0e\x32+.console.v1.CustomerIntelligenceSubjectKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x0bsubjectKind\x12\x32\n\x10subject_ref_hash\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x98\x01@R\x0esubjectRefHash\x12,\n\x0cproduct_area\x18\x07 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\x0bproductArea\x12#\n\x07journey\x18\x08 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\x07journey\x12\'\n\tpredicate\x18\t \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18xR\tpredicate\x12-\n\x0csafe_summary\x18\n \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x98\x02R\x0bsafeSummary\x12S\n\tauthority\x18\x0b \x01(\x0e\x32).console.v1.CustomerIntelligenceAuthorityB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\tauthority\x12\x63\n\x0flifecycle_state\x18\x0c \x01(\x0e\x32..console.v1.CustomerIntelligenceLifecycleStateB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x0elifecycleState\x12\x38\n\x11\x63onfidence_micros\x18\r \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x18\xc0\x84=(\x00R\x10\x63onfidenceMicros\x12Z\n\revidence_refs\x18\x0e \x03(\x0b\x32+.console.v1.CustomerIntelligenceEvidenceRefB\x08\xbaH\x05\x92\x01\x02\x10@R\x0c\x65videnceRefs\x12]\n\rproducer_kind\x18\x0f \x01(\x0e\x32,.console.v1.CustomerIntelligenceProducerKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x0cproducerKind\x12+\n\x0cproducer_ref\x18\x10 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x0bproducerRef\x12#\n\x08model_id\x18\x11 \x01(\tB\x08\xbaH\x05r\x03\x18\xa0\x01R\x07modelId\x12\x1f\n\x06run_id\x18\x12 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x05runId\x12.\n\x0epolicy_version\x18\x13 \x01(\tB\x07\xbaH\x04r\x02\x18PR\rpolicyVersion\x12\'\n\nlineage_id\x18\x14 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\tlineageId\x12)\n\x0bsensitivity\x18\x15 \x01(\tB\x07\xbaH\x04r\x02\x18(R\x0bsensitivity\x12\x30\n\x0fretention_class\x18\x16 \x01(\tB\x07\xbaH\x04r\x02\x18(R\x0eretentionClass\x12\x39\n\nvalid_from\x18\x17 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tvalidFrom\x12\x39\n\nexpires_at\x18\x18 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x46\n\x1a\x63ontent_fingerprint_sha256\x18\x19 \x01(\tB\x08\xbaH\x05r\x03\x98\x01@R\x18\x63ontentFingerprintSha256\x12#\n\x08\x61\x63tor_id\x18\x1a \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x07\x61\x63torId\x12\x39\n\ncreated_at\x18\x1b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\"\xc0\x01\n\x18\x43ustomerIntelligenceFact\x12N\n\x07\x63urrent\x18\x01 \x01(\x0b\x32,.console.v1.CustomerIntelligenceFactRevisionB\x06\xbaH\x03\xc8\x01\x01R\x07\x63urrent\x12T\n\trevisions\x18\x02 \x03(\x0b\x32,.console.v1.CustomerIntelligenceFactRevisionB\x08\xbaH\x05\x92\x01\x02\x10\x64R\trevisions\"\xf9\x02\n\x1b\x43ustomerIntelligenceReceipt\x12\x17\n\x07\x66\x61\x63t_id\x18\x01 \x01(\tR\x06\x66\x61\x63tId\x12#\n\x08revision\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x08revision\x12Q\n\tauthority\x18\x03 \x01(\x0e\x32).console.v1.CustomerIntelligenceAuthorityB\x08\xbaH\x05\x82\x01\x02\x10\x01R\tauthority\x12\x61\n\x0flifecycle_state\x18\x04 \x01(\x0e\x32..console.v1.CustomerIntelligenceLifecycleStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0elifecycleState\x12\x30\n\x14\x61udit_delivery_state\x18\x05 \x01(\tR\x12\x61uditDeliveryState\x12\x34\n\x16\x63onfirmation_intent_id\x18\x06 \x01(\tR\x14\x63onfirmationIntentId\"\xa6\x04\n$ListCustomerIntelligenceFactsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12U\n\x0b\x61uthorities\x18\x02 \x03(\x0e\x32).console.v1.CustomerIntelligenceAuthorityB\x08\xbaH\x05\x92\x01\x02\x10\x06R\x0b\x61uthorities\x12\x63\n\x10lifecycle_states\x18\x03 \x03(\x0e\x32..console.v1.CustomerIntelligenceLifecycleStateB\x08\xbaH\x05\x92\x01\x02\x10\x06R\x0flifecycleStates\x12X\n\x0csubject_kind\x18\x04 \x01(\x0e\x32+.console.v1.CustomerIntelligenceSubjectKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0bsubjectKind\x12*\n\x0cproduct_area\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x18PR\x0bproductArea\x12!\n\x07journey\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x18PR\x07journey\x12?\n\rcreated_after\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0c\x63reatedAfter\x12 \n\x05limit\x18\x08 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xc8\x01(\x00R\x05limit\"c\n%ListCustomerIntelligenceFactsResponse\x12:\n\x05\x66\x61\x63ts\x18\x01 \x03(\x0b\x32$.console.v1.CustomerIntelligenceFactR\x05\x66\x61\x63ts\"\xa7\x01\n\"GetCustomerIntelligenceFactRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12 \n\x07\x66\x61\x63t_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66\x61\x63tId\x12\'\n\x0finclude_history\x18\x03 \x01(\x08R\x0eincludeHistory\"g\n#GetCustomerIntelligenceFactResponse\x12@\n\x04\x66\x61\x63t\x18\x01 \x01(\x0b\x32$.console.v1.CustomerIntelligenceFactB\x06\xbaH\x03\xc8\x01\x01R\x04\x66\x61\x63t\"\xe1\x03\n%ReviewCustomerIntelligenceFactRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12 \n\x07\x66\x61\x63t_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66\x61\x63tId\x12\x34\n\x11\x65xpected_revision\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x10\x65xpectedRevision\x12V\n\x08\x64\x65\x63ision\x18\x04 \x01(\x0e\x32..console.v1.CustomerIntelligenceReviewDecisionB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x08\x64\x65\x63ision\x12Z\n\revidence_refs\x18\x05 \x03(\x0b\x32+.console.v1.CustomerIntelligenceEvidenceRefB\x08\xbaH\x05\x92\x01\x02\x10@R\x0c\x65videnceRefs\x12\x42\n\x18replacement_safe_summary\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x18\x98\x02R\x16replacementSafeSummary\x12\x30\n\x0fidempotency_key\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"\xb5\x01\n&ReviewCustomerIntelligenceFactResponse\x12@\n\x04\x66\x61\x63t\x18\x01 \x01(\x0b\x32$.console.v1.CustomerIntelligenceFactB\x06\xbaH\x03\xc8\x01\x01R\x04\x66\x61\x63t\x12I\n\x07receipt\x18\x02 \x01(\x0b\x32\'.console.v1.CustomerIntelligenceReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\x81\t\n&ProposeCustomerIntelligenceFactRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x32\n\x10\x65xternal_fact_id\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x0e\x65xternalFactId\x12Z\n\x0csubject_kind\x18\x03 \x01(\x0e\x32+.console.v1.CustomerIntelligenceSubjectKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x0bsubjectKind\x12+\n\x0bsubject_ref\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\nsubjectRef\x12,\n\x0cproduct_area\x18\x05 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\x0bproductArea\x12#\n\x07journey\x18\x06 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\x07journey\x12\'\n\tpredicate\x18\x07 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18xR\tpredicate\x12-\n\x0csafe_summary\x18\x08 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x98\x02R\x0bsafeSummary\x12U\n\tauthority\x18\t \x01(\x0e\x32).console.v1.CustomerIntelligenceAuthorityB\x0c\xbaH\t\x82\x01\x06\x10\x01\x18\x01\x18\x04R\tauthority\x12\x38\n\x11\x63onfidence_micros\x18\n \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x18\xc0\x84=(\x00R\x10\x63onfidenceMicros\x12\\\n\revidence_refs\x18\x0b \x03(\x0b\x32+.console.v1.CustomerIntelligenceEvidenceRefB\n\xbaH\x07\x92\x01\x04\x08\x01\x10@R\x0c\x65videnceRefs\x12_\n\rproducer_kind\x18\x0c \x01(\x0e\x32,.console.v1.CustomerIntelligenceProducerKindB\x0c\xbaH\t\x82\x01\x06\x10\x01\x18\x01\x18\x02R\x0cproducerKind\x12*\n\x0cproducer_ref\x18\r \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bproducerRef\x12#\n\x08model_id\x18\x0e \x01(\tB\x08\xbaH\x05r\x03\x18\xa0\x01R\x07modelId\x12\x1f\n\x06run_id\x18\x0f \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x05runId\x12.\n\x0epolicy_version\x18\x10 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpolicyVersion\x12&\n\nlineage_id\x18\x11 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12\x30\n\x0fretention_class\x18\x12 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eretentionClass\x12\x39\n\nexpires_at\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x30\n\x0fidempotency_key\x18\x14 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"\xb6\x01\n\'ProposeCustomerIntelligenceFactResponse\x12@\n\x04\x66\x61\x63t\x18\x01 \x01(\x0b\x32$.console.v1.CustomerIntelligenceFactB\x06\xbaH\x03\xc8\x01\x01R\x04\x66\x61\x63t\x12I\n\x07receipt\x18\x02 \x01(\x0b\x32\'.console.v1.CustomerIntelligenceReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xa9\x02\n(RespondToCustomerFactConfirmationRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12=\n\x16\x63onfirmation_intent_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x14\x63onfirmationIntentId\x12T\n\x08response\x18\x03 \x01(\x0e\x32,.console.v1.CustomerFactConfirmationResponseB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x08response\x12\x30\n\x0fidempotency_key\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"v\n)RespondToCustomerFactConfirmationResponse\x12I\n\x07receipt\x18\x01 \x01(\x0b\x32\'.console.v1.CustomerIntelligenceReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xc1\x03\n,AggregateCustomerIntelligencePatternsRequest\x12*\n\x0cproduct_area\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x18PR\x0bproductArea\x12!\n\x07journey\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x18PR\x07journey\x12U\n\x0b\x61uthorities\x18\x03 \x03(\x0e\x32).console.v1.CustomerIntelligenceAuthorityB\x08\xbaH\x05\x92\x01\x02\x10\x06R\x0b\x61uthorities\x12\x63\n\x10lifecycle_states\x18\x04 \x03(\x0e\x32..console.v1.CustomerIntelligenceLifecycleStateB\x08\xbaH\x05\x92\x01\x02\x10\x06R\x0flifecycleStates\x12?\n\rcreated_after\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0c\x63reatedAfter\x12\x45\n\x1aminimum_organization_count\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x05R\x18minimumOrganizationCount\"\xa1\x02\n\x1b\x43ustomerIntelligencePattern\x12!\n\x0cproduct_area\x18\x01 \x01(\tR\x0bproductArea\x12\x18\n\x07journey\x18\x02 \x01(\tR\x07journey\x12\x1c\n\tpredicate\x18\x03 \x01(\tR\tpredicate\x12\x36\n\x12organization_count\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x05R\x11organizationCount\x12&\n\nfact_count\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x05R\tfactCount\x12G\n\x19\x61verage_confidence_micros\x18\x06 \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x18\xc0\x84=(\x00R\x17\x61verageConfidenceMicros\"t\n-AggregateCustomerIntelligencePatternsResponse\x12\x43\n\x08patterns\x18\x01 \x03(\x0b\x32\'.console.v1.CustomerIntelligencePatternR\x08patterns\"\xd4\x01\n\x1fListOperatingCorrectionsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12W\n\x0creview_state\x18\x02 \x01(\x0e\x32*.console.v1.OperatingCorrectionReviewStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0breviewState\x12 \n\x05limit\x18\x03 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xc8\x01(\x00R\x05limit\"n\n ListOperatingCorrectionsResponse\x12J\n\x0b\x63orrections\x18\x01 \x03(\x0b\x32(.console.v1.OperatingCorrectionCandidateR\x0b\x63orrections\"\xe6\x02\n ReviewOperatingCorrectionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\rcorrection_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0c\x63orrectionId\x12T\n\x08\x64\x65\x63ision\x18\x03 \x01(\x0e\x32*.console.v1.OperatingCorrectionReviewStateB\x0c\xbaH\t\x82\x01\x06\x10\x01\x18\x02\x18\x03R\x08\x64\x65\x63ision\x12L\n\revidence_refs\x18\x04 \x03(\x0b\x32\x1b.console.v1.RelatedResourceB\n\xbaH\x07\x92\x01\x04\x08\x01\x10@R\x0c\x65videnceRefs\x12\x34\n\x0fidempotency_key\x18\x05 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0eidempotencyKey\"u\n!ReviewOperatingCorrectionResponse\x12P\n\ncorrection\x18\x01 \x01(\x0b\x32(.console.v1.OperatingCorrectionCandidateB\x06\xbaH\x03\xc8\x01\x01R\ncorrection\"\xdc\x01\n\x1cListWorkspaceMemoriesRequest\x12\x42\n\rreview_status\x18\x04 \x01(\x0e\x32\x1d.memory.v1.MemoryReviewStatusR\x0creviewStatus\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x1f\n\x05limit\x18\x02 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x05limit\x12\x1f\n\x06offset\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"\x92\x01\n\x1dListWorkspaceMemoriesResponse\x12\x37\n\x08memories\x18\x01 \x03(\x0b\x32\x1b.console.v1.WorkspaceMemoryR\x08memories\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"\x8b\x03\n\x0fWorkspaceMemory\x12\x42\n\rreview_status\x18\t \x01(\x0e\x32\x1d.memory.v1.MemoryReviewStatusR\x0creviewStatus\x12\x1b\n\x02id\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x02id\x12&\n\x05scope\x18\x02 \x01(\x0e\x32\x10.memory.v1.ScopeR\x05scope\x12\x1e\n\x07\x63ontent\x18\x03 \x01(\tB\x04\x80\xf4\x18\x04R\x07\x63ontent\x12\x12\n\x04type\x18\x04 \x01(\tR\x04type\x12 \n\x04tags\x18\x05 \x03(\tB\x0c\xbaH\x05\x92\x01\x02\x10@\x80\xf4\x18\x04R\x04tags\x12#\n\x08revision\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x01R\x08revision\x12\x39\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"\xba\x02\n\x1d\x43orrectWorkspaceMemoryRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12(\n\tmemory_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x08memoryId\x12\x34\n\x11\x65xpected_revision\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x01R\x10\x65xpectedRevision\x12)\n\x07\x63ontent\x18\x04 \x01(\tB\x0f\xbaH\x08r\x06\x10\x01\x18\xa0\x9c\x01\x80\xf4\x18\x04R\x07\x63ontent\x12 \n\x04tags\x18\x05 \x03(\tB\x0c\xbaH\x05\x92\x01\x02\x10@\x80\xf4\x18\x04R\x04tags\x12\x34\n\x0fidempotency_key\x18\x06 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0eidempotencyKey\"]\n\x1e\x43orrectWorkspaceMemoryResponse\x12;\n\x06memory\x18\x01 \x01(\x0b\x32\x1b.console.v1.WorkspaceMemoryB\x06\xbaH\x03\xc8\x01\x01R\x06memory\"\xbc\x02\n\x1cReviewWorkspaceMemoryRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12(\n\tmemory_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x08memoryId\x12\x34\n\x11\x65xpected_revision\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x01R\x10\x65xpectedRevision\x12\x34\n\x0fidempotency_key\x18\x04 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0eidempotencyKey\x12N\n\rreview_status\x18\x05 \x01(\x0e\x32\x1d.memory.v1.MemoryReviewStatusB\n\xbaH\x07\x82\x01\x04\x18\x01\x18\x03R\x0creviewStatus\"\\\n\x1dReviewWorkspaceMemoryResponse\x12;\n\x06memory\x18\x01 \x01(\x0b\x32\x1b.console.v1.WorkspaceMemoryB\x06\xbaH\x03\xc8\x01\x01R\x06memory\"\xec\x01\n\x1c\x46orgetWorkspaceMemoryRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12(\n\tmemory_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x08memoryId\x12\x34\n\x11\x65xpected_revision\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x01R\x10\x65xpectedRevision\x12\x34\n\x0fidempotency_key\x18\x04 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0eidempotencyKey\"B\n\x1d\x46orgetWorkspaceMemoryResponse\x12!\n\tmemory_id\x18\x01 \x01(\tB\x04\x80\xf4\x18\x02R\x08memoryId\"\xbb\x02\n\x1cOperatingHistorySearchFilter\x12!\n\x0crecord_kinds\x18\x01 \x03(\tR\x0brecordKinds\x12\x14\n\x05roles\x18\x02 \x03(\tR\x05roles\x12\x1d\n\ntool_names\x18\x03 \x03(\tR\ttoolNames\x12\x1a\n\x08statuses\x18\x04 \x03(\tR\x08statuses\x12\x41\n\x0eoccurred_after\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\roccurredAfter\x12\x43\n\x0foccurred_before\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0eoccurredBefore\x12\x1f\n\x0b\x63hannel_ids\x18\x07 \x03(\tR\nchannelIds\"\xa1\x02\n\x1dSearchOperatingHistoryRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x31\n\x0csearch_query\x18\x02 \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\xe8\x07\x80\xf4\x18\x04R\x0bsearchQuery\x12@\n\x06\x66ilter\x18\x03 \x01(\x0b\x32(.console.v1.OperatingHistorySearchFilterR\x06\x66ilter\x12&\n\tpage_size\x18\x04 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x19(\x00R\x08pageSize\x12+\n\npage_token\x18\x05 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80 \x80\xf4\x18\x02R\tpageToken\"\xb9\x03\n\x1cOperatingHistorySearchResult\x12\x1d\n\nchannel_id\x18\x01 \x01(\tR\tchannelId\x12#\n\rchannel_title\x18\x02 \x01(\tR\x0c\x63hannelTitle\x12\x1f\n\x0bsource_kind\x18\x03 \x01(\tR\nsourceKind\x12\x1b\n\tsource_id\x18\x04 \x01(\tR\x08sourceId\x12\x12\n\x04role\x18\x05 \x01(\tR\x04role\x12\x1b\n\ttool_name\x18\x06 \x01(\tR\x08toolName\x12\x16\n\x06status\x18\x07 \x01(\tR\x06status\x12;\n\x0boccurred_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12\x18\n\x07\x65xcerpt\x18\t \x01(\tR\x07\x65xcerpt\x12\x14\n\x05score\x18\n \x01(\x01R\x05score\x12%\n\x0e\x63ontext_cursor\x18\x0b \x01(\tR\rcontextCursor\x12:\n\nsource_ref\x18\x0c \x01(\x0b\x32\x1b.console.v1.RelatedResourceR\tsourceRef\"\x8c\x01\n\x1eSearchOperatingHistoryResponse\x12\x42\n\x07results\x18\x01 \x03(\x0b\x32(.console.v1.OperatingHistorySearchResultR\x07results\x12&\n\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xec\x01\n!GetOperatingHistoryContextRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x35\n\x0e\x63ontext_cursor\x18\x02 \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\x80 \x80\xf4\x18\x02R\rcontextCursor\x12,\n\x0c\x62\x65\x66ore_count\x18\x03 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x14(\x00R\x0b\x62\x65\x66oreCount\x12*\n\x0b\x61\x66ter_count\x18\x04 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x14(\x00R\nafterCount\"\xd2\x02\n\x1dOperatingHistoryContextRecord\x12\x1d\n\nchannel_id\x18\x01 \x01(\tR\tchannelId\x12\x1f\n\x0bsource_kind\x18\x02 \x01(\tR\nsourceKind\x12\x1b\n\tsource_id\x18\x03 \x01(\tR\x08sourceId\x12\x12\n\x04role\x18\x04 \x01(\tR\x04role\x12\x1b\n\ttool_name\x18\x05 \x01(\tR\x08toolName\x12\x16\n\x06status\x18\x06 \x01(\tR\x06status\x12\x12\n\x04\x62ody\x18\x07 \x01(\tR\x04\x62ody\x12;\n\x0boccurred_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12:\n\nsource_ref\x18\t \x01(\x0b\x32\x1b.console.v1.RelatedResourceR\tsourceRef\"\xad\x01\n\"GetOperatingHistoryContextResponse\x12\x1d\n\nchannel_id\x18\x01 \x01(\tR\tchannelId\x12#\n\rchannel_title\x18\x02 \x01(\tR\x0c\x63hannelTitle\x12\x43\n\x07records\x18\x03 \x03(\x0b\x32).console.v1.OperatingHistoryContextRecordR\x07records\"\xe0\x03\n\x1bOperatingCapabilityContract\x12%\n\x0eschema_version\x18\x01 \x01(\tR\rschemaVersion\x12%\n\x0e\x63\x61pability_ids\x18\x02 \x03(\tR\rcapabilityIds\x12\x1b\n\tskill_ids\x18\x03 \x03(\tR\x08skillIds\x12+\n\x11memory_operations\x18\x04 \x03(\tR\x10memoryOperations\x12\'\n\x0f\x65xecution_owner\x18\x05 \x01(\tR\x0e\x65xecutionOwner\x12!\n\x0cmemory_owner\x18\x06 \x01(\tR\x0bmemoryOwner\x12)\n\x10\x63hannel_renderer\x18\x07 \x01(\tR\x0f\x63hannelRenderer\x12#\n\rproposal_only\x18\x08 \x01(\x08R\x0cproposalOnly\x12\'\n\x0f\x65vidence_backed\x18\t \x01(\x08R\x0e\x65videnceBacked\x12\x64\n\x16identity_authorization\x18\n \x01(\x0b\x32-.console.v1.IdentityToolAuthorizationEvidenceR\x15identityAuthorization\"\xd8\x06\n!IdentityToolAuthorizationEvidence\x12.\n\x0eschema_version\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rschemaVersion\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12.\n\x0e\x61pplication_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rapplicationId\x12&\n\nsubject_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsubjectId\x12\x35\n\x12\x61\x63tor_chain_digest\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x10\x61\x63torChainDigest\x12(\n\x0b\x64\x65\x63ision_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\ndecisionId\x12\x41\n\x18\x61uthorization_lineage_id\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x16\x61uthorizationLineageId\x12$\n\tpolicy_id\x18\t \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08policyId\x12.\n\x0epolicy_version\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpolicyVersion\x12,\n\rpolicy_digest\x18\x0b \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cpolicyDigest\x12\x44\n\x19\x61uthorization_fingerprint\x18\x0c \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x18\x61uthorizationFingerprint\x12\x34\n\x11\x63\x61pability_digest\x18\r \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x10\x63\x61pabilityDigest\x12,\n\raction_digest\x18\x0e \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x61\x63tionDigest\x12#\n\x08\x61udience\x18\x0f \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08\x61udience\x12)\n\x0cissued_at_ms\x18\x10 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\nissuedAtMs\x12+\n\rexpires_at_ms\x18\x11 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0b\x65xpiresAtMs\"\xea\x01\n\x19OperatingExecutionProfile\x12I\n\x04kind\x18\x01 \x01(\x0e\x32).console.v1.OperatingExecutionProfileKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04kind\x12&\n\nprofile_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tprofileId\x12)\n\x0b\x66ront_model\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\nfrontModel\x12/\n\x0e\x66ront_provider\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\rfrontProvider\"\x9f\x01\n\x1cOperatingHostedFrontDecision\x12L\n\x04kind\x18\x01 \x01(\x0e\x32,.console.v1.OperatingHostedFrontDecisionKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04kind\x12\x31\n\x0e\x61ssistant_body\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80 R\rassistantBody\"\xcc\x05\n\x1cOperatingInitialActionResult\x12*\n\x0c\x65xecution_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x65xecutionId\x12 \n\x07\x63\x61ll_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x63\x61llId\x12$\n\ttool_name\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08toolName\x12\x1b\n\tread_only\x18\x04 \x01(\x08R\x08readOnly\x12\x46\n\x05state\x18\x05 \x01(\x0e\x32$.toolexecution.v1.ToolExecutionStateB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x05state\x12&\n\nreceipt_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\treceiptId\x12+\n\x0csafe_summary\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\x80 R\x0bsafeSummary\x12\x38\n\x0bsafe_output\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructR\nsafeOutput\x12J\n\revidence_refs\x18\t \x03(\x0b\x32\x1b.console.v1.RelatedResourceB\x08\xbaH\x05\x92\x01\x02\x10 R\x0c\x65videnceRefs\x12$\n\tthread_id\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08threadId\x12 \n\x07turn_id\x18\x0b \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06turnId\x12\x36\n\x12\x61uthority_revision\x18\x0c \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x11\x61uthorityRevision\x12\x43\n\x0b\x61\x63\x63\x65pted_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\nacceptedAt\x12\x33\n\x0f\x61ssistant_delta\x18\x0e \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80 R\x0e\x61ssistantDelta\"\xf1\x01\n*OperatingManagedInferenceProviderCandidate\x12#\n\x08provider\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08provider\x12)\n\x0b\x65nvironment\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x65nvironment\x12\x31\n\x0f\x63redential_name\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\x0e\x63redentialName\x12!\n\x07team_id\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\x06teamId\x12\x1d\n\x05model\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05model\"\xdd\x01\n*OperatingManagedInferenceOutputTokenBudget\x12\x19\n\x05value\x18\x01 \x01(\x04H\x00R\x05value\x88\x01\x01\x12U\n\x06origin\x18\x02 \x01(\x0e\x32\x31.console.v1.OperatingManagedInferenceBudgetOriginB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x06origin\x12\x33\n\x10origin_reference\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\x0foriginReferenceB\x08\n\x06_value\"\xa6\x03\n\x1eOperatingManagedInferenceScope\x12,\n\x08\x65ndpoint\x18\x01 \x01(\tB\x10\xbaH\rr\x0b\n\tresponsesR\x08\x65ndpoint\x12\x1d\n\x05model\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05model\x12s\n\x13provider_candidates\x18\x03 \x03(\x0b\x32\x36.console.v1.OperatingManagedInferenceProviderCandidateB\n\xbaH\x07\x92\x01\x04\x08\x01\x10\x10R\x12providerCandidates\x12R\n\x07routing\x18\x04 \x01(\x0e\x32,.console.v1.OperatingManagedInferenceRoutingB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x07routing\x12n\n\x13output_token_budget\x18\x05 \x01(\x0b\x32\x36.console.v1.OperatingManagedInferenceOutputTokenBudgetB\x06\xbaH\x03\xc8\x01\x01R\x11outputTokenBudget\"\xca\x0e\n\x14OperatingRunDispatch\x12-\n\x0eruntime_run_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cruntimeRunId\x12 \n\x07work_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06workId\x12*\n\x0coperation_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0boperationId\x12\x30\n\x0forganization_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12&\n\nchannel_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tchannelId\x12\x39\n\x14submitted_message_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x12submittedMessageId\x12\x30\n\x0fidempotency_key\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12 \n\x0btraceparent\x18\t \x01(\tR\x0btraceparent\x12\x43\n\x0b\x65nqueued_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\nenqueuedAt\x12[\n\x11\x61ttachment_mounts\x18\x0b \x03(\x0b\x32..toolexecution.v1.ToolExecutionAttachmentMountR\x10\x61ttachmentMounts\x12X\n\x13\x63\x61pability_contract\x18\x0c \x01(\x0b\x32\'.console.v1.OperatingCapabilityContractR\x12\x63\x61pabilityContract\x12?\n\x08response\x18\r \x01(\x0b\x32#.console.v1.OperatingThreadResponseR\x08response\x12R\n\x11\x65xecution_profile\x18\x0e \x01(\x0b\x32%.console.v1.OperatingExecutionProfileR\x10\x65xecutionProfile\x12O\n\x0einitial_action\x18\x0f \x01(\x0b\x32(.console.v1.OperatingInitialActionResultR\rinitialAction\x12\\\n\x15hosted_front_decision\x18\x10 \x01(\x0b\x32(.console.v1.OperatingHostedFrontDecisionR\x13hostedFrontDecision\x12\x34\n\x11\x63\x61usal_receipt_id\x18\x11 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x0f\x63\x61usalReceiptId\x12<\n\x15required_initial_tool\x18\x12 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x13requiredInitialTool\x12_\n(required_initial_tool_authority_revision\x18\x13 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R$requiredInitialToolAuthorityRevision\x12;\n\x15\x61pproved_plan_version\x18\x14 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x13\x61pprovedPlanVersion\x12\x45\n\x1a\x61pproved_plan_content_hash\x18\x15 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x17\x61pprovedPlanContentHash\x12o\n\x1crequired_initial_tool_intent\x18\x16 \x01(\x0b\x32..console.v1.OperatingRequiredInitialToolIntentR\x19requiredInitialToolIntent\x12\x41\n\x1dinternal_skill_access_allowed\x18\x17 \x01(\x08R\x1ainternalSkillAccessAllowed\x12W\n\x11managed_inference\x18\x18 \x01(\x0b\x32*.console.v1.OperatingManagedInferenceScopeR\x10managedInference\x12+\n\x0cobjective_id\x18\x19 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x0bobjectiveId\x12Q\n\x11\x63oding_acceptance\x18\x1a \x01(\x0b\x32$.console.v1.CodingAcceptanceContractR\x10\x63odingAcceptance\x12V\n\x10task_environment\x18\x1b \x01(\x0b\x32+.console.v1.OperatingTaskEnvironmentBindingR\x0ftaskEnvironment\x12\"\n\x08\x61\x63tor_id\x18\x1c \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07\x61\x63torId\"\xd6\x03\n\x1fOperatingTaskEnvironmentBinding\x12\"\n\x08\x61\x63tor_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07\x61\x63torId\x12 \n\x07task_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06taskId\x12\"\n\x08home_key\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07homeKey\x12,\n\rworkspace_dir\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cworkspaceDir\x12\x32\n\x0eretention_days\x18\x05 \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x30\x00\x30\x07\x30\x1eR\rretentionDays\x12\x30\n\x0fpolicy_revision\x18\x06 \x01(\x04\x42\x07\xbaH\x04\x32\x02(\x01R\x0epolicyRevision\x12S\n\x0eproject_source\x18\x07 \x01(\x0b\x32,.toolexecution.v1.ToolExecutionProjectSourceR\rprojectSource\x12&\n\nchannel_id\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tchannelId\x12\x38\n\x0fretention_hours\x18\t \x01(\x05\x42\x0f\xbaH\x0c\x1a\n0\x00\x30\x08\x30\xa8\x01\x30\xd0\x05R\x0eretentionHours\"\x84\x06\n\"OperatingRequiredInitialToolIntent\x12#\n\x07\x63\x61ll_id\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x06\x63\x61llId\x12\x37\n\ttool_name\x18\x02 \x01(\tB\x1a\xbaH\x17r\x15\n\x13\x63omputer.write_fileR\x08toolName\x12=\n\targuments\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructB\x06\xbaH\x03\xc8\x01\x01R\targuments\x12%\n\x08\x61\x63tor_id\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x07\x61\x63torId\x12<\n\x14tool_idempotency_key\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x12toolIdempotencyKey\x12\x38\n\x12sandbox_session_id\x18\x06 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x10sandboxSessionId\x12\x34\n\x11\x63omputer_home_key\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x0f\x63omputerHomeKey\x12>\n\x16\x63omputer_workspace_dir\x18\x08 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\x14\x63omputerWorkspaceDir\x12*\n\ncapability\x18\t \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\ncapability\x12(\n\toperation\x18\n \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\toperation\x12?\n\nrisk_level\x18\x0b \x01(\x0e\x32\x14.common.v1.RiskLevelB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\triskLevel\x12X\n\x08metadata\x18\x0c \x03(\x0b\x32<.console.v1.OperatingRequiredInitialToolIntent.MetadataEntryR\x08metadata\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xfd\x01\n$ResolveOperatingReceiptActionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nreceipt_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\treceiptId\x12\x42\n\x06\x61\x63tion\x18\x03 \x01(\x0b\x32\".console.v1.OperatingReceiptActionB\x06\xbaH\x03\xc8\x01\x01R\x06\x61\x63tion\x12-\n\x0fidempotency_key\x18\x04 \x01(\tB\x04\x80\xf4\x18\x02R\x0eidempotencyKey\"\xa9\x01\n%ResolveOperatingReceiptActionResponse\x12\x36\n\x07receipt\x18\x01 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptR\x07receipt\x12H\n\x0c\x63\x61pabilities\x18\x02 \x03(\x0b\x32$.console.v1.OperatingCapabilityStateR\x0c\x63\x61pabilities\"\xe8\x01\n\x1aGetOperatingReceiptRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12*\n\nreceipt_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\treceiptId\x12#\n\nchannel_id\x18\x03 \x01(\tB\x04\x80\xf4\x18\x02R\tchannelId\x12\x41\n\x1dinclude_coding_output_content\x18\x04 \x01(\x08R\x1aincludeCodingOutputContent\"\xe8\x03\n\x19OperatingCodingAcceptance\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\x19\n\x08\x61\x63tor_id\x18\x03 \x01(\tR\x07\x61\x63torId\x12\x17\n\x07work_id\x18\x04 \x01(\tR\x06workId\x12$\n\x0eruntime_run_id\x18\x05 \x01(\tR\x0cruntimeRunId\x12@\n\x08\x63ontract\x18\x06 \x01(\x0b\x32$.console.v1.CodingAcceptanceContractR\x08\x63ontract\x12\x1a\n\x08\x61\x63\x63\x65pted\x18\x07 \x01(\x08R\x08\x61\x63\x63\x65pted\x12\'\n\x0f\x63ontract_digest\x18\x08 \x01(\tR\x0e\x63ontractDigest\x12+\n\x11submission_digest\x18\t \x01(\tR\x10submissionDigest\x12\x18\n\x07reasons\x18\n \x03(\tR\x07reasons\x12\x1a\n\x08revision\x18\x0b \x01(\tR\x08revision\x12;\n\x07outputs\x18\x0c \x03(\x0b\x32!.console.v1.OperatingCodingOutputR\x07outputs\"\xb8\x01\n\x15OperatingCodingOutput\x12\x12\n\x04path\x18\x01 \x01(\tR\x04path\x12\x1b\n\tobject_id\x18\x02 \x01(\tR\x08objectId\x12\x1d\n\nversion_id\x18\x03 \x01(\tR\tversionId\x12\x16\n\x06sha256\x18\x04 \x01(\tR\x06sha256\x12\x1d\n\nsize_bytes\x18\x05 \x01(\x04R\tsizeBytes\x12\x18\n\x07\x63ontent\x18\x06 \x01(\x0cR\x07\x63ontent\"U\n\x1bGetOperatingReceiptResponse\x12\x36\n\x07receipt\x18\x01 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptR\x07receipt\"\x90\x01\n\x1b\x43omputerMissionEvidenceGate\x12 \n\x07gate_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06gateId\x12%\n\tpredicate\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tpredicate\x12(\n\x10hard_safety_gate\x18\x03 \x01(\x08R\x0ehardSafetyGate\"\xce\x01\n&ComputerMissionRollbackArgumentBinding\x12#\n\x08\x61rgument\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08\x61rgument\x12U\n\x06source\x18\x02 \x01(\x0e\x32\x31.console.v1.ComputerMissionRollbackArgumentSourceB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x06source\x12(\n\x0bsource_path\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nsourcePath\"\x97\x08\n!ComputerMissionCompensatingAction\x12\x36\n\x12\x66orward_capability\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x11\x66orwardCapability\x12\x37\n\x13\x66orward_resource_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x11\x66orwardResourceId\x12\x41\n\x18\x66orward_arguments_digest\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x16\x66orwardArgumentsDigest\x12\x33\n\x15\x66orward_preconditions\x18\x04 \x03(\tR\x14\x66orwardPreconditions\x12\x38\n\x13rollback_capability\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x12rollbackCapability\x12N\n\x12rollback_arguments\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructB\x06\xbaH\x03\xc8\x01\x01R\x11rollbackArguments\x12O\n\x1frollback_verification_predicate\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x1drollbackVerificationPredicate\x12\x33\n\x16rollback_safe_to_retry\x18\x08 \x01(\x08R\x13rollbackSafeToRetry\x12;\n\x15max_rollback_attempts\x18\t \x01(\rB\x07\xbaH\x04*\x02 \x00R\x13maxRollbackAttempts\x12\x43\n\x19rollback_deadline_seconds\x18\n \x01(\x04\x42\x07\xbaH\x04\x32\x02 \x00R\x17rollbackDeadlineSeconds\x12\x45\n\x1a\x66orward_evidence_predicate\x18\x0b \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x18\x66orwardEvidencePredicate\x12\x45\n\x1a\x63leanup_evidence_predicate\x18\x0c \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x18\x63leanupEvidencePredicate\x12\x39\n\x14rollback_resource_id\x18\r \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x12rollbackResourceId\x12z\n\x1arollback_argument_bindings\x18\x0e \x03(\x0b\x32\x32.console.v1.ComputerMissionRollbackArgumentBindingB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x18rollbackArgumentBindings\x12\x32\n\x15\x65xplicit_retry_denial\x18\x0f \x01(\x08R\x13\x65xplicitRetryDenial\"\xb9\x01\n\x1e\x43omputerMissionCanaryThreshold\x12Y\n\tdimension\x18\x01 \x01(\x0e\x32/.console.v1.ComputerMissionCanaryScoreDimensionB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\tdimension\x12<\n\rminimum_score\x18\x02 \x01(\x01\x42\x17\xbaH\x14\x12\x12\x19\x00\x00\x00\x00\x00\x00Y@)\x00\x00\x00\x00\x00\x00\x00\x00R\x0cminimumScore\"\x8d\x0b\n\x1f\x43omputerMissionCanaryDefinition\x12,\n\rdefinition_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x64\x65\x66initionId\x12!\n\x07version\x18\x02 \x01(\rB\x07\xbaH\x04*\x02 \x00R\x07version\x12^\n\rscenario_kind\x18\x03 \x01(\x0e\x32-.console.v1.ComputerMissionCanaryScenarioKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x0cscenarioKind\x12%\n\tobjective\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tobjective\x12;\n\x14\x65nabled_environments\x18\x05 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x13\x65nabledEnvironments\x12:\n\x14\x66ixture_resource_ids\x18\x06 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x12\x66ixtureResourceIds\x12:\n\x14required_canary_tags\x18\x07 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x12requiredCanaryTags\x12=\n\x15required_capabilities\x18\x08 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x14requiredCapabilities\x12.\n\x0erunner_profile\x18\t \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rrunnerProfile\x12[\n\x0e\x61uthority_mode\x18\n \x01(\x0e\x32(.console.v1.ComputerMissionAuthorityModeB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\rauthorityMode\x12L\n\x1emaximum_grant_duration_seconds\x18\x0b \x01(\x04\x42\x07\xbaH\x04\x32\x02 \x00R\x1bmaximumGrantDurationSeconds\x12\x41\n\x06\x62udget\x18\x0c \x01(\x0b\x32!.console.v1.ComputerMissionBudgetB\x06\xbaH\x03\xc8\x01\x01R\x06\x62udget\x12i\n\x17required_evidence_gates\x18\r \x03(\x0b\x32\'.console.v1.ComputerMissionEvidenceGateB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x15requiredEvidenceGates\x12\x42\n\x18\x65xpected_forward_effects\x18\x0e \x03(\tB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x16\x65xpectedForwardEffects\x12{\n\x1drequired_compensating_effects\x18\x0f \x03(\x0b\x32-.console.v1.ComputerMissionCompensatingActionB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x1brequiredCompensatingEffects\x12T\n\nthresholds\x18\x10 \x03(\x0b\x32*.console.v1.ComputerMissionCanaryThresholdB\x08\xbaH\x05\x92\x01\x02\x08\x01R\nthresholds\x12]\n\x11hard_safety_gates\x18\x11 \x03(\x0b\x32\'.console.v1.ComputerMissionEvidenceGateB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x0fhardSafetyGates\x12\x30\n\x0fplanner_version\x18\x12 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eplannerVersion\x12\x30\n\x0fruntime_version\x18\x13 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eruntimeVersion\x12;\n\x15tool_contract_version\x18\x14 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x13toolContractVersion\"\xa6\x06\n#ComputerMissionCanaryOperatorAction\x12$\n\taction_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08\x61\x63tionId\x12S\n\x04kind\x18\x02 \x01(\x0e\x32\x33.console.v1.ComputerMissionCanaryOperatorActionKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04kind\x12\"\n\x08\x61\x63tor_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07\x61\x63torId\x12\x1f\n\x06reason\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06reason\x12\x43\n\x0boccurred_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\noccurredAt\x12\x43\n\x0cscope_before\x18\x06 \x01(\x0b\x32 .console.v1.ComputerMissionScopeR\x0bscopeBefore\x12\x41\n\x0bscope_after\x18\x07 \x01(\x0b\x32 .console.v1.ComputerMissionScopeR\nscopeAfter\x12\x46\n\rbudget_before\x18\x08 \x01(\x0b\x32!.console.v1.ComputerMissionBudgetR\x0c\x62udgetBefore\x12\x44\n\x0c\x62udget_after\x18\t \x01(\x0b\x32!.console.v1.ComputerMissionBudgetR\x0b\x62udgetAfter\x12Q\n\x17grant_expires_at_before\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x14grantExpiresAtBefore\x12O\n\x16grant_expires_at_after\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x13grantExpiresAtAfter\x12@\n\revidence_refs\x18\x0c \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\"\x8d\x02\n\x15\x43omputerMissionBudget\x12$\n\tmax_steps\x18\x01 \x01(\rB\x07\xbaH\x04*\x02 \x00R\x08maxSteps\x12\x42\n\x19wall_clock_budget_seconds\x18\x02 \x01(\x04\x42\x07\xbaH\x04\x32\x02 \x00R\x16wallClockBudgetSeconds\x12*\n\x0ctoken_budget\x18\x03 \x01(\x04\x42\x07\xbaH\x04\x32\x02 \x00R\x0btokenBudget\x12-\n\x0emax_tool_calls\x18\x04 \x01(\rB\x07\xbaH\x04*\x02 \x00R\x0cmaxToolCalls\x12/\n\x0fmax_cost_micros\x18\x05 \x01(\x04\x42\x07\xbaH\x04\x32\x02 \x00R\rmaxCostMicros\"\xd7\x02\n\x19\x43omputerMissionCapability\x12/\n\x04name\x18\x01 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^apex\\.[a-z0-9_.-]+$R\x04name\x12\x42\n\x0cinput_schema\x18\x02 \x01(\x0b\x32\x17.google.protobuf.StructB\x06\xbaH\x03\xc8\x01\x01R\x0binputSchema\x12@\n\robserver_name\x18\x03 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^apex\\.[a-z0-9_.-]+$R\x0cobserverName\x12G\n\x14schema_digest_sha256\x18\x04 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x12schemaDigestSha256\x12:\n\rdispatch_name\x18\x05 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[a-z0-9_.-]+$R\x0c\x64ispatchName\"\xfb\x05\n ComputerMissionApexRunnerBinding\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x33\n\x11runner_session_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0frunnerSessionId\x12&\n\nsandbox_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsandboxId\x12;\n\x15initial_checkpoint_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x13initialCheckpointId\x12\x37\n\x13initial_snapshot_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x11initialSnapshotId\x12\x45\n\x0fworkload_digest\x18\x07 \x01(\tB\x1c\xbaH\x19r\x17\x32\x15^sha256:[0-9a-f]{64}$R\x0eworkloadDigest\x12#\n\x08provider\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08provider\x12\x31\n\rprovider_mode\x18\t \x01(\tB\x0c\xbaH\tr\x07\n\x05\x61pplyR\x0cproviderMode\x12.\n\x0ereservation_id\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rreservationId\x12\x41\n\x18instruction_artifact_ref\x18\x0b \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x16instructionArtifactRef\x12Q\n\x19instruction_digest_sha256\x18\x0c \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x17instructionDigestSha256\x12\x41\n\x16instruction_byte_count\x18\r \x01(\x04\x42\x0b\xbaH\x08\x32\x06\x18\x80\x80@(\x01R\x14instructionByteCount\"\x87\x03\n\x14\x43omputerMissionScope\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12+\n\x0cresource_ids\x18\x03 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x0bresourceIds\x12,\n\x0c\x63\x61pabilities\x18\x04 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x0c\x63\x61pabilities\x12X\n\x14\x63\x61pability_manifests\x18\x05 \x03(\x0b\x32%.console.v1.ComputerMissionCapabilityR\x13\x63\x61pabilityManifests\x12\\\n\x13\x61pex_runner_binding\x18\x06 \x01(\x0b\x32,.console.v1.ComputerMissionApexRunnerBindingR\x11\x61pexRunnerBinding\"\xb5\x02\n\x1d\x43omputerMissionAuthorityGrant\x12H\n\x04mode\x18\x01 \x01(\x0e\x32(.console.v1.ComputerMissionAuthorityModeB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04mode\x12&\n\ngranted_by\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tgrantedBy\x12\x41\n\ngranted_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tgrantedAt\x12_\n\x14\x63onfirmation_version\x18\x04 \x01(\tB,\xbaH)r\'\n%dex.mission_authority_confirmation.v1R\x13\x63onfirmationVersion\"\xc2\x02\n\x17\x43omputerMissionDecision\x12.\n\x0epolicy_version\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpolicyVersion\x12J\n\x05route\x18\x02 \x01(\x0e\x32(.console.v1.ComputerMissionDecisionRouteB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x05route\x12\x32\n\x15selected_candidate_id\x18\x03 \x01(\tR\x13selectedCandidateId\x12*\n\x0c\x64\x65\x63ision_ref\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x64\x65\x63isionRef\x12K\n\x16\x64\x65\x63ision_digest_sha256\x18\x05 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x14\x64\x65\x63isionDigestSha256\"\xb1\x05\n\x17\x43omputerMissionContract\x12\x1b\n\x04goal\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04goal\x12>\n\x05scope\x18\x02 \x01(\x0b\x32 .console.v1.ComputerMissionScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12O\n\tauthority\x18\x03 \x01(\x0b\x32).console.v1.ComputerMissionAuthorityGrantB\x06\xbaH\x03\xc8\x01\x01R\tauthority\x12\x41\n\x06\x62udget\x18\x04 \x01(\x0b\x32!.console.v1.ComputerMissionBudgetB\x06\xbaH\x03\xc8\x01\x01R\x06\x62udget\x12+\n\x11required_evidence\x18\x05 \x03(\tR\x10requiredEvidence\x12.\n\x0erunner_profile\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rrunnerProfile\x12/\n\x14resume_of_mission_id\x18\x07 \x01(\tR\x11resumeOfMissionId\x12G\n\x08\x64\x65\x63ision\x18\x08 \x01(\x0b\x32#.console.v1.ComputerMissionDecisionB\x06\xbaH\x03\xc8\x01\x01R\x08\x64\x65\x63ision:\xcd\x01\xbaH\xc9\x01\x1a\xc6\x01\n-console.v1.computer_mission.required_evidence\x12Lrequired_evidence must be non-empty unless an APEX runner binding is present\x1aGsize(this.required_evidence) > 0 || has(this.scope.apex_runner_binding)\"\xbe\x08\n\x0f\x43omputerMission\x12&\n\nmission_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\x12 \n\x07work_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06workId\x12G\n\x08\x63ontract\x18\x03 \x01(\x0b\x32#.console.v1.ComputerMissionContractB\x06\xbaH\x03\xc8\x01\x01R\x08\x63ontract\x12@\n\x05state\x18\x04 \x01(\x0e\x32 .console.v1.ComputerMissionStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\'\n\x0f\x63ompleted_steps\x18\x05 \x01(\rR\x0e\x63ompletedSteps\x12\x30\n\x14\x63ompleted_tool_calls\x18\x06 \x01(\rR\x12\x63ompletedToolCalls\x12\'\n\x0f\x63onsumed_tokens\x18\x07 \x01(\x04R\x0e\x63onsumedTokens\x12\x30\n\x14\x63onsumed_cost_micros\x18\x08 \x01(\x04R\x12\x63onsumedCostMicros\x12@\n\revidence_refs\x18\t \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\x12\x18\n\x07\x62locker\x18\n \x01(\tR\x07\x62locker\x12\x1f\n\x0bnext_action\x18\x0b \x01(\tR\nnextAction\x12\x41\n\ncreated_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tcreatedAt\x12\x41\n\nupdated_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tupdatedAt\x12/\n\x0ftenant_scope_id\x18\x0e \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rtenantScopeId\x12\x35\n\x12\x61uthority_grant_id\x18\x0f \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x10\x61uthorityGrantId\x12\x32\n\x10\x63ontract_version\x18\x10 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0f\x63ontractVersion\x12K\n\x16\x63ontract_digest_sha256\x18\x11 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x14\x63ontractDigestSha256\x12$\n\x0eruntime_run_id\x18\x12 \x01(\tR\x0cruntimeRunId\x12+\n\x11\x61\x63tive_generation\x18\x13 \x01(\x03R\x10\x61\x63tiveGeneration\x12\x61\n\x13long_horizon_budget\x18\x14 \x01(\x0b\x32\x31.console.v1.ComputerMissionLongHorizonBudgetStateR\x11longHorizonBudget\"\xff\x03\n%ComputerMissionLongHorizonBudgetState\x12\x43\n\x0b\x64\x65\x61\x64line_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\ndeadlineAt\x12L\n\x14\x61uthority_expires_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x12\x61uthorityExpiresAt\x12\x39\n\x19max_active_runner_seconds\x18\x03 \x01(\x04R\x16maxActiveRunnerSeconds\x12\x43\n\x1e\x63onsumed_active_runner_seconds\x18\x04 \x01(\x04R\x1b\x63onsumedActiveRunnerSeconds\x12%\n\x0emax_recoveries\x18\x05 \x01(\rR\rmaxRecoveries\x12/\n\x13\x63onsumed_recoveries\x18\x06 \x01(\rR\x12\x63onsumedRecoveries\x12\x38\n\x18max_consecutive_failures\x18\x07 \x01(\rR\x16maxConsecutiveFailures\x12\x31\n\x14\x63onsecutive_failures\x18\x08 \x01(\rR\x13\x63onsecutiveFailures\"\xab\x02\n\x1cSubmitComputerMissionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\nchannel_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tchannelId\x12G\n\x08\x63ontract\x18\x04 \x01(\x0b\x32#.console.v1.ComputerMissionContractB\x06\xbaH\x03\xc8\x01\x01R\x08\x63ontract\x12\x30\n\x0fidempotency_key\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"\x9e\x01\n\x1dSubmitComputerMissionResponse\x12=\n\x07mission\x18\x01 \x01(\x0b\x32\x1b.console.v1.ComputerMissionB\x06\xbaH\x03\xc8\x01\x01R\x07mission\x12>\n\x07receipt\x18\x02 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xad\x01\n\x19GetComputerMissionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\nmission_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\"\x9b\x01\n\x1aGetComputerMissionResponse\x12=\n\x07mission\x18\x01 \x01(\x0b\x32\x1b.console.v1.ComputerMissionB\x06\xbaH\x03\xc8\x01\x01R\x07mission\x12>\n\x07receipt\x18\x02 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\x83\x02\n\x1c\x43\x61ncelComputerMissionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\nmission_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\x12\x1f\n\x06reason\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06reason\x12\x30\n\x0fidempotency_key\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"\x9e\x01\n\x1d\x43\x61ncelComputerMissionResponse\x12=\n\x07mission\x18\x01 \x01(\x0b\x32\x1b.console.v1.ComputerMissionB\x06\xbaH\x03\xc8\x01\x01R\x07mission\x12>\n\x07receipt\x18\x02 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\x85\x02\n\x1e\x43ontinueComputerMissionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\nmission_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\x12\x1f\n\x06\x61nswer\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x61nswer\x12\x30\n\x0fidempotency_key\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"\xa0\x01\n\x1f\x43ontinueComputerMissionResponse\x12=\n\x07mission\x18\x01 \x01(\x0b\x32\x1b.console.v1.ComputerMissionB\x06\xbaH\x03\xc8\x01\x01R\x07mission\x12>\n\x07receipt\x18\x02 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xa8\x03\n\x1bPauseComputerMissionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\nmission_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\x12\x38\n\x13\x65xpected_generation\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x12\x65xpectedGeneration\x12\x1f\n\x06reason\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06reason\x12\x30\n\x0fidempotency_key\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12\x35\n\tcondition\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructR\tcondition\x12\x33\n\x07wake_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x06wakeAt\"\xbf\x01\n\x1cPauseComputerMissionResponse\x12=\n\x07mission\x18\x01 \x01(\x0b\x32\x1b.console.v1.ComputerMissionB\x06\xbaH\x03\xc8\x01\x01R\x07mission\x12>\n\x07receipt\x18\x02 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\x12 \n\x07wake_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06wakeId\"\xa9\x03\n\x1cResumeComputerMissionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\nmission_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\x12\x38\n\x13\x65xpected_generation\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x12\x65xpectedGeneration\x12\x1f\n\x06reason\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06reason\x12\x30\n\x0fidempotency_key\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12\x35\n\tcondition\x18\x07 \x01(\x0b\x32\x17.google.protobuf.StructR\tcondition\x12\x33\n\x07wake_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x06wakeAt\"\xc0\x01\n\x1dResumeComputerMissionResponse\x12=\n\x07mission\x18\x01 \x01(\x0b\x32\x1b.console.v1.ComputerMissionB\x06\xbaH\x03\xc8\x01\x01R\x07mission\x12>\n\x07receipt\x18\x02 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\x12 \n\x07wake_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06wakeId\"\xa7\x03\n\x1aWakeComputerMissionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\nmission_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\x12\x38\n\x13\x65xpected_generation\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x12\x65xpectedGeneration\x12\x1f\n\x06reason\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06reason\x12\x35\n\tcondition\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructR\tcondition\x12\x30\n\x0fidempotency_key\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12\x33\n\x07wake_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x06wakeAt\"\xbe\x01\n\x1bWakeComputerMissionResponse\x12=\n\x07mission\x18\x01 \x01(\x0b\x32\x1b.console.v1.ComputerMissionB\x06\xbaH\x03\xc8\x01\x01R\x07mission\x12>\n\x07receipt\x18\x02 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\x12 \n\x07wake_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06wakeId\"\xac\x03\n\x1bGuideComputerMissionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\nmission_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\x12\x38\n\x13\x65xpected_generation\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x12\x65xpectedGeneration\x12#\n\x08guidance\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08guidance\x12\x35\n\tcondition\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructR\tcondition\x12\x30\n\x0fidempotency_key\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12\x33\n\x07wake_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x06wakeAt\"\xbf\x01\n\x1cGuideComputerMissionResponse\x12=\n\x07mission\x18\x01 \x01(\x0b\x32\x1b.console.v1.ComputerMissionB\x06\xbaH\x03\xc8\x01\x01R\x07mission\x12>\n\x07receipt\x18\x02 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\x12 \n\x07wake_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06wakeId\"\xab\x04\n\x18\x43omputerMissionCanaryRun\x12+\n\rcanary_run_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x63\x61naryRunId\x12\x39\n\x14\x63\x61nary_definition_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x12\x63\x61naryDefinitionId\x12&\n\nmission_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\x12K\n\x05state\x18\x04 \x01(\x0e\x32).console.v1.ComputerMissionCanaryRunStateB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x05state\x12>\n\x05scope\x18\x05 \x01(\x0b\x32 .console.v1.ComputerMissionScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12\x41\n\x06\x62udget\x18\x06 \x01(\x0b\x32!.console.v1.ComputerMissionBudgetB\x06\xbaH\x03\xc8\x01\x01R\x06\x62udget\x12L\n\x10grant_expires_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\x0egrantExpiresAt\x12\x61\n\x0erecommendation\x18\x08 \x01(\x0e\x32/.console.v1.ComputerMissionCanaryRecommendationB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0erecommendation\"\xe0\x04\n\x1b\x43omputerMissionCanaryEffect\x12$\n\teffect_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08\x65\x66\x66\x65\x63tId\x12H\n\x05state\x18\x02 \x01(\x0e\x32&.console.v1.ComputerMissionEffectStateB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x05state\x12\'\n\ncapability\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\ncapability\x12(\n\x0bresource_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nresourceId\x12@\n\revidence_refs\x18\x05 \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\x12\x30\n\x14\x66orward_execution_id\x18\x06 \x01(\tR\x12\x66orwardExecutionId\x12\x36\n\x17\x66orward_idempotency_key\x18\x07 \x01(\tR\x15\x66orwardIdempotencyKey\x12\x32\n\x15rollback_execution_id\x18\x08 \x01(\tR\x13rollbackExecutionId\x12\x38\n\x18rollback_idempotency_key\x18\t \x01(\tR\x16rollbackIdempotencyKey\x12\'\n\x0frecovery_action\x18\n \x01(\tR\x0erecoveryAction\x12;\n\x0brecorded_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nrecordedAt\"\xc8\x01\n$ComputerMissionCanaryDimensionResult\x12Y\n\tdimension\x18\x01 \x01(\x0e\x32/.console.v1.ComputerMissionCanaryScoreDimensionB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\tdimension\x12-\n\x05score\x18\x02 \x01(\x01\x42\x17\xbaH\x14\x12\x12\x19\x00\x00\x00\x00\x00\x00Y@)\x00\x00\x00\x00\x00\x00\x00\x00R\x05score\x12\x16\n\x06weight\x18\x03 \x01(\rR\x06weight\"_\n#ComputerMissionCanaryHardGateResult\x12 \n\x07gate_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06gateId\x12\x16\n\x06passed\x18\x02 \x01(\x08R\x06passed\"\x91\x06\n\x1f\x43omputerMissionCanaryEvaluation\x12,\n\revaluation_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x65valuationId\x12\x34\n\x11\x65valuator_version\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x10\x65valuatorVersion\x12\x63\n\x0erecommendation\x18\x03 \x01(\x0e\x32/.console.v1.ComputerMissionCanaryRecommendationB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x0erecommendation\x12@\n\x0f\x61ggregate_score\x18\x04 \x01(\x01\x42\x17\xbaH\x14\x12\x12\x19\x00\x00\x00\x00\x00\x00Y@)\x00\x00\x00\x00\x00\x00\x00\x00R\x0e\x61ggregateScore\x12@\n\revidence_refs\x18\x05 \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\x12P\n\ndimensions\x18\x06 \x03(\x0b\x32\x30.console.v1.ComputerMissionCanaryDimensionResultR\ndimensions\x12N\n\nhard_gates\x18\x07 \x03(\x0b\x32/.console.v1.ComputerMissionCanaryHardGateResultR\thardGates\x12%\n\x0epolicy_version\x18\x08 \x01(\tR\rpolicyVersion\x12\'\n\x0fplanner_version\x18\t \x01(\tR\x0eplannerVersion\x12\'\n\x0fruntime_version\x18\n \x01(\tR\x0eruntimeVersion\x12\x32\n\x15tool_contract_version\x18\x0b \x01(\tR\x13toolContractVersion\x12#\n\rdefinition_id\x18\x0c \x01(\tR\x0c\x64\x65\x66initionId\x12-\n\x12\x64\x65\x66inition_version\x18\r \x01(\rR\x11\x64\x65\x66initionVersion\"\x97\x01\n+ListComputerMissionCanaryDefinitionsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\"}\n,ListComputerMissionCanaryDefinitionsResponse\x12M\n\x0b\x64\x65\x66initions\x18\x01 \x03(\x0b\x32+.console.v1.ComputerMissionCanaryDefinitionR\x0b\x64\x65\x66initions\"\xd0\x02\n$StartComputerMissionCanaryRunRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\nchannel_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tchannelId\x12\x39\n\x14\x63\x61nary_definition_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x12\x63\x61naryDefinitionId\x12)\n\x0b\x65nvironment\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x65nvironment\x12\x30\n\x0fidempotency_key\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"\xe6\x01\n%StartComputerMissionCanaryRunResponse\x12>\n\x03run\x18\x01 \x01(\x0b\x32$.console.v1.ComputerMissionCanaryRunB\x06\xbaH\x03\xc8\x01\x01R\x03run\x12=\n\x07mission\x18\x02 \x01(\x0b\x32\x1b.console.v1.ComputerMissionB\x06\xbaH\x03\xc8\x01\x01R\x07mission\x12>\n\x07receipt\x18\x03 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xbb\x01\n\"GetComputerMissionCanaryRunRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12+\n\rcanary_run_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x63\x61naryRunId\"e\n#GetComputerMissionCanaryRunResponse\x12>\n\x03run\x18\x01 \x01(\x0b\x32$.console.v1.ComputerMissionCanaryRunB\x06\xbaH\x03\xc8\x01\x01R\x03run\"\x90\x01\n$ListComputerMissionCanaryRunsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\"a\n%ListComputerMissionCanaryRunsResponse\x12\x38\n\x04runs\x18\x01 \x03(\x0b\x32$.console.v1.ComputerMissionCanaryRunR\x04runs\"\xc0\x01\n\'GetComputerMissionCanaryEvidenceRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12+\n\rcanary_run_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x63\x61naryRunId\"\xe3\x02\n(GetComputerMissionCanaryEvidenceResponse\x12\x41\n\x07\x65\x66\x66\x65\x63ts\x18\x01 \x03(\x0b\x32\'.console.v1.ComputerMissionCanaryEffectR\x07\x65\x66\x66\x65\x63ts\x12K\n\nevaluation\x18\x02 \x01(\x0b\x32+.console.v1.ComputerMissionCanaryEvaluationR\nevaluation\x12Z\n\x10operator_actions\x18\x03 \x03(\x0b\x32/.console.v1.ComputerMissionCanaryOperatorActionR\x0foperatorActions\x12K\n\ndefinition\x18\x04 \x01(\x0b\x32+.console.v1.ComputerMissionCanaryDefinitionR\ndefinition\"\xd3\x04\n&OperateComputerMissionCanaryRunRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12+\n\rcanary_run_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x63\x61naryRunId\x12S\n\x04kind\x18\x04 \x01(\x0e\x32\x33.console.v1.ComputerMissionCanaryOperatorActionKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04kind\x12G\n\x0enarrowed_scope\x18\x05 \x01(\x0b\x32 .console.v1.ComputerMissionScopeR\rnarrowedScope\x12J\n\x0f\x65xtended_budget\x18\x06 \x01(\x0b\x32!.console.v1.ComputerMissionBudgetR\x0e\x65xtendedBudget\x12U\n\x19\x65xtended_grant_expires_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x16\x65xtendedGrantExpiresAt\x12\x1f\n\x06reason\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06reason\x12\x30\n\x0fidempotency_key\x18\t \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"\xba\x01\n\'OperateComputerMissionCanaryRunResponse\x12>\n\x03run\x18\x01 \x01(\x0b\x32$.console.v1.ComputerMissionCanaryRunB\x06\xbaH\x03\xc8\x01\x01R\x03run\x12O\n\x06\x61\x63tion\x18\x02 \x01(\x0b\x32/.console.v1.ComputerMissionCanaryOperatorActionB\x06\xbaH\x03\xc8\x01\x01R\x06\x61\x63tion\"\xc0\x03\n\x17MissionScheduleTemplate\x12\x1b\n\x04goal\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04goal\x12.\n\x0erunner_profile\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rrunnerProfile\x12&\n\nchannel_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tchannelId\x12[\n\x0e\x61uthority_mode\x18\x04 \x01(\x0e\x32(.console.v1.ComputerMissionAuthorityModeB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\rauthorityMode\x12,\n\x0c\x63\x61pabilities\x18\x05 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x0c\x63\x61pabilities\x12+\n\x0cresource_ids\x18\x06 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x0bresourceIds\x12\x35\n\x11required_evidence\x18\x07 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x10requiredEvidence\x12\x41\n\x06\x62udget\x18\x08 \x01(\x0b\x32!.console.v1.ComputerMissionBudgetB\x06\xbaH\x03\xc8\x01\x01R\x06\x62udget\"\x9a\x05\n\x0fMissionSchedule\x12(\n\x0bschedule_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nscheduleId\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\x04name\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x30\n\x0f\x63ron_expression\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0e\x63ronExpression\x12\x18\n\x07\x65nabled\x18\x06 \x01(\x08R\x07\x65nabled\x12G\n\x08template\x18\x07 \x01(\x0b\x32#.console.v1.MissionScheduleTemplateB\x06\xbaH\x03\xc8\x01\x01R\x08template\x12\x42\n\x0bnext_run_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tnextRunAt\x12:\n\x0blast_run_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tlastRunAt\x12\x1f\n\x0blast_status\x18\n \x01(\tR\nlastStatus\x12&\n\x0flast_mission_id\x18\x0b \x01(\tR\rlastMissionId\x12\x41\n\ncreated_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tcreatedAt\x12\x41\n\nupdated_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tupdatedAt\"\xd2\x02\n\x1c\x43reateMissionScheduleRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12\x1b\n\x04name\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x30\n\x0f\x63ron_expression\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0e\x63ronExpression\x12G\n\x08template\x18\x05 \x01(\x0b\x32#.console.v1.MissionScheduleTemplateB\x06\xbaH\x03\xc8\x01\x01R\x08template\x12\x30\n\x0fidempotency_key\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"`\n\x1d\x43reateMissionScheduleResponse\x12?\n\x08schedule\x18\x01 \x01(\x0b\x32\x1b.console.v1.MissionScheduleB\x06\xbaH\x03\xc8\x01\x01R\x08schedule\"\xca\x02\n\x1cUpdateMissionScheduleRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12(\n\x0bschedule_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nscheduleId\x12\x1b\n\x04name\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x30\n\x0f\x63ron_expression\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0e\x63ronExpression\x12G\n\x08template\x18\x06 \x01(\x0b\x32#.console.v1.MissionScheduleTemplateB\x06\xbaH\x03\xc8\x01\x01R\x08template\"`\n\x1dUpdateMissionScheduleResponse\x12?\n\x08schedule\x18\x01 \x01(\x0b\x32\x1b.console.v1.MissionScheduleB\x06\xbaH\x03\xc8\x01\x01R\x08schedule\"\xd0\x01\n SetMissionScheduleEnabledRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12(\n\x0bschedule_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nscheduleId\x12\x18\n\x07\x65nabled\x18\x04 \x01(\x08R\x07\x65nabled\"d\n!SetMissionScheduleEnabledResponse\x12?\n\x08schedule\x18\x01 \x01(\x0b\x32\x1b.console.v1.MissionScheduleB\x06\xbaH\x03\xc8\x01\x01R\x08schedule\"\x87\x01\n\x1bListMissionSchedulesRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\"\xf1\x01\n\x1cListMissionSchedulesResponse\x12\x39\n\tschedules\x18\x01 \x03(\x0b\x32\x1b.console.v1.MissionScheduleR\tschedules\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\x12\\\n\x16\x61vailable_capabilities\x18\x04 \x03(\x0b\x32%.console.v1.MissionScheduleCapabilityR\x15\x61vailableCapabilities\"\x91\x07\n\x10\x43onnectorTrigger\x12&\n\ntrigger_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\ttriggerId\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\x04name\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x46\n\x06source\x18\x05 \x01(\x0e\x32\".console.v1.ConnectorTriggerSourceB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x06source\x12\'\n\x0f\x63ron_expression\x18\x06 \x01(\tR\x0e\x63ronExpression\x12#\n\rconnection_id\x18\x07 \x01(\tR\x0c\x63onnectionId\x12\x1f\n\x0bprovider_id\x18\x08 \x01(\tR\nproviderId\x12\x1d\n\nevent_kind\x18\t \x01(\tR\teventKind\x12\x36\n\x17payload_field_allowlist\x18\n \x03(\tR\x15payloadFieldAllowlist\x12G\n\x08template\x18\x0b \x01(\x0b\x32#.console.v1.MissionScheduleTemplateB\x06\xbaH\x03\xc8\x01\x01R\x08template\x12\x18\n\x07\x65nabled\x18\x0c \x01(\x08R\x07\x65nabled\x12:\n\x0bnext_run_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tnextRunAt\x12:\n\x0blast_run_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tlastRunAt\x12\x1f\n\x0blast_status\x18\x0f \x01(\tR\nlastStatus\x12&\n\x0flast_mission_id\x18\x10 \x01(\tR\rlastMissionId\x12\"\n\rlast_event_id\x18\x11 \x01(\tR\x0blastEventId\x12\x41\n\ncreated_at\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tcreatedAt\x12\x41\n\nupdated_at\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tupdatedAt\"\xaf\x04\n\x1d\x43reateConnectorTriggerRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12\x1b\n\x04name\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x46\n\x06source\x18\x04 \x01(\x0e\x32\".console.v1.ConnectorTriggerSourceB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x06source\x12\'\n\x0f\x63ron_expression\x18\x05 \x01(\tR\x0e\x63ronExpression\x12#\n\rconnection_id\x18\x06 \x01(\tR\x0c\x63onnectionId\x12\x1f\n\x0bprovider_id\x18\x07 \x01(\tR\nproviderId\x12\x1d\n\nevent_kind\x18\x08 \x01(\tR\teventKind\x12\x36\n\x17payload_field_allowlist\x18\t \x03(\tR\x15payloadFieldAllowlist\x12G\n\x08template\x18\n \x01(\x0b\x32#.console.v1.MissionScheduleTemplateB\x06\xbaH\x03\xc8\x01\x01R\x08template\x12\x30\n\x0fidempotency_key\x18\x0b \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"`\n\x1e\x43reateConnectorTriggerResponse\x12>\n\x07trigger\x18\x01 \x01(\x0b\x32\x1c.console.v1.ConnectorTriggerB\x06\xbaH\x03\xc8\x01\x01R\x07trigger\"\xa5\x04\n\x1dUpdateConnectorTriggerRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\ntrigger_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\ttriggerId\x12\x1b\n\x04name\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x46\n\x06source\x18\x05 \x01(\x0e\x32\".console.v1.ConnectorTriggerSourceB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x06source\x12\'\n\x0f\x63ron_expression\x18\x06 \x01(\tR\x0e\x63ronExpression\x12#\n\rconnection_id\x18\x07 \x01(\tR\x0c\x63onnectionId\x12\x1f\n\x0bprovider_id\x18\x08 \x01(\tR\nproviderId\x12\x1d\n\nevent_kind\x18\t \x01(\tR\teventKind\x12\x36\n\x17payload_field_allowlist\x18\n \x03(\tR\x15payloadFieldAllowlist\x12G\n\x08template\x18\x0b \x01(\x0b\x32#.console.v1.MissionScheduleTemplateB\x06\xbaH\x03\xc8\x01\x01R\x08template\"`\n\x1eUpdateConnectorTriggerResponse\x12>\n\x07trigger\x18\x01 \x01(\x0b\x32\x1c.console.v1.ConnectorTriggerB\x06\xbaH\x03\xc8\x01\x01R\x07trigger\"\xc8\x01\n\x1cListConnectorTriggersRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12\x1d\n\x05limit\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05limit\x12\x1f\n\x06offset\x18\x04 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"\x93\x01\n\x1dListConnectorTriggersResponse\x12\x38\n\x08triggers\x18\x01 \x03(\x0b\x32\x1c.console.v1.ConnectorTriggerR\x08triggers\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"\xb1\x01\n\x1d\x44\x65leteConnectorTriggerRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\ntrigger_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\ttriggerId\" \n\x1e\x44\x65leteConnectorTriggerResponse\"\xcf\x01\n!SetConnectorTriggerEnabledRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12&\n\ntrigger_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\ttriggerId\x12\x18\n\x07\x65nabled\x18\x04 \x01(\x08R\x07\x65nabled\"d\n\"SetConnectorTriggerEnabledResponse\x12>\n\x07trigger\x18\x01 \x01(\x0b\x32\x1c.console.v1.ConnectorTriggerB\x06\xbaH\x03\xc8\x01\x01R\x07trigger\"\xcf\x05\n%ComputerMissionApexSessionReservation\x12.\n\x0ereservation_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rreservationId\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\'\n\x0bpack_run_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tpackRunId\x12&\n\nattempt_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tattemptId\x12\x1b\n\trun_index\x18\x06 \x01(\rR\x08runIndex\x12*\n\x0c\x64\x65\x63ision_ref\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x64\x65\x63isionRef\x12K\n\x16\x64\x65\x63ision_digest_sha256\x18\x08 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x14\x64\x65\x63isionDigestSha256\x12.\n\x0erunner_profile\x18\t \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rrunnerProfile\x12\x45\n\x0fworkload_digest\x18\n \x01(\tB\x1c\xbaH\x19r\x17\x32\x15^sha256:[0-9a-f]{64}$R\x0eworkloadDigest\x12*\n\x11runner_session_id\x18\x0b \x01(\tR\x0frunnerSessionId\x12K\n\x05state\x18\x0c \x01(\tB5\xbaH2r02.^(reserved|session_bound|adoption_authorized)$R\x05state\x12\x41\n\nexpires_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\texpiresAt\"\xa6\x04\n(ReserveComputerMissionApexSessionRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\'\n\x0bpack_run_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tpackRunId\x12&\n\nattempt_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tattemptId\x12\x1b\n\trun_index\x18\x05 \x01(\rR\x08runIndex\x12*\n\x0c\x64\x65\x63ision_ref\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x64\x65\x63isionRef\x12K\n\x16\x64\x65\x63ision_digest_sha256\x18\x07 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x14\x64\x65\x63isionDigestSha256\x12<\n\x0erunner_profile\x18\x08 \x01(\tB\x15\xbaH\x12r\x10\n\x0e\x61pex-agents-v1R\rrunnerProfile\x12\x45\n\x0fworkload_digest\x18\t \x01(\tB\x1c\xbaH\x19r\x17\x32\x15^sha256:[0-9a-f]{64}$R\x0eworkloadDigest\x12\x30\n\x0fidempotency_key\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"\x88\x01\n)ReserveComputerMissionApexSessionResponse\x12[\n\x0breservation\x18\x01 \x01(\x0b\x32\x31.console.v1.ComputerMissionApexSessionReservationB\x06\xbaH\x03\xc8\x01\x01R\x0breservation\"\xb9\x03\n0BindComputerMissionApexSessionReservationRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12.\n\x0ereservation_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rreservationId\x12\x33\n\x11runner_session_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0frunnerSessionId\x12<\n\x0erunner_profile\x18\x05 \x01(\tB\x15\xbaH\x12r\x10\n\x0e\x61pex-agents-v1R\rrunnerProfile\x12\x45\n\x0fworkload_digest\x18\x06 \x01(\tB\x1c\xbaH\x19r\x17\x32\x15^sha256:[0-9a-f]{64}$R\x0eworkloadDigest\x12=\n\x16\x63reate_idempotency_key\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x14\x63reateIdempotencyKey\"\x90\x01\n1BindComputerMissionApexSessionReservationResponse\x12[\n\x0breservation\x18\x01 \x01(\x0b\x32\x31.console.v1.ComputerMissionApexSessionReservationB\x06\xbaH\x03\xc8\x01\x01R\x0breservation\"\xe7\x03\n&ComputerMissionApexInstructionMetadata\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12.\n\x0ereservation_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rreservationId\x12&\n\nattempt_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tattemptId\x12\x41\n\x18instruction_artifact_ref\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x16instructionArtifactRef\x12Q\n\x19instruction_digest_sha256\x18\x06 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x17instructionDigestSha256\x12\x41\n\x16instruction_byte_count\x18\x07 \x01(\x04\x42\x0b\xbaH\x08\x32\x06\x18\x80\x80@(\x01R\x14instructionByteCount\x12.\n\x05state\x18\x08 \x01(\tB\x18\xbaH\x15r\x13\n\x11instruction_boundR\x05state\"\xf4\x03\n1BindComputerMissionApexInstructionMetadataRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12.\n\x0ereservation_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rreservationId\x12&\n\nattempt_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tattemptId\x12\x41\n\x18instruction_artifact_ref\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x16instructionArtifactRef\x12Q\n\x19instruction_digest_sha256\x18\x06 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x17instructionDigestSha256\x12\x41\n\x16instruction_byte_count\x18\x07 \x01(\x04\x42\x0b\xbaH\x08\x32\x06\x18\x80\x80@(\x01R\x14instructionByteCount\x12\x30\n\x0fidempotency_key\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\"\x8c\x01\n2BindComputerMissionApexInstructionMetadataResponse\x12V\n\x08metadata\x18\x01 \x01(\x0b\x32\x32.console.v1.ComputerMissionApexInstructionMetadataB\x06\xbaH\x03\xc8\x01\x01R\x08metadata\"\xce\x02\n2AuthorizeComputerMissionApexSessionAdoptionRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12.\n\x0ereservation_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rreservationId\x12\x33\n\x11runner_session_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0frunnerSessionId\x12&\n\nmission_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\x12-\n\x0eruntime_run_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cruntimeRunId\"\xea\x04\n3AuthorizeComputerMissionApexSessionAdoptionResponse\x12W\n\rowner_binding\x18\x01 \x01(\x0b\x32*.remoterunner.v1.RunnerSessionOwnerBindingB\x06\xbaH\x03\xc8\x01\x01R\x0cownerBinding\x12\x32\n\x10\x61uthorization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0f\x61uthorizationId\x12U\n\x1b\x61uthorization_digest_sha256\x18\x03 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x19\x61uthorizationDigestSha256\x12/\n\x0ftenant_scope_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rtenantScopeId\x12\x45\n\x0fworkload_digest\x18\x05 \x01(\tB\x1c\xbaH\x19r\x17\x32\x15^sha256:[0-9a-f]{64}$R\x0eworkloadDigest\x12\x41\n\x18instruction_artifact_ref\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x16instructionArtifactRef\x12Q\n\x19instruction_digest_sha256\x18\x07 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x17instructionDigestSha256\x12\x41\n\x16instruction_byte_count\x18\x08 \x01(\x04\x42\x0b\xbaH\x08\x32\x06\x18\x80\x80@(\x01R\x14instructionByteCount\"L\n\x12GetOverviewRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"\x9a\x04\n\x13GetOverviewResponse\x12=\n\x0cgenerated_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bgeneratedAt\x12\x33\n\x07metrics\x18\x02 \x03(\x0b\x32\x19.console.v1.ConsoleMetricR\x07metrics\x12\x32\n\ntop_assets\x18\x03 \x03(\x0b\x32\x13.console.v1.AiAssetR\ttopAssets\x12:\n\x0ctop_findings\x18\x04 \x03(\x0b\x32\x17.console.v1.RiskFindingR\x0btopFindings\x12\x42\n\x0frecent_activity\x18\x05 \x03(\x0b\x32\x19.console.v1.ActivityEventR\x0erecentActivity\x12H\n\x11integration_tiles\x18\x06 \x03(\x0b\x32\x1b.console.v1.IntegrationTileR\x10integrationTiles\x12\x45\n\x10onboarding_tasks\x18\x07 \x03(\x0b\x32\x1a.console.v1.OnboardingTaskR\x0fonboardingTasks\x12\x1a\n\x08warnings\x18\x08 \x03(\tR\x08warnings\x12.\n\x0etotal_findings\x18\t \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\rtotalFindings\"\x8b\x01\n\x1dGetConsoleBootSnapshotRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x32\n\x15omit_operating_thread\x18\x02 \x01(\x08R\x13omitOperatingThread\"\xd8\x01\n\x18\x43onsoleSnapshotFreshness\x12=\n\x0cgenerated_at\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bgeneratedAt\x12)\n\x0cstale_age_ms\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\nstaleAgeMs\x12+\n\x11\x64\x65graded_services\x18\x03 \x03(\tR\x10\x64\x65gradedServices\x12%\n\x0estale_sections\x18\x04 \x03(\tR\rstaleSections\"\x83\x04\n\x1eGetConsoleBootSnapshotResponse\x12\x44\n\x08settings\x18\x01 \x01(\x0b\x32(.console.v1.GetWorkspaceSettingsResponseR\x08settings\x12]\n\x14\x62illing_subscription\x18\x02 \x01(\x0b\x32*.console.v1.GetBillingSubscriptionResponseR\x13\x62illingSubscription\x12K\n\tworkforce\x18\x03 \x01(\x0b\x32-.console.v1.ListAgentWorkforceRecordsResponseR\tworkforce\x12X\n\x12operating_channels\x18\x04 \x01(\x0b\x32).console.v1.ListOperatingChannelsResponseR\x11operatingChannels\x12Q\n\x10operating_thread\x18\x05 \x01(\x0b\x32&.console.v1.GetOperatingThreadResponseR\x0foperatingThread\x12\x42\n\tfreshness\x18\x06 \x01(\x0b\x32$.console.v1.ConsoleSnapshotFreshnessR\tfreshness\"K\n\x11ListAssetsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"{\n\x12ListAssetsResponse\x12+\n\x06\x61ssets\x18\x01 \x03(\x0b\x32\x13.console.v1.AiAssetR\x06\x61ssets\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"a\n\x0fGetAssetRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\"\n\x08\x61sset_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07\x61ssetId\"\x80\x02\n\x10GetAssetResponse\x12)\n\x05\x61sset\x18\x01 \x01(\x0b\x32\x13.console.v1.AiAssetR\x05\x61sset\x12H\n\x11related_resources\x18\x02 \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x10relatedResources\x12\x42\n\x0frecent_activity\x18\x03 \x03(\x0b\x32\x19.console.v1.ActivityEventR\x0erecentActivity\x12\x33\n\x08\x66indings\x18\x04 \x03(\x0b\x32\x17.console.v1.RiskFindingR\x08\x66indings\"M\n\x13ListActivityRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"\xc1\x01\n\x14ListActivityResponse\x12\x31\n\x06\x65vents\x18\x01 \x03(\x0b\x32\x19.console.v1.ActivityEventR\x06\x65vents\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\x12<\n\x1a\x64\x65nials_unavailable_reason\x18\x04 \x01(\tR\x18\x64\x65nialsUnavailableReason\"\xaa\x01\n\x16ListEvalResultsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12.\n\ttrace_ids\x18\x02 \x03(\tB\x11\xbaH\x0e\x92\x01\x0b\x10\x64\"\x07r\x05\x10\x01\x18\x80\x02R\x08traceIds\x12(\n\x10latest_per_trace\x18\x03 \x01(\x08R\x0elatestPerTrace\"\x85\x01\n\x17ListEvalResultsResponse\x12\x30\n\x07results\x18\x01 \x03(\x0b\x32\x16.console.v1.EvalResultR\x07results\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"o\n\x14ListCostUsageRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x1f\n\x06run_id\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x05runId\"\xf6\x01\n\x15ListCostUsageResponse\x12)\n\x04rows\x18\x01 \x03(\x0b\x32\x15.console.v1.CostUsageR\x04rows\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\x12\x36\n\x07summary\x18\x04 \x01(\x0b\x32\x1c.console.v1.CostUsageSummaryR\x07summary\x12@\n\x0brun_summary\x18\x05 \x01(\x0b\x32\x1f.console.v1.CostUsageRunSummaryR\nrunSummary\"\xca\x03\n\x13\x43ostUsageRunSummary\x12\x15\n\x06run_id\x18\x01 \x01(\tR\x05runId\x12\x30\n\x14recorded_cost_micros\x18\x02 \x01(\x03R\x12recordedCostMicros\x12#\n\rrequest_count\x18\x03 \x01(\x03R\x0crequestCount\x12!\n\x0cinput_tokens\x18\x04 \x01(\x03R\x0binputTokens\x12#\n\routput_tokens\x18\x05 \x01(\x03R\x0coutputTokens\x12*\n\x11\x63\x61\x63he_read_tokens\x18\x06 \x01(\x03R\x0f\x63\x61\x63heReadTokens\x12,\n\x12\x63\x61\x63he_write_tokens\x18\x07 \x01(\x03R\x10\x63\x61\x63heWriteTokens\x12(\n\x10source_row_count\x18\x08 \x01(\x05R\x0esourceRowCount\x12,\n\x12unpriced_row_count\x18\t \x01(\x05R\x10unpricedRowCount\x12 \n\x06models\x18\n \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10\x64R\x06models\x12)\n\x10models_truncated\x18\x0b \x01(\x08R\x0fmodelsTruncated\"\x83\x06\n!RecordProviderCostSnapshotRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12#\n\rconnection_id\x18\x03 \x01(\tR\x0c\x63onnectionId\x12\x1a\n\x08provider\x18\x04 \x01(\tR\x08provider\x12\x1f\n\x0bresource_id\x18\x05 \x01(\tR\nresourceId\x12\x19\n\x08\x61sset_id\x18\x06 \x01(\tR\x07\x61ssetId\x12\x14\n\x05model\x18\x07 \x01(\tR\x05model\x12\x35\n\x12spend_month_micros\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x10spendMonthMicros\x12\x35\n\x12spend_today_micros\x18\t \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x10spendTodayMicros\x12\x16\n\x06period\x18\n \x01(\tR\x06period\x12;\n\x0bobserved_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nobservedAt\x12\'\n\x0fidempotency_key\x18\x0c \x01(\tR\x0eidempotencyKey\x12\x1d\n\nsource_url\x18\r \x01(\tR\tsourceUrl\x12\x1f\n\x0brecord_kind\x18\x0e \x01(\tR\nrecordKind\x12*\n\x0cinput_tokens\x18\x0f \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0binputTokens\x12,\n\routput_tokens\x18\x10 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0coutputTokens\x12,\n\rrequest_count\x18\x11 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0crequestCount\x12+\n\x11upstream_provider\x18\x12 \x01(\tR\x10upstreamProvider\x12\x1e\n\nprovenance\x18\x13 \x01(\tR\nprovenance\"E\n\"RecordProviderCostSnapshotResponse\x12\x1f\n\x0bsnapshot_id\x18\x01 \x01(\tR\nsnapshotId\"U\n\x1bListAuthorityPostureRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"\xa5\x01\n\x1cListAuthorityPostureResponse\x12/\n\x04rows\x18\x01 \x03(\x0b\x32\x1b.console.v1.AuthorityLedgerR\x04rows\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\x12\x1a\n\x08warnings\x18\x04 \x03(\tR\x08warnings\"\x94\x02\n ListAgentWorkforceRecordsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12\x18\n\x07runtime\x18\x03 \x01(\tR\x07runtime\x12\x1f\n\x0bqueue_state\x18\x04 \x01(\tR\nqueueState\x12#\n\rinclude_debug\x18\x05 \x01(\x08R\x0cincludeDebug\x12/\n\x0fsource_event_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x18xR\rsourceEventId\"\x99\x03\n!ListAgentWorkforceRecordsResponse\x12:\n\x07records\x18\x01 \x03(\x0b\x32 .console.v1.AgentWorkforceRecordR\x07records\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\x12\x1a\n\x08warnings\x18\x04 \x03(\tR\x08warnings\x12\x64\n\x16\x61pproval_queue_summary\x18\x05 \x01(\x0b\x32..console.v1.AgentWorkforceApprovalQueueSummaryR\x14\x61pprovalQueueSummary\x12T\n\x10source_readiness\x18\x06 \x03(\x0b\x32).console.v1.AgentWorkforceSourceReadinessR\x0fsourceReadiness\x12&\n\x0fsource_event_id\x18\x07 \x01(\tR\rsourceEventId\"\xbd\x04\n\x10OrbControlTarget\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12!\n\x0c\x64isplay_name\x18\x02 \x01(\tR\x0b\x64isplayName\x12K\n\tlifecycle\x18\x03 \x01(\x0e\x32#.orbcontrol.v1.OrbObservedLifecycleB\x08\xbaH\x05\x82\x01\x02\x10\x01R\tlifecycle\x12\x1e\n\ngeneration\x18\x04 \x01(\x04R\ngeneration\x12+\n\x11observed_revision\x18\x05 \x01(\x04R\x10observedRevision\x12.\n\x13last_event_sequence\x18\x06 \x01(\x04R\x11lastEventSequence\x12%\n\x0eresident_agent\x18\x07 \x01(\tR\rresidentAgent\x12 \n\x0bprovisioner\x18\x08 \x01(\tR\x0bprovisioner\x12!\n\x0cowner_status\x18\t \x01(\tR\x0bownerStatus\x12;\n\x0bobserved_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nobservedAt\x12K\n\x0f\x61llowed_actions\x18\x0b \x03(\x0b\x32\".console.v1.OperatingReceiptActionR\x0e\x61llowedActions\x12\x36\n\x07receipt\x18\x0c \x01(\x0b\x32\x1c.console.v1.OperatingReceiptR\x07receipt\"V\n\x1cListOrbControlTargetsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"\x91\x01\n\x1dListOrbControlTargetsResponse\x12\x36\n\x07targets\x18\x01 \x03(\x0b\x32\x1c.console.v1.OrbControlTargetR\x07targets\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"z\n\x1aGetOrbControlTargetRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12$\n\ttarget_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08targetId\"\x8b\x01\n\x1bGetOrbControlTargetResponse\x12\x34\n\x06target\x18\x01 \x01(\x0b\x32\x1c.console.v1.OrbControlTargetR\x06target\x12\x36\n\x07receipt\x18\x02 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptR\x07receipt\"\xa3\x02\n\x1dSubmitOrbControlActionRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12$\n\ttarget_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08targetId\x12\x41\n\x06\x61\x63tion\x18\x03 \x01(\x0e\x32\x1d.orbcontrol.v1.OrbCommandKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x06\x61\x63tion\x12\x30\n\x0fidempotency_key\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12/\n\x13\x65xpected_generation\x18\x05 \x01(\x04R\x12\x65xpectedGeneration\"\x96\x01\n\x1eSubmitOrbControlActionResponse\x12\x34\n\x06target\x18\x01 \x01(\x0b\x32\x1c.console.v1.OrbControlTargetR\x06target\x12>\n\x07receipt\x18\x02 \x01(\x0b\x32\x1c.console.v1.OperatingReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xe0\x06\n#SubmitAgentWorkforceEvidenceRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12\x1b\n\trecord_id\x18\x03 \x01(\tR\x08recordId\x12\x19\n\x08trace_id\x18\x04 \x01(\tR\x07traceId\x12\x15\n\x06run_id\x18\x05 \x01(\tR\x05runId\x12\x1d\n\nsession_id\x18\x06 \x01(\tR\tsessionId\x12\x19\n\x08\x61gent_id\x18\x07 \x01(\tR\x07\x61gentId\x12\x18\n\x07runtime\x18\x08 \x01(\tR\x07runtime\x12,\n\revidence_kind\x18\t \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x65videnceKind\x12\'\n\x0f\x65vidence_source\x18\n \x01(\tR\x0e\x65videnceSource\x12*\n\x0c\x65vidence_ref\x18\x0b \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x65videnceRef\x12\x18\n\x07subject\x18\x0c \x01(\tR\x07subject\x12\x1a\n\x08provider\x18\r \x01(\tR\x08provider\x12\x1b\n\taction_id\x18\x0e \x01(\tR\x08\x61\x63tionId\x12\x1b\n\ttool_name\x18\x0f \x01(\tR\x08toolName\x12%\n\x0etarget_summary\x18\x10 \x01(\tR\rtargetSummary\x12)\n\x10mutates_resource\x18\x11 \x01(\x08R\x0fmutatesResource\x12)\n\x08\x63ost_usd\x18\x12 \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x07\x63ostUsd\x12*\n\x0cinput_tokens\x18\x13 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0binputTokens\x12,\n\routput_tokens\x18\x14 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0coutputTokens\x12\x14\n\x05model\x18\x15 \x01(\tR\x05model\x12!\n\x0c\x63onnector_id\x18\x16 \x01(\tR\x0b\x63onnectorId\x12\x1e\n\ncapability\x18\x17 \x01(\tR\ncapability\x12\x12\n\x04note\x18\x18 \x01(\tR\x04note\"\xbc\x03\n$SubmitAgentWorkforceEvidenceResponse\x12Z\n\x12submitted_evidence\x18\x01 \x01(\x0b\x32+.console.v1.AgentWorkforceSubmittedEvidenceR\x11submittedEvidence\x12\x38\n\x06record\x18\x02 \x01(\x0b\x32 .console.v1.AgentWorkforceRecordR\x06record\x12X\n\x10records_response\x18\x03 \x01(\x0b\x32-.console.v1.ListAgentWorkforceRecordsResponseR\x0frecordsResponse\x12<\n\x1aremaining_missing_evidence\x18\x04 \x03(\tR\x18remainingMissingEvidence\x12)\n\x10\x61pproval_allowed\x18\x05 \x01(\x08R\x0f\x61pprovalAllowed\x12\x1f\n\x0bnext_action\x18\x06 \x01(\tR\nnextAction\x12\x1a\n\x08warnings\x18\x07 \x03(\tR\x08warnings\"\xc3\x03\n\x1f\x41gentWorkforceSubmittedEvidence\x12\x1f\n\x0b\x65vidence_id\x18\x01 \x01(\tR\nevidenceId\x12#\n\revidence_kind\x18\x02 \x01(\tR\x0c\x65videnceKind\x12\'\n\x0f\x65vidence_source\x18\x03 \x01(\tR\x0e\x65videnceSource\x12%\n\x0eproof_strength\x18\x04 \x01(\tR\rproofStrength\x12-\n\x12\x61pproval_authority\x18\x05 \x01(\x08R\x11\x61pprovalAuthority\x12\x32\n\x15trusted_metadata_only\x18\x06 \x01(\x08R\x13trustedMetadataOnly\x12\x16\n\x06\x64\x65tail\x18\x07 \x01(\tR\x06\x64\x65tail\x12\x1b\n\trecord_id\x18\x08 \x01(\tR\x08recordId\x12\x19\n\x08trace_id\x18\t \x01(\tR\x07traceId\x12\x17\n\x07span_id\x18\n \x01(\tR\x06spanId\x12>\n\x0c\x65vidence_ref\x18\x0b \x01(\x0b\x32\x1b.console.v1.RelatedResourceR\x0b\x65videnceRef\"M\n\x13ListFindingsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"\x85\x01\n\x14ListFindingsResponse\x12\x33\n\x08\x66indings\x18\x01 \x03(\x0b\x32\x17.console.v1.RiskFindingR\x08\x66indings\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"j\n\x18GetTraceDrilldownRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\"\n\x08trace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\"M\n\x19GetTraceDrilldownResponse\x12\x30\n\x05trace\x18\x01 \x01(\x0b\x32\x1a.console.v1.TraceDrilldownR\x05trace\"U\n\x1bListIntegrationTilesRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"p\n\x1cListIntegrationTilesResponse\x12\x31\n\x05tiles\x18\x01 \x03(\x0b\x32\x1b.console.v1.IntegrationTileR\x05tiles\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\"F\n\x18ListPinnedSourcesRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"I\n\x19ListPinnedSourcesResponse\x12,\n\x04pins\x18\x01 \x03(\x0b\x32\x18.console.v1.PinnedSourceR\x04pins\"\x81\x01\n\x0cPinnedSource\x12\x1b\n\tsource_id\x18\x01 \x01(\tR\x08sourceId\x12\x37\n\tpinned_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x08pinnedAt\x12\x1b\n\tpinned_by\x18\x03 \x01(\tR\x08pinnedBy\"j\n\x16SetPinnedSourceRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12$\n\tsource_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08sourceId\"E\n\x17SetPinnedSourceResponse\x12*\n\x03pin\x18\x01 \x01(\x0b\x32\x18.console.v1.PinnedSourceR\x03pin\"f\n\x12UnpinSourceRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12$\n\tsource_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08sourceId\"\x15\n\x13UnpinSourceResponse\"h\n\x18GetOnboardingPlanRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12 \n\x0b\x65nvironment\x18\x02 \x01(\tR\x0b\x65nvironment\"M\n\x19GetOnboardingPlanResponse\x12\x30\n\x05tasks\x18\x01 \x03(\x0b\x32\x1a.console.v1.OnboardingTaskR\x05tasks\"U\n\x1bGetWorkspaceSettingsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"\x95\n\n\x1cGetWorkspaceSettingsResponse\x12\x42\n\tworkspace\x18\x01 \x01(\x0b\x32$.console.v1.WorkspaceSettingsProfileR\tworkspace\x12S\n\x11\x63urrent_principal\x18\x02 \x01(\x0b\x32&.console.v1.WorkspaceSettingsPrincipalR\x10\x63urrentPrincipal\x12=\n\x07members\x18\x03 \x03(\x0b\x32#.console.v1.WorkspaceSettingsMemberR\x07members\x12>\n\x07\x62illing\x18\x04 \x01(\x0b\x32$.console.v1.WorkspaceSettingsBillingR\x07\x62illing\x12;\n\x06policy\x18\x05 \x01(\x0b\x32#.console.v1.WorkspaceSettingsPolicyR\x06policy\x12P\n\rnotifications\x18\x06 \x01(\x0b\x32*.console.v1.WorkspaceSettingsNotificationsR\rnotifications\x12\\\n\x12identity_providers\x18\x07 \x03(\x0b\x32-.console.v1.WorkspaceSettingsIdentityProviderR\x11identityProviders\x12L\n\x0cintegrations\x18\x08 \x03(\x0b\x32(.console.v1.WorkspaceSettingsIntegrationR\x0cintegrations\x12K\n\x0c\x63\x61pabilities\x18\t \x03(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x0c\x63\x61pabilities\x12\x1a\n\x08warnings\x18\n \x03(\tR\x08warnings\x12\x46\n\x08\x61\x63tivity\x18\x0b \x03(\x0b\x32*.console.v1.WorkspaceSettingsActivityEntryR\x08\x61\x63tivity\x12O\n\x0eowner_services\x18\x0c \x03(\x0b\x32(.console.v1.WorkspaceSettingsOwnerStatusR\rownerServices\x12X\n\x11\x62reak_glass_grant\x18\r \x01(\x0b\x32,.console.v1.WorkspaceSettingsBreakGlassGrantR\x0f\x62reakGlassGrant\x12\x46\n\nworkspaces\x18\x0e \x03(\x0b\x32&.console.v1.WorkspaceSettingsWorkspaceR\nworkspaces\x12=\n\ndex_policy\x18\x0f \x01(\x0b\x32\x1e.console.v1.WorkspaceDexPolicyR\tdexPolicy\x12Y\n\x14\x61rtifact_style_guide\x18\x10 \x01(\x0b\x32\'.console.v1.WorkspaceArtifactStyleGuideR\x12\x61rtifactStyleGuide\x12\x64\n\x19task_environment_projects\x18\x11 \x03(\x0b\x32(.console.v1.TaskEnvironmentProjectOptionR\x17taskEnvironmentProjects\"q\n\x1cTaskEnvironmentProjectOption\x12.\n\x13project_resource_id\x18\x01 \x01(\tR\x11projectResourceId\x12!\n\x0c\x64isplay_name\x18\x02 \x01(\tR\x0b\x64isplayName\"K\n\x1dGetBillingSubscriptionRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"\xc5\x03\n\x1eGetBillingSubscriptionResponse\x12\x1b\n\tplan_name\x18\x01 \x01(\tR\x08planName\x12\x1b\n\tplan_tier\x18\x02 \x01(\tR\x08planTier\x12&\n\nseats_used\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\tseatsUsed\x12(\n\x0bseats_total\x18\x04 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\nseatsTotal\x12!\n\x0crenewal_date\x18\x05 \x01(\tR\x0brenewalDate\x12\'\n\x0f\x62illing_contact\x18\x06 \x01(\tR\x0e\x62illingContact\x12,\n\x12\x62illing_portal_url\x18\x07 \x01(\tR\x10\x62illingPortalUrl\x12\x16\n\x06status\x18\x08 \x01(\tR\x06status\x12K\n\x0bstatus_enum\x18\t \x01(\x0e\x32*.console.v1.WorkspaceSettingsBillingStatusR\nstatusEnum\x12\x38\n\x18\x62illing_portal_available\x18\n \x01(\x08R\x16\x62illingPortalAvailable\"O\n!CreateBillingPortalSessionRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"@\n\"CreateBillingPortalSessionResponse\x12\x1a\n\x03url\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x88\x01\x01R\x03url\"z\n#CreateBillingCheckoutSessionRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\'\n\nrequest_id\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\trequestId\"B\n$CreateBillingCheckoutSessionResponse\x12\x1a\n\x03url\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x88\x01\x01R\x03url\"\x9f\x01\n\x1dUpdateWorkspaceProfileRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x46\n\x07profile\x18\x02 \x01(\x0b\x32$.console.v1.WorkspaceSettingsProfileB\x06\xbaH\x03\xc8\x01\x01R\x07profile\"n\n\x1eUpdateWorkspaceProfileResponse\x12L\n\x08settings\x18\x01 \x01(\x0b\x32(.console.v1.GetWorkspaceSettingsResponseB\x06\xbaH\x03\xc8\x01\x01R\x08settings\"\x97\x01\n\x17OperatorModelPreference\x12&\n\x08provider\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x08provider\x12 \n\x05model\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x05model\x12\x1a\n\x08\x66\x61vorite\x18\x03 \x01(\x08R\x08\x66\x61vorite\x12\x16\n\x06hidden\x18\x04 \x01(\x08R\x06hidden\"\xbf\x01\n\x1dOperatorModelPreferenceUpdate\x12&\n\x08provider\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x08provider\x12 \n\x05model\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x05model\x12\x1f\n\x08\x66\x61vorite\x18\x03 \x01(\x08H\x00R\x08\x66\x61vorite\x88\x01\x01\x12\x1b\n\x06hidden\x18\x04 \x01(\x08H\x01R\x06hidden\x88\x01\x01\x42\x0b\n\t_favoriteB\t\n\x07_hidden\"\xab\x02\n\x13OperatorPreferences\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12%\n\ndex_hat_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08\x64\x65xHatId\x12\x39\n\nupdated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x34\n\x16\x64\x65veloper_mode_enabled\x18\x04 \x01(\x08R\x14\x64\x65veloperModeEnabled\x12P\n\x11model_preferences\x18\x05 \x03(\x0b\x32#.console.v1.OperatorModelPreferenceR\x10modelPreferences\"W\n\x1dGetOperatorPreferencesRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"k\n\x1eGetOperatorPreferencesResponse\x12I\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x1f.console.v1.OperatorPreferencesB\x06\xbaH\x03\xc8\x01\x01R\x0bpreferences\"\xa4\x02\n UpdateOperatorPreferencesRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x1c\n\ndex_hat_id\x18\x02 \x01(\tR\x08\x64\x65xHatId\x12\x39\n\x16\x64\x65veloper_mode_enabled\x18\x03 \x01(\x08H\x00R\x14\x64\x65veloperModeEnabled\x88\x01\x01\x12T\n\x10model_preference\x18\x04 \x01(\x0b\x32).console.v1.OperatorModelPreferenceUpdateR\x0fmodelPreferenceB\x19\n\x17_developer_mode_enabled\"n\n!UpdateOperatorPreferencesResponse\x12I\n\x0bpreferences\x18\x01 \x01(\x0b\x32\x1f.console.v1.OperatorPreferencesB\x06\xbaH\x03\xc8\x01\x01R\x0bpreferences\"\xca\x02\n\x16WorkspaceGuardrailRule\x12\x1a\n\x02id\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x02id\x12\x1e\n\x04name\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x04name\x12\x46\n\rdetector_kind\x18\x03 \x01(\x0e\x32!.console.v1.GuardrailDetectorKindR\x0c\x64\x65tectorKind\x12\"\n\x07pattern\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80 R\x07pattern\x12\x33\n\x06\x61\x63tion\x18\x05 \x01(\x0e\x32\x1b.console.v1.GuardrailActionR\x06\x61\x63tion\x12\x18\n\x07\x65nabled\x18\x06 \x01(\x08R\x07\x65nabled\x12\x39\n\nupdated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"\\\n\"ListWorkspaceGuardrailRulesRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"_\n#ListWorkspaceGuardrailRulesResponse\x12\x38\n\x05rules\x18\x01 \x03(\x0b\x32\".console.v1.WorkspaceGuardrailRuleR\x05rules\"\x9d\x01\n#UpsertWorkspaceGuardrailRuleRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12>\n\x04rule\x18\x02 \x01(\x0b\x32\".console.v1.WorkspaceGuardrailRuleB\x06\xbaH\x03\xc8\x01\x01R\x04rule\"y\n#RemoveWorkspaceGuardrailRuleRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x1a\n\x02id\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x02id\"\xc8\x02\n\x10\x43onnectorProfile\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12(\n\x0bprovider_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nproviderId\x12*\n\x0cprofile_name\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bprofileName\x12\x16\n\x06scopes\x18\x04 \x03(\tR\x06scopes\x12\x18\n\x07\x65nabled\x18\x05 \x01(\x08R\x07\x65nabled\x12\x1d\n\nis_default\x18\x06 \x01(\x08R\tisDefault\x12\x39\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"2\n\x18\x43onnectorProfileScopeSet\x12\x16\n\x06values\x18\x01 \x03(\tR\x06values\"\xbd\x02\n\x1d\x43reateConnectorProfileRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12(\n\x0bprovider_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nproviderId\x12*\n\x0cprofile_name\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bprofileName\x12,\n\rconnection_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x63onnectionId\x12\x16\n\x06scopes\x18\x05 \x03(\tR\x06scopes\x12\x1d\n\x07\x65nabled\x18\x06 \x01(\x08H\x00R\x07\x65nabled\x88\x01\x01\x12\x1d\n\nis_default\x18\x07 \x01(\x08R\tisDefaultB\n\n\x08_enabled\"`\n\x1e\x43reateConnectorProfileResponse\x12>\n\x07profile\x18\x01 \x01(\x0b\x32\x1c.console.v1.ConnectorProfileB\x06\xbaH\x03\xc8\x01\x01R\x07profile\"\x80\x01\n\x1cListConnectorProfilesRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12(\n\x0bprovider_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nproviderId\"Y\n\x1dListConnectorProfilesResponse\x12\x38\n\x08profiles\x18\x01 \x03(\x0b\x32\x1c.console.v1.ConnectorProfileR\x08profiles\"\x8c\x02\n\x1dUpdateConnectorProfileRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x17\n\x02id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x1d\n\x07\x65nabled\x18\x03 \x01(\x08H\x00R\x07\x65nabled\x88\x01\x01\x12\"\n\nis_default\x18\x04 \x01(\x08H\x01R\tisDefault\x88\x01\x01\x12<\n\x06scopes\x18\x05 \x01(\x0b\x32$.console.v1.ConnectorProfileScopeSetR\x06scopesB\n\n\x08_enabledB\r\n\x0b_is_default\"`\n\x1eUpdateConnectorProfileResponse\x12>\n\x07profile\x18\x01 \x01(\x0b\x32\x1c.console.v1.ConnectorProfileB\x06\xbaH\x03\xc8\x01\x01R\x07profile\"p\n\x1d\x44\x65leteConnectorProfileRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x17\n\x02id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\":\n\x1e\x44\x65leteConnectorProfileResponse\x12\x18\n\x07\x64\x65leted\x18\x01 \x01(\x08R\x07\x64\x65leted\"m\n\x17\x41rchiveWorkspaceRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x1a\n\x08\x61rchived\x18\x02 \x01(\x08R\x08\x61rchived\"h\n\x18\x41rchiveWorkspaceResponse\x12L\n\x08settings\x18\x01 \x01(\x0b\x32(.console.v1.GetWorkspaceSettingsResponseB\x06\xbaH\x03\xc8\x01\x01R\x08settings\"\x9b\x01\n\x1cUpdateWorkspacePolicyRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x43\n\x06policy\x18\x02 \x01(\x0b\x32#.console.v1.WorkspaceSettingsPolicyB\x06\xbaH\x03\xc8\x01\x01R\x06policy\"m\n\x1dUpdateWorkspacePolicyResponse\x12L\n\x08settings\x18\x01 \x01(\x0b\x32(.console.v1.GetWorkspaceSettingsResponseB\x06\xbaH\x03\xc8\x01\x01R\x08settings\"\xa0\x01\n\x1fUpdateWorkspaceDexPolicyRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x45\n\ndex_policy\x18\x02 \x01(\x0b\x32\x1e.console.v1.WorkspaceDexPolicyB\x06\xbaH\x03\xc8\x01\x01R\tdexPolicy\"p\n UpdateWorkspaceDexPolicyResponse\x12L\n\x08settings\x18\x01 \x01(\x0b\x32(.console.v1.GetWorkspaceSettingsResponseB\x06\xbaH\x03\xc8\x01\x01R\x08settings\"\xd8\x01\n(UpdateWorkspaceArtifactStyleGuideRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12t\n\x1eworkspace_artifact_style_guide\x18\x02 \x01(\x0b\x32\'.console.v1.WorkspaceArtifactStyleGuideB\x06\xbaH\x03\xc8\x01\x01R\x1bworkspaceArtifactStyleGuide\"y\n)UpdateWorkspaceArtifactStyleGuideResponse\x12L\n\x08settings\x18\x01 \x01(\x0b\x32(.console.v1.GetWorkspaceSettingsResponseB\x06\xbaH\x03\xc8\x01\x01R\x08settings\"\x90\x02\n*EvaluateWorkspaceArtifactStyleGuideRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12t\n\x1eworkspace_artifact_style_guide\x18\x02 \x01(\x0b\x32\'.console.v1.WorkspaceArtifactStyleGuideB\x06\xbaH\x03\xc8\x01\x01R\x1bworkspaceArtifactStyleGuide\x12\x34\n\x0fsample_response\x18\x03 \x01(\tB\x0b\xbaH\x08r\x06\x10\x01\x18\x80\xf4\x03R\x0esampleResponse\"\xbc\x01\n+EvaluateWorkspaceArtifactStyleGuideResponse\x12\x16\n\x06passed\x18\x01 \x01(\x08R\x06passed\x12\x1d\n\nword_count\x18\x02 \x01(\rR\twordCount\x12V\n\nviolations\x18\x03 \x03(\x0b\x32+.console.v1.WorkspaceContentPolicyViolationB\t\xbaH\x06\x92\x01\x03\x10\xc8\x01R\nviolations\"O\n\x1fWorkspaceContentPolicyViolation\x12\x12\n\x04\x63ode\x18\x01 \x01(\tR\x04\x63ode\x12\x18\n\x07message\x18\x02 \x01(\tR\x07message\"\xb3\x01\n&UpsertWorkspaceIdentityProviderRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12Q\n\x08provider\x18\x02 \x01(\x0b\x32-.console.v1.WorkspaceSettingsIdentityProviderB\x06\xbaH\x03\xc8\x01\x01R\x08provider\"w\n\'UpsertWorkspaceIdentityProviderResponse\x12L\n\x08settings\x18\x01 \x01(\x0b\x32(.console.v1.GetWorkspaceSettingsResponseB\x06\xbaH\x03\xc8\x01\x01R\x08settings\"y\n&RemoveWorkspaceIdentityProviderRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x17\n\x02id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\"w\n\'RemoveWorkspaceIdentityProviderResponse\x12L\n\x08settings\x18\x01 \x01(\x0b\x32(.console.v1.GetWorkspaceSettingsResponseB\x06\xbaH\x03\xc8\x01\x01R\x08settings\"\xaf\x01\n!UpsertWorkspaceIntegrationRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12R\n\x0bintegration\x18\x02 \x01(\x0b\x32(.console.v1.WorkspaceSettingsIntegrationB\x06\xbaH\x03\xc8\x01\x01R\x0bintegration\"r\n\"UpsertWorkspaceIntegrationResponse\x12L\n\x08settings\x18\x01 \x01(\x0b\x32(.console.v1.GetWorkspaceSettingsResponseB\x06\xbaH\x03\xc8\x01\x01R\x08settings\"t\n!RemoveWorkspaceIntegrationRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x17\n\x02id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\"r\n\"RemoveWorkspaceIntegrationResponse\x12L\n\x08settings\x18\x01 \x01(\x0b\x32(.console.v1.GetWorkspaceSettingsResponseB\x06\xbaH\x03\xc8\x01\x01R\x08settings\"\x9f\x01\n\x1dUpdateWorkspaceBillingRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x46\n\x07\x62illing\x18\x02 \x01(\x0b\x32$.console.v1.WorkspaceSettingsBillingB\x06\xbaH\x03\xc8\x01\x01R\x07\x62illing\"\x9b\x01\n\x1cUpsertWorkspaceMemberRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x43\n\x06member\x18\x02 \x01(\x0b\x32#.console.v1.WorkspaceSettingsMemberB\x06\xbaH\x03\xc8\x01\x01R\x06member\"\x86\x01\n\x1cRemoveWorkspaceMemberRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x18\n\x07subject\x18\x02 \x01(\tR\x07subject\x12\x14\n\x05\x65mail\x18\x03 \x01(\tR\x05\x65mail\"\xc1\x01\n-UpdateWorkspaceNotificationPreferencesRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12X\n\rnotifications\x18\x02 \x01(\x0b\x32*.console.v1.WorkspaceSettingsNotificationsB\x06\xbaH\x03\xc8\x01\x01R\rnotifications\"\xa6\x01\n EnableWorkspaceBreakGlassRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12J\n\x05grant\x18\x02 \x01(\x0b\x32,.console.v1.WorkspaceSettingsBreakGlassGrantB\x06\xbaH\x03\xc8\x01\x01R\x05grant\"v\n!DisableWorkspaceBreakGlassRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x19\n\x08grant_id\x18\x02 \x01(\tR\x07grantId\"\xe1\x0b\n\x0eOperatingSkill\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\x04name\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12 \n\x0b\x64\x65scription\x18\x04 \x01(\tR\x0b\x64\x65scription\x12\x12\n\x04\x62ody\x18\x05 \x01(\tR\x04\x62ody\x12\x18\n\x07version\x18\x06 \x01(\x05R\x07version\x12\x39\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x30\n\x0forganization_id\x18\t \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12(\n\x10\x63\x61talog_skill_id\x18\n \x01(\tR\x0e\x63\x61talogSkillId\x12\'\n\x0f\x63\x61talog_version\x18\x0b \x01(\x05R\x0e\x63\x61talogVersion\x12;\n\x08\x61nalysis\x18\x0c \x01(\x0b\x32\x1f.console.v1.SkillAnalysisReportR\x08\x61nalysis\x12\'\n\x0fsource_revision\x18\r \x01(\tR\x0esourceRevision\x12%\n\x0epackage_digest\x18\x0e \x01(\tR\rpackageDigest\x12J\n\x10package_manifest\x18\x0f \x03(\x0b\x32\x1f.console.v1.DexSkillPackageFileR\x0fpackageManifest\x12-\n\x12\x61\x63tivation_trigger\x18\x10 \x01(\tR\x11\x61\x63tivationTrigger\x12\x1c\n\tobjective\x18\x11 \x01(\tR\tobjective\x12<\n\x06inputs\x18\x12 \x03(\x0b\x32$.console.v1.DexSkillInputDeclarationR\x06inputs\x12?\n\x07outputs\x18\x13 \x03(\x0b\x32%.console.v1.DexSkillOutputDeclarationR\x07outputs\x12%\n\x0eordered_method\x18\x14 \x03(\tR\rorderedMethod\x12)\n\x10success_criteria\x18\x15 \x03(\tR\x0fsuccessCriteria\x12\x31\n\x14unavailable_behavior\x18\x16 \x01(\tR\x13unavailableBehavior\x12\'\n\x0foutput_contract\x18\x17 \x01(\tR\x0eoutputContract\x12N\n\x10license_evidence\x18\x18 \x01(\x0b\x32#.console.v1.DexSkillLicenseEvidenceR\x0flicenseEvidence\x12G\n\rcompatibility\x18\x19 \x01(\x0b\x32!.console.v1.DexSkillCompatibilityR\rcompatibility\x12N\n\x10quality_evidence\x18\x1a \x01(\x0b\x32#.console.v1.DexSkillQualityEvidenceR\x0fqualityEvidence\x12K\n\x0flifecycle_state\x18\x1b \x01(\x0e\x32\".console.v1.DexSkillLifecycleStateR\x0elifecycleState\x12:\n\x19\x63ustomer_safe_remediation\x18\x1c \x01(\tR\x17\x63ustomerSafeRemediation\x12?\n\x0bupdate_diff\x18\x1d \x01(\x0b\x32\x1e.console.v1.DexSkillUpdateDiffR\nupdateDiff\x12%\n\x0erequired_tools\x18\x1e \x03(\tR\rrequiredTools\"T\n\x1aListWorkspaceSkillsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"Q\n\x1bListWorkspaceSkillsResponse\x12\x32\n\x06skills\x18\x01 \x03(\x0b\x32\x1a.console.v1.OperatingSkillR\x06skills\"\xab\x01\n\x14SkillAnalysisFinding\x12\x17\n\x07rule_id\x18\x01 \x01(\tR\x06ruleId\x12\x14\n\x05title\x18\x02 \x01(\tR\x05title\x12\x16\n\x06\x64\x65tail\x18\x03 \x01(\tR\x06\x64\x65tail\x12\x30\n\x08severity\x18\x04 \x01(\x0e\x32\x14.common.v1.RiskLevelR\x08severity\x12\x1a\n\x08\x61\x64visory\x18\x05 \x01(\x08R\x08\x61\x64visory\"\xb1\x02\n\x13SkillAnalysisReport\x12:\n\x07verdict\x18\x01 \x01(\x0e\x32 .console.v1.SkillAnalysisVerdictR\x07verdict\x12%\n\x0e\x63ontent_digest\x18\x02 \x01(\tR\rcontentDigest\x12\'\n\x0fruleset_version\x18\x03 \x01(\tR\x0erulesetVersion\x12)\n\x10\x63overed_surfaces\x18\x04 \x03(\tR\x0f\x63overedSurfaces\x12%\n\x0erequired_tools\x18\x05 \x03(\tR\rrequiredTools\x12<\n\x08\x66indings\x18\x06 \x03(\x0b\x32 .console.v1.SkillAnalysisFindingR\x08\x66indings\"\x92\x01\n\x18\x44\x65xSkillInputDeclaration\x12\x1b\n\x04name\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x1b\n\x04type\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04type\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x1a\n\x08required\x18\x04 \x01(\x08R\x08required\"w\n\x19\x44\x65xSkillOutputDeclaration\x12\x1b\n\x04name\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x1b\n\x04type\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04type\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\"\xf6\x01\n\x13\x44\x65xSkillPackageFile\x12\x1b\n\x04path\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04path\x12&\n\nmedia_type\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmediaType\x12\x1d\n\nsize_bytes\x18\x03 \x01(\x04R\tsizeBytes\x12.\n\x0e\x63ontent_digest\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rcontentDigest\x12\x37\n\x04kind\x18\x05 \x01(\x0e\x32#.console.v1.DexSkillPackageFileKindR\x04kind\x12\x12\n\x04mode\x18\x06 \x01(\rR\x04mode\"\xb2\x01\n\x17\x44\x65xSkillLicenseEvidence\x12\x17\n\x07spdx_id\x18\x01 \x01(\tR\x06spdxId\x12\x1f\n\x0bsource_path\x18\x02 \x01(\tR\nsourcePath\x12%\n\x0e\x63ontent_digest\x18\x03 \x01(\tR\rcontentDigest\x12\x1a\n\x08verified\x18\x04 \x01(\x08R\x08verified\x12\x1a\n\x08included\x18\x05 \x01(\x08R\x08included\"\x8e\x01\n\x15\x44\x65xSkillCompatibility\x12%\n\x0eschema_version\x18\x01 \x01(\tR\rschemaVersion\x12\x1a\n\x08runtimes\x18\x02 \x03(\tR\x08runtimes\x12\x14\n\x05roles\x18\x03 \x03(\tR\x05roles\x12\x1c\n\tplatforms\x18\x04 \x03(\tR\tplatforms\"\xd7\x02\n\x16\x44\x65xSkillQualityFixture\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x33\n\x04kind\x18\x02 \x01(\x0e\x32\x1f.console.v1.DexSkillFixtureKindR\x04kind\x12+\n\x11trigger_assertion\x18\x03 \x01(\tR\x10triggerAssertion\x12\x34\n\x16task_success_assertion\x18\x04 \x01(\tR\x14taskSuccessAssertion\x12<\n\x1a\x66\x61ilure_handling_assertion\x18\x05 \x01(\tR\x18\x66\x61ilureHandlingAssertion\x12-\n\x12\x61rtifact_assertion\x18\x06 \x01(\tR\x11\x61rtifactAssertion\x12\x1f\n\x0b\x62\x61seline_id\x18\x07 \x01(\tR\nbaselineId\"\x80\x02\n\x17\x44\x65xSkillQualityEvidence\x12#\n\rsuite_version\x18\x01 \x01(\tR\x0csuiteVersion\x12>\n\x08\x66ixtures\x18\x02 \x03(\x0b\x32\".console.v1.DexSkillQualityFixtureR\x08\x66ixtures\x12\x1f\n\x0b\x62\x61seline_id\x18\x03 \x01(\tR\nbaselineId\x12\'\n\x0f\x62\x61seline_digest\x18\x04 \x01(\tR\x0e\x62\x61selineDigest\x12\x36\n\x17publication_gate_passed\x18\x05 \x01(\x08R\x15publicationGatePassed\"\xef\x02\n\x12\x44\x65xSkillUpdateDiff\x12\x30\n\x14\x66rom_catalog_version\x18\x01 \x01(\x05R\x12\x66romCatalogVersion\x12,\n\x12to_catalog_version\x18\x02 \x01(\x05R\x10toCatalogVersion\x12.\n\x13\x66rom_package_digest\x18\x03 \x01(\tR\x11\x66romPackageDigest\x12*\n\x11to_package_digest\x18\x04 \x01(\tR\x0ftoPackageDigest\x12\x1f\n\x0b\x61\x64\x64\x65\x64_paths\x18\x05 \x03(\tR\naddedPaths\x12#\n\rremoved_paths\x18\x06 \x03(\tR\x0cremovedPaths\x12#\n\rchanged_paths\x18\x07 \x03(\tR\x0c\x63hangedPaths\x12\x18\n\x07summary\x18\x08 \x01(\tR\x07summary\x12\x18\n\x07\x62ounded\x18\t \x01(\x08R\x07\x62ounded\"\x9b\x0e\n\x14\x44\x65xSkillCatalogEntry\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12 \n\x0b\x64\x65scription\x18\x02 \x01(\tR\x0b\x64\x65scription\x12\'\n\x0f\x63\x61talog_version\x18\x03 \x01(\x05R\x0e\x63\x61talogVersion\x12\x1c\n\tinstalled\x18\x04 \x01(\x08R\tinstalled\x12\x30\n\x14installed_skill_name\x18\x05 \x01(\tR\x12installedSkillName\x12+\n\x11installed_version\x18\x06 \x01(\x05R\x10installedVersion\x12:\n\x19installed_catalog_version\x18\x07 \x01(\x05R\x17installedCatalogVersion\x12)\n\x10update_available\x18\x08 \x01(\x08R\x0fupdateAvailable\x12!\n\x0c\x64isplay_name\x18\t \x01(\tR\x0b\x64isplayName\x12\x1c\n\tpublisher\x18\n \x01(\tR\tpublisher\x12\x1d\n\nsource_url\x18\x0b \x01(\tR\tsourceUrl\x12\x18\n\x07license\x18\x0c \x01(\tR\x07license\x12\x1a\n\x08\x63\x61tegory\x18\r \x01(\tR\x08\x63\x61tegory\x12\x12\n\x04tags\x18\x0e \x03(\tR\x04tags\x12\x1a\n\x08\x65xternal\x18\x0f \x01(\x08R\x08\x65xternal\x12\x33\n\nrisk_level\x18\x10 \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12;\n\x08\x61nalysis\x18\x11 \x01(\x0b\x32\x1f.console.v1.SkillAnalysisReportR\x08\x61nalysis\x12?\n\x08\x65xposure\x18\x12 \x01(\x0e\x32#.console.v1.DexSkillCatalogExposureR\x08\x65xposure\x12/\n\x0erequired_tools\x18\x13 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10@R\rrequiredTools\x12\'\n\x0fsource_revision\x18\x14 \x01(\tR\x0esourceRevision\x12%\n\x0epackage_digest\x18\x15 \x01(\tR\rpackageDigest\x12J\n\x10package_manifest\x18\x16 \x03(\x0b\x32\x1f.console.v1.DexSkillPackageFileR\x0fpackageManifest\x12-\n\x12\x61\x63tivation_trigger\x18\x17 \x01(\tR\x11\x61\x63tivationTrigger\x12\x1c\n\tobjective\x18\x18 \x01(\tR\tobjective\x12<\n\x06inputs\x18\x19 \x03(\x0b\x32$.console.v1.DexSkillInputDeclarationR\x06inputs\x12?\n\x07outputs\x18\x1a \x03(\x0b\x32%.console.v1.DexSkillOutputDeclarationR\x07outputs\x12%\n\x0eordered_method\x18\x1b \x03(\tR\rorderedMethod\x12)\n\x10success_criteria\x18\x1c \x03(\tR\x0fsuccessCriteria\x12\x31\n\x14unavailable_behavior\x18\x1d \x01(\tR\x13unavailableBehavior\x12\'\n\x0foutput_contract\x18\x1e \x01(\tR\x0eoutputContract\x12N\n\x10license_evidence\x18\x1f \x01(\x0b\x32#.console.v1.DexSkillLicenseEvidenceR\x0flicenseEvidence\x12G\n\rcompatibility\x18 \x01(\x0b\x32!.console.v1.DexSkillCompatibilityR\rcompatibility\x12N\n\x10quality_evidence\x18! \x01(\x0b\x32#.console.v1.DexSkillQualityEvidenceR\x0fqualityEvidence\x12K\n\x0flifecycle_state\x18\" \x01(\x0e\x32\".console.v1.DexSkillLifecycleStateR\x0elifecycleState\x12:\n\x19\x63ustomer_safe_remediation\x18# \x01(\tR\x17\x63ustomerSafeRemediation\x12?\n\x0bupdate_diff\x18$ \x01(\x0b\x32\x1e.console.v1.DexSkillUpdateDiffR\nupdateDiff\x12Q\n\x11runtime_readiness\x18% \x01(\x0e\x32$.console.v1.DexSkillRuntimeReadinessR\x10runtimeReadiness\"\x97\x01\n\x14\x44\x65xSkillPlaybookStep\x12\x31\n\x10\x63\x61talog_skill_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0e\x63\x61talogSkillId\x12*\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x64isplayName\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\"\x8c\x02\n\x10\x44\x65xSkillPlaybook\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12*\n\x0c\x64isplay_name\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x64isplayName\x12\x38\n\x13outcome_description\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x12outcomeDescription\x12@\n\x05steps\x18\x04 \x03(\x0b\x32 .console.v1.DexSkillPlaybookStepB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x05steps\x12\x37\n\x12integration_labels\x18\x05 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10\x10R\x11integrationLabels\"V\n\x1c\x42rowseDexSkillCatalogRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"\x97\x01\n\x1d\x42rowseDexSkillCatalogResponse\x12:\n\x07\x65ntries\x18\x01 \x03(\x0b\x32 .console.v1.DexSkillCatalogEntryR\x07\x65ntries\x12:\n\tplaybooks\x18\x02 \x03(\x0b\x32\x1c.console.v1.DexSkillPlaybookR\tplaybooks\"\xfe\x03\n\"InstallDexSkillCatalogEntryRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12&\n\ncatalog_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tcatalogId\x12\x38\n\x18\x61\x63\x63\x65pt_analysis_findings\x18\x03 \x01(\x08R\x16\x61\x63\x63\x65ptAnalysisFindings\x12\x38\n\x18reviewed_catalog_version\x18\x04 \x01(\x05R\x16reviewedCatalogVersion\x12G\n reviewed_analysis_content_digest\x18\x05 \x01(\tR\x1dreviewedAnalysisContentDigest\x12I\n!reviewed_analysis_ruleset_version\x18\x06 \x01(\tR\x1ereviewedAnalysisRulesetVersion\x12\x38\n\x18reviewed_source_revision\x18\x07 \x01(\tR\x16reviewedSourceRevision\x12\x36\n\x17reviewed_package_digest\x18\x08 \x01(\tR\x15reviewedPackageDigest\"\xd4\x01\n#InstallDexSkillCatalogEntryResponse\x12\x38\n\x05skill\x18\x01 \x01(\x0b\x32\x1a.console.v1.OperatingSkillB\x06\xbaH\x03\xc8\x01\x01R\x05skill\x12(\n\x10\x63\x61talog_skill_id\x18\x02 \x01(\tR\x0e\x63\x61talogSkillId\x12\'\n\x0f\x63\x61talog_version\x18\x03 \x01(\x05R\x0e\x63\x61talogVersion\x12 \n\x0breinstalled\x18\x04 \x01(\x08R\x0breinstalled\"\xb1\x01\n\x1b\x43reateWorkspaceSkillRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x1b\n\x04name\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x1b\n\x04\x62ody\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04\x62ody\"X\n\x1c\x43reateWorkspaceSkillResponse\x12\x38\n\x05skill\x18\x01 \x01(\x0b\x32\x1a.console.v1.OperatingSkillB\x06\xbaH\x03\xc8\x01\x01R\x05skill\"\xb1\x01\n\x1bUpdateWorkspaceSkillRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x1b\n\x04name\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12 \n\x0b\x64\x65scription\x18\x03 \x01(\tR\x0b\x64\x65scription\x12\x1b\n\x04\x62ody\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04\x62ody\"X\n\x1cUpdateWorkspaceSkillResponse\x12\x38\n\x05skill\x18\x01 \x01(\x0b\x32\x1a.console.v1.OperatingSkillB\x06\xbaH\x03\xc8\x01\x01R\x05skill\"r\n\x1b\x44\x65leteWorkspaceSkillRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x1b\n\x04name\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\"\x1e\n\x1c\x44\x65leteWorkspaceSkillResponse\"\xff\x03\n\x18WorkspaceSettingsProfile\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12-\n\x12organization_label\x18\x02 \x01(\tR\x11organizationLabel\x12!\n\x0cworkspace_id\x18\x03 \x01(\tR\x0bworkspaceId\x12\'\n\x0fworkspace_label\x18\x04 \x01(\tR\x0eworkspaceLabel\x12 \n\x0b\x65nvironment\x18\x05 \x01(\tR\x0b\x65nvironment\x12\x16\n\x06region\x18\x06 \x01(\tR\x06region\x12\x1a\n\x08\x61rchived\x18\x07 \x01(\x08R\x08\x61rchived\x12;\n\x0b\x61rchived_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\narchivedAt\x12T\n\x11update_capability\x18\t \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x10updateCapability\x12V\n\x12\x61rchive_capability\x18\n \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x11\x61rchiveCapability\"\xe6\x01\n\x1aWorkspaceSettingsPrincipal\x12\x18\n\x07subject\x18\x01 \x01(\tR\x07subject\x12!\n\x0cuser_subject\x18\x02 \x01(\tR\x0buserSubject\x12!\n\x0c\x64isplay_name\x18\x03 \x01(\tR\x0b\x64isplayName\x12\x12\n\x04role\x18\x04 \x01(\tR\x04role\x12\x14\n\x05human\x18\x05 \x01(\x08R\x05human\x12>\n\trbac_role\x18\x06 \x01(\x0e\x32!.console.v1.WorkspaceSettingsRoleR\x08rbacRole\"\x98\x01\n\x1bWorkspaceSettingsCapability\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x1c\n\tavailable\x18\x03 \x01(\x08R\tavailable\x12\x16\n\x06reason\x18\x04 \x01(\tR\x06reason\x12\x1d\n\naction_url\x18\x05 \x01(\tR\tactionUrl\"\x92\x04\n\x1aWorkspaceSettingsWorkspace\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12-\n\x12organization_label\x18\x02 \x01(\tR\x11organizationLabel\x12!\n\x0cworkspace_id\x18\x03 \x01(\tR\x0bworkspaceId\x12\'\n\x0fworkspace_label\x18\x04 \x01(\tR\x0eworkspaceLabel\x12 \n\x0b\x65nvironment\x18\x05 \x01(\tR\x0b\x65nvironment\x12\x16\n\x06region\x18\x06 \x01(\tR\x06region\x12\x18\n\x07\x63urrent\x18\x07 \x01(\x08R\x07\x63urrent\x12\x1a\n\x08\x61rchived\x18\x08 \x01(\x08R\x08\x61rchived\x12;\n\x0b\x61rchived_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\narchivedAt\x12>\n\trbac_role\x18\n \x01(\x0e\x32!.console.v1.WorkspaceSettingsRoleR\x08rbacRole\x12K\n\x0c\x63\x61pabilities\x18\x0b \x03(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x0c\x63\x61pabilities\x12\x16\n\x06source\x18\x0c \x01(\tR\x06source\"\x8c\x03\n\x1eWorkspaceSettingsActivityEntry\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n\x07section\x18\x02 \x01(\tR\x07section\x12\x16\n\x06\x61\x63tion\x18\x03 \x01(\tR\x06\x61\x63tion\x12#\n\ractor_subject\x18\x04 \x01(\tR\x0c\x61\x63torSubject\x12\x1f\n\x0b\x61\x63tor_email\x18\x05 \x01(\tR\nactorEmail\x12\x18\n\x07summary\x18\x06 \x01(\tR\x07summary\x12\x39\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12Q\n\x07\x64\x65tails\x18\x08 \x03(\x0b\x32\x37.console.v1.WorkspaceSettingsActivityEntry.DetailsEntryR\x07\x64\x65tails\x1a:\n\x0c\x44\x65tailsEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xc0\x05\n\x17WorkspaceSettingsMember\x12\x18\n\x07subject\x18\x01 \x01(\tR\x07subject\x12!\n\x0c\x64isplay_name\x18\x02 \x01(\tR\x0b\x64isplayName\x12\x14\n\x05\x65mail\x18\x03 \x01(\tR\x05\x65mail\x12\x12\n\x04role\x18\x04 \x01(\tR\x04role\x12\x16\n\x06source\x18\x05 \x01(\tR\x06source\x12T\n\x11manage_capability\x18\x06 \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x10manageCapability\x12>\n\trbac_role\x18\x07 \x01(\x0e\x32!.console.v1.WorkspaceSettingsRoleR\x08rbacRole\x12\x16\n\x06status\x18\x08 \x01(\tR\x06status\x12\x18\n\x07managed\x18\t \x01(\x08R\x07managed\x12/\n\x13provisioning_source\x18\n \x01(\tR\x12provisioningSource\x12<\n\x0clast_seen_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nlastSeenAt\x12J\n\x0bstatus_enum\x18\x0c \x01(\x0e\x32).console.v1.WorkspaceSettingsMemberStatusR\nstatusEnum\x12\x44\n\x0bsource_enum\x18\r \x01(\x0e\x32#.console.v1.WorkspaceSettingsSourceR\nsourceEnum\x12]\n\x18provisioning_source_enum\x18\x0e \x01(\x0e\x32#.console.v1.WorkspaceSettingsSourceR\x16provisioningSourceEnum\"\x9f\x03\n\x18WorkspaceSettingsBilling\x12\x16\n\x06status\x18\x01 \x01(\tR\x06status\x12\x12\n\x04plan\x18\x02 \x01(\tR\x04plan\x12&\n\nseats_used\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\tseatsUsed\x12(\n\x0bseats_total\x18\x04 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\nseatsTotal\x12\x39\n\nrenewal_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\trenewalAt\x12\'\n\x0f\x62illing_contact\x18\x06 \x01(\tR\x0e\x62illingContact\x12T\n\x11manage_capability\x18\x07 \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x10manageCapability\x12K\n\x0bstatus_enum\x18\x08 \x01(\x0e\x32*.console.v1.WorkspaceSettingsBillingStatusR\nstatusEnum\"\xf4\x08\n\x17WorkspaceSettingsPolicy\x12\x16\n\x06status\x18\x01 \x01(\tR\x06status\x12H\n!require_human_approval_for_writes\x18\x02 \x01(\x08R\x1drequireHumanApprovalForWrites\x12\x34\n\x16\x62lock_missing_evidence\x18\x03 \x01(\x08R\x14\x62lockMissingEvidence\x12\x35\n\x17\x61uto_revoke_idle_leases\x18\x04 \x01(\x08R\x14\x61utoRevokeIdleLeases\x12;\n\x1a\x61llow_cross_account_access\x18\x05 \x01(\x08R\x17\x61llowCrossAccountAccess\x12\"\n\rmax_lease_ttl\x18\x06 \x01(\tR\x0bmaxLeaseTtl\x12\x31\n\x14\x65vidence_requirement\x18\x07 \x01(\tR\x13\x65videnceRequirement\x12T\n\x11update_capability\x18\x08 \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x10updateCapability\x12\x1f\n\x0brequire_mfa\x18\t \x01(\x08R\nrequireMfa\x12\x1f\n\x0b\x65nforce_sso\x18\n \x01(\x08R\nenforceSso\x12+\n\x11scim_provisioning\x18\x0b \x01(\x08R\x10scimProvisioning\x12.\n\x13\x64\x65\x66\x61ult_member_role\x18\x0c \x01(\tR\x11\x64\x65\x66\x61ultMemberRole\x12\x1f\n\x0bsession_ttl\x18\r \x01(\tR\nsessionTtl\x12\'\n\x0f\x61llowed_domains\x18\x0e \x03(\tR\x0e\x61llowedDomains\x12!\n\x0cip_allowlist\x18\x0f \x03(\tR\x0bipAllowlist\x12@\n\x18\x61udit_log_retention_days\x18\x10 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x15\x61uditLogRetentionDays\x12\x37\n\x13\x64\x61ta_retention_days\x18\x11 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x11\x64\x61taRetentionDays\x12Z\n\x18\x64\x65\x66\x61ult_member_rbac_role\x18\x12 \x01(\x0e\x32!.console.v1.WorkspaceSettingsRoleR\x15\x64\x65\x66\x61ultMemberRbacRole\x12P\n\x0bstatus_enum\x18\x13 \x01(\x0e\x32/.console.v1.WorkspaceSettingsAvailabilityStatusR\nstatusEnum\x12k\n\x1atask_environment_retention\x18\x14 \x01(\x0b\x32-.console.v1.WorkspaceTaskEnvironmentRetentionR\x18taskEnvironmentRetention\"\xf7\x01\n\x1fProjectTaskEnvironmentRetention\x12\x37\n\x13project_resource_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x11projectResourceId\x12\x37\n\x0eretention_days\x18\x02 \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x30\x00\x30\x07\x30\x1eH\x00R\rretentionDays\x88\x01\x01\x12;\n\x0fretention_hours\x18\x03 \x01(\x05\x42\r\xbaH\n\x1a\x08\x30\x08\x30\xa8\x01\x30\xd0\x05H\x01R\x0eretentionHours\x88\x01\x01\x42\x11\n\x0f_retention_daysB\x12\n\x10_retention_hours\"\x83\x02\n!WorkspaceTaskEnvironmentRetention\x12\x32\n\x0eretention_days\x18\x01 \x01(\x05\x42\x0b\xbaH\x08\x1a\x06\x30\x00\x30\x07\x30\x1eR\rretentionDays\x12G\n\x08projects\x18\x02 \x03(\x0b\x32+.console.v1.ProjectTaskEnvironmentRetentionR\x08projects\x12\'\n\x0fpolicy_revision\x18\x03 \x01(\x04R\x0epolicyRevision\x12\x38\n\x0fretention_hours\x18\x04 \x01(\x05\x42\x0f\xbaH\x0c\x1a\n0\x00\x30\x08\x30\xa8\x01\x30\xd0\x05R\x0eretentionHours\"\xad\t\n\x12WorkspaceDexPolicy\x12L\n\rautonomy_mode\x18\x01 \x01(\x0e\x32\x1b.console.v1.DexAutonomyModeB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x0c\x61utonomyMode\x12_\n\x14\x65xternal_action_mode\x18\x02 \x01(\x0e\x32!.console.v1.DexExternalActionModeB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x12\x65xternalActionMode\x12\x34\n\x16project_memory_enabled\x18\x03 \x01(\x08R\x14projectMemoryEnabled\x12:\n\x19preference_memory_enabled\x18\x04 \x01(\x08R\x17preferenceMemoryEnabled\x12I\n!learning_from_corrections_enabled\x18\x05 \x01(\x08R\x1elearningFromCorrectionsEnabled\x12/\n\x13proactivity_enabled\x18\x06 \x01(\x08R\x12proactivityEnabled\x12\x41\n\x1dtrace_content_capture_enabled\x18\x07 \x01(\x08R\x1atraceContentCaptureEnabled\x12\x34\n\x10max_turn_seconds\x18\x08 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\x84\x07(\x05R\x0emaxTurnSeconds\x12/\n\x0emax_tool_calls\x18\t \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18@(\x00R\x0cmaxToolCalls\x12\x32\n\x0fmax_concurrency\x18\n \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x08(\x01R\x0emaxConcurrency\x12\x34\n\x0fmax_cost_micros\x18\x0b \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\xc2\xd7/(\x00R\rmaxCostMicros\x12\x31\n\x0f\x61llowed_systems\x18\x0c \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10@R\x0e\x61llowedSystems\x12T\n\x11update_capability\x18\r \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x10updateCapability\x12k\n\x1dreview_corrections_capability\x18\x0e \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x1breviewCorrectionsCapability\x12\x42\n\x1d\x63ustomer_intelligence_enabled\x18\x0f \x01(\x08R\x1b\x63ustomerIntelligenceEnabled\x12:\n\x19\x63ommitment_nudges_enabled\x18\x10 \x01(\x08R\x17\x63ommitmentNudgesEnabled\x12\x30\n\x14mcp_dispatch_enabled\x18\x11 \x01(\x08R\x12mcpDispatchEnabled\x12>\n\x1bsubagent_delegation_enabled\x18\x12 \x01(\x08R\x19subagentDelegationEnabled\"\xd3\x06\n\x1bWorkspaceArtifactStyleGuide\x12\x18\n\x07\x65nabled\x18\x01 \x01(\x08R\x07\x65nabled\x12.\n\x0evoice_and_tone\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xa0\x1fR\x0cvoiceAndTone\x12\x35\n\x11\x64ocument_guidance\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xc0>R\x10\x64ocumentGuidance\x12=\n\x15presentation_guidance\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\xc0>R\x14presentationGuidance\x12/\n\x0erequired_terms\x18\x05 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10\x64R\rrequiredTerms\x12\x31\n\x0f\x66orbidden_terms\x18\x06 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10\x64R\x0e\x66orbiddenTerms\x12\x18\n\x07version\x18\x07 \x01(\x04R\x07version\x12\x39\n\nupdated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12T\n\x11update_capability\x18\t \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x10updateCapability\x12\x35\n\x11response_guidance\x18\n \x01(\tB\x08\xbaH\x05r\x03\x18\xc0>R\x10responseGuidance\x12+\n\x11require_citations\x18\x0b \x01(\x08R\x10requireCitations\x12\x36\n\x12max_response_words\x18\x0c \x01(\rB\x08\xbaH\x05*\x03\x18\xa0\x1fR\x10maxResponseWords\x12\x42\n\x18\x61llowed_citation_domains\x18\r \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10\x64R\x16\x61llowedCitationDomains\x12\x42\n\x0c\x62rand_voices\x18\x0e \x03(\x0b\x32\x1f.console.v1.WorkspaceBrandVoiceR\x0b\x62randVoices\x12\x41\n\x16\x64\x65\x66\x61ult_brand_voice_id\x18\x0f \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x01\x80\xf4\x18\x02R\x13\x64\x65\x66\x61ultBrandVoiceId\"\xd7\x01\n\'WorkspaceSettingsNotificationPreference\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x16\n\x06\x64\x65tail\x18\x03 \x01(\tR\x06\x64\x65tail\x12\x18\n\x07\x65nabled\x18\x04 \x01(\x08R\x07\x65nabled\x12T\n\x11update_capability\x18\x05 \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x10updateCapability\"\xfa\x06\n\x1aWorkspaceSpendBeatSettings\x12\x18\n\x07\x65nabled\x18\x01 \x01(\x08R\x07\x65nabled\x12\x16\n\x06paused\x18\x02 \x01(\x08R\x06paused\x12\x38\n\x13slack_connection_id\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x11slackConnectionId\x12\x32\n\x10slack_channel_id\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x0eslackChannelId\x12I\n\x07\x63\x61\x64\x65nce\x18\x05 \x01(\x0e\x32%.console.v1.WorkspaceSpendBeatCadenceB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07\x63\x61\x64\x65nce\x12$\n\x08timezone\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x08timezone\x12&\n\nlocal_hour\x18\x07 \x01(\rB\x07\xbaH\x04*\x02\x18\x17R\tlocalHour\x12*\n\x0clocal_minute\x18\x08 \x01(\rB\x07\xbaH\x04*\x02\x18;R\x0blocalMinute\x12<\n\x16weekly_day_monday_zero\x18\t \x01(\rB\x07\xbaH\x04*\x02\x18\x06R\x13weeklyDayMondayZero\x12\x45\n\x18materiality_threshold_bp\x18\n \x01(\rB\x0b\xbaH\x08*\x06\x18\xa0\x8d\x06(\x01R\x16materialityThresholdBp\x12>\n\x1bmateriality_absolute_micros\x18\x0b \x01(\x04R\x19materialityAbsoluteMicros\x12\x35\n\x10\x63ooldown_seconds\x18\x0c \x01(\rB\n\xbaH\x07*\x05\x18\x80\x9a\x9e\x01R\x0f\x63ooldownSeconds\x12\x33\n\x11quiet_hours_start\x18\r \x01(\tB\x07\xbaH\x04r\x02\x18\x05R\x0fquietHoursStart\x12/\n\x0fquiet_hours_end\x18\x0e \x01(\tB\x07\xbaH\x04r\x02\x18\x05R\rquietHoursEnd\x12?\n\x17max_daily_notifications\x18\x0f \x01(\rB\x07\xbaH\x04*\x02\x18\x18R\x15maxDailyNotifications\x12T\n\x11update_capability\x18\x10 \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x10updateCapability\"\xa8\x02\n\x1eWorkspaceSettingsNotifications\x12\x16\n\x06status\x18\x01 \x01(\tR\x06status\x12U\n\x0bpreferences\x18\x02 \x03(\x0b\x32\x33.console.v1.WorkspaceSettingsNotificationPreferenceR\x0bpreferences\x12P\n\x0bstatus_enum\x18\x03 \x01(\x0e\x32/.console.v1.WorkspaceSettingsAvailabilityStatusR\nstatusEnum\x12\x45\n\nspend_beat\x18\x04 \x01(\x0b\x32&.console.v1.WorkspaceSpendBeatSettingsR\tspendBeat\"\x87\x03\n!WorkspaceSettingsIdentityProvider\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x16\n\x06\x64\x65tail\x18\x03 \x01(\tR\x06\x64\x65tail\x12\x16\n\x06status\x18\x04 \x01(\tR\x06status\x12Z\n\x14\x63onfigure_capability\x18\x05 \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x13\x63onfigureCapability\x12\x16\n\x06source\x18\x06 \x01(\tR\x06source\x12T\n\x0bstatus_enum\x18\x07 \x01(\x0e\x32\x33.console.v1.WorkspaceSettingsIdentityProviderStatusR\nstatusEnum\x12\x44\n\x0bsource_enum\x18\x08 \x01(\x0e\x32#.console.v1.WorkspaceSettingsSourceR\nsourceEnum\"\xb5\x03\n\x1cWorkspaceSettingsIntegration\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x1a\n\x08provider\x18\x03 \x01(\tR\x08provider\x12\x1a\n\x08\x63\x61tegory\x18\x04 \x01(\tR\x08\x63\x61tegory\x12\x16\n\x06\x64\x65tail\x18\x05 \x01(\tR\x06\x64\x65tail\x12\x16\n\x06status\x18\x06 \x01(\tR\x06status\x12Z\n\x14\x63onfigure_capability\x18\x07 \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x13\x63onfigureCapability\x12\x16\n\x06source\x18\x08 \x01(\tR\x06source\x12O\n\x0bstatus_enum\x18\t \x01(\x0e\x32..console.v1.WorkspaceSettingsIntegrationStatusR\nstatusEnum\x12\x44\n\x0bsource_enum\x18\n \x01(\x0e\x32#.console.v1.WorkspaceSettingsSourceR\nsourceEnum\"\x8d\x03\n\x1cWorkspaceSettingsOwnerStatus\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12#\n\rowner_service\x18\x03 \x01(\tR\x0cownerService\x12\x16\n\x06status\x18\x04 \x01(\tR\x06status\x12\x18\n\x07summary\x18\x05 \x01(\tR\x07summary\x12\x1a\n\x08settings\x18\x06 \x03(\tR\x08settings\x12G\n\ncapability\x18\x07 \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\ncapability\x12\x39\n\nchecked_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcheckedAt\x12P\n\x0bstatus_enum\x18\t \x01(\x0e\x32/.console.v1.WorkspaceSettingsOwnerServiceStatusR\nstatusEnum\"\x9c\x04\n WorkspaceSettingsBreakGlassGrant\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x03 \x01(\tR\x0bworkspaceId\x12\x30\n\x14\x63ustomer_approved_by\x18\x04 \x01(\tR\x12\x63ustomerApprovedBy\x12\x16\n\x06reason\x18\x05 \x01(\tR\x06reason\x12,\n\x12support_user_email\x18\x06 \x01(\tR\x10supportUserEmail\x12\x1b\n\tread_only\x18\x07 \x01(\x08R\x08readOnly\x12\x39\n\nenabled_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tenabledAt\x12;\n\x0b\x64isabled_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\ndisabledAt\x12T\n\x11manage_capability\x18\n \x01(\x0b\x32\'.console.v1.WorkspaceSettingsCapabilityR\x10manageCapability\x12\x39\n\nexpires_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\"N\n\x16StaffContextCapability\x12\x1c\n\tavailable\x18\x01 \x01(\x08R\tavailable\x12\x16\n\x06reason\x18\x02 \x01(\tR\x06reason\"i\n$SearchStaffWorkspaceDirectoryRequest\x12 \n\x05query\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x05query\x12\x1f\n\x05limit\x18\x02 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x19(\x01R\x05limit\"\xc2\x02\n\x1cStaffWorkspaceDirectoryEntry\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12+\n\x11organization_name\x18\x03 \x01(\tR\x10organizationName\x12%\n\x0eworkspace_name\x18\x04 \x01(\tR\rworkspaceName\x12\x16\n\x06region\x18\x05 \x01(\tR\x06region\x12 \n\x0b\x65nvironment\x18\x06 \x01(\tR\x0b\x65nvironment\x12H\n\x0c\x61\x63\x63\x65ss_state\x18\x07 \x01(\x0e\x32%.console.v1.StaffWorkspaceAccessStateR\x0b\x61\x63\x63\x65ssState\"k\n%SearchStaffWorkspaceDirectoryResponse\x12\x42\n\x07\x65ntries\x18\x01 \x03(\x0b\x32(.console.v1.StaffWorkspaceDirectoryEntryR\x07\x65ntries\"\x7f\n\x1fGetStaffWorkspaceContextRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"\xc3\x01\n\x16StaffGrantEventSummary\x12\x19\n\x08grant_id\x18\x01 \x01(\tR\x07grantId\x12\x16\n\x06\x61\x63tion\x18\x02 \x01(\tR\x06\x61\x63tion\x12;\n\x0boccurred_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12\x39\n\nexpires_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\"\xa6\x01\n\x13StaffReceiptSummary\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04kind\x18\x02 \x01(\tR\x04kind\x12\x16\n\x06status\x18\x03 \x01(\tR\x06status\x12\x18\n\x07summary\x18\x04 \x01(\tR\x07summary\x12\x39\n\ncreated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\"\x9d\x01\n\x11StaffTraceSummary\x12\x19\n\x08trace_id\x18\x01 \x01(\tR\x07traceId\x12\x18\n\x07summary\x18\x02 \x01(\tR\x07summary\x12\x16\n\x06status\x18\x03 \x01(\tR\x06status\x12;\n\x0boccurred_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\"\xac\x01\n\x13StaffFailureSummary\x12\x19\n\x08\x65vent_id\x18\x01 \x01(\tR\x07\x65ventId\x12\x1a\n\x08\x63\x61tegory\x18\x02 \x01(\tR\x08\x63\x61tegory\x12!\n\x0csafe_summary\x18\x03 \x01(\tR\x0bsafeSummary\x12;\n\x0boccurred_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\"w\n\x18StaffComputerEnvironment\x12\x1a\n\x08provider\x18\x01 \x01(\tR\x08provider\x12\x16\n\x06region\x18\x02 \x01(\tR\x06region\x12\'\n\x0flifecycle_state\x18\x03 \x01(\tR\x0elifecycleState\"\xfc\x07\n\x15StaffWorkspaceContext\x12H\n\x0c\x61\x63\x63\x65ss_state\x18\x01 \x01(\x0e\x32%.console.v1.StaffWorkspaceAccessStateR\x0b\x61\x63\x63\x65ssState\x12\x45\n\x0cgrant_events\x18\x02 \x03(\x0b\x32\".console.v1.StaffGrantEventSummaryR\x0bgrantEvents\x12;\n\x08receipts\x18\x03 \x03(\x0b\x32\x1f.console.v1.StaffReceiptSummaryR\x08receipts\x12\x35\n\x06traces\x18\x04 \x03(\x0b\x32\x1d.console.v1.StaffTraceSummaryR\x06traces\x12;\n\x08\x66\x61ilures\x18\x05 \x03(\x0b\x32\x1f.console.v1.StaffFailureSummaryR\x08\x66\x61ilures\x12W\n\x14\x63omputer_environment\x18\x06 \x01(\x0b\x32$.console.v1.StaffComputerEnvironmentR\x13\x63omputerEnvironment\x12Z\n\x17grant_events_capability\x18\x07 \x01(\x0b\x32\".console.v1.StaffContextCapabilityR\x15grantEventsCapability\x12S\n\x13receipts_capability\x18\x08 \x01(\x0b\x32\".console.v1.StaffContextCapabilityR\x12receiptsCapability\x12O\n\x11traces_capability\x18\t \x01(\x0b\x32\".console.v1.StaffContextCapabilityR\x10tracesCapability\x12S\n\x13\x66\x61ilures_capability\x18\n \x01(\x0b\x32\".console.v1.StaffContextCapabilityR\x12\x66\x61iluresCapability\x12j\n\x1f\x63omputer_environment_capability\x18\x0b \x01(\x0b\x32\".console.v1.StaffContextCapabilityR\x1d\x63omputerEnvironmentCapability\x12\x32\n\x15\x61\x63tive_grant_approver\x18\x0c \x01(\tR\x13\x61\x63tiveGrantApprover\x12Q\n\x17\x61\x63tive_grant_expires_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x14\x61\x63tiveGrantExpiresAt\"_\n GetStaffWorkspaceContextResponse\x12;\n\x07\x63ontext\x18\x01 \x01(\x0b\x32!.console.v1.StaffWorkspaceContextR\x07\x63ontext\"\xfa\x04\n\x1aManagedProviderAccessGrant\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12\x1a\n\x08provider\x18\x02 \x01(\tR\x08provider\x12 \n\x0b\x65nvironment\x18\x03 \x01(\tR\x0b\x65nvironment\x12\x18\n\x07\x65nabled\x18\x04 \x01(\x08R\x07\x65nabled\x12\x1d\n\ngranted_by\x18\x05 \x01(\tR\tgrantedBy\x12\x12\n\x04note\x18\x06 \x01(\tR\x04note\x12\x39\n\ncreated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x19\n\x08grant_id\x18\t \x01(\tR\x07grantId\x12\x1a\n\x08revision\x18\n \x01(\x04R\x08revision\x12<\n\x05state\x18\x0b \x01(\x0e\x32&.console.v1.ManagedProviderAccessStateR\x05state\x12\x39\n\nexpires_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x30\n\x14gateway_sync_outcome\x18\r \x01(\tR\x12gatewaySyncOutcome\x12-\n\x12\x64urable_enrollment\x18\x0e \x01(\x08R\x11\x64urableEnrollment\x12!\n\x0cworkspace_id\x18\x0f \x01(\tR\x0bworkspaceId\"Q\n&ListManagedProviderAccessGrantsRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\"\x9f\x01\n\'ListManagedProviderAccessGrantsResponse\x12>\n\x06grants\x18\x01 \x03(\x0b\x32&.console.v1.ManagedProviderAccessGrantR\x06grants\x12\x34\n\x16gateway_sync_available\x18\x02 \x01(\x08R\x14gatewaySyncAvailable\"\xdd\x03\n\'UpsertManagedProviderAccessGrantRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12#\n\x08provider\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08provider\x12)\n\x0b\x65nvironment\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x65nvironment\x12\x18\n\x07\x65nabled\x18\x04 \x01(\x08R\x07\x65nabled\x12\x1e\n\x04note\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x04note\x12+\n\x11\x65xpected_revision\x18\x06 \x01(\x04R\x10\x65xpectedRevision\x12<\n\x05state\x18\x07 \x01(\x0e\x32&.console.v1.ManagedProviderAccessStateR\x05state\x12\x39\n\nexpires_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12-\n\x12\x64urable_enrollment\x18\t \x01(\x08R\x11\x64urableEnrollment\x12!\n\x0cworkspace_id\x18\n \x01(\tR\x0bworkspaceId\"h\n(UpsertManagedProviderAccessGrantResponse\x12<\n\x05grant\x18\x01 \x01(\x0b\x32&.console.v1.ManagedProviderAccessGrantR\x05grant\"\xf8\x01\n\'RevokeManagedProviderAccessGrantRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12#\n\x08provider\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08provider\x12)\n\x0b\x65nvironment\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x65nvironment\x12\x1e\n\x04note\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x04note\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x04R\x10\x65xpectedRevision\"h\n(RevokeManagedProviderAccessGrantResponse\x12<\n\x05grant\x18\x01 \x01(\x0b\x32&.console.v1.ManagedProviderAccessGrantR\x05grant\"\xeb\x02\n\x17InferenceProviderTarget\x12\x1a\n\x08provider\x18\x01 \x01(\tR\x08provider\x12\x14\n\x05model\x18\x02 \x01(\tR\x05model\x12!\n\x0c\x64isplay_name\x18\x03 \x01(\tR\x0b\x64isplayName\x12\"\n\x0c\x63\x61pabilities\x18\x04 \x03(\tR\x0c\x63\x61pabilities\x12\x32\n\x15\x63ontext_window_tokens\x18\x05 \x01(\x04R\x13\x63ontextWindowTokens\x12!\n\x0cpricing_tier\x18\x06 \x01(\tR\x0bpricingTier\x12!\n\x0clatency_tier\x18\x07 \x01(\tR\x0blatencyTier\x12\x18\n\x07regions\x18\x08 \x03(\tR\x07regions\x12\x14\n\x05ready\x18\t \x01(\x08R\x05ready\x12-\n\x12unavailable_reason\x18\n \x01(\tR\x11unavailableReason\"\x9d\x02\n\x1aStaffInferencePurposeRoute\x12\x42\n\x07purpose\x18\x01 \x01(\x0e\x32(.console.v1.StaffInferenceRoutingPurposeR\x07purpose\x12J\n\x0eprimary_target\x18\x02 \x01(\x0b\x32#.console.v1.InferenceProviderTargetR\rprimaryTarget\x12H\n\rcanary_target\x18\x03 \x01(\x0b\x32#.console.v1.InferenceProviderTargetR\x0c\x63\x61naryTarget\x12%\n\x0e\x63\x61nary_percent\x18\x04 \x01(\rR\rcanaryPercent\"\xfb\x02\n\x1cStaffInferenceRoutingProfile\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12\x1a\n\x08provider\x18\x02 \x01(\tR\x08provider\x12\x14\n\x05model\x18\x03 \x01(\tR\x05model\x12\x1a\n\x08revision\x18\x04 \x01(\x04R\x08revision\x12\x1d\n\nupdated_by\x18\x05 \x01(\tR\tupdatedBy\x12\x12\n\x04note\x18\x06 \x01(\tR\x04note\x12\x39\n\nupdated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12>\n\x06routes\x18\x08 \x03(\x0b\x32&.console.v1.StaffInferencePurposeRouteR\x06routes\x12\x36\n\x17uses_deployment_default\x18\t \x01(\x08R\x15usesDeploymentDefault\"\xc7\x02\n\x1aStaffInferenceRoutingEvent\x12\x1a\n\x08revision\x18\x01 \x01(\x04R\x08revision\x12>\n\x06routes\x18\x02 \x03(\x0b\x32&.console.v1.StaffInferencePurposeRouteR\x06routes\x12\x36\n\x17uses_deployment_default\x18\x03 \x01(\x08R\x15usesDeploymentDefault\x12,\n\x12\x61\x63tor_principal_id\x18\x04 \x01(\tR\x10\x61\x63torPrincipalId\x12\x12\n\x04note\x18\x05 \x01(\tR\x04note\x12\x16\n\x06\x61\x63tion\x18\x06 \x01(\tR\x06\x61\x63tion\x12;\n\x0boccurred_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\"(\n&GetStaffInferenceRoutingProfileRequest\"\xa4\x04\n\'GetStaffInferenceRoutingProfileResponse\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12P\n\x11\x61vailable_targets\x18\x02 \x03(\x0b\x32#.console.v1.InferenceProviderTargetR\x10\x61vailableTargets\x12J\n\x0e\x64\x65\x66\x61ult_target\x18\x03 \x01(\x0b\x32#.console.v1.InferenceProviderTargetR\rdefaultTarget\x12N\n\x10\x65\x66\x66\x65\x63tive_target\x18\x04 \x01(\x0b\x32#.console.v1.InferenceProviderTargetR\x0f\x65\x66\x66\x65\x63tiveTarget\x12\x42\n\x07profile\x18\x05 \x01(\x0b\x32(.console.v1.StaffInferenceRoutingProfileR\x07profile\x12K\n\rrecent_events\x18\x06 \x03(\x0b\x32&.console.v1.StaffInferenceRoutingEventR\x0crecentEvents\x12Q\n\x10\x65\x66\x66\x65\x63tive_routes\x18\x07 \x03(\x0b\x32&.console.v1.StaffInferencePurposeRouteR\x0f\x65\x66\x66\x65\x63tiveRoutes\"\xc1\x03\n)UpdateStaffInferenceRoutingProfileRequest\x12\x1a\n\x08provider\x18\x01 \x01(\tR\x08provider\x12\x14\n\x05model\x18\x02 \x01(\tR\x05model\x12+\n\x11\x65xpected_revision\x18\x03 \x01(\x04R\x10\x65xpectedRevision\x12\x1e\n\x04note\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x04note\x12\x42\n\x07purpose\x18\x05 \x01(\x0e\x32(.console.v1.StaffInferenceRoutingPurposeR\x07purpose\x12(\n\x10reset_to_default\x18\x06 \x01(\x08R\x0eresetToDefault\x12\'\n\x0f\x63\x61nary_provider\x18\x07 \x01(\tR\x0e\x63\x61naryProvider\x12!\n\x0c\x63\x61nary_model\x18\x08 \x01(\tR\x0b\x63\x61naryModel\x12.\n\x0e\x63\x61nary_percent\x18\t \x01(\rB\x07\xbaH\x04*\x02\x18\x32R\rcanaryPercent\x12+\n\x11rollback_revision\x18\n \x01(\x04R\x10rollbackRevision\"\xd0\x01\n*UpdateStaffInferenceRoutingProfileResponse\x12J\n\x07profile\x18\x01 \x01(\x0b\x32(.console.v1.StaffInferenceRoutingProfileB\x06\xbaH\x03\xc8\x01\x01R\x07profile\x12V\n\x10\x65\x66\x66\x65\x63tive_target\x18\x02 \x01(\x0b\x32#.console.v1.InferenceProviderTargetB\x06\xbaH\x03\xc8\x01\x01R\x0f\x65\x66\x66\x65\x63tiveTarget\"\xd2\x01\n\x1bListScenarioFixturesRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x12\n\x04tags\x18\x03 \x03(\tR\x04tags\x12 \n\x05limit\x18\x04 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xf4\x03(\x00R\x05limit\x12\x1f\n\x06offset\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"\x91\x01\n\x1cListScenarioFixturesResponse\x12\x37\n\x08\x66ixtures\x18\x01 \x03(\x0b\x32\x1b.console.v1.ScenarioFixtureR\x08\x66ixtures\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"\xe7\x02\n\x1dPromoteScenarioFixtureRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\x04name\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12,\n\rscenario_json\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cscenarioJson\x12\x37\n\x18recorded_from_session_id\x18\x05 \x01(\tR\x15recordedFromSessionId\x12%\n\x0eoriginal_model\x18\x06 \x01(\tR\roriginalModel\x12)\n\x10retention_policy\x18\x07 \x01(\tR\x0fretentionPolicy\x12\x12\n\x04tags\x18\x08 \x03(\tR\x04tags\"W\n\x1ePromoteScenarioFixtureResponse\x12\x35\n\x07\x66ixture\x18\x01 \x01(\x0b\x32\x1b.console.v1.ScenarioFixtureR\x07\x66ixture\"\x98\x02\n\x1e\x43ompareScenarioFixturesRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12/\n\x0f\x62\x61se_fixture_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rbaseFixtureId\x12\x33\n\x11target_fixture_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0ftargetFixtureId\x12\x32\n\x0fmax_differences\x18\x05 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x0emaxDifferences\"\x81\x04\n\x1f\x43ompareScenarioFixturesResponse\x12>\n\x0c\x62\x61se_fixture\x18\x01 \x01(\x0b\x32\x1b.console.v1.ScenarioFixtureR\x0b\x62\x61seFixture\x12\x42\n\x0etarget_fixture\x18\x02 \x01(\x0b\x32\x1b.console.v1.ScenarioFixtureR\rtargetFixture\x12\x39\n\x14shared_prefix_frames\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x12sharedPrefixFrames\x12\x31\n\x10\x62\x61se_frame_count\x18\x04 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0e\x62\x61seFrameCount\x12\x35\n\x12target_frame_count\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x10targetFrameCount\x12\x32\n\x15\x66irst_divergence_path\x18\x06 \x01(\tR\x13\x66irstDivergencePath\x12\x38\n\x18\x66irst_divergence_summary\x18\x07 \x01(\tR\x16\x66irstDivergenceSummary\x12G\n\x0b\x64ifferences\x18\x08 \x03(\x0b\x32%.console.v1.ScenarioFixtureDifferenceR\x0b\x64ifferences\"\x9f\x01\n\x19ScenarioFixtureDifference\x12\x12\n\x04path\x18\x01 \x01(\tR\x04path\x12\x12\n\x04kind\x18\x02 \x01(\tR\x04kind\x12\x1d\n\nbase_value\x18\x03 \x01(\tR\tbaseValue\x12!\n\x0ctarget_value\x18\x04 \x01(\tR\x0btargetValue\x12\x18\n\x07summary\x18\x05 \x01(\tR\x07summary\"\xc0\x04\n\x0fScenarioFixture\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x03 \x01(\tR\x0bworkspaceId\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12\x37\n\x18recorded_from_session_id\x18\x05 \x01(\tR\x15recordedFromSessionId\x12;\n\x0brecorded_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nrecordedAt\x12%\n\x0eoriginal_model\x18\x07 \x01(\tR\roriginalModel\x12&\n\ntool_count\x18\x08 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\ttoolCount\x12(\n\x0b\x66rame_count\x18\t \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\nframeCount\x12\x19\n\x08gcs_path\x18\n \x01(\tR\x07gcsPath\x12)\n\x10retention_policy\x18\x0b \x01(\tR\x0fretentionPolicy\x12\x12\n\x04tags\x18\x0c \x03(\tR\x04tags\x12\x39\n\ncreated_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"\xa1\x01\n\rConsoleMetric\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x14\n\x05value\x18\x03 \x01(\tR\x05value\x12\x12\n\x04unit\x18\x04 \x01(\tR\x04unit\x12\x16\n\x06\x64\x65tail\x18\x05 \x01(\tR\x06\x64\x65tail\x12\x14\n\x05trend\x18\x06 \x01(\tR\x05trend\x12\x12\n\x04tone\x18\x07 \x01(\tR\x04tone\"\xf5\x04\n\x07\x41iAsset\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x1d\n\nasset_type\x18\x03 \x01(\tR\tassetType\x12\x14\n\x05owner\x18\x04 \x01(\tR\x05owner\x12\x17\n\x07team_id\x18\x05 \x01(\tR\x06teamId\x12 \n\x0b\x65nvironment\x18\x06 \x01(\tR\x0b\x65nvironment\x12\x16\n\x06source\x18\x07 \x01(\tR\x06source\x12\x16\n\x06status\x18\x08 \x01(\tR\x06status\x12\x33\n\nrisk_level\x18\t \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12!\n\x0cpolicy_state\x18\n \x01(\tR\x0bpolicyState\x12+\n\tspend_usd\x18\x0b \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x08spendUsd\x12,\n\rrequest_count\x18\x0c \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0crequestCount\x12(\n\x0b\x65rror_count\x18\r \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\nerrorCount\x12-\n\x0elatency_p95_ms\x18\x0e \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0clatencyP95Ms\x12<\n\x0clast_seen_at\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nlastSeenAt\x12\x12\n\x04tags\x18\x10 \x03(\tR\x04tags\x12H\n\x11related_resources\x18\x11 \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x10relatedResources\"\xf3\x03\n\rActivityEvent\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1d\n\nevent_type\x18\x02 \x01(\tR\teventType\x12\x14\n\x05title\x18\x03 \x01(\tR\x05title\x12\x16\n\x06\x64\x65tail\x18\x04 \x01(\tR\x06\x64\x65tail\x12\x19\n\x08\x61sset_id\x18\x05 \x01(\tR\x07\x61ssetId\x12\x19\n\x08\x61gent_id\x18\x06 \x01(\tR\x07\x61gentId\x12\x19\n\x08trace_id\x18\x07 \x01(\tR\x07traceId\x12\x1f\n\x0b\x61pproval_id\x18\x08 \x01(\tR\napprovalId\x12\x14\n\x05\x61\x63tor\x18\t \x01(\tR\x05\x61\x63tor\x12\x16\n\x06status\x18\n \x01(\tR\x06status\x12\x33\n\nrisk_level\x18\x0b \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12)\n\x08\x63ost_usd\x18\x0c \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x07\x63ostUsd\x12;\n\x0boccurred_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12H\n\x11related_resources\x18\x0e \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x10relatedResources\"\xc7\x04\n\nEvalResult\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x19\n\x08trace_id\x18\x02 \x01(\tR\x07traceId\x12\x19\n\x08\x61sset_id\x18\x03 \x01(\tR\x07\x61ssetId\x12\x19\n\x08suite_id\x18\x04 \x01(\tR\x07suiteId\x12\x16\n\x06scorer\x18\x05 \x01(\tR\x06scorer\x12-\n\x05score\x18\x06 \x01(\x01\x42\x17\xbaH\x14\x12\x12\x19\x00\x00\x00\x00\x00\x00\xf0?)\x00\x00\x00\x00\x00\x00\x00\x00R\x05score\x12\x35\n\tthreshold\x18\x07 \x01(\x01\x42\x17\xbaH\x14\x12\x12\x19\x00\x00\x00\x00\x00\x00\xf0?)\x00\x00\x00\x00\x00\x00\x00\x00R\tthreshold\x12\x16\n\x06status\x18\x08 \x01(\tR\x06status\x12\x33\n\nrisk_level\x18\t \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12\x14\n\x05model\x18\n \x01(\tR\x05model\x12\x1a\n\x08provider\x18\x0b \x01(\tR\x08provider\x12<\n\x12quality_per_dollar\x18\x0c \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x10qualityPerDollar\x12\x16\n\x06\x64\x65tail\x18\r \x01(\tR\x06\x64\x65tail\x12;\n\x0boccurred_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12H\n\x11related_resources\x18\x0f \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x10relatedResources\"\xf5\n\n\tCostUsage\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x19\n\x08trace_id\x18\x02 \x01(\tR\x07traceId\x12\x19\n\x08\x61sset_id\x18\x03 \x01(\tR\x07\x61ssetId\x12\x1a\n\x08provider\x18\x04 \x01(\tR\x08provider\x12\x14\n\x05model\x18\x05 \x01(\tR\x05model\x12+\n\tspend_usd\x18\x06 \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x08spendUsd\x12*\n\x0cinput_tokens\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0binputTokens\x12,\n\routput_tokens\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0coutputTokens\x12,\n\rrequest_count\x18\t \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0crequestCount\x12&\n\nlatency_ms\x18\n \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\tlatencyMs\x12\x16\n\x06status\x18\x0b \x01(\tR\x06status\x12\x33\n\nrisk_level\x18\x0c \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12\x16\n\x06\x64\x65tail\x18\r \x01(\tR\x06\x64\x65tail\x12;\n\x0boccurred_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12H\n\x11related_resources\x18\x0f \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x10relatedResources\x12*\n\x0cspend_micros\x18\x10 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0bspendMicros\x12\x1d\n\nproject_id\x18\x11 \x01(\tR\tprojectId\x12\x1e\n\nrepository\x18\x12 \x01(\tR\nrepository\x12\x17\n\x07team_id\x18\x13 \x01(\tR\x06teamId\x12\x19\n\x08owner_id\x18\x14 \x01(\tR\x07ownerId\x12\x15\n\x06run_id\x18\x15 \x01(\tR\x05runId\x12\x30\n\x14\x61ttribution_trace_id\x18\x16 \x01(\tR\x12\x61ttributionTraceId\x12\x1d\n\nrequest_id\x18\x17 \x01(\tR\trequestId\x12#\n\rdeployment_id\x18\x18 \x01(\tR\x0c\x64\x65ploymentId\x12\x15\n\x06job_id\x18\x19 \x01(\tR\x05jobId\x12#\n\rsource_health\x18\x1a \x01(\tR\x0csourceHealth\x12\'\n\x0fpricing_version\x18\x1b \x01(\tR\x0epricingVersion\x12;\n\x0bingested_at\x18\x1c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\ningestedAt\x12\x1f\n\x0brecord_kind\x18\x1d \x01(\tR\nrecordKind\x12\x35\n\x12spend_today_micros\x18\x1e \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x10spendTodayMicros\x12+\n\x11upstream_provider\x18\x1f \x01(\tR\x10upstreamProvider\x12\x1e\n\nprovenance\x18 \x01(\tR\nprovenance\x12\x33\n\x11\x63\x61\x63he_read_tokens\x18! \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0f\x63\x61\x63heReadTokens\x12\x35\n\x12\x63\x61\x63he_write_tokens\x18\" \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x10\x63\x61\x63heWriteTokens\x12%\n\x0epricing_source\x18# \x01(\tR\rpricingSource\x12!\n\x0cusage_source\x18$ \x01(\tR\x0busageSource\"\xa5\x0e\n\x0f\x41uthorityLedger\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x19\n\x08trace_id\x18\x02 \x01(\tR\x07traceId\x12\x17\n\x07span_id\x18\x03 \x01(\tR\x06spanId\x12\x1b\n\taction_id\x18\x04 \x01(\tR\x08\x61\x63tionId\x12\x1f\n\x0b\x61pproval_id\x18\x05 \x01(\tR\napprovalId\x12\x1e\n\x0b\x63ost_row_id\x18\x06 \x01(\tR\tcostRowId\x12\x19\n\x08\x61gent_id\x18\x07 \x01(\tR\x07\x61gentId\x12\x1d\n\nagent_name\x18\x08 \x01(\tR\tagentName\x12&\n\x0frun_as_identity\x18\t \x01(\tR\rrunAsIdentity\x12\x17\n\x07tool_id\x18\n \x01(\tR\x06toolId\x12\x1b\n\ttool_name\x18\x0b \x01(\tR\x08toolName\x12!\n\x0c\x63onnector_id\x18\x0c \x01(\tR\x0b\x63onnectorId\x12%\n\x0e\x63onnector_name\x18\r \x01(\tR\rconnectorName\x12-\n\x12\x63onnector_provider\x18\x0e \x01(\tR\x11\x63onnectorProvider\x12%\n\x0e\x63redential_ref\x18\x0f \x01(\tR\rcredentialRef\x12$\n\x0egrant_lease_id\x18\x10 \x01(\tR\x0cgrantLeaseId\x12!\n\x0c\x61uthority_id\x18\x11 \x01(\tR\x0b\x61uthorityId\x12\'\n\x0f\x61uthority_label\x18\x12 \x01(\tR\x0e\x61uthorityLabel\x12%\n\x0e\x61uthority_type\x18\x13 \x01(\tR\rauthorityType\x12\'\n\x0f\x61uthority_scope\x18\x14 \x01(\tR\x0e\x61uthorityScope\x12\x16\n\x06issuer\x18\x15 \x01(\tR\x06issuer\x12\x39\n\nexpires_at\x18\x16 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\'\n\x0f\x61uthority_state\x18\x17 \x01(\tR\x0e\x61uthorityState\x12+\n\x11\x61ttestation_state\x18\x18 \x01(\tR\x10\x61ttestationState\x12/\n\x13\x61ttestation_summary\x18\x19 \x01(\tR\x12\x61ttestationSummary\x12\x1f\n\x0btrust_state\x18\x1a \x01(\tR\ntrustState\x12%\n\x0e\x65vidence_state\x18\x1b \x01(\tR\revidenceState\x12\'\n\x0f\x65vidence_source\x18\x1c \x01(\tR\x0e\x65videnceSource\x12!\n\x0c\x63ost_posture\x18\x1d \x01(\tR\x0b\x63ostPosture\x12)\n\x08\x63ost_usd\x18\x1e \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x07\x63ostUsd\x12*\n\x0cinput_tokens\x18\x1f \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0binputTokens\x12,\n\routput_tokens\x18 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0coutputTokens\x12\x16\n\x06status\x18! \x01(\tR\x06status\x12#\n\rpolicy_reason\x18\" \x01(\tR\x0cpolicyReason\x12+\n\x11required_evidence\x18# \x03(\tR\x10requiredEvidence\x12\x33\n\nrisk_level\x18$ \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12\x16\n\x06\x64\x65tail\x18% \x01(\tR\x06\x64\x65tail\x12\x1f\n\x0bnext_action\x18& \x01(\tR\nnextAction\x12;\n\x0boccurred_at\x18\' \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12\x43\n\x0cscope_ledger\x18( \x03(\x0b\x32 .console.v1.AuthorityScopeLedgerR\x0bscopeLedger\x12O\n\x10missing_evidence\x18) \x03(\x0b\x32$.console.v1.AuthorityMissingEvidenceR\x0fmissingEvidence\x12H\n\x0e\x64\x65nied_actions\x18* \x03(\x0b\x32!.console.v1.AuthorityDeniedActionR\rdeniedActions\x12@\n\revidence_refs\x18+ \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\x12L\n\revidence_gaps\x18, \x03(\x0b\x32\'.console.v1.SecurityDecisionEvidenceGapR\x0c\x65videnceGaps\"\xfe\x01\n\x14\x41uthorityScopeLedger\x12\x14\n\x05group\x18\x01 \x01(\tR\x05group\x12\x18\n\x07granted\x18\x02 \x03(\tR\x07granted\x12\x1c\n\texercised\x18\x03 \x03(\tR\texercised\x12\x16\n\x06\x64\x65nied\x18\x04 \x03(\tR\x06\x64\x65nied\x12\x18\n\x07missing\x18\x05 \x03(\tR\x07missing\x12\x14\n\x05state\x18\x06 \x01(\tR\x05state\x12#\n\rpolicy_reason\x18\x07 \x01(\tR\x0cpolicyReason\x12+\n\x11required_evidence\x18\x08 \x03(\tR\x10requiredEvidence\"\xe0\x01\n\x18\x41uthorityMissingEvidence\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x14\n\x05state\x18\x03 \x01(\tR\x05state\x12\x14\n\x05owner\x18\x04 \x01(\tR\x05owner\x12\'\n\x0frecovery_action\x18\x05 \x01(\tR\x0erecoveryAction\x12\x16\n\x06reason\x18\x06 \x01(\tR\x06reason\x12\x16\n\x06source\x18\x07 \x01(\tR\x06source\x12\x19\n\x08span_ids\x18\x08 \x03(\tR\x07spanIds\"\xf5\x01\n\x15\x41uthorityDeniedAction\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1b\n\taction_id\x18\x02 \x01(\tR\x08\x61\x63tionId\x12\x1b\n\ttool_name\x18\x03 \x01(\tR\x08toolName\x12#\n\rpolicy_reason\x18\x04 \x01(\tR\x0cpolicyReason\x12+\n\x11required_evidence\x18\x05 \x03(\tR\x10requiredEvidence\x12@\n\revidence_refs\x18\x06 \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\"\xb3\x0c\n\x14\x41gentWorkforceRecord\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0forganization_id\x18\x03 \x01(\tR\x0eorganizationId\x12\x19\n\x08\x61gent_id\x18\x04 \x01(\tR\x07\x61gentId\x12\x1d\n\nagent_name\x18\x05 \x01(\tR\tagentName\x12\x18\n\x07runtime\x18\x06 \x01(\tR\x07runtime\x12\x14\n\x05owner\x18\x07 \x01(\tR\x05owner\x12\x16\n\x06status\x18\x08 \x01(\tR\x06status\x12\x1f\n\x0bqueue_state\x18\t \x01(\tR\nqueueState\x12\x33\n\nrisk_level\x18\n \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12!\n\x0c\x63urrent_work\x18\x0b \x01(\tR\x0b\x63urrentWork\x12H\n\x0frun_as_identity\x18\x0c \x01(\x0b\x32 .console.v1.RunAsIdentitySummaryR\rrunAsIdentity\x12O\n\x11security_decision\x18\r \x01(\x0b\x32\".console.v1.SecurityDecisionPacketR\x10securityDecision\x12Q\n\x0f\x61\x63tion_evidence\x18\x0e \x03(\x0b\x32(.console.v1.AgentWorkforceActionEvidenceR\x0e\x61\x63tionEvidence\x12Y\n\x14\x63redential_authority\x18\x0f \x01(\x0b\x32&.console.v1.CredentialAuthoritySummaryR\x13\x63redentialAuthority\x12\x44\n\rcost_evidence\x18\x10 \x01(\x0b\x32\x1f.console.v1.CostEvidenceSummaryR\x0c\x63ostEvidence\x12\x1f\n\x0bnext_action\x18\x11 \x01(\tR\nnextAction\x12)\n\x10missing_evidence\x18\x12 \x03(\tR\x0fmissingEvidence\x12;\n\x0boccurred_at\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12W\n\x11\x64\x65\x62ug_identifiers\x18\x14 \x01(\x0b\x32*.console.v1.AgentWorkforceDebugIdentifiersR\x10\x64\x65\x62ugIdentifiers\x12T\n\x10question_summary\x18\x15 \x01(\x0b\x32).console.v1.AgentWorkforceQuestionSummaryR\x0fquestionSummary\x12`\n\x14\x61pproval_disablement\x18\x16 \x01(\x0b\x32-.console.v1.AgentWorkforceApprovalDisablementR\x13\x61pprovalDisablement\x12S\n\x12\x65ndpoint_guardrail\x18\x17 \x01(\x0b\x32$.console.v1.EndpointGuardrailSummaryR\x11\x65ndpointGuardrail\x12K\n\rproof_summary\x18\x18 \x01(\x0b\x32&.console.v1.AgentWorkforceProofSummaryR\x0cproofSummary\x12\x30\n\x14\x61pproval_queue_state\x18\x19 \x01(\tR\x12\x61pprovalQueueState\x12q\n\x1b\x61\x63tion_authority_boundaries\x18\x1a \x03(\x0b\x32\x31.console.v1.AgentWorkforceActionAuthorityBoundaryR\x19\x61\x63tionAuthorityBoundaries\x12T\n\x10source_readiness\x18\x1b \x03(\x0b\x32).console.v1.AgentWorkforceSourceReadinessR\x0fsourceReadiness\"\xbc\x03\n\x1d\x41gentWorkforceSourceReadiness\x12\x16\n\x06source\x18\x01 \x01(\tR\x06source\x12\x1c\n\tcollector\x18\x02 \x01(\tR\tcollector\x12\x16\n\x06status\x18\x03 \x01(\tR\x06status\x12%\n\x0eproof_strength\x18\x04 \x01(\tR\rproofStrength\x12\x16\n\x06\x64\x65tail\x18\x05 \x01(\tR\x06\x64\x65tail\x12\'\n\x0f\x62locking_reason\x18\x06 \x01(\tR\x0e\x62lockingReason\x12-\n\x12\x61pproval_authority\x18\x07 \x01(\x08R\x11\x61pprovalAuthority\x12\x32\n\x15trusted_metadata_only\x18\x08 \x01(\x08R\x13trustedMetadataOnly\x12#\n\rmissing_proof\x18\t \x03(\tR\x0cmissingProof\x12\x1b\n\tjoin_keys\x18\n \x03(\tR\x08joinKeys\x12@\n\revidence_refs\x18\x0b \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\"\xc4\x03\n\x1a\x41gentWorkforceProofSummary\x12\x38\n\x18principal_evidence_state\x18\x01 \x01(\tR\x16principalEvidenceState\x12:\n\x19\x63redential_evidence_state\x18\x02 \x01(\tR\x17\x63redentialEvidenceState\x12.\n\x13\x63ost_evidence_state\x18\x03 \x01(\tR\x11\x63ostEvidenceState\x12\x32\n\x15\x61\x63tion_evidence_state\x18\x04 \x01(\tR\x13\x61\x63tionEvidenceState\x12\x38\n\x18\x65ndpoint_guardrail_state\x18\x05 \x01(\tR\x16\x65ndpointGuardrailState\x12%\n\x0e\x61pproval_ready\x18\x06 \x01(\x08R\rapprovalReady\x12)\n\x10\x62locking_reasons\x18\x07 \x03(\tR\x0f\x62lockingReasons\x12@\n\revidence_refs\x18\x08 \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\"\xeb\x02\n\"AgentWorkforceApprovalQueueSummary\x12,\n\rtotal_records\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0ctotalRecords\x12R\n\rstate_buckets\x18\x02 \x03(\x0b\x32-.console.v1.AgentWorkforceApprovalStateBucketR\x0cstateBuckets\x12X\n\x0f\x62locker_buckets\x18\x03 \x03(\x0b\x32/.console.v1.AgentWorkforceApprovalBlockerBucketR\x0e\x62lockerBuckets\x12i\n\x18missing_evidence_buckets\x18\x04 \x03(\x0b\x32/.console.v1.AgentWorkforceMissingEvidenceBucketR\x16missingEvidenceBuckets\"\x8f\x01\n!AgentWorkforceApprovalStateBucket\x12\x14\n\x05state\x18\x01 \x01(\tR\x05state\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x1d\n\x05\x63ount\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05\x63ount\x12\x1f\n\x0bnext_action\x18\x04 \x01(\tR\nnextAction\"\xaf\x01\n#AgentWorkforceApprovalBlockerBucket\x12\x12\n\x04\x63ode\x18\x01 \x01(\tR\x04\x63ode\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x16\n\x06\x64\x65tail\x18\x03 \x01(\tR\x06\x64\x65tail\x12\'\n\x0frecovery_action\x18\x04 \x01(\tR\x0erecoveryAction\x12\x1d\n\x05\x63ount\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05\x63ount\"\xa8\x02\n%AgentWorkforceActionAuthorityBoundary\x12!\n\x0c\x61\x63tion_label\x18\x01 \x01(\tR\x0b\x61\x63tionLabel\x12\x30\n\x14\x61pproval_queue_state\x18\x02 \x01(\tR\x12\x61pprovalQueueState\x12+\n\x11\x61uthority_subject\x18\x03 \x01(\tR\x10\x61uthoritySubject\x12/\n\x13\x63redential_provider\x18\x04 \x01(\tR\x12\x63redentialProvider\x12+\n\x11unproven_boundary\x18\x05 \x01(\tR\x10unprovenBoundary\x12\x1f\n\x0bnext_action\x18\x06 \x01(\tR\nnextAction\"\x83\x01\n#AgentWorkforceMissingEvidenceBucket\x12\x14\n\x05label\x18\x01 \x01(\tR\x05label\x12\'\n\x0frecovery_action\x18\x02 \x01(\tR\x0erecoveryAction\x12\x1d\n\x05\x63ount\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05\x63ount\"\xc9\x03\n\x18\x45ndpointGuardrailSummary\x12\x16\n\x06status\x18\x01 \x01(\tR\x06status\x12\x1f\n\x0b\x65ndpoint_id\x18\x02 \x01(\tR\nendpointId\x12\x14\n\x05route\x18\x03 \x01(\tR\x05route\x12\x1a\n\x08\x65xposure\x18\x04 \x01(\tR\x08\x65xposure\x12)\n\x10\x61llowlist_source\x18\x05 \x01(\tR\x0f\x61llowlistSource\x12+\n\x11resolution_policy\x18\x06 \x01(\tR\x10resolutionPolicy\x12%\n\x0e\x62locked_reason\x18\x07 \x01(\tR\rblockedReason\x12)\n\x10missing_controls\x18\x08 \x03(\tR\x0fmissingControls\x12@\n\revidence_refs\x18\t \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\x12)\n\x10\x61llowlist_status\x18\n \x01(\tR\x0f\x61llowlistStatus\x12+\n\x11resolution_status\x18\x0b \x01(\tR\x10resolutionStatus\"\x81\x02\n\x1d\x41gentWorkforceQuestionSummary\x12(\n\x10\x63\x61n_approve_this\x18\x01 \x01(\tR\x0e\x63\x61nApproveThis\x12)\n\x10\x65vidence_missing\x18\x02 \x01(\tR\x0f\x65videnceMissing\x12\x1b\n\tagent_saw\x18\x03 \x01(\tR\x08\x61gentSaw\x12)\n\x11\x61gent_tried_to_do\x18\x04 \x01(\tR\x0e\x61gentTriedToDo\x12\x1d\n\nwas_denied\x18\x05 \x01(\tR\twasDenied\x12$\n\x0eshould_do_next\x18\x06 \x01(\tR\x0cshouldDoNext\"\xfa\x01\n!AgentWorkforceApprovalDisablement\x12\x12\n\x04\x63ode\x18\x01 \x01(\tR\x04\x63ode\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x16\n\x06\x64\x65tail\x18\x03 \x01(\tR\x06\x64\x65tail\x12\'\n\x0frecovery_action\x18\x04 \x01(\tR\x0erecoveryAction\x12(\n\x10\x65vidence_gap_ids\x18\x05 \x03(\tR\x0e\x65videnceGapIds\x12@\n\revidence_refs\x18\x06 \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\"\xcb\x01\n\x14RunAsIdentitySummary\x12\x16\n\x06status\x18\x01 \x01(\tR\x06status\x12\x1a\n\x08identity\x18\x02 \x01(\tR\x08identity\x12\x16\n\x06source\x18\x03 \x01(\tR\x06source\x12%\n\x0emissing_reason\x18\x04 \x01(\tR\rmissingReason\x12@\n\revidence_refs\x18\x05 \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\"\xbc\x05\n\x1c\x41gentWorkforceActionEvidence\x12\x1b\n\taction_id\x18\x01 \x01(\tR\x08\x61\x63tionId\x12\x1b\n\ttool_name\x18\x02 \x01(\tR\x08toolName\x12!\n\x0c\x63onnector_id\x18\x03 \x01(\tR\x0b\x63onnectorId\x12\x1e\n\ncapability\x18\x04 \x01(\tR\ncapability\x12%\n\x0etarget_summary\x18\x05 \x01(\tR\rtargetSummary\x12\x1a\n\x08\x64\x65\x63ision\x18\x06 \x01(\tR\x08\x64\x65\x63ision\x12)\n\x10mutates_resource\x18\x07 \x01(\x08R\x0fmutatesResource\x12\x33\n\nrisk_level\x18\x08 \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12,\n\x12safe_arguments_ref\x18\t \x01(\tR\x10safeArgumentsRef\x12@\n\revidence_refs\x18\n \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\x12)\n\x10missing_evidence\x18\x0b \x03(\tR\x0fmissingEvidence\x12;\n\x0boccurred_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12\x38\n\x18principal_evidence_state\x18\r \x01(\tR\x16principalEvidenceState\x12:\n\x19\x63redential_evidence_state\x18\x0e \x01(\tR\x17\x63redentialEvidenceState\x12.\n\x13\x63ost_evidence_state\x18\x0f \x01(\tR\x11\x63ostEvidenceState\"\xe8\x02\n\x1a\x43redentialAuthoritySummary\x12\x16\n\x06status\x18\x01 \x01(\tR\x06status\x12\x18\n\x07subject\x18\x02 \x01(\tR\x07subject\x12\x1a\n\x08provider\x18\x03 \x01(\tR\x08provider\x12#\n\rauthority_ref\x18\x04 \x01(\tR\x0c\x61uthorityRef\x12\x39\n\nexpires_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12)\n\x10revocation_state\x18\x06 \x01(\tR\x0frevocationState\x12/\n\x13missing_authorities\x18\x07 \x03(\tR\x12missingAuthorities\x12@\n\revidence_refs\x18\x08 \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\"\xb3\x02\n\x13\x43ostEvidenceSummary\x12\x16\n\x06status\x18\x01 \x01(\tR\x06status\x12\x1a\n\x08provider\x18\x02 \x01(\tR\x08provider\x12\x14\n\x05model\x18\x03 \x01(\tR\x05model\x12*\n\x0cinput_tokens\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0binputTokens\x12,\n\routput_tokens\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0coutputTokens\x12\x34\n\x0etotal_cost_usd\x18\x06 \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x0ctotalCostUsd\x12\x1b\n\tmeter_ref\x18\x07 \x01(\tR\x08meterRef\x12%\n\x0emissing_reason\x18\x08 \x01(\tR\rmissingReason\"\x9b\x02\n\x1e\x41gentWorkforceDebugIdentifiers\x12\x19\n\x08span_ids\x18\x01 \x03(\tR\x07spanIds\x12*\n\x11raw_reference_ids\x18\x02 \x03(\tR\x0frawReferenceIds\x12(\n\x10source_event_ids\x18\x03 \x03(\tR\x0esourceEventIds\x12\x37\n\nattributes\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructR\nattributes\x12\x15\n\x06run_id\x18\x05 \x01(\tR\x05runId\x12\x1d\n\nsession_id\x18\x06 \x01(\tR\tsessionId\x12\x19\n\x08trace_id\x18\x07 \x01(\tR\x07traceId\"\xc1\x02\n\x0bRiskFinding\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05title\x18\x02 \x01(\tR\x05title\x12\x16\n\x06\x64\x65tail\x18\x03 \x01(\tR\x06\x64\x65tail\x12\x16\n\x06source\x18\x04 \x01(\tR\x06source\x12\x19\n\x08\x61sset_id\x18\x05 \x01(\tR\x07\x61ssetId\x12\x16\n\x06status\x18\x06 \x01(\tR\x06status\x12\x33\n\nrisk_level\x18\x07 \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12\x16\n\x06policy\x18\x08 \x01(\tR\x06policy\x12\x1f\n\x0bnext_action\x18\t \x01(\tR\nnextAction\x12;\n\x0b\x64\x65tected_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\ndetectedAt\"\xe1\x01\n\x1aIntegrationCredentialField\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x1a\n\x08required\x18\x03 \x01(\x08R\x08required\x12\x16\n\x06secret\x18\x04 \x01(\x08R\x06secret\x12<\n\x1a\x61\x63\x63\x65pted_reference_schemes\x18\x05 \x03(\tR\x18\x61\x63\x63\x65ptedReferenceSchemes\x12\'\n\x0f\x63redential_type\x18\x06 \x01(\tR\x0e\x63redentialType\"\xa3\n\n\x0fIntegrationTile\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x1a\n\x08provider\x18\x03 \x01(\tR\x08provider\x12\x1a\n\x08\x63\x61tegory\x18\x04 \x01(\tR\x08\x63\x61tegory\x12\x16\n\x06status\x18\x05 \x01(\tR\x06status\x12\x16\n\x06\x64\x65tail\x18\x06 \x01(\tR\x06\x64\x65tail\x12#\n\rsetup_command\x18\x07 \x01(\tR\x0csetupCommand\x12\x16\n\x06scopes\x18\x08 \x03(\tR\x06scopes\x12\"\n\x0c\x63\x61pabilities\x18\t \x03(\tR\x0c\x63\x61pabilities\x12<\n\x0clast_seen_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nlastSeenAt\x12-\n\x12\x63\x61talog_categories\x18\x0b \x03(\tR\x11\x63\x61talogCategories\x12-\n\x12runtime_executable\x18\x0c \x01(\x08R\x11runtimeExecutable\x12+\n\x11resource_families\x18\r \x03(\tR\x10resourceFamilies\x12\x33\n\x15verification_endpoint\x18\x0e \x01(\tR\x14verificationEndpoint\x12\'\n\x0flifecycle_stage\x18\x0f \x01(\tR\x0elifecycleStage\x12\'\n\x0frequired_scopes\x18\x10 \x03(\tR\x0erequiredScopes\x12\'\n\x0foptional_scopes\x18\x11 \x03(\tR\x0eoptionalScopes\x12%\n\x0emissing_scopes\x18\x12 \x03(\tR\rmissingScopes\x12\x1f\n\x0bsync_status\x18\x13 \x01(\tR\nsyncStatus\x12<\n\x0clast_sync_at\x18\x14 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nlastSyncAt\x12<\n\x0cnext_sync_at\x18\x15 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nnextSyncAt\x12:\n\x15last_sync_duration_ms\x18\x16 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x12lastSyncDurationMs\x12\x33\n\x11synced_item_count\x18\x17 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0fsyncedItemCount\x12\x1d\n\nsync_error\x18\x18 \x01(\tR\tsyncError\x12+\n\x11install_authority\x18\x19 \x01(\tR\x10installAuthority\x12\x34\n\x16operator_config_status\x18\x1a \x01(\tR\x14operatorConfigStatus\x12\x1b\n\tauth_type\x18\x1b \x01(\tR\x08\x61uthType\x12\'\n\x0foauth_supported\x18\x1c \x01(\x08R\x0eoauthSupported\x12S\n\x11\x63redential_fields\x18\x1d \x03(\x0b\x32&.console.v1.IntegrationCredentialFieldR\x10\x63redentialFields\x12X\n\x12\x63\x61talog_provenance\x18\x1e \x01(\x0b\x32).connectors.v1.ConnectorCatalogProvenanceR\x11\x63\x61talogProvenance\"\xd2\x01\n\x0eOnboardingTask\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05title\x18\x02 \x01(\tR\x05title\x12\x16\n\x06\x64\x65tail\x18\x03 \x01(\tR\x06\x64\x65tail\x12\x16\n\x06status\x18\x04 \x01(\tR\x06status\x12\x1b\n\tcta_label\x18\x05 \x01(\tR\x08\x63taLabel\x12\x18\n\x07\x63ommand\x18\x06 \x01(\tR\x07\x63ommand\x12\x33\n\x15required_integrations\x18\x07 \x03(\tR\x14requiredIntegrations\"\xc9\x06\n\x0eTraceDrilldown\x12\x19\n\x08trace_id\x18\x01 \x01(\tR\x07traceId\x12\x1b\n\troot_name\x18\x02 \x01(\tR\x08rootName\x12\x19\n\x08\x61sset_id\x18\x03 \x01(\tR\x07\x61ssetId\x12\x16\n\x06status\x18\x04 \x01(\tR\x06status\x12\x31\n\x10total_latency_ms\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0etotalLatencyMs\x12*\n\x0cinput_tokens\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0binputTokens\x12,\n\routput_tokens\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0coutputTokens\x12)\n\x08\x63ost_usd\x18\x08 \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x07\x63ostUsd\x12-\n\neval_score\x18\t \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\tevalScore\x12\x33\n\nrisk_level\x18\n \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12+\n\x05spans\x18\x0b \x03(\x0b\x32\x15.console.v1.TraceSpanR\x05spans\x12;\n\x0boccurred_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12<\n\x0b\x61nnotations\x18\r \x03(\x0b\x32\x1a.traces.v1.TraceAnnotationR\x0b\x61nnotations\x12)\n\x10suggested_labels\x18\x0e \x03(\tR\x0fsuggestedLabels\x12\'\n\x0f\x65vidence_source\x18\x0f \x01(\tR\x0e\x65videnceSource\x12V\n\x14\x63ompleteness_signals\x18\x10 \x03(\x0b\x32#.console.v1.TraceCompletenessSignalR\x13\x63ompletenessSignals\x12\\\n\x18security_decision_packet\x18\x11 \x01(\x0b\x32\".console.v1.SecurityDecisionPacketR\x16securityDecisionPacket\"\x85\x05\n\tTraceSpan\x12\x17\n\x07span_id\x18\x01 \x01(\tR\x06spanId\x12$\n\x0eparent_span_id\x18\x02 \x01(\tR\x0cparentSpanId\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12\x12\n\x04kind\x18\x04 \x01(\tR\x04kind\x12\x14\n\x05model\x18\x05 \x01(\tR\x05model\x12\x1a\n\x08provider\x18\x06 \x01(\tR\x08provider\x12\x16\n\x06status\x18\x07 \x01(\tR\x06status\x12&\n\nlatency_ms\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\tlatencyMs\x12)\n\x08\x63ost_usd\x18\t \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x07\x63ostUsd\x12*\n\x0cinput_tokens\x18\n \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0binputTokens\x12,\n\routput_tokens\x18\x0b \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0coutputTokens\x12/\n\x13governance_decision\x18\x0c \x01(\tR\x12governanceDecision\x12\x39\n\nstarted_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartedAt\x12\x35\n\x08\x65nded_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndedAt\x12\x37\n\nattributes\x18\x0f \x01(\x0b\x32\x17.google.protobuf.StructR\nattributes\x12>\n\nreferences\x18\x10 \x03(\x0b\x32\x1e.console.v1.TraceSpanReferenceR\nreferences\"q\n\x12TraceSpanReference\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12#\n\rresource_type\x18\x02 \x01(\tR\x0cresourceType\x12\x14\n\x05label\x18\x03 \x01(\tR\x05label\x12\x10\n\x03url\x18\x04 \x01(\tR\x03url\"\x8a\x01\n\x17TraceCompletenessSignal\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05title\x18\x02 \x01(\tR\x05title\x12\x16\n\x06\x64\x65tail\x18\x03 \x01(\tR\x06\x64\x65tail\x12\x16\n\x06status\x18\x04 \x01(\tR\x06status\x12\x19\n\x08span_ids\x18\x05 \x03(\tR\x07spanIds\"\xe1\x03\n\x16SecurityDecisionPacket\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1a\n\x08question\x18\x02 \x01(\tR\x08question\x12\x18\n\x07verdict\x18\x03 \x01(\tR\x07verdict\x12%\n\x0e\x61pproval_state\x18\x04 \x01(\tR\rapprovalState\x12/\n\x13governance_decision\x18\x05 \x01(\tR\x12governanceDecision\x12\x33\n\nrisk_level\x18\x06 \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12\x18\n\x07summary\x18\x07 \x01(\tR\x07summary\x12\x1f\n\x0bnext_action\x18\x08 \x01(\tR\nnextAction\x12)\n\x10\x62locking_reasons\x18\t \x03(\tR\x0f\x62lockingReasons\x12L\n\revidence_gaps\x18\n \x03(\x0b\x32\'.console.v1.SecurityDecisionEvidenceGapR\x0c\x65videnceGaps\x12@\n\revidence_refs\x18\x0b \x03(\x0b\x32\x1b.console.v1.RelatedResourceR\x0c\x65videnceRefs\"\xa4\x01\n\x1bSecurityDecisionEvidenceGap\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x14\n\x05state\x18\x03 \x01(\tR\x05state\x12\x16\n\x06reason\x18\x04 \x01(\tR\x06reason\x12\x16\n\x06source\x18\x05 \x01(\tR\x06source\x12\x19\n\x08span_ids\x18\x06 \x03(\tR\x07spanIds\"n\n\x0fRelatedResource\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12#\n\rresource_type\x18\x02 \x01(\tR\x0cresourceType\x12\x14\n\x05label\x18\x03 \x01(\tR\x05label\x12\x10\n\x03url\x18\x04 \x01(\tR\x03url\"\xef\x03\n\x1bOperatingHomepageSuggestion\x12\x39\n\x06schema\x18\x01 \x01(\tB!\xbaH\x1er\x1c\n\x1a\x64\x65x.homepage_suggestion.v1R\x06schema\x12 \n\x05label\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xa0\x01R\x05label\x12\"\n\x06prompt\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xe8\x07R\x06prompt\x12&\n\x06source\x18\x04 \x01(\tB\x0e\xbaH\x0br\t\n\x07\x63\x65rebroR\x06source\x12J\n\revidence_refs\x18\x05 \x03(\x0b\x32\x1b.console.v1.RelatedResourceB\x08\xbaH\x05\x92\x01\x02\x10\x08R\x0c\x65videnceRefs\x12\x45\n\x0cgenerated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\x0bgeneratedAt\x12\x41\n\nexpires_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\texpiresAt\x12\x1f\n\x05title\x18\x08 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18\n\tworkspace\x18\x03 \x01(\x0b\x32 .console.v1.TenantPrivacySettingR\tworkspace\"\xd5\x01\n\x19SetPrivacySettingsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x41\n\x05scope\x18\x02 \x01(\x0e\x32\x1f.console.v1.PrivacySettingScopeB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x05scope\x12=\n\x04mode\x18\x03 \x01(\x0e\x32\x1d.console.v1.TenantPrivacyModeB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04mode\"\x8e\x01\n\x0bManagedRule\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x14\n\x05title\x18\x02 \x01(\tR\x05title\x12#\n\rbody_markdown\x18\x03 \x01(\tR\x0c\x62odyMarkdown\x12+\n\x05scope\x18\x04 \x01(\x0e\x32\x15.console.v1.RuleScopeR\x05scope\"x\n\x0fManagedSkillRef\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x16\n\x06source\x18\x02 \x01(\tR\x06source\x12\x18\n\x07version\x18\x03 \x01(\tR\x07version\x12\x1a\n\x08required\x18\x04 \x01(\x08R\x08required\"a\n\x0cMcpServerRef\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x1f\n\x0burl_pattern\x18\x02 \x01(\tR\nurlPattern\x12\x1c\n\ttransport\x18\x03 \x01(\tR\ttransport\"n\n\tMcpPolicy\x12-\n\x04mode\x18\x01 \x01(\x0e\x32\x19.console.v1.McpPolicyModeR\x04mode\x12\x32\n\x07servers\x18\x02 \x03(\x0b\x32\x18.console.v1.McpServerRefR\x07servers\"\xea\x02\n\x0cManagedSetup\x12\x18\n\x07version\x18\x01 \x01(\x04R\x07version\x12\x37\n\tissued_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x08issuedAt\x12-\n\x05rules\x18\x03 \x03(\x0b\x32\x17.console.v1.ManagedRuleR\x05rules\x12\x33\n\x06skills\x18\x04 \x03(\x0b\x32\x1b.console.v1.ManagedSkillRefR\x06skills\x12\'\n\x03mcp\x18\x05 \x01(\x0b\x32\x15.console.v1.McpPolicyR\x03mcp\x12.\n\x13sandbox_policy_toml\x18\x06 \x01(\tR\x11sandboxPolicyToml\x12\'\n\x0forganization_id\x18\x07 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x08 \x01(\tR\x0bworkspaceId\"m\n\x16GetManagedSetupRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\"\xa5\x01\n\x16SetManagedSetupRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\x36\n\x05setup\x18\x03 \x01(\x0b\x32\x18.console.v1.ManagedSetupB\x06\xbaH\x03\xc8\x01\x01R\x05setup\"c\n\x19MissionScheduleCapability\x12\x1b\n\x04name\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12)\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x64\x65scription\"\xfa\x03\n\x1aStartMeetingCaptureRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12#\n\x08meet_url\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xd0\x0fR\x07meetUrl\x12\x34\n\x14recall_connection_id\x18\x03 \x01(\tB\x02\x18\x01R\x12recallConnectionId\x12\x33\n\x0fidempotency_key\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xc8\x01R\x0eidempotencyKey\x12\x44\n\x18maximum_duration_minutes\x18\x06 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xf0\x01(\x01R\x16maximumDurationMinutes\x12<\n\x1arecording_consent_attested\x18\x07 \x01(\x08R\x18recordingConsentAttested\x12,\n\rlanguage_code\x18\t \x01(\tB\x07\xbaH\x04r\x02\x18#R\x0clanguageCode\x12\x34\n\x11\x63onnected_call_id\x18\n \x01(\tB\x08\xbaH\x05r\x03\x18\xc8\x01R\x0f\x63onnectedCallIdJ\x04\x08\x05\x10\x06J\x04\x08\x08\x10\tR\x08\x62ot_nameR\x16\x63onsent_policy_version\"S\n\x19ListConnectedCallsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"\x96\x01\n\x1aListConnectedCallsResponse\x12/\n\x05\x63\x61lls\x18\x01 \x03(\x0b\x32\x19.console.v1.ConnectedCallR\x05\x63\x61lls\x12G\n\x0csource_state\x18\x02 \x01(\x0e\x32$.console.v1.ConnectedCallSourceStateR\x0bsourceState\"\xdb\x01\n\rConnectedCall\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x1e\n\x05title\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\x05title\x12#\n\x08meet_url\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x88\x01\x01R\x07meetUrl\x12\x37\n\tstarts_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x08startsAt\x12\x33\n\x07\x65nds_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x06\x65ndsAt\"S\n\x1bStartMeetingCaptureResponse\x12\x34\n\x07\x63\x61pture\x18\x01 \x01(\x0b\x32\x1a.console.v1.MeetingCaptureR\x07\x63\x61pture\"z\n\x18GetMeetingCaptureRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12&\n\ncapture_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tcaptureId\"Q\n\x19GetMeetingCaptureResponse\x12\x34\n\x07\x63\x61pture\x18\x01 \x01(\x0b\x32\x1a.console.v1.MeetingCaptureR\x07\x63\x61pture\"T\n\x1aListMeetingCapturesRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"U\n\x1bListMeetingCapturesResponse\x12\x36\n\x08\x63\x61ptures\x18\x01 \x03(\x0b\x32\x1a.console.v1.MeetingCaptureR\x08\x63\x61ptures\"\xb0\x01\n\x19StopMeetingCaptureRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12&\n\ncapture_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tcaptureId\x12\x33\n\x0fidempotency_key\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xc8\x01R\x0eidempotencyKey\"R\n\x1aStopMeetingCaptureResponse\x12\x34\n\x07\x63\x61pture\x18\x01 \x01(\x0b\x32\x1a.console.v1.MeetingCaptureR\x07\x63\x61pture\"\xe3\t\n\x0eMeetingCapture\x12\x1d\n\ncapture_id\x18\x01 \x01(\tR\tcaptureId\x12(\n\x10\x61\x63tion_intent_id\x18\x02 \x01(\tR\x0e\x61\x63tionIntentId\x12\x1f\n\x0bmeeting_url\x18\x03 \x01(\tR\nmeetingUrl\x12\x19\n\x08\x62ot_name\x18\x04 \x01(\tR\x07\x62otName\x12\'\n\x0flifecycle_state\x18\x05 \x01(\tR\x0elifecycleState\x12&\n\x0fprovider_bot_id\x18\x06 \x01(\tR\rproviderBotId\x12)\n\x10transcript_state\x18\x07 \x01(\tR\x0ftranscriptState\x12\x38\n\x18transcript_segment_count\x18\x08 \x01(\x05R\x16transcriptSegmentCount\x12\x30\n\x14transcript_object_id\x18\t \x01(\tR\x12transcriptObjectId\x12\x32\n\x15transcript_version_id\x18\n \x01(\tR\x13transcriptVersionId\x12#\n\rcerebro_state\x18\x0b \x01(\tR\x0c\x63\x65rebroState\x12(\n\x10\x63\x65rebro_thing_id\x18\x0c \x01(\tR\x0e\x63\x65rebroThingId\x12\x1d\n\nerror_code\x18\r \x01(\tR\terrorCode\x12\x30\n\x14required_user_action\x18\x0e \x01(\tR\x12requiredUserAction\x12\x33\n\x07join_at\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x06joinAt\x12\x35\n\x08leave_at\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07leaveAt\x12\x39\n\nupdated_at\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12.\n\x13\x63\x65rebro_chunk_count\x18\x12 \x01(\x05R\x11\x63\x65rebroChunkCount\x12*\n\x11\x63\x65rebro_chunk_ids\x18\x13 \x03(\tR\x0f\x63\x65rebroChunkIds\x12\x36\n\x17\x63\x65rebro_retrieval_state\x18\x14 \x01(\tR\x15\x63\x65rebroRetrievalState\x12\x43\n\x1e\x63\x65rebro_retrieval_candidate_id\x18\x15 \x01(\tR\x1b\x63\x65rebroRetrievalCandidateId\x12\x32\n\x15provider_recording_id\x18\x16 \x01(\tR\x13providerRecordingId\x12\x34\n\x16provider_transcript_id\x18\x17 \x01(\tR\x14providerTranscriptId\x12\x1f\n\x0bsource_kind\x18\x18 \x01(\tR\nsourceKind\x12\x14\n\x05title\x18\x19 \x01(\tR\x05title\x12J\n\x13occurrence_start_at\x18\x1a \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x11occurrenceStartAt\x12#\n\rdesired_state\x18\x1b \x01(\tR\x0c\x64\x65siredState\"\x9b\x06\n\x17ProspectingWatchProgram\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x31\n\x10watch_program_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0ewatchProgramId\x12\x1e\n\x04name\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x04name\x12\x37\n\x06\x63onfig\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructB\x06\xbaH\x03\xc8\x01\x01R\x06\x63onfig\x12>\n\x15scoring_rule_revision\x18\x06 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x13scoringRuleRevision\x12T\n\tlifecycle\x18\x07 \x01(\x0e\x32,.console.v1.ProspectingWatchProgramLifecycleB\x08\xbaH\x05\x82\x01\x02\x10\x01R\tlifecycle\x12#\n\x08revision\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x08revision\x12>\n\x17\x63reated_by_principal_id\x18\t \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x14\x63reatedByPrincipalId\x12>\n\x17updated_by_principal_id\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x14updatedByPrincipalId\x12\"\n\x06reason\x18\x0b \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x06reason\x12\x31\n\x10\x61udit_receipt_id\x18\x0c \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0e\x61uditReceiptId\x12\x41\n\ncreated_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tcreatedAt\x12\x41\n\nupdated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tupdatedAt\"\x99\x02\n&ProspectingWatchProgramMutationReceipt\x12\x30\n\x0fidempotency_key\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12I\n\x15request_digest_sha256\x18\x02 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x13requestDigestSha256\x12#\n\x08revision\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x08revision\x12\x31\n\x10\x61udit_receipt_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0e\x61uditReceiptId\x12\x1a\n\x08replayed\x18\x05 \x01(\x08R\x08replayed\"\xd0\x02\n$CreateProspectingWatchProgramRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x1e\n\x04name\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x04name\x12\x37\n\x06\x63onfig\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructB\x06\xbaH\x03\xc8\x01\x01R\x06\x63onfig\x12>\n\x15scoring_rule_revision\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x13scoringRuleRevision\x12\"\n\x06reason\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x06reason\x12\x33\n\x0fidempotency_key\x18\x06 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x0eidempotencyKey\"\xc4\x01\n%CreateProspectingWatchProgramResponse\x12\x45\n\x07program\x18\x01 \x01(\x0b\x32#.console.v1.ProspectingWatchProgramB\x06\xbaH\x03\xc8\x01\x01R\x07program\x12T\n\x07receipt\x18\x02 \x01(\x0b\x32\x32.console.v1.ProspectingWatchProgramMutationReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\x8e\x01\n!GetProspectingWatchProgramRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x31\n\x10watch_program_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0ewatchProgramId\"k\n\"GetProspectingWatchProgramResponse\x12\x45\n\x07program\x18\x01 \x01(\x0b\x32#.console.v1.ProspectingWatchProgramB\x06\xbaH\x03\xc8\x01\x01R\x07program\"]\n#ListProspectingWatchProgramsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"\x8c\x01\n$ListProspectingWatchProgramsResponse\x12I\n\x08programs\x18\x01 \x03(\x0b\x32#.console.v1.ProspectingWatchProgramB\x08\xbaH\x05\x92\x01\x02\x10\x64R\x08programs\x12\x19\n\x08has_more\x18\x02 \x01(\x08R\x07hasMore\"\x91\x04\n$UpdateProspectingWatchProgramRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x31\n\x10watch_program_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0ewatchProgramId\x12\x1e\n\x04name\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x04name\x12\x37\n\x06\x63onfig\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructB\x06\xbaH\x03\xc8\x01\x01R\x06\x63onfig\x12>\n\x15scoring_rule_revision\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x13scoringRuleRevision\x12V\n\tlifecycle\x18\x06 \x01(\x0e\x32,.console.v1.ProspectingWatchProgramLifecycleB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\tlifecycle\x12\x34\n\x11\x65xpected_revision\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x10\x65xpectedRevision\x12\"\n\x06reason\x18\x08 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x06reason\x12\x33\n\x0fidempotency_key\x18\t \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x0eidempotencyKey\"\xc4\x01\n%UpdateProspectingWatchProgramResponse\x12\x45\n\x07program\x18\x01 \x01(\x0b\x32#.console.v1.ProspectingWatchProgramB\x06\xbaH\x03\xc8\x01\x01R\x07program\x12T\n\x07receipt\x18\x02 \x01(\x0b\x32\x32.console.v1.ProspectingWatchProgramMutationReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"u\n\x16ListCommitmentsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12#\n\x06status\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x18 \x80\xf4\x18\x01R\x06status\"\xb7\x01\n\x17ListCommitmentsResponse\x12\x38\n\x0b\x63ommitments\x18\x01 \x03(\x0b\x32\x16.console.v1.CommitmentR\x0b\x63ommitments\x12\x44\n\x0csource_state\x18\x02 \x01(\x0e\x32!.console.v1.CommitmentSourceStateR\x0bsourceState\x12\x1c\n\ttruncated\x18\x03 \x01(\x08R\ttruncated\"\xe8\x03\n\nCommitment\x12#\n\rcommitment_id\x18\x01 \x01(\tR\x0c\x63ommitmentId\x12\x14\n\x05title\x18\x02 \x01(\tR\x05title\x12\x16\n\x06status\x18\x03 \x01(\tR\x06status\x12:\n\x19\x63ondition_of_satisfaction\x18\x04 \x01(\tR\x17\x63onditionOfSatisfaction\x12\x31\n\x06\x64ue_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x05\x64ueAt\x12*\n\x11no_date_rationale\x18\x06 \x01(\tR\x0fnoDateRationale\x12\x1f\n\x0bowner_email\x18\x07 \x01(\tR\nownerEmail\x12\x46\n\tcitations\x18\t \x03(\x0b\x32\x1e.console.v1.CommitmentCitationB\x08\xbaH\x05\x92\x01\x02\x10@R\tcitations\x12;\n\x0bobserved_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nobservedAt\x12,\n\x12meeting_capture_id\x18\x0b \x01(\tR\x10meetingCaptureIdJ\x04\x08\x08\x10\tR\x12owner_identity_urn\"\xe6\x01\n\x12\x43ommitmentCitation\x12\x12\n\x04kind\x18\x01 \x01(\tR\x04kind\x12\x1f\n\x0bsource_kind\x18\x02 \x01(\tR\nsourceKind\x12\x1b\n\tsource_id\x18\x03 \x01(\tR\x08sourceId\x12\x1d\n\nsource_uri\x18\x04 \x01(\tR\tsourceUri\x12\"\n\x07\x65xcerpt\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\xd0\x0fR\x07\x65xcerpt\x12;\n\x0bobserved_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nobservedAt\"\xa5\x01\n\x16OperatingJobRecordLink\x12.\n\x0e\x63orrelation_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rcorrelationId\x12#\n\x08relation\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08relation\x12\x36\n\x06record\x18\x03 \x01(\x0b\x32\x16.platform.v1.RecordRefB\x06\xbaH\x03\xc8\x01\x01R\x06record\"\x8f\t\n\x0cOperatingJob\x12\x1e\n\x06job_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05jobId\x12*\n\x0cobjective_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bobjectiveId\x12\x1d\n\x05title\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05title\x12=\n\x05state\x18\x04 \x01(\x0e\x32\x1d.console.v1.OperatingJobStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\x62\n\x12verification_state\x18\x05 \x01(\x0e\x32).console.v1.OperatingJobVerificationStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x11verificationState\x12@\n\x06origin\x18\x06 \x01(\x0e\x32\x1e.console.v1.OperatingJobOriginB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06origin\x12#\n\nchannel_id\x18\x07 \x01(\tB\x04\x80\xf4\x18\x02R\tchannelId\x12\x36\n\x14submitted_message_id\x18\x08 \x01(\tB\x04\x80\xf4\x18\x02R\x12submittedMessageId\x12<\n\x17\x63onversation_context_id\x18\t \x01(\tB\x04\x80\xf4\x18\x02R\x15\x63onversationContextId\x12\x36\n\x14\x63onversation_task_id\x18\n \x01(\tB\x04\x80\xf4\x18\x02R\x12\x63onversationTaskId\x12\x45\n\x1a\x63onversation_task_revision\x18\x0b \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x18\x63onversationTaskRevision\x12(\n\ractive_run_id\x18\x0c \x01(\tB\x04\x80\xf4\x18\x02R\x0b\x61\x63tiveRunId\x12,\n\rattempt_count\x18\r \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0c\x61ttemptCount\x12\x39\n\ncreated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12/\n\x13projection_complete\x18\x10 \x01(\x08R\x12projectionComplete\x12>\n\x12missing_owner_data\x18\x11 \x03(\tB\x10\xbaH\r\x92\x01\n\x10\x10\"\x06r\x04\x10\x01\x18@R\x10missingOwnerData\x12P\n\x0crecord_links\x18\x12 \x03(\x0b\x32\".console.v1.OperatingJobRecordLinkB\t\xbaH\x06\x92\x01\x03\x10\x80\x02R\x0brecordLinks\x12M\n\x0bproof_state\x18\x13 \x01(\x0e\x32\".console.v1.OperatingJobProofStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\nproofState\x12\x35\n\rmissing_proof\x18\x14 \x03(\tB\x10\xbaH\r\x92\x01\n\x10\x10\"\x06r\x04\x10\x01\x18@R\x0cmissingProof\"R\n\x18ListOperatingJobsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"n\n\x19ListOperatingJobsResponse\x12\x37\n\x04jobs\x18\x01 \x03(\x0b\x32\x18.console.v1.OperatingJobB\t\xbaH\x06\x92\x01\x03\x10\xc8\x01R\x04jobs\x12\x18\n\x07partial\x18\x02 \x01(\x08R\x07partial\"\xf7\x01\n0RecordOperatingHomepageSuggestionFeedbackRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\x30\n\rsuggestion_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0csuggestionId\x12Y\n\x06\x61\x63tion\x18\x03 \x01(\x0e\x32\x35.console.v1.OperatingHomepageSuggestionFeedbackActionB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x06\x61\x63tion\"M\n1RecordOperatingHomepageSuggestionFeedbackResponse\x12\x18\n\x07\x63hanged\x18\x01 \x01(\x08R\x07\x63hanged\"\x82\x05\n\x16InferenceCreditBalance\x12.\n\x0egranted_micros\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\rgrantedMicros\x12\x39\n\x14\x65xpired_grant_micros\x18\t \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x12\x65xpiredGrantMicros\x12\x35\n\x12grant_spent_micros\x18\n \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x10grantSpentMicros\x12;\n\x15grant_reserved_micros\x18\x0b \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x13grantReservedMicros\x12\x36\n\x17\x64\x65velopment_credit_only\x18\x0c \x01(\x08R\x15\x64\x65velopmentCreditOnly\x12/\n\x13\x61\x64mission_suspended\x18\x07 \x01(\x08R\x12\x61\x64missionSuspended\x12\x30\n\x0freversed_micros\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0ereversedMicros\x12(\n\x0b\x64\x65\x62t_micros\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\ndebtMicros\x12\x32\n\x10purchased_micros\x18\x01 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0fpurchasedMicros\x12*\n\x0cspent_micros\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0bspentMicros\x12\x30\n\x0freserved_micros\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0ereservedMicros\x12\x32\n\x10\x61vailable_micros\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0f\x61vailableMicros\"o\n GetInferenceCreditBalanceRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1f\n\x06run_id\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x05runId\"\x9c\x01\n\x14InferenceCreditBlock\x12!\n\x0c\x63redit_cents\x18\x01 \x01(\x04R\x0b\x63reditCents\x12\x1b\n\tfee_cents\x18\x02 \x01(\x04R\x08\x66\x65\x65\x43\x65nts\x12\x1f\n\x0btotal_cents\x18\x03 \x01(\x04R\ntotalCents\x12#\n\rquote_version\x18\x04 \x01(\tR\x0cquoteVersion\"\x92\x03\n\x16InferenceCreditPricing\x12\x1a\n\x08provider\x18\x01 \x01(\tR\x08provider\x12\x14\n\x05model\x18\x02 \x01(\tR\x05model\x12\'\n\x0fpricing_version\x18\x03 \x01(\tR\x0epricingVersion\x12M\n\x1finput_micros_per_million_tokens\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x1binputMicrosPerMillionTokens\x12Z\n&cached_input_micros_per_million_tokens\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R!cachedInputMicrosPerMillionTokens\x12O\n output_micros_per_million_tokens\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x1coutputMicrosPerMillionTokens\x12!\n\x0c\x64isplay_name\x18\x07 \x01(\tR\x0b\x64isplayName\"\xa3\x03\n!GetInferenceCreditBalanceResponse\x12<\n\x07\x62\x61lance\x18\x01 \x01(\x0b\x32\".console.v1.InferenceCreditBalanceR\x07\x62\x61lance\x12\x38\n\x06\x62locks\x18\x02 \x03(\x0b\x32 .console.v1.InferenceCreditBlockR\x06\x62locks\x12-\n\x12\x63heckout_available\x18\x03 \x01(\x08R\x11\x63heckoutAvailable\x12<\n\x07pricing\x18\x04 \x01(\x0b\x32\".console.v1.InferenceCreditPricingR\x07pricing\x12Q\n\x0ereconciliation\x18\x05 \x01(\x0b\x32).console.v1.InferenceCreditReconciliationR\x0ereconciliation\x12\x46\n\x0brun_balance\x18\x06 \x01(\x0b\x32%.console.v1.InferenceRunCreditBalanceR\nrunBalance\"\xbb\x02\n\x19InferenceRunCreditBalance\x12\x15\n\x06run_id\x18\x01 \x01(\tR\x05runId\x12.\n\x13settled_cost_micros\x18\x02 \x01(\x03R\x11settledCostMicros\x12\'\n\x0freserved_micros\x18\x03 \x01(\x03R\x0ereservedMicros\x12\x32\n\x15pending_request_count\x18\x04 \x01(\x03R\x13pendingRequestCount\x12\x32\n\x15settled_request_count\x18\x05 \x01(\x03R\x13settledRequestCount\x12\x46\n\x11oldest_pending_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0foldestPendingAt\"\xb5\x04\n\x1dInferenceCreditReconciliation\x12\x1a\n\x08\x62\x61lanced\x18\x01 \x01(\x08R\x08\x62\x61lanced\x12>\n\x1bpurchased_difference_micros\x18\x02 \x01(\x03R\x19purchasedDifferenceMicros\x12<\n\x1areversed_difference_micros\x18\x03 \x01(\x03R\x18reversedDifferenceMicros\x12\x36\n\x17spent_difference_micros\x18\x04 \x01(\x03R\x15spentDifferenceMicros\x12<\n\x1areserved_difference_micros\x18\x05 \x01(\x03R\x18reservedDifferenceMicros\x12\x38\n\x18\x64ispute_count_difference\x18\x06 \x01(\x03R\x16\x64isputeCountDifference\x12\x43\n\x19pending_reservation_count\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x17pendingReservationCount\x12\x46\n\x11oldest_pending_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0foldestPendingAt\x12=\n\x16unfunded_payment_count\x18\t \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x14unfundedPaymentCount\"\x9e\x01\n$CreateInferenceCreditCheckoutRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\'\n\nrequest_id\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\trequestId\x12!\n\x0c\x63redit_cents\x18\x03 \x01(\x04R\x0b\x63reditCents\"C\n%CreateInferenceCreditCheckoutResponse\x12\x1a\n\x03url\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x88\x01\x01R\x03url\"\x8c\x01\n%FulfillInferenceCreditCheckoutRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x37\n\x13\x63heckout_session_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x11\x63heckoutSessionId\"f\n&FulfillInferenceCreditCheckoutResponse\x12<\n\x07\x62\x61lance\x18\x01 \x01(\x0b\x32\".console.v1.InferenceCreditBalanceR\x07\x62\x61lance\"\xc1\x01\n\x17OperatingAutoModelRoute\x12;\n\x06target\x18\x01 \x01(\x0b\x32#.console.v1.OperatingModelSelectionR\x06target\x12\x42\n\x07purpose\x18\x02 \x01(\x0e\x32(.console.v1.StaffInferenceRoutingPurposeR\x07purpose\x12%\n\x0epolicy_version\x18\x03 \x01(\tR\rpolicyVersion\"\xec\x02\n\x17\x42usinessFieldDefinition\x12\x19\n\x08\x66ield_id\x18\x01 \x01(\tR\x07\x66ieldId\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x31\n\x04kind\x18\x03 \x01(\x0e\x32\x1d.console.v1.BusinessFieldKindR\x04kind\x12\x1a\n\x08required\x18\x04 \x01(\x08R\x08required\x12\x16\n\x06unique\x18\x05 \x01(\x08R\x06unique\x12\x1f\n\x0b\x65num_values\x18\x06 \x03(\tR\nenumValues\x12*\n\x11reference_type_id\x18\x07 \x01(\tR\x0freferenceTypeId\x12\x19\n\x08group_id\x18\x08 \x01(\tR\x07groupId\x12 \n\x0b\x64\x65scription\x18\t \x01(\tR\x0b\x64\x65scription\x12\"\n\nmax_length\x18\n \x01(\rH\x00R\tmaxLength\x88\x01\x01\x42\r\n\x0b_max_length\"\x83\x01\n\x1e\x42usinessRelationshipDefinition\x12\'\n\x0frelationship_id\x18\x01 \x01(\tR\x0erelationshipId\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12$\n\x0etarget_type_id\x18\x03 \x01(\tR\x0ctargetTypeId\"\xf0\x03\n\x12\x42usinessObjectType\x12\x17\n\x07type_id\x18\x01 \x01(\tR\x06typeId\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x1a\n\x08revision\x18\x03 \x01(\x03R\x08revision\x12;\n\x06\x66ields\x18\x04 \x03(\x0b\x32#.console.v1.BusinessFieldDefinitionR\x06\x66ields\x12P\n\rrelationships\x18\x05 \x03(\x0b\x32*.console.v1.BusinessRelationshipDefinitionR\rrelationships\x12\x1f\n\x0bplural_name\x18\x06 \x01(\tR\npluralName\x12 \n\x0b\x64\x65scription\x18\x07 \x01(\tR\x0b\x64\x65scription\x12(\n\x10\x64isplay_field_id\x18\x08 \x01(\tR\x0e\x64isplayFieldId\x12N\n\x10\x62lueprint_source\x18\t \x01(\x0b\x32#.console.v1.BusinessBlueprintSourceR\x0f\x62lueprintSource\x12\x45\n\x0brecord_kind\x18\n \x01(\x0e\x32$.console.v1.BusinessObjectRecordKindR\nrecordKind\"C\n\rBusinessMoney\x12\x16\n\x06\x61mount\x18\x01 \x01(\tR\x06\x61mount\x12\x1a\n\x08\x63urrency\x18\x02 \x01(\tR\x08\x63urrency\"6\n\x17\x42usinessObjectReference\x12\x1b\n\tobject_id\x18\x01 \x01(\tR\x08objectId\"K\n\x19\x42usinessArtifactReference\x12.\n\x13\x61rtifact_version_id\x18\x01 \x01(\tR\x11\x61rtifactVersionId\"*\n\x10\x42usinessTextList\x12\x16\n\x06values\x18\x01 \x03(\tR\x06values\"\xf3\x03\n\x12\x42usinessFieldValue\x12\x19\n\x08\x66ield_id\x18\x01 \x01(\tR\x07\x66ieldId\x12\x14\n\x04text\x18\x02 \x01(\tH\x00R\x04text\x12\x1a\n\x07integer\x18\x03 \x01(\x03H\x00R\x07integer\x12\x1a\n\x07\x62oolean\x18\x04 \x01(\x08H\x00R\x07\x62oolean\x12\x1a\n\x07\x64\x65\x63imal\x18\x05 \x01(\tH\x00R\x07\x64\x65\x63imal\x12\x31\n\x05money\x18\x06 \x01(\x0b\x32\x19.console.v1.BusinessMoneyH\x00R\x05money\x12\x1f\n\nenum_value\x18\x07 \x01(\tH\x00R\tenumValue\x12\x14\n\x04\x64\x61te\x18\x08 \x01(\tH\x00R\x04\x64\x61te\x12\x1e\n\ttimestamp\x18\t \x01(\tH\x00R\ttimestamp\x12\x43\n\treference\x18\n \x01(\x0b\x32#.console.v1.BusinessObjectReferenceH\x00R\treference\x12\x43\n\x08\x61rtifact\x18\x0b \x01(\x0b\x32%.console.v1.BusinessArtifactReferenceH\x00R\x08\x61rtifact\x12;\n\ttext_list\x18\x0c \x01(\x0b\x32\x1c.console.v1.BusinessTextListH\x00R\x08textListB\x07\n\x05value\"p\n\x13\x42usinessSourceField\x12\x19\n\x08\x66ield_id\x18\x01 \x01(\tR\x07\x66ieldId\x12>\n\x08property\x18\x02 \x01(\x0e\x32\".console.v1.BusinessSourcePropertyR\x08property\"\xb1\x04\n\x15\x42usinessSourceBinding\x12\x1f\n\x0bresource_id\x18\x01 \x01(\tR\nresourceId\x12#\n\rconnection_id\x18\x02 \x01(\tR\x0c\x63onnectionId\x12\x1b\n\tgroup_ids\x18\x03 \x03(\tR\x08groupIds\x12\x37\n\x06\x66ields\x18\x04 \x03(\x0b\x32\x1f.console.v1.BusinessSourceFieldR\x06\x66ields\x12\'\n\x0f\x61uthority_epoch\x18\x05 \x01(\x03R\x0e\x61uthorityEpoch\x12\x1e\n\ngeneration\x18\x06 \x01(\x03R\ngeneration\x12\x35\n\x05state\x18\x07 \x01(\x0e\x32\x1f.console.v1.BusinessSourceStateR\x05state\x12\'\n\x0fobserved_digest\x18\x08 \x01(\tR\x0eobservedDigest\x12\x1f\n\x0bobserved_at\x18\t \x01(\tR\nobservedAt\x12(\n\x10\x66\x61mily_stable_id\x18\n \x01(\tR\x0e\x66\x61milyStableId\x12\x1b\n\trecord_id\x18\x0b \x01(\tR\x08recordId\x12&\n\x0fsource_event_id\x18\x0c \x01(\tR\rsourceEventId\x12\x43\n\x08\x65nvelope\x18\r \x01(\x0b\x32\'.connectors.v1.ProviderResourceEnvelopeR\x08\x65nvelope\"\xdc\x02\n\x0e\x42usinessObject\x12\x1b\n\tobject_id\x18\x01 \x01(\tR\x08objectId\x12\x17\n\x07type_id\x18\x02 \x01(\tR\x06typeId\x12\'\n\x0fschema_revision\x18\x03 \x01(\x03R\x0eschemaRevision\x12\x1a\n\x08revision\x18\x04 \x01(\x03R\x08revision\x12\x36\n\x06values\x18\x05 \x03(\x0b\x32\x1e.console.v1.BusinessFieldValueR\x06values\x12\x18\n\x07\x64\x65leted\x18\x06 \x01(\x08R\x07\x64\x65leted\x12\x39\n\x06source\x18\x07 \x01(\x0b\x32!.console.v1.BusinessSourceBindingR\x06source\x12\x1d\n\nupdated_at\x18\t \x01(\tR\tupdatedAt\x12\x1d\n\ncreated_at\x18\n \x01(\tR\tcreatedAtJ\x04\x08\x08\x10\t\"\xd0\x01\n\x16\x42usinessObjectRevision\x12\x32\n\x06object\x18\x01 \x01(\x0b\x32\x1a.console.v1.BusinessObjectR\x06object\x12!\n\x0coperation_id\x18\x02 \x01(\tR\x0boperationId\x12\x19\n\x08\x61\x63tor_id\x18\x03 \x01(\tR\x07\x61\x63torId\x12\x1f\n\x0b\x63hange_kind\x18\x04 \x01(\tR\nchangeKind\x12#\n\revidence_refs\x18\x05 \x03(\tR\x0c\x65videnceRefs\"\x99\x01\n\x1a\x42usinessObjectRelationship\x12(\n\x10source_object_id\x18\x01 \x01(\tR\x0esourceObjectId\x12\'\n\x0frelationship_id\x18\x02 \x01(\tR\x0erelationshipId\x12(\n\x10target_object_id\x18\x03 \x01(\tR\x0etargetObjectId\"\x83\x02\n\x1f\x44\x65\x66ineBusinessObjectTypeRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12>\n\ndefinition\x18\x04 \x01(\x0b\x32\x1e.console.v1.BusinessObjectTypeR\ndefinition\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x03R\x10\x65xpectedRevision\"b\n DefineBusinessObjectTypeResponse\x12>\n\ndefinition\x18\x01 \x01(\x0b\x32\x1e.console.v1.BusinessObjectTypeR\ndefinition\"\xcf\x01\n\x1eListBusinessObjectTypesRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x14\n\x05limit\x18\x04 \x01(\x05R\x05limit\x12\"\n\rafter_type_id\x18\x05 \x01(\tR\x0b\x61\x66terTypeId\"\x85\x01\n\x1fListBusinessObjectTypesResponse\x12@\n\x0b\x64\x65\x66initions\x18\x01 \x03(\x0b\x32\x1e.console.v1.BusinessObjectTypeR\x0b\x64\x65\x66initions\x12 \n\x0cnext_type_id\x18\x02 \x01(\tR\nnextTypeId\"\x8c\x02\n\x1b\x43reateBusinessObjectRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x17\n\x07type_id\x18\x04 \x01(\tR\x06typeId\x12\'\n\x0fschema_revision\x18\x05 \x01(\x03R\x0eschemaRevision\x12\x36\n\x06values\x18\x06 \x03(\x0b\x32\x1e.console.v1.BusinessFieldValueR\x06values\"R\n\x1c\x43reateBusinessObjectResponse\x12\x32\n\x06object\x18\x01 \x01(\x0b\x32\x1a.console.v1.BusinessObjectR\x06object\"\xe0\x01\n\x18GetBusinessObjectRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x1b\n\tobject_id\x18\x04 \x01(\tR\x08objectId\x12\x32\n\x15\x61llow_source_recovery\x18\x05 \x01(\x08R\x13\x61llowSourceRecovery\"\xa2\x01\n\x19GetBusinessObjectResponse\x12\x32\n\x06object\x18\x01 \x01(\x0b\x32\x1a.console.v1.BusinessObjectR\x06object\x12Q\n\x0fsource_recovery\x18\x02 \x01(\x0b\x32(.console.v1.BusinessObjectSourceRecoveryR\x0esourceRecovery\"\xd5\x01\n\x1c\x42usinessObjectSourceRecovery\x12\x1b\n\tobject_id\x18\x01 \x01(\tR\x08objectId\x12+\n\x11\x65xpected_revision\x18\x02 \x01(\x03R\x10\x65xpectedRevision\x12\'\n\x0f\x61uthority_epoch\x18\x03 \x01(\x03R\x0e\x61uthorityEpoch\x12\x42\n\x0csource_state\x18\x04 \x01(\x0e\x32\x1f.console.v1.BusinessSourceStateR\x0bsourceState\"\xa2\x02\n\x1aListBusinessObjectsRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x17\n\x07type_id\x18\x04 \x01(\tR\x06typeId\x12\x14\n\x05limit\x18\x05 \x01(\x05R\x05limit\x12&\n\x0f\x61\x66ter_object_id\x18\x06 \x01(\tR\rafterObjectId\x12\x38\n\x06\x66ilter\x18\x07 \x01(\x0b\x32 .console.v1.BusinessObjectFilterR\x06\x66ilter\"\xb3\x01\n\x14\x42usinessObjectFilter\x12\x43\n\x0cunique_value\x18\x01 \x01(\x0b\x32\x1e.console.v1.BusinessFieldValueH\x00R\x0buniqueValue\x12I\n\treference\x18\x02 \x01(\x0b\x32).console.v1.BusinessObjectReferenceFilterH\x00R\treferenceB\x0b\n\tpredicate\"d\n\x1d\x42usinessObjectReferenceFilter\x12\x19\n\x08\x66ield_id\x18\x01 \x01(\tR\x07\x66ieldId\x12(\n\x10target_object_id\x18\x02 \x01(\tR\x0etargetObjectId\"y\n\x1bListBusinessObjectsResponse\x12\x34\n\x07objects\x18\x01 \x03(\x0b\x32\x1a.console.v1.BusinessObjectR\x07objects\x12$\n\x0enext_object_id\x18\x02 \x01(\tR\x0cnextObjectId\"\xbd\x02\n\x1bUpdateBusinessObjectRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x1b\n\tobject_id\x18\x04 \x01(\tR\x08objectId\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x03R\x10\x65xpectedRevision\x12\x36\n\x06values\x18\x06 \x03(\x0b\x32\x1e.console.v1.BusinessFieldValueR\x06values\x12\'\n\x0fschema_revision\x18\x07 \x01(\x03R\x0eschemaRevision\"R\n\x1cUpdateBusinessObjectResponse\x12\x32\n\x06object\x18\x01 \x01(\x0b\x32\x1a.console.v1.BusinessObjectR\x06object\"\xdc\x01\n\x1b\x44\x65leteBusinessObjectRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x1b\n\tobject_id\x18\x04 \x01(\tR\x08objectId\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x03R\x10\x65xpectedRevision\"R\n\x1c\x44\x65leteBusinessObjectResponse\x12\x32\n\x06object\x18\x01 \x01(\x0b\x32\x1a.console.v1.BusinessObjectR\x06object\"\xf5\x01\n\"ListBusinessObjectRevisionsRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x1b\n\tobject_id\x18\x04 \x01(\tR\x08objectId\x12\x14\n\x05limit\x18\x05 \x01(\x05R\x05limit\x12\'\n\x0f\x62\x65\x66ore_revision\x18\x06 \x01(\x03R\x0e\x62\x65\x66oreRevision\"\x99\x01\n#ListBusinessObjectRevisionsResponse\x12@\n\trevisions\x18\x01 \x03(\x0b\x32\".console.v1.BusinessObjectRevisionR\trevisions\x12\x30\n\x14next_before_revision\x18\x02 \x01(\x03R\x12nextBeforeRevision\"\xc3\x03\n\x1f\x42indBusinessObjectSourceRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x1b\n\tobject_id\x18\x04 \x01(\tR\x08objectId\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x03R\x10\x65xpectedRevision\x12\x1f\n\x0bresource_id\x18\x06 \x01(\tR\nresourceId\x12\x1b\n\tgroup_ids\x18\x07 \x03(\tR\x08groupIds\x12\x37\n\x06\x66ields\x18\x08 \x03(\x0b\x32\x1f.console.v1.BusinessSourceFieldR\x06\x66ields\x12#\n\rconnection_id\x18\t \x01(\tR\x0c\x63onnectionId\x12(\n\x10\x66\x61mily_stable_id\x18\n \x01(\tR\x0e\x66\x61milyStableId\x12\x1b\n\trecord_id\x18\x0b \x01(\tR\x08recordId\"V\n BindBusinessObjectSourceResponse\x12\x32\n\x06object\x18\x01 \x01(\x0b\x32\x1a.console.v1.BusinessObjectR\x06object\"\x8f\x02\n%AdmitBusinessObjectObservationRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x1b\n\tobject_id\x18\x04 \x01(\tR\x08objectId\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x03R\x10\x65xpectedRevision\x12\'\n\x0f\x61uthority_epoch\x18\x06 \x01(\x03R\x0e\x61uthorityEpoch\"\\\n&AdmitBusinessObjectObservationResponse\x12\x32\n\x06object\x18\x01 \x01(\x0b\x32\x1a.console.v1.BusinessObjectR\x06object\"\xbc\x02\n&ListBusinessObjectRelationshipsRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x1b\n\tobject_id\x18\x04 \x01(\tR\x08objectId\x12\x14\n\x05limit\x18\x05 \x01(\x05R\x05limit\x12\x1b\n\tafter_key\x18\x06 \x01(\tR\x08\x61\x66terKey\x12M\n\tdirection\x18\x07 \x01(\x0e\x32/.console.v1.BusinessObjectRelationshipDirectionR\tdirection\"\x92\x01\n\'ListBusinessObjectRelationshipsResponse\x12L\n\rrelationships\x18\x01 \x03(\x0b\x32&.console.v1.BusinessObjectRelationshipR\rrelationships\x12\x19\n\x08next_key\x18\x02 \x01(\tR\x07nextKey\"\x97\x02\n\'CreateBusinessObjectRelationshipRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12J\n\x0crelationship\x18\x04 \x01(\x0b\x32&.console.v1.BusinessObjectRelationshipR\x0crelationship\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x03R\x10\x65xpectedRevision\"^\n(CreateBusinessObjectRelationshipResponse\x12\x32\n\x06object\x18\x01 \x01(\x0b\x32\x1a.console.v1.BusinessObjectR\x06object\"\x97\x02\n\'DeleteBusinessObjectRelationshipRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12J\n\x0crelationship\x18\x04 \x01(\x0b\x32&.console.v1.BusinessObjectRelationshipR\x0crelationship\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x03R\x10\x65xpectedRevision\"^\n(DeleteBusinessObjectRelationshipResponse\x12\x32\n\x06object\x18\x01 \x01(\x0b\x32\x1a.console.v1.BusinessObjectR\x06object\"m\n\x17\x43\x61ptureFormObjectTarget\x12 \n\x07type_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06typeId\x12\x30\n\x0fschema_revision\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0eschemaRevision\"i\n\x13\x43\x61ptureFormAssetRef\x12\'\n\tobject_id\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xff\x01R\x08objectId\x12)\n\nversion_id\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xff\x01R\tversionId\"\xee\x02\n\x18\x43\x61ptureFormBrandingInput\x12*\n\x0c\x64isplay_name\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x18xR\x0b\x64isplayName\x12\"\n\x07tagline\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xa0\x01R\x07tagline\x12*\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xd0\x0fR\x0b\x64\x65scription\x12>\n\x0c\x61\x63\x63\x65nt_color\x18\x04 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^$|^#[0-9a-fA-F]{6}$R\x0b\x61\x63\x63\x65ntColor\x12\x33\n\x04logo\x18\x05 \x01(\x0b\x32\x1f.console.v1.CaptureFormAssetRefR\x04logo\x12\x39\n\x07\x66\x61vicon\x18\x06 \x01(\x0b\x32\x1f.console.v1.CaptureFormAssetRefR\x07\x66\x61vicon\x12&\n\x0fshow_powered_by\x18\x07 \x01(\x08R\rshowPoweredBy\"\xda\x03\n\x13\x43\x61ptureFormBranding\x12*\n\x0c\x64isplay_name\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x18xR\x0b\x64isplayName\x12\"\n\x07tagline\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xa0\x01R\x07tagline\x12*\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xd0\x0fR\x0b\x64\x65scription\x12>\n\x0c\x61\x63\x63\x65nt_color\x18\x04 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^$|^#[0-9a-fA-F]{6}$R\x0b\x61\x63\x63\x65ntColor\x12\x33\n\x04logo\x18\x05 \x01(\x0b\x32\x1f.console.v1.CaptureFormAssetRefR\x04logo\x12\x39\n\x07\x66\x61vicon\x18\x06 \x01(\x0b\x32\x1f.console.v1.CaptureFormAssetRefR\x07\x66\x61vicon\x12\x31\n\x0f\x62randing_digest\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x0e\x62randingDigest\x12<\n\x15validation_receipt_id\x18\x08 \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\x13validationReceiptId\x12&\n\x0fshow_powered_by\x18\t \x01(\x08R\rshowPoweredBy\"\xcf\x02\n\x19\x43\x61ptureFormPublicBranding\x12*\n\x0c\x64isplay_name\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x18xR\x0b\x64isplayName\x12\"\n\x07tagline\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xa0\x01R\x07tagline\x12*\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xd0\x0fR\x0b\x64\x65scription\x12>\n\x0c\x61\x63\x63\x65nt_color\x18\x04 \x01(\tB\x1b\xbaH\x18r\x16\x32\x14^$|^#[0-9a-fA-F]{6}$R\x0b\x61\x63\x63\x65ntColor\x12#\n\x08logo_url\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x10R\x07logoUrl\x12)\n\x0b\x66\x61vicon_url\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x10R\nfaviconUrl\x12&\n\x0fshow_powered_by\x18\x07 \x01(\x08R\rshowPoweredBy\"\xab\x01\n\x17\x43\x61ptureFormSelectOption\x12&\n\toption_id\x18\x01 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\x08optionId\x12 \n\x05label\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xa0\x01R\x05label\x12*\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xf4\x03R\x0b\x64\x65scription\x12\x1a\n\x08\x64isabled\x18\x04 \x01(\x08R\x08\x64isabled\"\x92\x01\n\x15\x43\x61ptureFormSelectSpec\x12J\n\x07options\x18\x01 \x03(\x0b\x32#.console.v1.CaptureFormSelectOptionB\x0b\xbaH\x08\x92\x01\x05\x08\x01\x10\x80\x01R\x07options\x12-\n\x0cmax_selected\x18\x02 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\x80\x01(\x01R\x0bmaxSelected\"\xb8\x01\n\x15\x43\x61ptureFormUploadSpec\x12\x45\n\x16\x61\x63\x63\x65pted_content_types\x18\x01 \x03(\tB\x0f\xbaH\x0c\x92\x01\t\x10 \"\x05r\x03\x18\x80\x01R\x14\x61\x63\x63\x65ptedContentTypes\x12\x32\n\x0emax_size_bytes\x18\x02 \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\x80\x80\x19 \x00R\x0cmaxSizeBytes\x12$\n\tmax_files\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02\x08\x01R\x08maxFiles\"\xc8\x03\n\x11\x43\x61ptureFormUpload\x12$\n\tupload_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08uploadId\x12$\n\x08input_id\x18\x02 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\x07inputId\x12&\n\x08\x66ilename\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xff\x01R\x08\x66ilename\x12-\n\x0c\x63ontent_type\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xff\x01R\x0b\x63ontentType\x12+\n\nsize_bytes\x18\x05 \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\x80\x80\x19 \x00R\tsizeBytes\x12-\n\x06sha256\x18\x06 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x06sha256\x12\x42\n\x05state\x18\x07 \x01(\x0e\x32\".console.v1.CaptureFormUploadStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\x35\n\x05\x61sset\x18\x08 \x01(\x0b\x32\x1f.console.v1.CaptureFormAssetRefR\x05\x61sset\x12\x39\n\nexpires_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\"\xda\x04\n\x15\x43\x61ptureFormTypedValue\x12\x1e\n\x04text\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\x80@H\x00R\x04text\x12\x1a\n\x07integer\x18\x02 \x01(\x03H\x00R\x07integer\x12$\n\x07\x64\x65\x63imal\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01H\x00R\x07\x64\x65\x63imal\x12\x1a\n\x07\x62oolean\x18\x04 \x01(\x08H\x00R\x07\x62oolean\x12\x1d\n\x04\x64\x61te\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x18 H\x00R\x04\x64\x61te\x12\x38\n\x08\x64\x61tetime\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00R\x08\x64\x61tetime\x12 \n\x05\x65mail\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\xc0\x02H\x00R\x05\x65mail\x12\x1f\n\x05phone\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x18@H\x00R\x05phone\x12\x1c\n\x03url\x18\t \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x10H\x00R\x03url\x12&\n\toption_id\x18\n \x01(\tB\x07\xbaH\x04r\x02\x18PH\x00R\x08optionId\x12U\n\roption_values\x18\x0b \x01(\x0b\x32..console.v1.CaptureFormTypedValue.OptionValuesH\x00R\x0coptionValues\x12=\n\x08\x61rtifact\x18\x0c \x01(\x0b\x32\x1f.console.v1.CaptureFormAssetRefH\x00R\x08\x61rtifact\x1a\x42\n\x0cOptionValues\x12\x32\n\noption_ids\x18\x01 \x03(\tB\x13\xbaH\x10\x92\x01\r\x08\x01\x10\x80\x01\"\x06r\x04\x10\x01\x18PR\toptionIdsB\x07\n\x05value\"\xa4\x06\n\x10\x43\x61ptureFormField\x12$\n\x08input_id\x18\x01 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\x07inputId\x12 \n\x05label\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xa0\x01R\x05label\x12%\n\thelp_text\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xe8\x07R\x08helpText\x12@\n\x04kind\x18\x04 \x01(\x0e\x32 .console.v1.CaptureFormFieldKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04kind\x12\x1a\n\x08required\x18\x05 \x01(\x08R\x08required\x12&\n\x08position\x18\x06 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\x80\x08(\x00R\x08position\x12*\n\x0bplaceholder\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\xf0\x01R\x0bplaceholder\x12\x34\n\x11\x62usiness_field_id\x18\x08 \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\x0f\x62usinessFieldId\x12T\n\rmapping_state\x18\t \x01(\x0e\x32#.console.v1.CaptureFormMappingStateB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x0cmappingState\x12)\n\nmax_length\x18\n \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\x80@(\x00R\tmaxLength\x12)\n\x0bmin_decimal\x18\x0b \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\nminDecimal\x12)\n\x0bmax_decimal\x18\x0c \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\nmaxDecimal\x12\x46\n\rdefault_value\x18\r \x01(\x0b\x32!.console.v1.CaptureFormTypedValueR\x0c\x64\x65\x66\x61ultValue\x12\x16\n\x06hidden\x18\x0e \x01(\x08R\x06hidden\x12;\n\x06select\x18\x0f \x01(\x0b\x32!.console.v1.CaptureFormSelectSpecH\x00R\x06select\x12;\n\x06upload\x18\x10 \x01(\x0b\x32!.console.v1.CaptureFormUploadSpecH\x00R\x06uploadB\x08\n\x06\x63onfig\"\xe5\x03\n\x16\x43\x61ptureFormPublicField\x12$\n\x08input_id\x18\x01 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\x07inputId\x12 \n\x05label\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xa0\x01R\x05label\x12%\n\thelp_text\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xe8\x07R\x08helpText\x12@\n\x04kind\x18\x04 \x01(\x0e\x32 .console.v1.CaptureFormFieldKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04kind\x12\x1a\n\x08required\x18\x05 \x01(\x08R\x08required\x12#\n\x08position\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x08position\x12*\n\x0bplaceholder\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\xf0\x01R\x0bplaceholder\x12)\n\nmax_length\x18\x08 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\x80@(\x00R\tmaxLength\x12;\n\x06select\x18\t \x01(\x0b\x32!.console.v1.CaptureFormSelectSpecH\x00R\x06select\x12;\n\x06upload\x18\n \x01(\x0b\x32!.console.v1.CaptureFormUploadSpecH\x00R\x06uploadB\x08\n\x06\x63onfig\"\xf7\x01\n\x17\x43\x61ptureFormVersionInput\x12P\n\robject_target\x18\x01 \x01(\x0b\x32#.console.v1.CaptureFormObjectTargetB\x06\xbaH\x03\xc8\x01\x01R\x0cobjectTarget\x12@\n\x06\x66ields\x18\x02 \x03(\x0b\x32\x1c.console.v1.CaptureFormFieldB\n\xbaH\x07\x92\x01\x04\x08\x01\x10@R\x06\x66ields\x12H\n\x08\x62randing\x18\x03 \x01(\x0b\x32$.console.v1.CaptureFormBrandingInputB\x06\xbaH\x03\xc8\x01\x01R\x08\x62randing\"\xe5\x03\n\x12\x43\x61ptureFormVersion\x12 \n\x07\x66orm_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66ormId\x12&\n\nversion_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tversionId\x12#\n\x08revision\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x08revision\x12P\n\robject_target\x18\x04 \x01(\x0b\x32#.console.v1.CaptureFormObjectTargetB\x06\xbaH\x03\xc8\x01\x01R\x0cobjectTarget\x12>\n\x06\x66ields\x18\x05 \x03(\x0b\x32\x1c.console.v1.CaptureFormFieldB\x08\xbaH\x05\x92\x01\x02\x10@R\x06\x66ields\x12;\n\x08\x62randing\x18\x06 \x01(\x0b\x32\x1f.console.v1.CaptureFormBrandingR\x08\x62randing\x12-\n\rschema_digest\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x01R\x0cschemaDigest\x12\x39\n\ncreated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\'\n\ncreated_by\x18\t \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\tcreatedBy\"\xcf\x02\n\x1b\x43\x61ptureFormPublicationInput\x12\x39\n\x04slug\x18\x01 \x01(\tB%\xbaH\"r \x10\x01\x18P2\x1a^[a-z0-9]+(?:-[a-z0-9]+)*$R\x04slug\x12\x32\n\x10\x63ustom_domain_id\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\x0e\x63ustomDomainId\x12\x38\n\x0f\x61llowed_origins\x18\x03 \x03(\tB\x0f\xbaH\x0c\x92\x01\t\x10 \"\x05r\x03\x18\x80\x10R\x0e\x61llowedOrigins\x12#\n\rembed_enabled\x18\x04 \x01(\x08R\x0c\x65mbedEnabled\x12\x39\n\nexpires_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\'\n\x0finvitation_only\x18\x06 \x01(\x08R\x0einvitationOnly\"\x91\x02\n\x16\x43\x61ptureFormPublicRoute\x12$\n\x08hostname\x18\x01 \x01(\tB\x08\xbaH\x05r\x03\x18\xfd\x01R\x08hostname\x12\x1c\n\x04path\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\x04path\x12\'\n\nembed_path\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\tembedPath\x12\x32\n\x10\x63ustom_domain_id\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\x0e\x63ustomDomainId\x12\x31\n\x0f\x61llowed_origins\x18\x05 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10 R\x0e\x61llowedOrigins\x12#\n\rembed_enabled\x18\x06 \x01(\x08R\x0c\x65mbedEnabled\"\xb9\x04\n\x16\x43\x61ptureFormPublication\x12.\n\x0epublication_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpublicationId\x12 \n\x07\x66orm_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66ormId\x12&\n\nversion_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tversionId\x12G\n\x05state\x18\x04 \x01(\x0e\x32\'.console.v1.CaptureFormPublicationStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\'\n\ngeneration\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\ngeneration\x12\x1b\n\x04slug\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x18PR\x04slug\x12\x38\n\x05route\x18\x07 \x01(\x0b\x32\".console.v1.CaptureFormPublicRouteR\x05route\x12=\n\x0cpublished_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bpublishedAt\x12\x39\n\nexpires_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x39\n\nrevoked_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\trevokedAt\x12\'\n\x0finvitation_only\x18\x0b \x01(\x08R\x0einvitationOnly\"\xd9\x05\n\x0b\x43\x61ptureForm\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12 \n\x07\x66orm_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66ormId\x12\x1e\n\x04name\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xa0\x01R\x04name\x12*\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\xd0\x0fR\x0b\x64\x65scription\x12<\n\x05state\x18\x06 \x01(\x0e\x32\x1c.console.v1.CaptureFormStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\x35\n\x12\x63urrent_version_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x10\x63urrentVersionId\x12\x32\n\x10\x63urrent_revision\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0f\x63urrentRevision\x12P\n\robject_target\x18\t \x01(\x0b\x32#.console.v1.CaptureFormObjectTargetB\x06\xbaH\x03\xc8\x01\x01R\x0cobjectTarget\x12;\n\x08\x62randing\x18\n \x01(\x0b\x32\x1f.console.v1.CaptureFormBrandingR\x08\x62randing\x12P\n\x0cpublications\x18\x0b \x03(\x0b\x32\".console.v1.CaptureFormPublicationB\x08\xbaH\x05\x92\x01\x02\x10 R\x0cpublications\x12\x39\n\ncreated_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"\x8e\x04\n\x14PublishedCaptureForm\x12.\n\x0epublication_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpublicationId\x12 \n\x07\x66orm_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66ormId\x12&\n\nversion_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tversionId\x12\x32\n\x10version_revision\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0fversionRevision\x12\x1e\n\x04name\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xa0\x01R\x04name\x12*\n\x0b\x64\x65scription\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x18\xd0\x0fR\x0b\x64\x65scription\x12\x41\n\x08\x62randing\x18\x07 \x01(\x0b\x32%.console.v1.CaptureFormPublicBrandingR\x08\x62randing\x12\x44\n\x06\x66ields\x18\x08 \x03(\x0b\x32\".console.v1.CaptureFormPublicFieldB\x08\xbaH\x05\x92\x01\x02\x10@R\x06\x66ields\x12\x38\n\x05route\x18\t \x01(\x0b\x32\".console.v1.CaptureFormPublicRouteR\x05route\x12\x39\n\nexpires_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\"z\n\x11\x43\x61ptureFormAnswer\x12$\n\x08input_id\x18\x01 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\x07inputId\x12?\n\x05value\x18\x02 \x01(\x0b\x32!.console.v1.CaptureFormTypedValueB\x06\xbaH\x03\xc8\x01\x01R\x05value\"\xc1\x02\n\x11\x43\x61ptureFormReview\x12K\n\x08\x64\x65\x63ision\x18\x01 \x01(\x0e\x32%.console.v1.CaptureFormReviewDecisionB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08\x64\x65\x63ision\x12)\n\x0breviewer_id\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\nreviewerId\x12\x1c\n\x04note\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xa0\x1fR\x04note\x12;\n\x0breviewed_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nreviewedAt\x12Y\n\x13supplemental_values\x18\x05 \x03(\x0b\x32\x1e.console.v1.BusinessFieldValueB\x08\xbaH\x05\x92\x01\x02\x10@R\x12supplementalValues\"\xc1\x03\n\x17\x43\x61ptureFormObjectResult\x12$\n\tresult_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08resultId\x12H\n\x05state\x18\x02 \x01(\x0e\x32(.console.v1.CaptureFormObjectResultStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12%\n\tobject_id\x18\x03 \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\x08objectId\x12.\n\x0eobject_type_id\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\x0cobjectTypeId\x12=\n\x16object_schema_revision\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x14objectSchemaRevision\x12\x30\n\x0fobject_revision\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0eobjectRevision\x12\x36\n\x12mapping_receipt_id\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\x10mappingReceiptId\x12\x36\n\x12unmapped_input_ids\x18\x08 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10@R\x10unmappedInputIds\"\xc8\x05\n\x15\x43\x61ptureFormSubmission\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12,\n\rsubmission_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0csubmissionId\x12 \n\x07\x66orm_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66ormId\x12.\n\x0epublication_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpublicationId\x12&\n\nversion_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tversionId\x12\x46\n\x05state\x18\x07 \x01(\x0e\x32&.console.v1.CaptureFormSubmissionStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\x41\n\x07\x61nswers\x18\x08 \x03(\x0b\x32\x1d.console.v1.CaptureFormAnswerB\x08\xbaH\x05\x92\x01\x02\x10@R\x07\x61nswers\x12#\n\x08revision\x18\t \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x08revision\x12\x35\n\x06review\x18\n \x01(\x0b\x32\x1d.console.v1.CaptureFormReviewR\x06review\x12H\n\robject_result\x18\x0b \x01(\x0b\x32#.console.v1.CaptureFormObjectResultR\x0cobjectResult\x12=\n\x0csubmitted_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bsubmittedAt\x12\x39\n\nupdated_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"\x80\x02\n\"CaptureFormPublicSubmissionReceipt\x12,\n\rsubmission_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0csubmissionId\x12%\n\tresult_id\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\x08resultId\x12\x46\n\x05state\x18\x03 \x01(\x0e\x32&.console.v1.CaptureFormSubmissionStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12=\n\x0csubmitted_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bsubmittedAt\"\xc0\x02\n\x18\x43reateCaptureFormRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x33\n\x0fidempotency_key\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\x12\x1e\n\x04name\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xa0\x01R\x04name\x12*\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\xd0\x0fR\x0b\x64\x65scription\x12\x45\n\x07version\x18\x06 \x01(\x0b\x32#.console.v1.CaptureFormVersionInputB\x06\xbaH\x03\xc8\x01\x01R\x07version\"\x92\x01\n\x19\x43reateCaptureFormResponse\x12\x33\n\x04\x66orm\x18\x01 \x01(\x0b\x32\x17.console.v1.CaptureFormB\x06\xbaH\x03\xc8\x01\x01R\x04\x66orm\x12@\n\x07version\x18\x02 \x01(\x0b\x32\x1e.console.v1.CaptureFormVersionB\x06\xbaH\x03\xc8\x01\x01R\x07version\"\x86\x02\n\x17ListCaptureFormsRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12<\n\x05state\x18\x03 \x01(\x0e\x32\x1c.console.v1.CaptureFormStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12&\n\tpage_size\x18\x04 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x08pageSize\x12\'\n\npage_token\x18\x05 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\tpageToken\"\x85\x01\n\x18ListCaptureFormsResponse\x12\x37\n\x05\x66orms\x18\x01 \x03(\x0b\x32\x17.console.v1.CaptureFormB\x08\xbaH\x05\x92\x01\x02\x10\x64R\x05\x66orms\x12\x30\n\x0fnext_page_token\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\rnextPageToken\"\xc0\x01\n\x15GetCaptureFormRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12 \n\x07\x66orm_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66ormId\x12\'\n\nversion_id\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\xff\x01R\tversionId\"\x8f\x01\n\x16GetCaptureFormResponse\x12\x33\n\x04\x66orm\x18\x01 \x01(\x0b\x32\x17.console.v1.CaptureFormB\x06\xbaH\x03\xc8\x01\x01R\x04\x66orm\x12@\n\x07version\x18\x02 \x01(\x0b\x32\x1e.console.v1.CaptureFormVersionB\x06\xbaH\x03\xc8\x01\x01R\x07version\"\x98\x03\n\x18UpdateCaptureFormRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12 \n\x07\x66orm_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66ormId\x12\x34\n\x11\x65xpected_revision\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x10\x65xpectedRevision\x12\x33\n\x0fidempotency_key\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\x12\x1e\n\x04name\x18\x06 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xa0\x01R\x04name\x12*\n\x0b\x64\x65scription\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x18\xd0\x0fR\x0b\x64\x65scription\x12\x45\n\x07version\x18\x08 \x01(\x0b\x32#.console.v1.CaptureFormVersionInputB\x06\xbaH\x03\xc8\x01\x01R\x07version\"\x92\x01\n\x19UpdateCaptureFormResponse\x12\x33\n\x04\x66orm\x18\x01 \x01(\x0b\x32\x17.console.v1.CaptureFormB\x06\xbaH\x03\xc8\x01\x01R\x04\x66orm\x12@\n\x07version\x18\x02 \x01(\x0b\x32\x1e.console.v1.CaptureFormVersionB\x06\xbaH\x03\xc8\x01\x01R\x07version\"\xcb\x02\n\x19PublishCaptureFormRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12 \n\x07\x66orm_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66ormId\x12&\n\nversion_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tversionId\x12Q\n\x0bpublication\x18\x05 \x01(\x0b\x32\'.console.v1.CaptureFormPublicationInputB\x06\xbaH\x03\xc8\x01\x01R\x0bpublication\x12\x33\n\x0fidempotency_key\x18\x06 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\"\xe1\x01\n\x1aPublishCaptureFormResponse\x12\x33\n\x04\x66orm\x18\x01 \x01(\x0b\x32\x17.console.v1.CaptureFormB\x06\xbaH\x03\xc8\x01\x01R\x04\x66orm\x12@\n\x07version\x18\x02 \x01(\x0b\x32\x1e.console.v1.CaptureFormVersionB\x06\xbaH\x03\xc8\x01\x01R\x07version\x12L\n\x0bpublication\x18\x03 \x01(\x0b\x32\".console.v1.CaptureFormPublicationB\x06\xbaH\x03\xc8\x01\x01R\x0bpublication\"\x8a\x02\n#RevokeCaptureFormPublicationRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12 \n\x07\x66orm_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66ormId\x12.\n\x0epublication_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpublicationId\x12\x33\n\x0fidempotency_key\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\"\xa9\x01\n$RevokeCaptureFormPublicationResponse\x12\x33\n\x04\x66orm\x18\x01 \x01(\x0b\x32\x17.console.v1.CaptureFormB\x06\xbaH\x03\xc8\x01\x01R\x04\x66orm\x12L\n\x0bpublication\x18\x02 \x01(\x0b\x32\".console.v1.CaptureFormPublicationB\x06\xbaH\x03\xc8\x01\x01R\x0bpublication\"P\n\x1eGetPublishedCaptureFormRequest\x12.\n\x0epublication_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpublicationId\"_\n\x1fGetPublishedCaptureFormResponse\x12<\n\x04\x66orm\x18\x01 \x01(\x0b\x32 .console.v1.PublishedCaptureFormB\x06\xbaH\x03\xc8\x01\x01R\x04\x66orm\"\xa7\x01\n+GetPublishedCaptureFormBrandingAssetRequest\x12.\n\x0epublication_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpublicationId\x12H\n\x04role\x18\x02 \x01(\x0e\x32(.console.v1.CaptureFormBrandingAssetRoleB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04role\"\xdc\x01\n,GetPublishedCaptureFormBrandingAssetResponse\x12#\n\x07\x63ontent\x18\x01 \x01(\x0c\x42\t\xbaH\x06z\x04\x18\x80\x80 R\x07\x63ontent\x12,\n\x0c\x63ontent_type\x18\x02 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18@R\x0b\x63ontentType\x12-\n\x06\x64igest\x18\x03 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x06\x64igest\x12*\n\nsize_bytes\x18\x04 \x01(\x03\x42\x0b\xbaH\x08\"\x06\x18\x80\x80 (\x00R\tsizeBytes\"\xcb\x01\n!SubmitPublishedCaptureFormRequest\x12.\n\x0epublication_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpublicationId\x12\x33\n\x0fidempotency_key\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\x12\x41\n\x07\x61nswers\x18\x03 \x03(\x0b\x32\x1d.console.v1.CaptureFormAnswerB\x08\xbaH\x05\x92\x01\x02\x10@R\x07\x61nswers\"v\n\"SubmitPublishedCaptureFormResponse\x12P\n\x07receipt\x18\x01 \x01(\x0b\x32..console.v1.CaptureFormPublicSubmissionReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xf6\x02\n&BeginPublishedCaptureFormUploadRequest\x12.\n\x0epublication_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpublicationId\x12$\n\x08input_id\x18\x02 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\x07inputId\x12*\n\x08\x66ilename\x18\x03 \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\xff\x01\x80\xf4\x18\x03R\x08\x66ilename\x12\x31\n\x0c\x63ontent_type\x18\x04 \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\xff\x01\x80\xf4\x18\x01R\x0b\x63ontentType\x12+\n\nsize_bytes\x18\x05 \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\x80\x80\x19 \x00R\tsizeBytes\x12\x31\n\x06sha256\x18\x06 \x01(\tB\x19\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$\x80\xf4\x18\x02R\x06sha256\x12\x37\n\x0fidempotency_key\x18\x07 \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\x80\x01\x80\xf4\x18\x02R\x0eidempotencyKey\"\xa2\x02\n\'BeginPublishedCaptureFormUploadResponse\x12;\n\x05grant\x18\x01 \x01(\x0b\x32\x1d.console.v1.CaptureFormUploadB\x06\xbaH\x03\xc8\x01\x01R\x05grant\x12\"\n\x08lease_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07leaseId\x12/\n\x0blease_token\x18\x03 \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\x80\x04\x80\xf4\x18\x05R\nleaseToken\x12,\n\rfencing_token\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0c\x66\x65ncingToken\x12\x37\n\x06upload\x18\x05 \x01(\x0b\x32\x17.vfs.v1.VfsUploadTargetB\x06\xbaH\x03\xc8\x01\x01R\x06upload\"\xc0\x04\n)CompletePublishedCaptureFormUploadRequest\x12.\n\x0epublication_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpublicationId\x12$\n\x08input_id\x18\x02 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18PR\x07inputId\x12$\n\tupload_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08uploadId\x12\"\n\x08lease_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07leaseId\x12/\n\x0blease_token\x18\x05 \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\x80\x04\x80\xf4\x18\x05R\nleaseToken\x12,\n\rfencing_token\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0c\x66\x65ncingToken\x12+\n\nsize_bytes\x18\x07 \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\x80\x80\x19 \x00R\tsizeBytes\x12\x31\n\x06sha256\x18\x08 \x01(\tB\x19\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$\x80\xf4\x18\x02R\x06sha256\x12\'\n\x0cstorage_etag\x18\t \x01(\tB\x04\x80\xf4\x18\x02R\x0bstorageEtag\x12\x37\n\x0fidempotency_key\x18\n \x01(\tB\x0e\xbaH\x07r\x05\x10\x01\x18\x80\x01\x80\xf4\x18\x02R\x0eidempotencyKey\x12R\n\x0f\x63ompleted_parts\x18\x0b \x03(\x0b\x32\x1e.vfs.v1.VfsCompletedUploadPartB\t\xbaH\x06\x92\x01\x03\x10\x90NR\x0e\x63ompletedParts\"k\n*CompletePublishedCaptureFormUploadResponse\x12=\n\x06upload\x18\x01 \x01(\x0b\x32\x1d.console.v1.CaptureFormUploadB\x06\xbaH\x03\xc8\x01\x01R\x06upload\"\xad\x01\n\x1fGetCaptureFormSubmissionRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12,\n\rsubmission_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0csubmissionId\"m\n GetCaptureFormSubmissionResponse\x12I\n\nsubmission\x18\x01 \x01(\x0b\x32!.console.v1.CaptureFormSubmissionB\x06\xbaH\x03\xc8\x01\x01R\nsubmission\"\xbc\x02\n!ListCaptureFormSubmissionsRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12 \n\x07\x66orm_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06\x66ormId\x12\x46\n\x05state\x18\x04 \x01(\x0e\x32&.console.v1.CaptureFormSubmissionStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12&\n\tpage_size\x18\x05 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x08pageSize\x12\'\n\npage_token\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\tpageToken\"\xa5\x01\n\"ListCaptureFormSubmissionsResponse\x12M\n\x0bsubmissions\x18\x01 \x03(\x0b\x32!.console.v1.CaptureFormSubmissionB\x08\xbaH\x05\x92\x01\x02\x10\x64R\x0bsubmissions\x12\x30\n\x0fnext_page_token\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x04R\rnextPageToken\"\xe3\x03\n\"ReviewCaptureFormSubmissionRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12,\n\rsubmission_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0csubmissionId\x12\x34\n\x11\x65xpected_revision\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x10\x65xpectedRevision\x12M\n\x08\x64\x65\x63ision\x18\x05 \x01(\x0e\x32%.console.v1.CaptureFormReviewDecisionB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x08\x64\x65\x63ision\x12\x1c\n\x04note\x18\x06 \x01(\tB\x08\xbaH\x05r\x03\x18\xa0\x1fR\x04note\x12\x33\n\x0fidempotency_key\x18\x07 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\x12Y\n\x13supplemental_values\x18\x08 \x03(\x0b\x32\x1e.console.v1.BusinessFieldValueB\x08\xbaH\x05\x92\x01\x02\x10@R\x12supplementalValues\"\xba\x01\n#ReviewCaptureFormSubmissionResponse\x12I\n\nsubmission\x18\x01 \x01(\x0b\x32!.console.v1.CaptureFormSubmissionB\x06\xbaH\x03\xc8\x01\x01R\nsubmission\x12H\n\robject_result\x18\x02 \x01(\x0b\x32#.console.v1.CaptureFormObjectResultR\x0cobjectResult\"\xc3\x01\n\x1cGetBusinessObjectTypeRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12 \n\x07type_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06typeId\x12#\n\x08revision\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x08revision\"_\n\x1dGetBusinessObjectTypeResponse\x12>\n\ndefinition\x18\x01 \x01(\x0b\x32\x1e.console.v1.BusinessObjectTypeR\ndefinition\"\xab\x02\n\x16InferenceCreditReceipt\x12\x1d\n\npayment_id\x18\x01 \x01(\tR\tpaymentId\x12 \n\x0cpaid_at_unix\x18\x02 \x01(\x03R\npaidAtUnix\x12!\n\x0c\x63redit_cents\x18\x03 \x01(\x04R\x0b\x63reditCents\x12\x1b\n\tfee_cents\x18\x04 \x01(\x04R\x08\x66\x65\x65\x43\x65nts\x12\x1d\n\npaid_cents\x18\x05 \x01(\x04R\tpaidCents\x12%\n\x0erefunded_cents\x18\x06 \x01(\x04R\rrefundedCents\x12\x1f\n\x0breceipt_url\x18\x07 \x01(\tR\nreceiptUrl\x12)\n\x10\x61utomatic_refill\x18\x08 \x01(\x08R\x0f\x61utomaticRefill\"o\n\"ListInferenceCreditReceiptsRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1d\n\npage_token\x18\x02 \x01(\tR\tpageToken\"\xab\x01\n#ListInferenceCreditReceiptsResponse\x12>\n\x08receipts\x18\x01 \x03(\x0b\x32\".console.v1.InferenceCreditReceiptR\x08receipts\x12&\n\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\x12\x1c\n\tavailable\x18\x03 \x01(\x08R\tavailable\"\x99\x02\n\x19InferenceCreditAutoRefill\x12\x18\n\x07\x65nabled\x18\x01 \x01(\x08R\x07\x65nabled\x12\'\n\x0fthreshold_cents\x18\x02 \x01(\x04R\x0ethresholdCents\x12!\n\x0c\x63redit_cents\x18\x03 \x01(\x04R\x0b\x63reditCents\x12*\n\x11monthly_cap_cents\x18\x04 \x01(\x04R\x0fmonthlyCapCents\x12\'\n\x0f\x63ommitted_cents\x18\x05 \x01(\x04R\x0e\x63ommittedCents\x12!\n\x0cpause_reason\x18\x06 \x01(\tR\x0bpauseReason\x12\x1e\n\ngeneration\x18\x07 \x01(\tR\ngeneration\"Q\n#GetInferenceCreditAutoRefillRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"i\n$GetInferenceCreditAutoRefillResponse\x12\x41\n\x08settings\x18\x01 \x01(\x0b\x32%.console.v1.InferenceCreditAutoRefillR\x08settings\"\xda\x02\n&UpdateInferenceCreditAutoRefillRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\'\n\nrequest_id\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\xb0\x01\x01R\trequestId\x12\x18\n\x07\x65nabled\x18\x03 \x01(\x08R\x07\x65nabled\x12\'\n\x0fthreshold_cents\x18\x04 \x01(\x04R\x0ethresholdCents\x12!\n\x0c\x63redit_cents\x18\x05 \x01(\x04R\x0b\x63reditCents\x12*\n\x11monthly_cap_cents\x18\x06 \x01(\x04R\x0fmonthlyCapCents\x12\x18\n\x07\x63onsent\x18\x07 \x01(\x08R\x07\x63onsent\x12/\n\x13\x65xpected_generation\x18\x08 \x01(\tR\x12\x65xpectedGeneration\"f\n\'UpdateInferenceCreditAutoRefillResponse\x12\x1b\n\tsetup_url\x18\x01 \x01(\tR\x08setupUrl\x12\x1e\n\ngeneration\x18\x02 \x01(\tR\ngeneration\"\x89\x01\n(CompleteInferenceCreditAutoRefillRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x31\n\x10setup_session_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0esetupSessionId\"E\n)CompleteInferenceCreditAutoRefillResponse\x12\x18\n\x07\x65nabled\x18\x01 \x01(\x08R\x07\x65nabled\"\x97\x02\n-PrepareBusinessObjectAuthorityTransferRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x1b\n\tobject_id\x18\x04 \x01(\tR\x08objectId\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x03R\x10\x65xpectedRevision\x12\'\n\x0f\x61uthority_epoch\x18\x06 \x01(\x03R\x0e\x61uthorityEpoch\"\xa9\x01\n.PrepareBusinessObjectAuthorityTransferResponse\x12\x32\n\x06object\x18\x01 \x01(\x0b\x32\x1a.console.v1.BusinessObjectR\x06object\x12\x14\n\x05ready\x18\x02 \x01(\x08R\x05ready\x12-\n\x12unavailable_reason\x18\x03 \x01(\tR\x11unavailableReason\"\xf1\x02\n.FinalizeBusinessObjectAuthorityTransferRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x1b\n\tobject_id\x18\x04 \x01(\tR\x08objectId\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x03R\x10\x65xpectedRevision\x12\x1f\n\x0btransfer_id\x18\x06 \x01(\tR\ntransferId\x12\x33\n\x15reconciliation_digest\x18\x07 \x01(\tR\x14reconciliationDigest\x12*\n\x11\x66\x65nce_evidence_id\x18\x08 \x01(\tR\x0f\x66\x65nceEvidenceId\"e\n/FinalizeBusinessObjectAuthorityTransferResponse\x12\x32\n\x06object\x18\x01 \x01(\x0b\x32\x1a.console.v1.BusinessObjectR\x06object\"{\n\x1e\x42usinessProcessParticipantType\x12\x17\n\x07role_id\x18\x01 \x01(\tR\x06roleId\x12\x17\n\x07type_id\x18\x02 \x01(\tR\x06typeId\x12\'\n\x0fschema_revision\x18\x03 \x01(\x03R\x0eschemaRevision\"{\n\x1a\x42usinessProcessParticipant\x12\x17\n\x07role_id\x18\x01 \x01(\tR\x06roleId\x12\x1b\n\tobject_id\x18\x02 \x01(\tR\x08objectId\x12\'\n\x0fobject_revision\x18\x03 \x01(\x03R\x0eobjectRevision\"\xff\x01\n\x1a\x42usinessProcessRequirement\x12%\n\x0erequirement_id\x18\x01 \x01(\tR\rrequirementId\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12\x17\n\x07role_id\x18\x03 \x01(\tR\x06roleId\x12:\n\x08\x65xpected\x18\x04 \x01(\x0b\x32\x1e.console.v1.BusinessFieldValueR\x08\x65xpected\x12&\n\x0fmax_age_seconds\x18\x05 \x01(\x03R\rmaxAgeSeconds\x12\'\n\x0frequire_present\x18\x06 \x01(\x08R\x0erequirePresent\"\xcb\x02\n\x19\x42usinessProcessTransition\x12#\n\rtransition_id\x18\x01 \x01(\tR\x0ctransitionId\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x1d\n\nfrom_state\x18\x03 \x01(\tR\tfromState\x12\x19\n\x08to_state\x18\x04 \x01(\tR\x07toState\x12J\n\x0crequirements\x18\x05 \x03(\x0b\x32&.console.v1.BusinessProcessRequirementR\x0crequirements\x12+\n\x11requires_decision\x18\x06 \x01(\x08R\x10requiresDecision\x12\x42\n\nfollow_ups\x18\x07 \x03(\x0b\x32#.console.v1.BusinessProcessFollowUpR\tfollowUps\"\x97\x01\n\x17\x42usinessProcessFollowUp\x12#\n\rdefinition_id\x18\x01 \x01(\tR\x0c\x64\x65\x66initionId\x12/\n\x13\x64\x65\x66inition_revision\x18\x02 \x01(\x03R\x12\x64\x65\x66initionRevision\x12&\n\x0fsubject_role_id\x18\x03 \x01(\tR\rsubjectRoleId\"\xe3\x03\n\x19\x42usinessProcessDefinition\x12#\n\rdefinition_id\x18\x01 \x01(\tR\x0c\x64\x65\x66initionId\x12\x1a\n\x08revision\x18\x02 \x01(\x03R\x08revision\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12N\n\x0cparticipants\x18\x04 \x03(\x0b\x32*.console.v1.BusinessProcessParticipantTypeR\x0cparticipants\x12&\n\x0fsubject_role_id\x18\x05 \x01(\tR\rsubjectRoleId\x12\x16\n\x06states\x18\x06 \x03(\tR\x06states\x12#\n\rinitial_state\x18\x07 \x01(\tR\x0cinitialState\x12\'\n\x0fterminal_states\x18\x08 \x03(\tR\x0eterminalStates\x12G\n\x0btransitions\x18\t \x03(\x0b\x32%.console.v1.BusinessProcessTransitionR\x0btransitions\x12\'\n\x0forganization_id\x18\n \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x0b \x01(\tR\x0bworkspaceId\"\x96\x03\n\x16\x42usinessProcessReceipt\x12!\n\x0coperation_id\x18\x01 \x01(\tR\x0boperationId\x12#\n\rtransition_id\x18\x02 \x01(\tR\x0ctransitionId\x12\x1d\n\nfrom_state\x18\x03 \x01(\tR\tfromState\x12\x19\n\x08to_state\x18\x04 \x01(\tR\x07toState\x12\x1a\n\x08revision\x18\x05 \x01(\x03R\x08revision\x12\x19\n\x08\x61\x63tor_id\x18\x06 \x01(\tR\x07\x61\x63torId\x12+\n\x11\x64\x65\x63ision_accepted\x18\x07 \x01(\x08R\x10\x64\x65\x63isionAccepted\x12\x42\n\x08\x65vidence\x18\x08 \x03(\x0b\x32&.console.v1.BusinessProcessParticipantR\x08\x65vidence\x12\x31\n\x15\x66ollow_up_process_ids\x18\t \x03(\tR\x12\x66ollowUpProcessIds\x12\x1f\n\x0brecorded_at\x18\n \x01(\tR\nrecordedAt\"\xdf\x04\n\x0f\x42usinessProcess\x12\x1d\n\nprocess_id\x18\x01 \x01(\tR\tprocessId\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x03 \x01(\tR\x0bworkspaceId\x12#\n\rdefinition_id\x18\x04 \x01(\tR\x0c\x64\x65\x66initionId\x12/\n\x13\x64\x65\x66inition_revision\x18\x05 \x01(\x03R\x12\x64\x65\x66initionRevision\x12\x1a\n\x08revision\x18\x06 \x01(\x03R\x08revision\x12\x19\n\x08state_id\x18\x07 \x01(\tR\x07stateId\x12*\n\x11subject_object_id\x18\x08 \x01(\tR\x0fsubjectObjectId\x12J\n\x0cparticipants\x18\t \x03(\x0b\x32&.console.v1.BusinessProcessParticipantR\x0cparticipants\x12\x32\n\x15\x64\x65\x63ision_principal_id\x18\n \x01(\tR\x13\x64\x65\x63isionPrincipalId\x12*\n\x11parent_process_id\x18\x0b \x01(\tR\x0fparentProcessId\x12\x1d\n\ncreated_at\x18\x0c \x01(\tR\tcreatedAt\x12\x1d\n\nupdated_at\x18\r \x01(\tR\tupdatedAt\x12>\n\x08receipts\x18\x0e \x03(\x0b\x32\".console.v1.BusinessProcessReceiptR\x08receipts\"\x93\x02\n\x1c\x44\x65\x66ineBusinessProcessRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\x33\n\x0fidempotency_key\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\x12\x45\n\ndefinition\x18\x04 \x01(\x0b\x32%.console.v1.BusinessProcessDefinitionR\ndefinition\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x03R\x10\x65xpectedRevision\"f\n\x1d\x44\x65\x66ineBusinessProcessResponse\x12\x45\n\ndefinition\x18\x01 \x01(\x0b\x32%.console.v1.BusinessProcessDefinitionR\ndefinition\"\xf4\x02\n\x1bStartBusinessProcessRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\x33\n\x0fidempotency_key\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\x12#\n\rdefinition_id\x18\x04 \x01(\tR\x0c\x64\x65\x66initionId\x12/\n\x13\x64\x65\x66inition_revision\x18\x05 \x01(\x03R\x12\x64\x65\x66initionRevision\x12J\n\x0cparticipants\x18\x06 \x03(\x0b\x32&.console.v1.BusinessProcessParticipantR\x0cparticipants\x12\x32\n\x15\x64\x65\x63ision_principal_id\x18\x07 \x01(\tR\x13\x64\x65\x63isionPrincipalId\"U\n\x1cStartBusinessProcessResponse\x12\x35\n\x07process\x18\x01 \x01(\x0b\x32\x1b.console.v1.BusinessProcessR\x07process\"\x86\x01\n\x19GetBusinessProcessRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\x1d\n\nprocess_id\x18\x03 \x01(\tR\tprocessId\"\x9a\x01\n\x1aGetBusinessProcessResponse\x12\x35\n\x07process\x18\x01 \x01(\x0b\x32\x1b.console.v1.BusinessProcessR\x07process\x12\x45\n\ndefinition\x18\x02 \x01(\x0b\x32%.console.v1.BusinessProcessDefinitionR\ndefinition\"\xdd\x01\n\x1cListBusinessProcessesRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12*\n\x11subject_object_id\x18\x03 \x01(\tR\x0fsubjectObjectId\x12(\n\x10\x61\x66ter_process_id\x18\x04 \x01(\tR\x0e\x61\x66terProcessId\x12\x1b\n\tpage_size\x18\x05 \x01(\x05R\x08pageSize\"\x8d\x01\n\x1dListBusinessProcessesResponse\x12\x39\n\tprocesses\x18\x01 \x03(\x0b\x32\x1b.console.v1.BusinessProcessR\tprocesses\x12\x31\n\x15next_after_process_id\x18\x02 \x01(\tR\x12nextAfterProcessId\"\x89\x03\n TransitionBusinessProcessRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\x33\n\x0fidempotency_key\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\x12\x1d\n\nprocess_id\x18\x04 \x01(\tR\tprocessId\x12+\n\x11\x65xpected_revision\x18\x05 \x01(\x03R\x10\x65xpectedRevision\x12#\n\rtransition_id\x18\x06 \x01(\tR\x0ctransitionId\x12J\n\x0cparticipants\x18\x07 \x03(\x0b\x32&.console.v1.BusinessProcessParticipantR\x0cparticipants\x12\'\n\x0f\x61\x63\x63\x65pt_decision\x18\x08 \x01(\x08R\x0e\x61\x63\x63\x65ptDecision\"\xaa\x01\n!TransitionBusinessProcessResponse\x12\x35\n\x07process\x18\x01 \x01(\x0b\x32\x1b.console.v1.BusinessProcessR\x07process\x12\x1a\n\x08\x61\x63\x63\x65pted\x18\x02 \x01(\x08R\x08\x61\x63\x63\x65pted\x12\x32\n\x15unmet_requirement_ids\x18\x03 \x03(\tR\x13unmetRequirementIds\"\xb2\x01\n#GetBusinessProcessDefinitionRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12#\n\rdefinition_id\x18\x03 \x01(\tR\x0c\x64\x65\x66initionId\x12\x1a\n\x08revision\x18\x04 \x01(\x03R\x08revision\"m\n$GetBusinessProcessDefinitionResponse\x12\x45\n\ndefinition\x18\x01 \x01(\x0b\x32%.console.v1.BusinessProcessDefinitionR\ndefinition\"\xc0\x01\n%ListBusinessProcessDefinitionsRequest\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12.\n\x13\x61\x66ter_definition_id\x18\x03 \x01(\tR\x11\x61\x66terDefinitionId\x12\x1b\n\tpage_size\x18\x04 \x01(\x05R\x08pageSize\"\xaa\x01\n&ListBusinessProcessDefinitionsResponse\x12G\n\x0b\x64\x65\x66initions\x18\x01 \x03(\x0b\x32%.console.v1.BusinessProcessDefinitionR\x0b\x64\x65\x66initions\x12\x37\n\x18next_after_definition_id\x18\x02 \x01(\tR\x15nextAfterDefinitionId\"\x8f\x01\n!OperatingProjectSnapshotFileInput\x12\x1e\n\x04path\x18\x01 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x08R\x04path\x12J\n\nattachment\x18\x02 \x01(\x0b\x32\".console.v1.OperatingAttachmentRefB\x06\xbaH\x03\xc8\x01\x01R\nattachment\"\x8f\x03\n%AcceptOperatingProjectSnapshotRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12:\n\x13project_resource_id\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xff\x01R\x11projectResourceId\x12\x1d\n\nchannel_id\x18\x03 \x01(\tR\tchannelId\x12\x33\n\x0fidempotency_key\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xff\x01R\x0eidempotencyKey\x12\x35\n\x14\x65xpected_ref_version\x18\x05 \x01(\x04H\x00R\x12\x65xpectedRefVersion\x88\x01\x01\x12N\n\x05\x66iles\x18\x06 \x03(\x0b\x32-.console.v1.OperatingProjectSnapshotFileInputB\t\xbaH\x06\x92\x01\x03\x10\xe8\x07R\x05\x66ilesB\x17\n\x15_expected_ref_version\"\xb3\x02\n&AcceptOperatingProjectSnapshotResponse\x12S\n\x0eproject_source\x18\x01 \x01(\x0b\x32,.toolexecution.v1.ToolExecutionProjectSourceR\rprojectSource\x12>\n\x1bmanual_acceptance_available\x18\x02 \x01(\x08R\x19manualAcceptanceAvailable\x12.\n\x13import_execution_id\x18\x03 \x01(\tR\x11importExecutionId\x12!\n\x0cimport_state\x18\x04 \x01(\tR\x0bimportState\x12!\n\x0cimport_error\x18\x05 \x01(\tR\x0bimportError\"\xe5\x01\n\"GetOperatingProjectSnapshotRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12:\n\x13project_resource_id\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xff\x01R\x11projectResourceId\x12\x33\n\x13import_execution_id\x18\x03 \x01(\tH\x00R\x11importExecutionId\x88\x01\x01\x42\x16\n\x14_import_execution_id\"\xac\x01\n\"GetOperatingTaskEnvironmentRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12)\n\nchannel_id\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xff\x01R\tchannelId\x12#\n\x07task_id\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xff\x01R\x06taskId\"\xae\x03\n#GetOperatingTaskEnvironmentResponse\x12\x1c\n\tavailable\x18\x01 \x01(\x08R\tavailable\x12\'\n\x0fhas_environment\x18\x02 \x01(\x08R\x0ehasEnvironment\x12\x14\n\x05state\x18\x03 \x01(\tR\x05state\x12%\n\x0eretention_days\x18\x04 \x01(\x05R\rretentionDays\x12\x44\n\x10last_activity_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0elastActivityAt\x12\x39\n\nexpires_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12.\n\x13project_resource_id\x18\x07 \x01(\tR\x11projectResourceId\x12)\n\x10\x63leanup_accepted\x18\x08 \x01(\x08R\x0f\x63leanupAccepted\x12\'\n\x0fretention_hours\x18\t \x01(\x05R\x0eretentionHours\"\xa0\x02\n%ImportOperatingProjectSnapshotRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12:\n\x13project_resource_id\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xff\x01R\x11projectResourceId\x12\x33\n\x0fidempotency_key\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\xff\x01R\x0eidempotencyKey\x12\x35\n\x14\x65xpected_ref_version\x18\x04 \x01(\x04H\x00R\x12\x65xpectedRefVersion\x88\x01\x01\x42\x17\n\x15_expected_ref_version\"\xe7\x03\n\x11\x42usinessBlueprint\x12!\n\x0c\x62lueprint_id\x18\x01 \x01(\tR\x0b\x62lueprintId\x12\x18\n\x07version\x18\x02 \x01(\x03R\x07version\x12%\n\x0e\x63ontent_digest\x18\x03 \x01(\tR\rcontentDigest\x12\x12\n\x04name\x18\x04 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x05 \x01(\tR\x0b\x64\x65scription\x12\x41\n\x0cobject_types\x18\x06 \x03(\x0b\x32\x1e.console.v1.BusinessObjectTypeR\x0bobjectTypes\x12?\n\x07process\x18\x07 \x01(\x0b\x32%.console.v1.BusinessProcessDefinitionR\x07process\x12;\n\x06intake\x18\x08 \x01(\x0b\x32#.console.v1.CaptureFormVersionInputR\x06intake\x12\x33\n\x15required_capabilities\x18\t \x03(\tR\x14requiredCapabilities\x12\x42\n\x1d\x61utomated_execution_available\x18\n \x01(\x08R\x1b\x61utomatedExecutionAvailable\"}\n\x1dListBusinessBlueprintsRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"_\n\x1eListBusinessBlueprintsResponse\x12=\n\nblueprints\x18\x01 \x03(\x0b\x32\x1d.console.v1.BusinessBlueprintR\nblueprints\"\xee\x02\n\x1d\x43loneBusinessBlueprintRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x33\n\x0fidempotency_key\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\x12*\n\x0c\x62lueprint_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x62lueprintId\x12!\n\x07version\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x07version\x12<\n\x0e\x63ontent_digest\x18\x06 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\rcontentDigest\x12\x1d\n\x04name\x18\x08 \x01(\tB\t\xbaH\x06r\x04\x10\x01\x18xR\x04nameJ\x04\x08\x07\x10\x08R\x08\x63lone_id\"\xa7\x03\n\x1e\x43loneBusinessBlueprintResponse\x12!\n\x0c\x62lueprint_id\x18\x01 \x01(\tR\x0b\x62lueprintId\x12+\n\x11\x62lueprint_version\x18\x02 \x01(\x03R\x10\x62lueprintVersion\x12%\n\x0e\x63ontent_digest\x18\x03 \x01(\tR\rcontentDigest\x12\x19\n\x08\x63lone_id\x18\x04 \x01(\tR\x07\x63loneId\x12\x41\n\x0cobject_types\x18\x05 \x03(\x0b\x32\x1e.console.v1.BusinessObjectTypeR\x0bobjectTypes\x12?\n\x07process\x18\x06 \x01(\x0b\x32%.console.v1.BusinessProcessDefinitionR\x07process\x12+\n\x04\x66orm\x18\x07 \x01(\x0b\x32\x17.console.v1.CaptureFormR\x04\x66orm\x12\x42\n\x1d\x61utomated_execution_available\x18\x08 \x01(\x08R\x1b\x61utomatedExecutionAvailable\"\x98\x01\n\x17\x42usinessBlueprintSource\x12!\n\x0c\x62lueprint_id\x18\x01 \x01(\tR\x0b\x62lueprintId\x12\x18\n\x07version\x18\x02 \x01(\x03R\x07version\x12%\n\x0e\x63ontent_digest\x18\x03 \x01(\tR\rcontentDigest\x12\x19\n\x08\x63lone_id\x18\x04 \x01(\tR\x07\x63loneId\"\xe3\x01\n\x15\x43\x61ptureFormInvitation\x12#\n\rinvitation_id\x18\x01 \x01(\tR\x0cinvitationId\x12%\n\x0epublication_id\x18\x02 \x01(\tR\rpublicationId\x12-\n\x0frecipient_email\x18\x03 \x01(\tB\x04\x80\xf4\x18\x02R\x0erecipientEmail\x12\x39\n\nexpires_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x14\n\x05state\x18\x05 \x01(\tR\x05state\"\xa9\x03\n\"CreateCaptureFormInvitationRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12.\n\x0epublication_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rpublicationId\x12\x30\n\x0frecipient_email\x18\x04 \x01(\tB\x07\xbaH\x04r\x02`\x01R\x0erecipientEmail\x12\x41\n\nexpires_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\texpiresAt\x12K\n\x0c\x62ound_values\x18\x06 \x03(\x0b\x32\x1e.console.v1.BusinessFieldValueB\x08\xbaH\x05\x92\x01\x02\x10@R\x0b\x62oundValues\x12\x33\n\x0fidempotency_key\x18\x07 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\"p\n#CreateCaptureFormInvitationResponse\x12I\n\ninvitation\x18\x01 \x01(\x0b\x32!.console.v1.CaptureFormInvitationB\x06\xbaH\x03\xc8\x01\x01R\ninvitation\"\xe5\x01\n\"RevokeCaptureFormInvitationRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12,\n\rinvitation_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cinvitationId\x12\x33\n\x0fidempotency_key\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\"p\n#RevokeCaptureFormInvitationResponse\x12I\n\ninvitation\x18\x01 \x01(\x0b\x32!.console.v1.CaptureFormInvitationB\x06\xbaH\x03\xc8\x01\x01R\ninvitation\"L\n\x1cGetInvitedCaptureFormRequest\x12,\n\rinvitation_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cinvitationId\"\x9f\x01\n\x1dGetInvitedCaptureFormResponse\x12\x34\n\x04\x66orm\x18\x01 \x01(\x0b\x32 .console.v1.PublishedCaptureFormR\x04\x66orm\x12H\n\x07receipt\x18\x02 \x01(\x0b\x32..console.v1.CaptureFormPublicSubmissionReceiptR\x07receipt\"\xc7\x01\n\x1fSubmitInvitedCaptureFormRequest\x12,\n\rinvitation_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cinvitationId\x12\x41\n\x07\x61nswers\x18\x02 \x03(\x0b\x32\x1d.console.v1.CaptureFormAnswerB\x08\xbaH\x05\x92\x01\x02\x10@R\x07\x61nswers\x12\x33\n\x0fidempotency_key\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0eidempotencyKey\"t\n SubmitInvitedCaptureFormResponse\x12P\n\x07receipt\x18\x01 \x01(\x0b\x32..console.v1.CaptureFormPublicSubmissionReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xdc\x01\n(GetStaffManagedInferenceReadinessRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1a\n\x08provider\x18\x03 \x01(\tR\x08provider\x12\x14\n\x05model\x18\x04 \x01(\tR\x05model\x12 \n\x0b\x65nvironment\x18\x05 \x01(\tR\x0b\x65nvironment\"\xd7\x01\n#GetManagedInferenceReadinessRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1a\n\x08provider\x18\x03 \x01(\tR\x08provider\x12\x14\n\x05model\x18\x04 \x01(\tR\x05model\x12 \n\x0b\x65nvironment\x18\x05 \x01(\tR\x0b\x65nvironment\"\x90\x06\n$GetManagedInferenceReadinessResponse\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\x43\n\x06status\x18\x03 \x01(\x0e\x32+.console.v1.ManagedInferenceReadinessStatusR\x06status\x12?\n\x08\x62lockers\x18\x04 \x03(\x0e\x32#.console.v1.ManagedInferenceBlockerR\x08\x62lockers\x12I\n\x0cnext_actions\x18\x05 \x03(\x0e\x32&.console.v1.ManagedInferenceNextActionR\x0bnextActions\x12Q\n\x10\x65nrollment_state\x18\x06 \x01(\x0e\x32&.console.v1.ManagedProviderAccessStateR\x0f\x65nrollmentState\x12/\n\x13\x65nrollment_revision\x18\x07 \x01(\x04R\x12\x65nrollmentRevision\x12-\n\x12\x64urable_enrollment\x18\x08 \x01(\x08R\x11\x64urableEnrollment\x12<\n\x07\x66unding\x18\t \x01(\x0b\x32\".console.v1.InferenceCreditBalanceR\x07\x66unding\x12;\n\x06target\x18\n \x01(\x0b\x32#.console.v1.InferenceProviderTargetR\x06target\x12=\n\x0c\x65valuated_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0b\x65valuatedAt\x12 \n\x0b\x65nvironment\x18\x0c \x01(\tR\x0b\x65nvironment\x12<\n\x06\x62udget\x18\r \x01(\x0b\x32$.meter.v1.GetBudgetDashboardResponseR\x06\x62udget\"\xca\x01\n&GetStaffManagedInferenceFundingRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x42\n\x07request\x18\x03 \x01(\x0b\x32(.meter.v1.GetPrepaidCreditBalanceRequestR\x07request\"\xcc\x01\n(GrantStaffManagedInferenceCreditsRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x42\n\x07request\x18\x03 \x01(\x0b\x32(.meter.v1.GrantDevelopmentCreditsRequestR\x07request\"\xbb\x01\n$GetStaffManagedInferenceUsageRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x35\n\x07request\x18\x03 \x01(\x0b\x32\x1b.meter.v1.QueryUsageRequestR\x07request\"\xc4\x01\n%GetStaffManagedInferenceBudgetRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12=\n\x07request\x18\x03 \x01(\x0b\x32#.meter.v1.GetBudgetDashboardRequestR\x07request\"\xf2\x01\n%SetStaffManagedInferenceBudgetRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x34\n\x07request\x18\x03 \x01(\x0b\x32\x1a.meter.v1.SetBudgetRequestR\x07request\x12\x16\n\x06reason\x18\x04 \x01(\tR\x06reason\x12\x1d\n\nrequest_id\x18\x05 \x01(\tR\trequestId\"\xcd\x01\n&ListManagedProviderAccessEventsRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12&\n\tpage_size\x18\x03 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x08pageSize\x12\x1d\n\npage_token\x18\x04 \x01(\tR\tpageToken\"\x8a\x03\n\x1aManagedProviderAccessEvent\x12\x19\n\x08\x65vent_id\x18\x01 \x01(\tR\x07\x65ventId\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x03 \x01(\tR\x0bworkspaceId\x12\x1a\n\x08provider\x18\x04 \x01(\tR\x08provider\x12 \n\x0b\x65nvironment\x18\x05 \x01(\tR\x0b\x65nvironment\x12\x16\n\x06\x61\x63tion\x18\x06 \x01(\tR\x06\x61\x63tion\x12,\n\x12\x61\x63tor_principal_id\x18\x07 \x01(\tR\x10\x61\x63torPrincipalId\x12\x12\n\x04note\x18\x08 \x01(\tR\x04note\x12\x30\n\x14gateway_sync_outcome\x18\t \x01(\tR\x12gatewaySyncOutcome\x12;\n\x0boccurred_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\"\x91\x01\n\'ListManagedProviderAccessEventsResponse\x12>\n\x06\x65vents\x18\x01 \x03(\x0b\x32&.console.v1.ManagedProviderAccessEventR\x06\x65vents\x12&\n\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xd7\x01\n+ListStaffManagedInferenceAdminEventsRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12J\n\x07request\x18\x03 \x01(\x0b\x32\x30.meter.v1.ListManagedInferenceAdminEventsRequestR\x07request\"\x84\x02\n+ListStaffManagedExecutionGrantEventsRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12&\n\nsession_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsessionId\x12.\n\x0e\x61\x66ter_sequence\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\rafterSequence\x12\x1f\n\x05limit\x18\x05 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x05limit\"\x92\x05\n\x1aManagedExecutionGrantEvent\x12\x19\n\x08\x65vent_id\x18\x01 \x01(\tR\x07\x65ventId\x12\x1a\n\x08sequence\x18\x02 \x01(\x03R\x08sequence\x12;\n\x0boccurred_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12\x16\n\x06\x61\x63tion\x18\x04 \x01(\tR\x06\x61\x63tion\x12\'\n\x0forganization_id\x18\x05 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x06 \x01(\tR\x0bworkspaceId\x12\x1d\n\nsession_id\x18\x07 \x01(\tR\tsessionId\x12\x1b\n\tthread_id\x18\x08 \x01(\tR\x08threadId\x12\x17\n\x07turn_id\x18\t \x01(\tR\x06turnId\x12\x15\n\x06run_id\x18\n \x01(\tR\x05runId\x12\x1d\n\nrequest_id\x18\x0b \x01(\tR\trequestId\x12\x19\n\x08\x61\x63tor_id\x18\x0c \x01(\tR\x07\x61\x63torId\x12\x1d\n\nactor_kind\x18\r \x01(\tR\tactorKind\x12)\n\x10\x61uthorization_id\x18\x0e \x01(\tR\x0f\x61uthorizationId\x12 \n\x0cissued_at_ms\x18\x0f \x01(\x03R\nissuedAtMs\x12\"\n\rexpires_at_ms\x18\x10 \x01(\x03R\x0b\x65xpiresAtMs\x12\x1f\n\x0bgrant_epoch\x18\x11 \x01(\x04R\ngrantEpoch\x12-\n\x12runtime_generation\x18\x12 \x01(\x04R\x11runtimeGeneration\x12\x16\n\x06reason\x18\x13 \x01(\tR\x06reason\"\xb8\x01\n,ListStaffManagedExecutionGrantEventsResponse\x12>\n\x06\x65vents\x18\x01 \x03(\x0b\x32&.console.v1.ManagedExecutionGrantEventR\x06\x65vents\x12#\n\rnext_sequence\x18\x02 \x01(\x03R\x0cnextSequence\x12#\n\rscanned_count\x18\x03 \x01(\x05R\x0cscannedCount\"\xd1\x01\n(ListStaffManagedExecutionOutcomesRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12&\n\nlineage_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12\x1f\n\x05limit\x18\x04 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x05limit\"\xb6\x04\n\x17ManagedExecutionOutcome\x12\x1b\n\trecord_id\x18\x01 \x01(\tR\x08recordId\x12\x1d\n\nrequest_id\x18\x02 \x01(\tR\trequestId\x12\x1d\n\nlineage_id\x18\x03 \x01(\tR\tlineageId\x12\'\n\x0forganization_id\x18\x04 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x05 \x01(\tR\x0bworkspaceId\x12)\n\x10\x61uthorization_id\x18\x06 \x01(\tR\x0f\x61uthorizationId\x12/\n\x13verification_status\x18\x07 \x01(\tR\x12verificationStatus\x12/\n\x13verification_reason\x18\x08 \x01(\tR\x12verificationReason\x12+\n\x11\x65gress_permission\x18\t \x01(\x08R\x10\x65gressPermission\x12\'\n\x0flifecycle_state\x18\n \x01(\tR\x0elifecycleState\x12\x1d\n\nerror_code\x18\x0b \x01(\tR\terrorCode\x12\x1a\n\x08provider\x18\x0c \x01(\tR\x08provider\x12\x14\n\x05model\x18\r \x01(\tR\x05model\x12\x1d\n\ncreated_at\x18\x0e \x01(\tR\tcreatedAt\x12!\n\x0c\x63ompleted_at\x18\x0f \x01(\tR\x0b\x63ompletedAt\"\x85\x01\n)ListStaffManagedExecutionOutcomesResponse\x12=\n\x07records\x18\x01 \x03(\x0b\x32#.console.v1.ManagedExecutionOutcomeR\x07records\x12\x19\n\x08\x61t_limit\x18\x02 \x01(\x08R\x07\x61tLimit\"\x87\x02\n\x1dProspectingDraftTargetAccount\x12?\n\x17\x61\x63\x63ount_organization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x15\x61\x63\x63ountOrganizationId\x12:\n\x14\x61\x63\x63ount_workspace_id\x18\x02 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x12\x61\x63\x63ountWorkspaceId\x12\x37\n\x11identity_revision\x18\x03 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x10identityRevision\x12\x30\n\x0f\x61\x63\x63\x65ss_grant_id\x18\x04 \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\raccessGrantId\"\xb6\x08\n\x10ProspectingDraft\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\"\n\x08\x64raft_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07\x64raftId\x12-\n\x0c\x63\x61ndidate_id\x18\x04 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0b\x63\x61ndidateId\x12X\n\x0etarget_account\x18\x05 \x01(\x0b\x32).console.v1.ProspectingDraftTargetAccountB\x06\xbaH\x03\xc8\x01\x01R\rtargetAccount\x12G\n\x07\x63hannel\x18\x06 \x01(\x0e\x32#.console.v1.ProspectingDraftChannelB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x07\x63hannel\x12>\n\x04tone\x18\x07 \x01(\x0e\x32 .console.v1.ProspectingDraftToneB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04tone\x12-\n\x0c\x65vidence_ids\x18\x08 \x03(\tB\n\xbaH\x07\x92\x01\x04\x08\x01\x10\x32R\x0b\x65videnceIds\x12I\n\x15\x63ontent_digest_sha256\x18\t \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x13\x63ontentDigestSha256\x12T\n\x0creview_state\x18\n \x01(\x0e\x32\'.console.v1.ProspectingDraftReviewStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0breviewState\x12<\n\x15reviewer_principal_id\x18\x0b \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x13reviewerPrincipalId\x12\"\n\x06reason\x18\x0c \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x06reason\x12#\n\x08revision\x18\r \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x08revision\x12>\n\x17\x63reated_by_principal_id\x18\x0e \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x14\x63reatedByPrincipalId\x12>\n\x17updated_by_principal_id\x18\x0f \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x14updatedByPrincipalId\x12\x31\n\x10\x61udit_receipt_id\x18\x10 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0e\x61uditReceiptId\x12\x41\n\ncreated_at\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tcreatedAt\x12\x41\n\nupdated_at\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\tupdatedAt\"\x92\x02\n\x1fProspectingDraftMutationReceipt\x12\x30\n\x0fidempotency_key\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12I\n\x15request_digest_sha256\x18\x02 \x01(\tB\x15\xbaH\x12r\x10\x32\x0e^[0-9a-f]{64}$R\x13requestDigestSha256\x12#\n\x08revision\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x08revision\x12\x31\n\x10\x61udit_receipt_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0e\x61uditReceiptId\x12\x1a\n\x08replayed\x18\x05 \x01(\x08R\x08replayed\"\xf5\x03\n\x1d\x43reateProspectingDraftRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12-\n\x0c\x63\x61ndidate_id\x18\x02 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x01R\x0b\x63\x61ndidateId\x12X\n\x0etarget_account\x18\x03 \x01(\x0b\x32).console.v1.ProspectingDraftTargetAccountB\x06\xbaH\x03\xc8\x01\x01R\rtargetAccount\x12I\n\x07\x63hannel\x18\x04 \x01(\x0e\x32#.console.v1.ProspectingDraftChannelB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x07\x63hannel\x12@\n\x04tone\x18\x05 \x01(\x0e\x32 .console.v1.ProspectingDraftToneB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04tone\x12-\n\x0c\x65vidence_ids\x18\x06 \x03(\tB\n\xbaH\x07\x92\x01\x04\x08\x01\x10\x32R\x0b\x65videnceIds\x12\"\n\x06reason\x18\x07 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x06reason\x12\x33\n\x0fidempotency_key\x18\x08 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x0eidempotencyKey\"\xab\x01\n\x1e\x43reateProspectingDraftResponse\x12:\n\x05\x64raft\x18\x01 \x01(\x0b\x32\x1c.console.v1.ProspectingDraftB\x06\xbaH\x03\xc8\x01\x01R\x05\x64raft\x12M\n\x07receipt\x18\x02 \x01(\x0b\x32+.console.v1.ProspectingDraftMutationReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"V\n\x1cListProspectingDraftsRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\"z\n\x1dListProspectingDraftsResponse\x12>\n\x06\x64rafts\x18\x01 \x03(\x0b\x32\x1c.console.v1.ProspectingDraftB\x08\xbaH\x05\x92\x01\x02\x10\x64R\x06\x64rafts\x12\x19\n\x08has_more\x18\x02 \x01(\x08R\x07hasMore\"\xdd\x02\n\x1dReviewProspectingDraftRequest\x12\x36\n\x05query\x18\x01 \x01(\x0b\x32\x18.console.v1.ConsoleQueryB\x06\xbaH\x03\xc8\x01\x01R\x05query\x12\"\n\x08\x64raft_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07\x64raftId\x12Q\n\x08\x64\x65\x63ision\x18\x03 \x01(\x0e\x32\'.console.v1.ProspectingDraftReviewStateB\x0c\xbaH\t\x82\x01\x06\x10\x01\x18\x02\x18\x03R\x08\x64\x65\x63ision\x12\x34\n\x11\x65xpected_revision\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x10\x65xpectedRevision\x12\"\n\x06reason\x18\x05 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x04R\x06reason\x12\x33\n\x0fidempotency_key\x18\x06 \x01(\tB\n\xbaH\x07r\x05\x10\x01\x18\x80\x02R\x0eidempotencyKey\"\xab\x01\n\x1eReviewProspectingDraftResponse\x12:\n\x05\x64raft\x18\x01 \x01(\x0b\x32\x1c.console.v1.ProspectingDraftB\x06\xbaH\x03\xc8\x01\x01R\x05\x64raft\x12M\n\x07receipt\x18\x02 \x01(\x0b\x32+.console.v1.ProspectingDraftMutationReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xbd\x03\n\x13WorkspaceBrandVoice\x12\'\n\x08voice_id\x18\x01 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x01\x80\xf4\x18\x02R\x07voiceId\x12\x1f\n\x04name\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x18P\x80\xf4\x18\x04R\x04name\x12.\n\x0b\x64\x65scription\x18\x03 \x01(\tB\x0c\xbaH\x05r\x03\x18\x98\x02\x80\xf4\x18\x04R\x0b\x64\x65scription\x12(\n\x08guidance\x18\x04 \x01(\tB\x0c\xbaH\x05r\x03\x18\xa0\x1f\x80\xf4\x18\x04R\x08guidance\x12 \n\x08\x61rchived\x18\x05 \x01(\x08\x42\x04\x80\xf4\x18\x01R\x08\x61rchived\x12=\n\x06scopes\x18\x06 \x03(\x0b\x32%.console.v1.WorkspaceBrandVoice.ScopeR\x06scopes\x12\x18\n\x07version\x18\x07 \x01(\x04R\x07version\x12\x39\n\nupdated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x1aL\n\x05Scope\x12\x1f\n\x04kind\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x18@\x80\xf4\x18\x04R\x04kind\x12\"\n\x05value\x18\x02 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x02\x80\xf4\x18\x04R\x05value*\xca\x01\n\x16OperatingTurnRouteKind\x12/\n+OPERATING_TURN_ROUTE_KIND_ROUTE_UNSPECIFIED\x10\x00\x12+\n\'OPERATING_TURN_ROUTE_KIND_DIRECT_ANSWER\x10\x01\x12+\n\'OPERATING_TURN_ROUTE_KIND_GOVERNED_WORK\x10\x02\x12%\n!OPERATING_TURN_ROUTE_KIND_BLOCKED\x10\x03*\xcb\x02\n\x17OperatingTurnIntentKind\x12\x31\n-OPERATING_TURN_INTENT_KIND_INTENT_UNSPECIFIED\x10\x00\x12&\n\"OPERATING_TURN_INTENT_KIND_UNKNOWN\x10\x01\x12*\n&OPERATING_TURN_INTENT_KIND_OPERATIONAL\x10\x02\x12.\n*OPERATING_TURN_INTENT_KIND_CAPABILITY_HELP\x10\x03\x12\'\n#OPERATING_TURN_INTENT_KIND_SETTINGS\x10\x04\x12\'\n#OPERATING_TURN_INTENT_KIND_APPROVAL\x10\x05\x12\'\n#OPERATING_TURN_INTENT_KIND_EVIDENCE\x10\x06*\xfe\x01\n\x17OperatingTurnAnswerKind\x12\x31\n-OPERATING_TURN_ANSWER_KIND_ANSWER_UNSPECIFIED\x10\x00\x12(\n$OPERATING_TURN_ANSWER_KIND_NO_ANSWER\x10\x01\x12,\n(OPERATING_TURN_ANSWER_KIND_DIRECT_ANSWER\x10\x02\x12+\n\'OPERATING_TURN_ANSWER_KIND_RECEIPT_ONLY\x10\x03\x12+\n\'OPERATING_TURN_ANSWER_KIND_WORK_STARTED\x10\x04*\xca\x01\n\x17OperatingTurnSafetyKind\x12\x31\n-OPERATING_TURN_SAFETY_KIND_SAFETY_UNSPECIFIED\x10\x00\x12,\n(OPERATING_TURN_SAFETY_KIND_NOT_EVALUATED\x10\x01\x12&\n\"OPERATING_TURN_SAFETY_KIND_ALLOWED\x10\x02\x12&\n\"OPERATING_TURN_SAFETY_KIND_BLOCKED\x10\x03*\xdc\x01\n\x1cOperatingThreadArchiveFilter\x12/\n+OPERATING_THREAD_ARCHIVE_FILTER_UNSPECIFIED\x10\x00\x12/\n+OPERATING_THREAD_ARCHIVE_FILTER_ACTIVE_ONLY\x10\x01\x12\x31\n-OPERATING_THREAD_ARCHIVE_FILTER_ARCHIVED_ONLY\x10\x02\x12\'\n#OPERATING_THREAD_ARCHIVE_FILTER_ALL\x10\x03*\x99\x02\n\x14OperatingSurfaceKind\x12&\n\"OPERATING_SURFACE_KIND_UNSPECIFIED\x10\x00\x12#\n\x1fOPERATING_SURFACE_KIND_COMPOSER\x10\x01\x12 \n\x1cOPERATING_SURFACE_KIND_SLACK\x10\x02\x12 \n\x1cOPERATING_SURFACE_KIND_TEAMS\x10\x03\x12#\n\x1fOPERATING_SURFACE_KIND_WHATSAPP\x10\x04\x12)\n%OPERATING_SURFACE_KIND_APPLE_MESSAGES\x10\x05\x12 \n\x1cOPERATING_SURFACE_KIND_EMAIL\x10\x06*\xd1\x02\n\x12OperatingTurnState\x12$\n OPERATING_TURN_STATE_UNSPECIFIED\x10\x00\x12!\n\x1dOPERATING_TURN_STATE_ACCEPTED\x10\x01\x12\x1f\n\x1bOPERATING_TURN_STATE_QUEUED\x10\x02\x12\"\n\x1eOPERATING_TURN_STATE_RESPONDED\x10\x03\x12\x1f\n\x1bOPERATING_TURN_STATE_FAILED\x10\x04\x12 \n\x1cOPERATING_TURN_STATE_RUNNING\x10\x05\x12 \n\x1cOPERATING_TURN_STATE_WAITING\x10\x06\x12\"\n\x1eOPERATING_TURN_STATE_COMPLETED\x10\x07\x12$\n OPERATING_TURN_STATE_INTERRUPTED\x10\x08*\xf7\x01\n\x1aOperatingVerificationState\x12,\n(OPERATING_VERIFICATION_STATE_UNSPECIFIED\x10\x00\x12-\n)OPERATING_VERIFICATION_STATE_NOT_REQUIRED\x10\x01\x12(\n$OPERATING_VERIFICATION_STATE_PENDING\x10\x02\x12)\n%OPERATING_VERIFICATION_STATE_VERIFIED\x10\x03\x12\'\n#OPERATING_VERIFICATION_STATE_FAILED\x10\x04*\xf8\x03\n\x19OperatingAnswerProvenance\x12+\n\'OPERATING_ANSWER_PROVENANCE_UNSPECIFIED\x10\x00\x12%\n!OPERATING_ANSWER_PROVENANCE_MODEL\x10\x01\x12.\n*OPERATING_ANSWER_PROVENANCE_REVIEWED_MODEL\x10\x02\x12,\n(OPERATING_ANSWER_PROVENANCE_REPAIR_MODEL\x10\x03\x12)\n%OPERATING_ANSWER_PROVENANCE_GUARDRAIL\x10\x04\x12/\n+OPERATING_ANSWER_PROVENANCE_RECEIPT_SUMMARY\x10\x05\x12.\n*OPERATING_ANSWER_PROVENANCE_RUNNER_FAILURE\x10\x06\x12/\n+OPERATING_ANSWER_PROVENANCE_SUPERSEDED_TURN\x10\x07\x12\x32\n.OPERATING_ANSWER_PROVENANCE_HOSTED_FRONT_FINAL\x10\x08\x12\x38\n4OPERATING_ANSWER_PROVENANCE_HOSTED_FRONT_PRELIMINARY\x10\t*\xe9\x02\n\x1dOperatingThreadExecutionState\x12\x30\n,OPERATING_THREAD_EXECUTION_STATE_UNSPECIFIED\x10\x00\x12\x31\n-OPERATING_THREAD_EXECUTION_STATE_PROVISIONING\x10\x01\x12*\n&OPERATING_THREAD_EXECUTION_STATE_READY\x10\x02\x12,\n(OPERATING_THREAD_EXECUTION_STATE_RUNNING\x10\x03\x12,\n(OPERATING_THREAD_EXECUTION_STATE_WAITING\x10\x04\x12-\n)OPERATING_THREAD_EXECUTION_STATE_DEGRADED\x10\x05\x12,\n(OPERATING_THREAD_EXECUTION_STATE_STOPPED\x10\x06*\xbc\x02\n\x1cOperatingThreadWaitingReason\x12/\n+OPERATING_THREAD_WAITING_REASON_UNSPECIFIED\x10\x00\x12(\n$OPERATING_THREAD_WAITING_REASON_NONE\x10\x01\x12,\n(OPERATING_THREAD_WAITING_REASON_APPROVAL\x10\x02\x12.\n*OPERATING_THREAD_WAITING_REASON_USER_INPUT\x10\x03\x12\x32\n.OPERATING_THREAD_WAITING_REASON_EXTERNAL_RETRY\x10\x04\x12/\n+OPERATING_THREAD_WAITING_REASON_CLIENT_TOOL\x10\x05*q\n\x19OperatingExecutionRuntime\x12+\n\'OPERATING_EXECUTION_RUNTIME_UNSPECIFIED\x10\x00\x12\'\n#OPERATING_EXECUTION_RUNTIME_MAESTRO\x10\x01*\xa3\x06\n\x18OperatingThreadEventKind\x12+\n\'OPERATING_THREAD_EVENT_KIND_UNSPECIFIED\x10\x00\x12-\n)OPERATING_THREAD_EVENT_KIND_TURN_ACCEPTED\x10\x01\x12,\n(OPERATING_THREAD_EVENT_KIND_TURN_STARTED\x10\x02\x12(\n$OPERATING_THREAD_EVENT_KIND_PROGRESS\x10\x03\x12\x31\n-OPERATING_THREAD_EVENT_KIND_APPROVAL_REQUIRED\x10\x04\x12.\n*OPERATING_THREAD_EVENT_KIND_INPUT_REQUIRED\x10\x05\x12\x31\n-OPERATING_THREAD_EVENT_KIND_ARTIFACT_RECORDED\x10\x06\x12.\n*OPERATING_THREAD_EVENT_KIND_TURN_COMPLETED\x10\x07\x12+\n\'OPERATING_THREAD_EVENT_KIND_TURN_FAILED\x10\x08\x12\x30\n,OPERATING_THREAD_EVENT_KIND_TURN_INTERRUPTED\x10\t\x12/\n+OPERATING_THREAD_EVENT_KIND_RUNTIME_REBOUND\x10\n\x12-\n)OPERATING_THREAD_EVENT_KIND_TOOL_PROPOSED\x10\x0b\x12.\n*OPERATING_THREAD_EVENT_KIND_TOOL_COMPLETED\x10\x0c\x12/\n+OPERATING_THREAD_EVENT_KIND_MEMORY_PROPOSED\x10\r\x12\x34\n0OPERATING_THREAD_EVENT_KIND_CLIENT_TOOL_REQUIRED\x10\x0e\x12\x37\n3OPERATING_THREAD_EVENT_KIND_EXTERNAL_RETRY_REQUIRED\x10\x0f*\x86\x02\n\x1aOperatingThreadRequestType\x12-\n)OPERATING_THREAD_REQUEST_TYPE_UNSPECIFIED\x10\x00\x12*\n&OPERATING_THREAD_REQUEST_TYPE_APPROVAL\x10\x01\x12,\n(OPERATING_THREAD_REQUEST_TYPE_USER_INPUT\x10\x02\x12-\n)OPERATING_THREAD_REQUEST_TYPE_CLIENT_TOOL\x10\x03\x12\x30\n,OPERATING_THREAD_REQUEST_TYPE_EXTERNAL_RETRY\x10\x04*\xda\x02\n\x1dOperatingThreadResponseAction\x12\x30\n,OPERATING_THREAD_RESPONSE_ACTION_UNSPECIFIED\x10\x00\x12,\n(OPERATING_THREAD_RESPONSE_ACTION_APPROVE\x10\x01\x12)\n%OPERATING_THREAD_RESPONSE_ACTION_DENY\x10\x02\x12+\n\'OPERATING_THREAD_RESPONSE_ACTION_ANSWER\x10\x03\x12*\n&OPERATING_THREAD_RESPONSE_ACTION_RETRY\x10\x04\x12)\n%OPERATING_THREAD_RESPONSE_ACTION_SKIP\x10\x05\x12*\n&OPERATING_THREAD_RESPONSE_ACTION_ABORT\x10\x06*\x9d\x01\n\x18OperatingAttachmentScope\x12*\n&OPERATING_ATTACHMENT_SCOPE_UNSPECIFIED\x10\x00\x12+\n\'OPERATING_ATTACHMENT_SCOPE_CONVERSATION\x10\x01\x12(\n$OPERATING_ATTACHMENT_SCOPE_WORKSPACE\x10\x02*\xa9\x02\n\"OperatingAttachmentProcessingState\x12\x35\n1OPERATING_ATTACHMENT_PROCESSING_STATE_UNSPECIFIED\x10\x00\x12\x33\n/OPERATING_ATTACHMENT_PROCESSING_STATE_UPLOADING\x10\x01\x12\x34\n0OPERATING_ATTACHMENT_PROCESSING_STATE_PROCESSING\x10\x02\x12/\n+OPERATING_ATTACHMENT_PROCESSING_STATE_READY\x10\x03\x12\x30\n,OPERATING_ATTACHMENT_PROCESSING_STATE_FAILED\x10\x04*\xb5\x04\n\x15ReceiptLifecycleState\x12\'\n#RECEIPT_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12#\n\x1fRECEIPT_LIFECYCLE_STATE_UNKNOWN\x10\x01\x12$\n RECEIPT_LIFECYCLE_STATE_PROPOSED\x10\x02\x12\"\n\x1eRECEIPT_LIFECYCLE_STATE_QUEUED\x10\x03\x12,\n(RECEIPT_LIFECYCLE_STATE_WAITING_APPROVAL\x10\x04\x12#\n\x1fRECEIPT_LIFECYCLE_STATE_BLOCKED\x10\x05\x12\'\n#RECEIPT_LIFECYCLE_STATE_NEEDS_INPUT\x10\x06\x12\'\n#RECEIPT_LIFECYCLE_STATE_UNAVAILABLE\x10\x07\x12#\n\x1fRECEIPT_LIFECYCLE_STATE_RUNNING\x10\x08\x12%\n!RECEIPT_LIFECYCLE_STATE_SUCCEEDED\x10\t\x12$\n RECEIPT_LIFECYCLE_STATE_VERIFIED\x10\n\x12\"\n\x1eRECEIPT_LIFECYCLE_STATE_DENIED\x10\x0b\x12%\n!RECEIPT_LIFECYCLE_STATE_CANCELLED\x10\x0c\x12\"\n\x1eRECEIPT_LIFECYCLE_STATE_FAILED\x10\r*\x8d\x01\n\x11OperatingTaskKind\x12#\n\x1fOPERATING_TASK_KIND_UNSPECIFIED\x10\x00\x12$\n OPERATING_TASK_KIND_CONVERSATION\x10\x01\x12-\n)OPERATING_TASK_KIND_CODING_IMPLEMENTATION\x10\x02*\xb3\x02\n\x1bOperatingCorrectionCategory\x12-\n)OPERATING_CORRECTION_CATEGORY_UNSPECIFIED\x10\x00\x12-\n)OPERATING_CORRECTION_CATEGORY_WRONG_TOPIC\x10\x01\x12*\n&OPERATING_CORRECTION_CATEGORY_NOT_DONE\x10\x02\x12\x30\n,OPERATING_CORRECTION_CATEGORY_INCORRECT_FACT\x10\x03\x12/\n+OPERATING_CORRECTION_CATEGORY_UNSAFE_ACTION\x10\x04\x12\'\n#OPERATING_CORRECTION_CATEGORY_OTHER\x10\x05*\x9b\x02\n\x1eOperatingCorrectionReviewState\x12\x31\n-OPERATING_CORRECTION_REVIEW_STATE_UNSPECIFIED\x10\x00\x12\x34\n0OPERATING_CORRECTION_REVIEW_STATE_PENDING_REVIEW\x10\x01\x12.\n*OPERATING_CORRECTION_REVIEW_STATE_APPROVED\x10\x02\x12.\n*OPERATING_CORRECTION_REVIEW_STATE_REJECTED\x10\x03\x12\x30\n,OPERATING_CORRECTION_REVIEW_STATE_INELIGIBLE\x10\x04*\xa6\x03\n\x1a\x44\x65xComputerCorrectionLabel\x12-\n)DEX_COMPUTER_CORRECTION_LABEL_UNSPECIFIED\x10\x00\x12.\n*DEX_COMPUTER_CORRECTION_LABEL_WRONG_TARGET\x10\x01\x12.\n*DEX_COMPUTER_CORRECTION_LABEL_WRONG_ACTION\x10\x02\x12\x35\n1DEX_COMPUTER_CORRECTION_LABEL_MISSING_OBSERVATION\x10\x03\x12\x32\n.DEX_COMPUTER_CORRECTION_LABEL_EFFECT_AMBIGUOUS\x10\x04\x12\x31\n-DEX_COMPUTER_CORRECTION_LABEL_UNSAFE_BOUNDARY\x10\x05\x12\x32\n.DEX_COMPUTER_CORRECTION_LABEL_HANDOFF_CONFLICT\x10\x06\x12\'\n#DEX_COMPUTER_CORRECTION_LABEL_OTHER\x10\x07*\xa0\x01\n\x1aOperatingFeedbackSentiment\x12,\n(OPERATING_FEEDBACK_SENTIMENT_UNSPECIFIED\x10\x00\x12)\n%OPERATING_FEEDBACK_SENTIMENT_POSITIVE\x10\x01\x12)\n%OPERATING_FEEDBACK_SENTIMENT_NEGATIVE\x10\x02*\xbb\x05\n\x17OperatingFeedbackReason\x12)\n%OPERATING_FEEDBACK_REASON_UNSPECIFIED\x10\x00\x12%\n!OPERATING_FEEDBACK_REASON_HELPFUL\x10\x01\x12&\n\"OPERATING_FEEDBACK_REASON_ACCURATE\x10\x02\x12#\n\x1fOPERATING_FEEDBACK_REASON_CLEAR\x10\x03\x12,\n(OPERATING_FEEDBACK_REASON_CORRECT_ACTION\x10\x04\x12,\n(OPERATING_FEEDBACK_REASON_MISSED_REQUEST\x10\x05\x12\'\n#OPERATING_FEEDBACK_REASON_INCORRECT\x10\x06\x12(\n$OPERATING_FEEDBACK_REASON_INCOMPLETE\x10\x07\x12%\n!OPERATING_FEEDBACK_REASON_UNCLEAR\x10\x08\x12.\n*OPERATING_FEEDBACK_REASON_MISSING_EVIDENCE\x10\t\x12$\n OPERATING_FEEDBACK_REASON_UNSAFE\x10\n\x12#\n\x1fOPERATING_FEEDBACK_REASON_OTHER\x10\x0b\x12&\n\"OPERATING_FEEDBACK_REASON_COMPLETE\x10\x0c\x12\x32\n.OPERATING_FEEDBACK_REASON_IGNORED_INSTRUCTIONS\x10\r\x12)\n%OPERATING_FEEDBACK_REASON_TOOL_FAILED\x10\x0e\x12)\n%OPERATING_FEEDBACK_REASON_TOO_VERBOSE\x10\x0f*\xe1\x01\n%OperatingFeedbackClassificationSource\x12\x38\n4OPERATING_FEEDBACK_CLASSIFICATION_SOURCE_UNSPECIFIED\x10\x00\x12\x31\n-OPERATING_FEEDBACK_CLASSIFICATION_SOURCE_USER\x10\x01\x12K\nGOPERATING_FEEDBACK_CLASSIFICATION_SOURCE_AGENT_SUGGESTED_USER_CONFIRMED\x10\x02*\xee\x01\n\"OperatingFeedbackRemediationAction\x12\x35\n1OPERATING_FEEDBACK_REMEDIATION_ACTION_UNSPECIFIED\x10\x00\x12.\n*OPERATING_FEEDBACK_REMEDIATION_ACTION_NONE\x10\x01\x12\x30\n,OPERATING_FEEDBACK_REMEDIATION_ACTION_VERIFY\x10\x02\x12/\n+OPERATING_FEEDBACK_REMEDIATION_ACTION_RETRY\x10\x03*\xff\x01\n#OperatingFeedbackRemediationOutcome\x12\x36\n2OPERATING_FEEDBACK_REMEDIATION_OUTCOME_UNSPECIFIED\x10\x00\x12\x36\n2OPERATING_FEEDBACK_REMEDIATION_OUTCOME_UNCONFIRMED\x10\x01\x12\x33\n/OPERATING_FEEDBACK_REMEDIATION_OUTCOME_ACCEPTED\x10\x02\x12\x33\n/OPERATING_FEEDBACK_REMEDIATION_OUTCOME_REJECTED\x10\x03*\xe9\x01\n\x1fOperatingFeedbackLifecycleState\x12\x32\n.OPERATING_FEEDBACK_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12-\n)OPERATING_FEEDBACK_LIFECYCLE_STATE_ACTIVE\x10\x01\x12\x31\n-OPERATING_FEEDBACK_LIFECYCLE_STATE_SUPERSEDED\x10\x02\x12\x30\n,OPERATING_FEEDBACK_LIFECYCLE_STATE_RETRACTED\x10\x03*\xb9\x02\n\x1d\x43ustomerIntelligenceAuthority\x12/\n+CUSTOMER_INTELLIGENCE_AUTHORITY_UNSPECIFIED\x10\x00\x12,\n(CUSTOMER_INTELLIGENCE_AUTHORITY_INFERRED\x10\x01\x12,\n(CUSTOMER_INTELLIGENCE_AUTHORITY_OBSERVED\x10\x02\x12*\n&CUSTOMER_INTELLIGENCE_AUTHORITY_STATED\x10\x03\x12\x30\n,CUSTOMER_INTELLIGENCE_AUTHORITY_CORROBORATED\x10\x04\x12-\n)CUSTOMER_INTELLIGENCE_AUTHORITY_CONFIRMED\x10\x05*\xde\x02\n\"CustomerIntelligenceLifecycleState\x12\x35\n1CUSTOMER_INTELLIGENCE_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12\x32\n.CUSTOMER_INTELLIGENCE_LIFECYCLE_STATE_PROPOSED\x10\x01\x12\x30\n,CUSTOMER_INTELLIGENCE_LIFECYCLE_STATE_ACTIVE\x10\x02\x12\x32\n.CUSTOMER_INTELLIGENCE_LIFECYCLE_STATE_DISPUTED\x10\x03\x12\x34\n0CUSTOMER_INTELLIGENCE_LIFECYCLE_STATE_SUPERSEDED\x10\x04\x12\x31\n-CUSTOMER_INTELLIGENCE_LIFECYCLE_STATE_EXPIRED\x10\x05*\x9f\x02\n\x1f\x43ustomerIntelligenceSubjectKind\x12\x32\n.CUSTOMER_INTELLIGENCE_SUBJECT_KIND_UNSPECIFIED\x10\x00\x12\x32\n.CUSTOMER_INTELLIGENCE_SUBJECT_KIND_INTERACTION\x10\x01\x12\x30\n,CUSTOMER_INTELLIGENCE_SUBJECT_KIND_WORKSPACE\x10\x02\x12\x33\n/CUSTOMER_INTELLIGENCE_SUBJECT_KIND_PRODUCT_AREA\x10\x03\x12-\n)CUSTOMER_INTELLIGENCE_SUBJECT_KIND_COHORT\x10\x04*\xd2\x01\n$CustomerIntelligenceEvidencePolarity\x12\x37\n3CUSTOMER_INTELLIGENCE_EVIDENCE_POLARITY_UNSPECIFIED\x10\x00\x12\x36\n2CUSTOMER_INTELLIGENCE_EVIDENCE_POLARITY_SUPPORTING\x10\x01\x12\x39\n5CUSTOMER_INTELLIGENCE_EVIDENCE_POLARITY_CONTRADICTING\x10\x02*\x81\x03\n CustomerIntelligenceProducerKind\x12\x33\n/CUSTOMER_INTELLIGENCE_PRODUCER_KIND_UNSPECIFIED\x10\x00\x12G\nCCUSTOMER_INTELLIGENCE_PRODUCER_KIND_PLATFORM_DETERMINISTIC_FEEDBACK\x10\x01\x12/\n+CUSTOMER_INTELLIGENCE_PRODUCER_KIND_CEREBRO\x10\x02\x12\x34\n0CUSTOMER_INTELLIGENCE_PRODUCER_KIND_STAFF_REVIEW\x10\x03\x12=\n9CUSTOMER_INTELLIGENCE_PRODUCER_KIND_CUSTOMER_CONFIRMATION\x10\x04\x12\x39\n5CUSTOMER_INTELLIGENCE_PRODUCER_KIND_OUTCOME_EVALUATOR\x10\x05*\xe0\x03\n\"CustomerIntelligenceReviewDecision\x12\x35\n1CUSTOMER_INTELLIGENCE_REVIEW_DECISION_UNSPECIFIED\x10\x00\x12>\n:CUSTOMER_INTELLIGENCE_REVIEW_DECISION_REQUEST_CONFIRMATION\x10\x01\x12:\n6CUSTOMER_INTELLIGENCE_REVIEW_DECISION_REQUEST_EVIDENCE\x10\x02\x12\x33\n/CUSTOMER_INTELLIGENCE_REVIEW_DECISION_CHALLENGE\x10\x03\x12\x31\n-CUSTOMER_INTELLIGENCE_REVIEW_DECISION_DISPUTE\x10\x04\x12\x30\n,CUSTOMER_INTELLIGENCE_REVIEW_DECISION_EXPIRE\x10\x05\x12\x33\n/CUSTOMER_INTELLIGENCE_REVIEW_DECISION_SUPERSEDE\x10\x06\x12\x38\n4CUSTOMER_INTELLIGENCE_REVIEW_DECISION_PROPOSE_ACTION\x10\x07*\xb9\x01\n CustomerFactConfirmationResponse\x12\x33\n/CUSTOMER_FACT_CONFIRMATION_RESPONSE_UNSPECIFIED\x10\x00\x12/\n+CUSTOMER_FACT_CONFIRMATION_RESPONSE_CONFIRM\x10\x01\x12/\n+CUSTOMER_FACT_CONFIRMATION_RESPONSE_DISPUTE\x10\x02*\xbf\x01\n\x1dOperatingExecutionProfileKind\x12\x30\n,OPERATING_EXECUTION_PROFILE_KIND_UNSPECIFIED\x10\x00\x12/\n+OPERATING_EXECUTION_PROFILE_KIND_DEEP_AGENT\x10\x01\x12;\n7OPERATING_EXECUTION_PROFILE_KIND_HOSTED_FRONT_THEN_DEEP\x10\x02*\xbf\x02\n OperatingHostedFrontDecisionKind\x12\x34\n0OPERATING_HOSTED_FRONT_DECISION_KIND_UNSPECIFIED\x10\x00\x12\x33\n/OPERATING_HOSTED_FRONT_DECISION_KIND_ANSWER_NOW\x10\x01\x12<\n8OPERATING_HOSTED_FRONT_DECISION_KIND_ANSWER_AND_CONTINUE\x10\x02\x12:\n6OPERATING_HOSTED_FRONT_DECISION_KIND_COMPUTER_REQUIRED\x10\x03\x12\x36\n2OPERATING_HOSTED_FRONT_DECISION_KIND_CONTINUE_ONLY\x10\x04*\x88\x01\n OperatingManagedInferenceRouting\x12\x33\n/OPERATING_MANAGED_INFERENCE_ROUTING_UNSPECIFIED\x10\x00\x12/\n+OPERATING_MANAGED_INFERENCE_ROUTING_ORDERED\x10\x01*\x96\x02\n%OperatingManagedInferenceBudgetOrigin\x12\x39\n5OPERATING_MANAGED_INFERENCE_BUDGET_ORIGIN_UNSPECIFIED\x10\x00\x12\x36\n2OPERATING_MANAGED_INFERENCE_BUDGET_ORIGIN_EXPLICIT\x10\x01\x12:\n6OPERATING_MANAGED_INFERENCE_BUDGET_ORIGIN_ROUTE_POLICY\x10\x02\x12>\n:OPERATING_MANAGED_INFERENCE_BUDGET_ORIGIN_PROVIDER_DEFAULT\x10\x03*\xe8\x01\n\x1c\x43omputerMissionAuthorityMode\x12/\n+COMPUTER_MISSION_AUTHORITY_MODE_UNSPECIFIED\x10\x00\x12.\n*COMPUTER_MISSION_AUTHORITY_MODE_SUPERVISED\x10\x01\x12\x34\n0COMPUTER_MISSION_AUTHORITY_MODE_BOUNDED_AUTONOMY\x10\x02\x12\x31\n-COMPUTER_MISSION_AUTHORITY_MODE_FULL_AUTONOMY\x10\x03*\xd1\x05\n\x14\x43omputerMissionState\x12&\n\"COMPUTER_MISSION_STATE_UNSPECIFIED\x10\x00\x12!\n\x1d\x43OMPUTER_MISSION_STATE_QUEUED\x10\x01\x12\"\n\x1e\x43OMPUTER_MISSION_STATE_RUNNING\x10\x02\x12+\n\'COMPUTER_MISSION_STATE_WAITING_FOR_USER\x10\x03\x12\x31\n-COMPUTER_MISSION_STATE_CANCELLATION_REQUESTED\x10\x04\x12$\n COMPUTER_MISSION_STATE_SUCCEEDED\x10\x05\x12!\n\x1d\x43OMPUTER_MISSION_STATE_FAILED\x10\x06\x12+\n\'COMPUTER_MISSION_STATE_BUDGET_EXHAUSTED\x10\x07\x12$\n COMPUTER_MISSION_STATE_CANCELLED\x10\x08\x12,\n(COMPUTER_MISSION_STATE_CLEANUP_UNCERTAIN\x10\t\x12%\n!COMPUTER_MISSION_STATE_NOT_ROUTED\x10\n\x12#\n\x1f\x43OMPUTER_MISSION_STATE_PLANNING\x10\x0b\x12$\n COMPUTER_MISSION_STATE_VERIFYING\x10\x0c\x12#\n\x1f\x43OMPUTER_MISSION_STATE_SLEEPING\x10\r\x12/\n+COMPUTER_MISSION_STATE_WAITING_FOR_APPROVAL\x10\x0e\x12\x35\n1COMPUTER_MISSION_STATE_WAITING_FOR_EXTERNAL_EVENT\x10\x0f\x12!\n\x1d\x43OMPUTER_MISSION_STATE_PAUSED\x10\x10*\xc2\x03\n!ComputerMissionCanaryScenarioKind\x12\x35\n1COMPUTER_MISSION_CANARY_SCENARIO_KIND_UNSPECIFIED\x10\x00\x12\x33\n/COMPUTER_MISSION_CANARY_SCENARIO_KIND_CI_REPAIR\x10\x01\x12;\n7COMPUTER_MISSION_CANARY_SCENARIO_KIND_REVIEW_OPERATIONS\x10\x02\x12\x39\n5COMPUTER_MISSION_CANARY_SCENARIO_KIND_RUNNER_RECOVERY\x10\x03\x12?\n;COMPUTER_MISSION_CANARY_SCENARIO_KIND_APPROVAL_CONTINUATION\x10\x04\x12\x41\n=COMPUTER_MISSION_CANARY_SCENARIO_KIND_AMBIGUOUS_TOOL_RESPONSE\x10\x05\x12\x35\n1COMPUTER_MISSION_CANARY_SCENARIO_KIND_BUDGET_STOP\x10\x06*\xb2\x03\n\x1a\x43omputerMissionEffectState\x12-\n)COMPUTER_MISSION_EFFECT_STATE_UNSPECIFIED\x10\x00\x12\x31\n-COMPUTER_MISSION_EFFECT_STATE_INTENT_RECORDED\x10\x01\x12\x32\n.COMPUTER_MISSION_EFFECT_STATE_FORWARD_ACCEPTED\x10\x02\x12\x32\n.COMPUTER_MISSION_EFFECT_STATE_FORWARD_VERIFIED\x10\x03\x12\x32\n.COMPUTER_MISSION_EFFECT_STATE_ROLLBACK_RUNNING\x10\x04\x12-\n)COMPUTER_MISSION_EFFECT_STATE_ROLLED_BACK\x10\x05\x12\x32\n.COMPUTER_MISSION_EFFECT_STATE_CLEANUP_VERIFIED\x10\x06\x12\x33\n/COMPUTER_MISSION_EFFECT_STATE_CLEANUP_UNCERTAIN\x10\x07*\xcc\x04\n\x1d\x43omputerMissionCanaryRunState\x12\x31\n-COMPUTER_MISSION_CANARY_RUN_STATE_UNSPECIFIED\x10\x00\x12,\n(COMPUTER_MISSION_CANARY_RUN_STATE_QUEUED\x10\x01\x12-\n)COMPUTER_MISSION_CANARY_RUN_STATE_RUNNING\x10\x02\x12\x36\n2COMPUTER_MISSION_CANARY_RUN_STATE_WAITING_FOR_USER\x10\x03\x12\x35\n1COMPUTER_MISSION_CANARY_RUN_STATE_CLEANUP_RUNNING\x10\x04\x12\x38\n4COMPUTER_MISSION_CANARY_RUN_STATE_EVALUATION_PENDING\x10\x05\x12,\n(COMPUTER_MISSION_CANARY_RUN_STATE_PASSED\x10\x06\x12,\n(COMPUTER_MISSION_CANARY_RUN_STATE_FAILED\x10\x07\x12,\n(COMPUTER_MISSION_CANARY_RUN_STATE_UNSAFE\x10\x08\x12\x37\n3COMPUTER_MISSION_CANARY_RUN_STATE_CLEANUP_UNCERTAIN\x10\t\x12/\n+COMPUTER_MISSION_CANARY_RUN_STATE_CANCELLED\x10\n*\xf8\x04\n#ComputerMissionCanaryScoreDimension\x12\x37\n3COMPUTER_MISSION_CANARY_SCORE_DIMENSION_UNSPECIFIED\x10\x00\x12?\n;COMPUTER_MISSION_CANARY_SCORE_DIMENSION_OUTCOME_CORRECTNESS\x10\x01\x12I\nECOMPUTER_MISSION_CANARY_SCORE_DIMENSION_HUMAN_INTERVENTION_EFFICIENCY\x10\x02\x12;\n7COMPUTER_MISSION_CANARY_SCORE_DIMENSION_SCOPE_ADHERENCE\x10\x03\x12\x46\nBCOMPUTER_MISSION_CANARY_SCORE_DIMENSION_DUPLICATE_EFFECT_AVOIDANCE\x10\x04\x12<\n8COMPUTER_MISSION_CANARY_SCORE_DIMENSION_RECOVERY_SUCCESS\x10\x05\x12=\n9COMPUTER_MISSION_CANARY_SCORE_DIMENSION_BUDGET_EFFICIENCY\x10\x06\x12\x41\n=COMPUTER_MISSION_CANARY_SCORE_DIMENSION_EVIDENCE_COMPLETENESS\x10\x07\x12G\nCCOMPUTER_MISSION_CANARY_SCORE_DIMENSION_TIME_TO_VERIFIED_COMPLETION\x10\x08*\xf8\x01\n#ComputerMissionCanaryRecommendation\x12\x36\n2COMPUTER_MISSION_CANARY_RECOMMENDATION_UNSPECIFIED\x10\x00\x12/\n+COMPUTER_MISSION_CANARY_RECOMMENDATION_HOLD\x10\x01\x12\x32\n.COMPUTER_MISSION_CANARY_RECOMMENDATION_PROMOTE\x10\x02\x12\x34\n0COMPUTER_MISSION_CANARY_RECOMMENDATION_ROLL_BACK\x10\x03*\xd6\x02\n\'ComputerMissionCanaryOperatorActionKind\x12<\n8COMPUTER_MISSION_CANARY_OPERATOR_ACTION_KIND_UNSPECIFIED\x10\x00\x12\x36\n2COMPUTER_MISSION_CANARY_OPERATOR_ACTION_KIND_PAUSE\x10\x01\x12\x37\n3COMPUTER_MISSION_CANARY_OPERATOR_ACTION_KIND_CANCEL\x10\x02\x12=\n9COMPUTER_MISSION_CANARY_OPERATOR_ACTION_KIND_NARROW_SCOPE\x10\x03\x12=\n9COMPUTER_MISSION_CANARY_OPERATOR_ACTION_KIND_EXTEND_GRANT\x10\x04*\xe1\x01\n%ComputerMissionRollbackArgumentSource\x12\x39\n5COMPUTER_MISSION_ROLLBACK_ARGUMENT_SOURCE_UNSPECIFIED\x10\x00\x12>\n:COMPUTER_MISSION_ROLLBACK_ARGUMENT_SOURCE_PRE_ACTION_STATE\x10\x01\x12=\n9COMPUTER_MISSION_ROLLBACK_ARGUMENT_SOURCE_FORWARD_RECEIPT\x10\x02*\xdf\x01\n\x1c\x43omputerMissionDecisionRoute\x12/\n+COMPUTER_MISSION_DECISION_ROUTE_UNSPECIFIED\x10\x00\x12,\n(COMPUTER_MISSION_DECISION_ROUTE_NO_ROUTE\x10\x01\x12\x30\n,COMPUTER_MISSION_DECISION_ROUTE_SINGLE_AGENT\x10\x02\x12.\n*COMPUTER_MISSION_DECISION_ROUTE_TOURNAMENT\x10\x03*\x98\x01\n\x16\x43onnectorTriggerSource\x12(\n$CONNECTOR_TRIGGER_SOURCE_UNSPECIFIED\x10\x00\x12&\n\"CONNECTOR_TRIGGER_SOURCE_SCHEDULED\x10\x01\x12,\n(CONNECTOR_TRIGGER_SOURCE_CONNECTOR_EVENT\x10\x02*\xfc\x01\n\x15WorkspaceSettingsRole\x12\'\n#WORKSPACE_SETTINGS_ROLE_UNSPECIFIED\x10\x00\x12\"\n\x1eWORKSPACE_SETTINGS_ROLE_VIEWER\x10\x01\x12%\n!WORKSPACE_SETTINGS_ROLE_DEVELOPER\x10\x02\x12)\n%WORKSPACE_SETTINGS_ROLE_BILLING_ADMIN\x10\x03\x12!\n\x1dWORKSPACE_SETTINGS_ROLE_ADMIN\x10\x04\x12!\n\x1dWORKSPACE_SETTINGS_ROLE_OWNER\x10\x05*\xc8\x01\n#WorkspaceSettingsAvailabilityStatus\x12\x36\n2WORKSPACE_SETTINGS_AVAILABILITY_STATUS_UNSPECIFIED\x10\x00\x12\x31\n-WORKSPACE_SETTINGS_AVAILABILITY_STATUS_ACTIVE\x10\x01\x12\x36\n2WORKSPACE_SETTINGS_AVAILABILITY_STATUS_UNAVAILABLE\x10\x02*\xf2\x02\n\x1eWorkspaceSettingsBillingStatus\x12\x31\n-WORKSPACE_SETTINGS_BILLING_STATUS_UNSPECIFIED\x10\x00\x12,\n(WORKSPACE_SETTINGS_BILLING_STATUS_ACTIVE\x10\x01\x12.\n*WORKSPACE_SETTINGS_BILLING_STATUS_TRIALING\x10\x02\x12.\n*WORKSPACE_SETTINGS_BILLING_STATUS_PAST_DUE\x10\x03\x12.\n*WORKSPACE_SETTINGS_BILLING_STATUS_CANCELED\x10\x04\x12\x31\n-WORKSPACE_SETTINGS_BILLING_STATUS_UNAVAILABLE\x10\x05\x12,\n(WORKSPACE_SETTINGS_BILLING_STATUS_PAUSED\x10\x06*\xdc\x01\n\x1dWorkspaceSettingsMemberStatus\x12\x30\n,WORKSPACE_SETTINGS_MEMBER_STATUS_UNSPECIFIED\x10\x00\x12+\n\'WORKSPACE_SETTINGS_MEMBER_STATUS_ACTIVE\x10\x01\x12,\n(WORKSPACE_SETTINGS_MEMBER_STATUS_INVITED\x10\x02\x12.\n*WORKSPACE_SETTINGS_MEMBER_STATUS_SUSPENDED\x10\x03*\x8e\x03\n\'WorkspaceSettingsIdentityProviderStatus\x12;\n7WORKSPACE_SETTINGS_IDENTITY_PROVIDER_STATUS_UNSPECIFIED\x10\x00\x12:\n6WORKSPACE_SETTINGS_IDENTITY_PROVIDER_STATUS_CONFIGURED\x10\x01\x12\x39\n5WORKSPACE_SETTINGS_IDENTITY_PROVIDER_STATUS_CONNECTED\x10\x02\x12\x38\n4WORKSPACE_SETTINGS_IDENTITY_PROVIDER_STATUS_DEGRADED\x10\x03\x12\x38\n4WORKSPACE_SETTINGS_IDENTITY_PROVIDER_STATUS_DISABLED\x10\x04\x12;\n7WORKSPACE_SETTINGS_IDENTITY_PROVIDER_STATUS_UNAVAILABLE\x10\x05*\x98\x03\n\"WorkspaceSettingsIntegrationStatus\x12\x35\n1WORKSPACE_SETTINGS_INTEGRATION_STATUS_UNSPECIFIED\x10\x00\x12\x34\n0WORKSPACE_SETTINGS_INTEGRATION_STATUS_CONFIGURED\x10\x01\x12\x33\n/WORKSPACE_SETTINGS_INTEGRATION_STATUS_CONNECTED\x10\x02\x12\x31\n-WORKSPACE_SETTINGS_INTEGRATION_STATUS_HEALTHY\x10\x03\x12\x32\n.WORKSPACE_SETTINGS_INTEGRATION_STATUS_DEGRADED\x10\x04\x12\x32\n.WORKSPACE_SETTINGS_INTEGRATION_STATUS_DISABLED\x10\x05\x12\x35\n1WORKSPACE_SETTINGS_INTEGRATION_STATUS_UNAVAILABLE\x10\x06*\xeb\x02\n#WorkspaceSettingsOwnerServiceStatus\x12\x37\n3WORKSPACE_SETTINGS_OWNER_SERVICE_STATUS_UNSPECIFIED\x10\x00\x12\x32\n.WORKSPACE_SETTINGS_OWNER_SERVICE_STATUS_ACTIVE\x10\x01\x12\x36\n2WORKSPACE_SETTINGS_OWNER_SERVICE_STATUS_PROJECTION\x10\x02\x12\x33\n/WORKSPACE_SETTINGS_OWNER_SERVICE_STATUS_PARTIAL\x10\x03\x12\x31\n-WORKSPACE_SETTINGS_OWNER_SERVICE_STATUS_LOCAL\x10\x04\x12\x37\n3WORKSPACE_SETTINGS_OWNER_SERVICE_STATUS_UNAVAILABLE\x10\x05*\xc6\x03\n\x17WorkspaceSettingsSource\x12)\n%WORKSPACE_SETTINGS_SOURCE_UNSPECIFIED\x10\x00\x12.\n*WORKSPACE_SETTINGS_SOURCE_CONSOLE_SETTINGS\x10\x01\x12\x30\n,WORKSPACE_SETTINGS_SOURCE_CONSOLE_INVITATION\x10\x02\x12\x35\n1WORKSPACE_SETTINGS_SOURCE_AUTHENTICATED_PRINCIPAL\x10\x03\x12$\n WORKSPACE_SETTINGS_SOURCE_MANUAL\x10\x04\x12\"\n\x1eWORKSPACE_SETTINGS_SOURCE_SCIM\x10\x05\x12\"\n\x1eWORKSPACE_SETTINGS_SOURCE_SAML\x10\x06\x12#\n\x1fWORKSPACE_SETTINGS_SOURCE_OAUTH\x10\x07\x12$\n WORKSPACE_SETTINGS_SOURCE_SYSTEM\x10\x08\x12.\n*WORKSPACE_SETTINGS_SOURCE_CONSOLE_SNAPSHOT\x10\t*\xf2\x01\n\x15GuardrailDetectorKind\x12\'\n#GUARDRAIL_DETECTOR_KIND_UNSPECIFIED\x10\x00\x12)\n%GUARDRAIL_DETECTOR_KIND_BUILTIN_EMAIL\x10\x01\x12/\n+GUARDRAIL_DETECTOR_KIND_BUILTIN_CREDIT_CARD\x10\x02\x12*\n&GUARDRAIL_DETECTOR_KIND_BUILTIN_SECRET\x10\x03\x12(\n$GUARDRAIL_DETECTOR_KIND_CUSTOM_REGEX\x10\x04*\x87\x01\n\x0fGuardrailAction\x12 \n\x1cGUARDRAIL_ACTION_UNSPECIFIED\x10\x00\x12\x1a\n\x16GUARDRAIL_ACTION_BLOCK\x10\x01\x12\x1b\n\x17GUARDRAIL_ACTION_REDACT\x10\x02\x12\x19\n\x15GUARDRAIL_ACTION_FLAG\x10\x03*\xd4\x01\n\x14SkillAnalysisVerdict\x12&\n\"SKILL_ANALYSIS_VERDICT_UNSPECIFIED\x10\x00\x12\x1f\n\x1bSKILL_ANALYSIS_VERDICT_PASS\x10\x01\x12\'\n#SKILL_ANALYSIS_VERDICT_NEEDS_REVIEW\x10\x02\x12\"\n\x1eSKILL_ANALYSIS_VERDICT_BLOCKED\x10\x03\x12&\n\"SKILL_ANALYSIS_VERDICT_UNSCANNABLE\x10\x04*\x91\x03\n\x17\x44\x65xSkillPackageFileKind\x12+\n\'DEX_SKILL_PACKAGE_FILE_KIND_UNSPECIFIED\x10\x00\x12,\n(DEX_SKILL_PACKAGE_FILE_KIND_INSTRUCTIONS\x10\x01\x12&\n\"DEX_SKILL_PACKAGE_FILE_KIND_SCRIPT\x10\x02\x12)\n%DEX_SKILL_PACKAGE_FILE_KIND_REFERENCE\x10\x03\x12\'\n#DEX_SKILL_PACKAGE_FILE_KIND_EXAMPLE\x10\x04\x12%\n!DEX_SKILL_PACKAGE_FILE_KIND_ASSET\x10\x05\x12(\n$DEX_SKILL_PACKAGE_FILE_KIND_TEMPLATE\x10\x06\x12\'\n#DEX_SKILL_PACKAGE_FILE_KIND_LICENSE\x10\x07\x12%\n!DEX_SKILL_PACKAGE_FILE_KIND_OTHER\x10\x08*\xaf\x01\n\x13\x44\x65xSkillFixtureKind\x12&\n\"DEX_SKILL_FIXTURE_KIND_UNSPECIFIED\x10\x00\x12 \n\x1c\x44\x45X_SKILL_FIXTURE_KIND_HAPPY\x10\x01\x12\x1f\n\x1b\x44\x45X_SKILL_FIXTURE_KIND_EDGE\x10\x02\x12-\n)DEX_SKILL_FIXTURE_KIND_DENIED_UNAVAILABLE\x10\x03*\x8f\x02\n\x16\x44\x65xSkillLifecycleState\x12)\n%DEX_SKILL_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12#\n\x1f\x44\x45X_SKILL_LIFECYCLE_STATE_READY\x10\x01\x12*\n&DEX_SKILL_LIFECYCLE_STATE_MISSING_TOOL\x10\x02\x12*\n&DEX_SKILL_LIFECYCLE_STATE_NEEDS_REVIEW\x10\x03\x12&\n\"DEX_SKILL_LIFECYCLE_STATE_DISABLED\x10\x04\x12%\n!DEX_SKILL_LIFECYCLE_STATE_REVOKED\x10\x05*\xa7\x02\n\x18\x44\x65xSkillRuntimeReadiness\x12+\n\'DEX_SKILL_RUNTIME_READINESS_UNSPECIFIED\x10\x00\x12,\n(DEX_SKILL_RUNTIME_READINESS_NOT_REQUIRED\x10\x01\x12.\n*DEX_SKILL_RUNTIME_READINESS_PROBE_REQUIRED\x10\x02\x12%\n!DEX_SKILL_RUNTIME_READINESS_READY\x10\x03\x12,\n(DEX_SKILL_RUNTIME_READINESS_MISSING_TOOL\x10\x04\x12+\n\'DEX_SKILL_RUNTIME_READINESS_UNAVAILABLE\x10\x05*\x9a\x01\n\x17\x44\x65xSkillCatalogExposure\x12*\n&DEX_SKILL_CATALOG_EXPOSURE_UNSPECIFIED\x10\x00\x12\'\n#DEX_SKILL_CATALOG_EXPOSURE_INTERNAL\x10\x01\x12*\n&DEX_SKILL_CATALOG_EXPOSURE_INSTALLABLE\x10\x02*\xab\x01\n\x0f\x44\x65xAutonomyMode\x12!\n\x1d\x44\x45X_AUTONOMY_MODE_UNSPECIFIED\x10\x00\x12\"\n\x1e\x44\x45X_AUTONOMY_MODE_SUGGEST_ONLY\x10\x01\x12(\n$DEX_AUTONOMY_MODE_ASK_BEFORE_CHANGES\x10\x02\x12\'\n#DEX_AUTONOMY_MODE_ACT_WITHIN_POLICY\x10\x03*\xbc\x01\n\x15\x44\x65xExternalActionMode\x12(\n$DEX_EXTERNAL_ACTION_MODE_UNSPECIFIED\x10\x00\x12\'\n#DEX_EXTERNAL_ACTION_MODE_ALWAYS_ASK\x10\x01\x12)\n%DEX_EXTERNAL_ACTION_MODE_POLICY_BASED\x10\x02\x12%\n!DEX_EXTERNAL_ACTION_MODE_DISABLED\x10\x03*\x9a\x01\n\x19WorkspaceSpendBeatCadence\x12,\n(WORKSPACE_SPEND_BEAT_CADENCE_UNSPECIFIED\x10\x00\x12&\n\"WORKSPACE_SPEND_BEAT_CADENCE_DAILY\x10\x01\x12\'\n#WORKSPACE_SPEND_BEAT_CADENCE_WEEKLY\x10\x02*\xb6\x02\n\x19StaffWorkspaceAccessState\x12,\n(STAFF_WORKSPACE_ACCESS_STATE_UNSPECIFIED\x10\x00\x12/\n+STAFF_WORKSPACE_ACCESS_STATE_DIRECTORY_ONLY\x10\x01\x12\x31\n-STAFF_WORKSPACE_ACCESS_STATE_ACTIVE_READ_ONLY\x10\x02\x12(\n$STAFF_WORKSPACE_ACCESS_STATE_EXPIRED\x10\x03\x12/\n+STAFF_WORKSPACE_ACCESS_STATE_GRANT_MISMATCH\x10\x04\x12,\n(STAFF_WORKSPACE_ACCESS_STATE_UNAVAILABLE\x10\x05*\xf8\x01\n\x1aManagedProviderAccessState\x12-\n)MANAGED_PROVIDER_ACCESS_STATE_UNSPECIFIED\x10\x00\x12(\n$MANAGED_PROVIDER_ACCESS_STATE_ACTIVE\x10\x01\x12+\n\'MANAGED_PROVIDER_ACCESS_STATE_SUSPENDED\x10\x02\x12)\n%MANAGED_PROVIDER_ACCESS_STATE_REVOKED\x10\x03\x12)\n%MANAGED_PROVIDER_ACCESS_STATE_EXPIRED\x10\x04*\xc1\x02\n\x1cStaffInferenceRoutingPurpose\x12/\n+STAFF_INFERENCE_ROUTING_PURPOSE_UNSPECIFIED\x10\x00\x12\x30\n,STAFF_INFERENCE_ROUTING_PURPOSE_DEFAULT_CHAT\x10\x01\x12.\n*STAFF_INFERENCE_ROUTING_PURPOSE_FAST_CHEAP\x10\x02\x12\x32\n.STAFF_INFERENCE_ROUTING_PURPOSE_DEEP_REASONING\x10\x03\x12*\n&STAFF_INFERENCE_ROUTING_PURPOSE_CODING\x10\x04\x12.\n*STAFF_INFERENCE_ROUTING_PURPOSE_EVALUATION\x10\x05*\xb8\x01\n\x17ThreadGatewayPermission\x12)\n%THREAD_GATEWAY_PERMISSION_UNSPECIFIED\x10\x00\x12$\n THREAD_GATEWAY_PERMISSION_SUBMIT\x10\x01\x12#\n\x1fTHREAD_GATEWAY_PERMISSION_WATCH\x10\x02\x12\'\n#THREAD_GATEWAY_PERMISSION_INTERRUPT\x10\x03*\xa3\x01\n\x11TenantPrivacyMode\x12#\n\x1fTENANT_PRIVACY_MODE_UNSPECIFIED\x10\x00\x12 \n\x1cTENANT_PRIVACY_MODE_STANDARD\x10\x01\x12#\n\x1fTENANT_PRIVACY_MODE_NO_TRAINING\x10\x02\x12\"\n\x1eTENANT_PRIVACY_MODE_RESTRICTED\x10\x03*\x89\x01\n\x13PrivacySettingScope\x12%\n!PRIVACY_SETTING_SCOPE_UNSPECIFIED\x10\x00\x12&\n\"PRIVACY_SETTING_SCOPE_ORGANIZATION\x10\x01\x12#\n\x1fPRIVACY_SETTING_SCOPE_WORKSPACE\x10\x02*^\n\tRuleScope\x12\x1a\n\x16RULE_SCOPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17RULE_SCOPE_ORGANIZATION\x10\x01\x12\x18\n\x14RULE_SCOPE_WORKSPACE\x10\x02*\x87\x01\n\rMcpPolicyMode\x12\x1f\n\x1bMCP_POLICY_MODE_UNSPECIFIED\x10\x00\x12\x18\n\x14MCP_POLICY_MODE_OPEN\x10\x01\x12\x1d\n\x19MCP_POLICY_MODE_ALLOWLIST\x10\x02\x12\x1c\n\x18MCP_POLICY_MODE_DENYLIST\x10\x03*\xa1\x01\n\x18\x43onnectedCallSourceState\x12+\n\'CONNECTED_CALL_SOURCE_STATE_UNSPECIFIED\x10\x00\x12)\n%CONNECTED_CALL_SOURCE_STATE_AVAILABLE\x10\x01\x12-\n)CONNECTED_CALL_SOURCE_STATE_NOT_CONNECTED\x10\x02*\xe9\x01\n ProspectingWatchProgramLifecycle\x12\x33\n/PROSPECTING_WATCH_PROGRAM_LIFECYCLE_UNSPECIFIED\x10\x00\x12.\n*PROSPECTING_WATCH_PROGRAM_LIFECYCLE_ACTIVE\x10\x01\x12.\n*PROSPECTING_WATCH_PROGRAM_LIFECYCLE_PAUSED\x10\x02\x12\x30\n,PROSPECTING_WATCH_PROGRAM_LIFECYCLE_ARCHIVED\x10\x03*\x93\x01\n\x15\x43ommitmentSourceState\x12\'\n#COMMITMENT_SOURCE_STATE_UNSPECIFIED\x10\x00\x12%\n!COMMITMENT_SOURCE_STATE_AVAILABLE\x10\x01\x12*\n&COMMITMENT_SOURCE_STATE_NOT_CONFIGURED\x10\x02*\xa2\x02\n\x11OperatingJobState\x12#\n\x1fOPERATING_JOB_STATE_UNSPECIFIED\x10\x00\x12 \n\x1cOPERATING_JOB_STATE_PROPOSED\x10\x01\x12\x1e\n\x1aOPERATING_JOB_STATE_QUEUED\x10\x02\x12\x1f\n\x1bOPERATING_JOB_STATE_RUNNING\x10\x03\x12\x1f\n\x1bOPERATING_JOB_STATE_WAITING\x10\x04\x12!\n\x1dOPERATING_JOB_STATE_SUCCEEDED\x10\x05\x12\x1e\n\x1aOPERATING_JOB_STATE_FAILED\x10\x06\x12!\n\x1dOPERATING_JOB_STATE_CANCELLED\x10\x07*\x8e\x02\n\x1dOperatingJobVerificationState\x12\x30\n,OPERATING_JOB_VERIFICATION_STATE_UNSPECIFIED\x10\x00\x12\x31\n-OPERATING_JOB_VERIFICATION_STATE_NOT_VERIFIED\x10\x01\x12,\n(OPERATING_JOB_VERIFICATION_STATE_PENDING\x10\x02\x12-\n)OPERATING_JOB_VERIFICATION_STATE_VERIFIED\x10\x03\x12+\n\'OPERATING_JOB_VERIFICATION_STATE_FAILED\x10\x04*\xfd\x01\n\x12OperatingJobOrigin\x12$\n OPERATING_JOB_ORIGIN_UNSPECIFIED\x10\x00\x12\x1d\n\x19OPERATING_JOB_ORIGIN_CHAT\x10\x01\x12!\n\x1dOPERATING_JOB_ORIGIN_SCHEDULE\x10\x02\x12\x1e\n\x1aOPERATING_JOB_ORIGIN_EVENT\x10\x03\x12\x1c\n\x18OPERATING_JOB_ORIGIN_API\x10\x04\x12\x1e\n\x1aOPERATING_JOB_ORIGIN_SKILL\x10\x05\x12!\n\x1dOPERATING_JOB_ORIGIN_COMPUTER\x10\x06*\xbd\x01\n\x16OperatingJobProofState\x12)\n%OPERATING_JOB_PROOF_STATE_UNSPECIFIED\x10\x00\x12)\n%OPERATING_JOB_PROOF_STATE_UNAVAILABLE\x10\x01\x12%\n!OPERATING_JOB_PROOF_STATE_PARTIAL\x10\x02\x12&\n\"OPERATING_JOB_PROOF_STATE_COMPLETE\x10\x03*\xe2\x01\n)OperatingHomepageSuggestionFeedbackAction\x12=\n9OPERATING_HOMEPAGE_SUGGESTION_FEEDBACK_ACTION_UNSPECIFIED\x10\x00\x12<\n8OPERATING_HOMEPAGE_SUGGESTION_FEEDBACK_ACTION_NOT_USEFUL\x10\x01\x12\x38\n4OPERATING_HOMEPAGE_SUGGESTION_FEEDBACK_ACTION_FORGET\x10\x02*\x9f\x03\n\x11\x42usinessFieldKind\x12#\n\x1f\x42USINESS_FIELD_KIND_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x42USINESS_FIELD_KIND_TEXT\x10\x01\x12\x1f\n\x1b\x42USINESS_FIELD_KIND_INTEGER\x10\x02\x12\x1f\n\x1b\x42USINESS_FIELD_KIND_BOOLEAN\x10\x03\x12\x1f\n\x1b\x42USINESS_FIELD_KIND_DECIMAL\x10\x04\x12\x1d\n\x19\x42USINESS_FIELD_KIND_MONEY\x10\x05\x12\x1c\n\x18\x42USINESS_FIELD_KIND_ENUM\x10\x06\x12\x1c\n\x18\x42USINESS_FIELD_KIND_DATE\x10\x07\x12!\n\x1d\x42USINESS_FIELD_KIND_TIMESTAMP\x10\x08\x12!\n\x1d\x42USINESS_FIELD_KIND_REFERENCE\x10\t\x12 \n\x1c\x42USINESS_FIELD_KIND_ARTIFACT\x10\n\x12!\n\x1d\x42USINESS_FIELD_KIND_TEXT_LIST\x10\x0b*\xac\x03\n\x18\x42usinessObjectRecordKind\x12+\n\'BUSINESS_OBJECT_RECORD_KIND_UNSPECIFIED\x10\x00\x12+\n\'BUSINESS_OBJECT_RECORD_KIND_CRM_COMPANY\x10\x01\x12+\n\'BUSINESS_OBJECT_RECORD_KIND_CRM_CONTACT\x10\x02\x12(\n$BUSINESS_OBJECT_RECORD_KIND_CRM_DEAL\x10\x03\x12*\n&BUSINESS_OBJECT_RECORD_KIND_CRM_SIGNAL\x10\x04\x12,\n(BUSINESS_OBJECT_RECORD_KIND_CRM_ACTIVITY\x10\x05\x12.\n*BUSINESS_OBJECT_RECORD_KIND_CRM_DEPLOYMENT\x10\x07\x12(\n$BUSINESS_OBJECT_RECORD_KIND_CRM_TASK\x10\x08\x12+\n\'BUSINESS_OBJECT_RECORD_KIND_CRM_MEETING\x10\t*\x97\x01\n\x16\x42usinessSourceProperty\x12(\n$BUSINESS_SOURCE_PROPERTY_UNSPECIFIED\x10\x00\x12)\n%BUSINESS_SOURCE_PROPERTY_DISPLAY_NAME\x10\x01\x12(\n$BUSINESS_SOURCE_PROPERTY_EXTERNAL_ID\x10\x02*\xcf\x01\n\x13\x42usinessSourceState\x12%\n!BUSINESS_SOURCE_STATE_UNSPECIFIED\x10\x00\x12 \n\x1c\x42USINESS_SOURCE_STATE_ACTIVE\x10\x01\x12!\n\x1d\x42USINESS_SOURCE_STATE_DELETED\x10\x02\x12(\n$BUSINESS_SOURCE_STATE_ACCESS_REVOKED\x10\x03\x12\"\n\x1e\x42USINESS_SOURCE_STATE_ARCHIVED\x10\x04*\xc7\x01\n#BusinessObjectRelationshipDirection\x12\x36\n2BUSINESS_OBJECT_RELATIONSHIP_DIRECTION_UNSPECIFIED\x10\x00\x12\x33\n/BUSINESS_OBJECT_RELATIONSHIP_DIRECTION_OUTGOING\x10\x01\x12\x33\n/BUSINESS_OBJECT_RELATIONSHIP_DIRECTION_INCOMING\x10\x02*\x94\x01\n\x10\x43\x61ptureFormState\x12\"\n\x1e\x43\x41PTURE_FORM_STATE_UNSPECIFIED\x10\x00\x12\x1c\n\x18\x43\x41PTURE_FORM_STATE_DRAFT\x10\x01\x12\x1d\n\x19\x43\x41PTURE_FORM_STATE_ACTIVE\x10\x02\x12\x1f\n\x1b\x43\x41PTURE_FORM_STATE_ARCHIVED\x10\x03*\xd0\x01\n\x1b\x43\x61ptureFormPublicationState\x12.\n*CAPTURE_FORM_PUBLICATION_STATE_UNSPECIFIED\x10\x00\x12)\n%CAPTURE_FORM_PUBLICATION_STATE_ACTIVE\x10\x01\x12*\n&CAPTURE_FORM_PUBLICATION_STATE_REVOKED\x10\x02\x12*\n&CAPTURE_FORM_PUBLICATION_STATE_EXPIRED\x10\x03*\xa9\x02\n\x1a\x43\x61ptureFormSubmissionState\x12-\n)CAPTURE_FORM_SUBMISSION_STATE_UNSPECIFIED\x10\x00\x12*\n&CAPTURE_FORM_SUBMISSION_STATE_RECEIVED\x10\x01\x12.\n*CAPTURE_FORM_SUBMISSION_STATE_UNDER_REVIEW\x10\x02\x12*\n&CAPTURE_FORM_SUBMISSION_STATE_ACCEPTED\x10\x03\x12*\n&CAPTURE_FORM_SUBMISSION_STATE_REJECTED\x10\x04\x12(\n$CAPTURE_FORM_SUBMISSION_STATE_FAILED\x10\x05*\x9b\x01\n\x19\x43\x61ptureFormReviewDecision\x12,\n(CAPTURE_FORM_REVIEW_DECISION_UNSPECIFIED\x10\x00\x12\'\n#CAPTURE_FORM_REVIEW_DECISION_ACCEPT\x10\x01\x12\'\n#CAPTURE_FORM_REVIEW_DECISION_REJECT\x10\x02*\x96\x04\n\x14\x43\x61ptureFormFieldKind\x12\'\n#CAPTURE_FORM_FIELD_KIND_UNSPECIFIED\x10\x00\x12 \n\x1c\x43\x41PTURE_FORM_FIELD_KIND_TEXT\x10\x01\x12%\n!CAPTURE_FORM_FIELD_KIND_LONG_TEXT\x10\x02\x12#\n\x1f\x43\x41PTURE_FORM_FIELD_KIND_INTEGER\x10\x03\x12#\n\x1f\x43\x41PTURE_FORM_FIELD_KIND_DECIMAL\x10\x04\x12#\n\x1f\x43\x41PTURE_FORM_FIELD_KIND_BOOLEAN\x10\x05\x12 \n\x1c\x43\x41PTURE_FORM_FIELD_KIND_DATE\x10\x06\x12$\n CAPTURE_FORM_FIELD_KIND_DATETIME\x10\x07\x12!\n\x1d\x43\x41PTURE_FORM_FIELD_KIND_EMAIL\x10\x08\x12!\n\x1d\x43\x41PTURE_FORM_FIELD_KIND_PHONE\x10\t\x12\x1f\n\x1b\x43\x41PTURE_FORM_FIELD_KIND_URL\x10\n\x12\"\n\x1e\x43\x41PTURE_FORM_FIELD_KIND_SELECT\x10\x0b\x12(\n$CAPTURE_FORM_FIELD_KIND_MULTI_SELECT\x10\x0c\x12 \n\x1c\x43\x41PTURE_FORM_FIELD_KIND_FILE\x10\r*\x95\x01\n\x17\x43\x61ptureFormMappingState\x12*\n&CAPTURE_FORM_MAPPING_STATE_UNSPECIFIED\x10\x00\x12%\n!CAPTURE_FORM_MAPPING_STATE_MAPPED\x10\x01\x12\'\n#CAPTURE_FORM_MAPPING_STATE_UNMAPPED\x10\x02*\xd9\x01\n\x1c\x43\x61ptureFormObjectResultState\x12\x30\n,CAPTURE_FORM_OBJECT_RESULT_STATE_UNSPECIFIED\x10\x00\x12,\n(CAPTURE_FORM_OBJECT_RESULT_STATE_CREATED\x10\x01\x12,\n(CAPTURE_FORM_OBJECT_RESULT_STATE_PARTIAL\x10\x02\x12+\n\'CAPTURE_FORM_OBJECT_RESULT_STATE_FAILED\x10\x03*\xa9\x01\n\x1c\x43\x61ptureFormBrandingAssetRole\x12\x30\n,CAPTURE_FORM_BRANDING_ASSET_ROLE_UNSPECIFIED\x10\x00\x12)\n%CAPTURE_FORM_BRANDING_ASSET_ROLE_LOGO\x10\x01\x12,\n(CAPTURE_FORM_BRANDING_ASSET_ROLE_FAVICON\x10\x02*\x8a\x02\n\x16\x43\x61ptureFormUploadState\x12)\n%CAPTURE_FORM_UPLOAD_STATE_UNSPECIFIED\x10\x00\x12%\n!CAPTURE_FORM_UPLOAD_STATE_GRANTED\x10\x01\x12(\n$CAPTURE_FORM_UPLOAD_STATE_PROCESSING\x10\x02\x12\'\n#CAPTURE_FORM_UPLOAD_STATE_COMPLETED\x10\x03\x12$\n CAPTURE_FORM_UPLOAD_STATE_FAILED\x10\x04\x12%\n!CAPTURE_FORM_UPLOAD_STATE_EXPIRED\x10\x05*\xa7\x03\n\x1fManagedInferenceReadinessStatus\x12\x32\n.MANAGED_INFERENCE_READINESS_STATUS_UNSPECIFIED\x10\x00\x12,\n(MANAGED_INFERENCE_READINESS_STATUS_READY\x10\x01\x12:\n6MANAGED_INFERENCE_READINESS_STATUS_ACTIVATION_REQUIRED\x10\x02\x12\x37\n3MANAGED_INFERENCE_READINESS_STATUS_FUNDING_REQUIRED\x10\x03\x12\x34\n0MANAGED_INFERENCE_READINESS_STATUS_LIMIT_REACHED\x10\x04\x12\x37\n3MANAGED_INFERENCE_READINESS_STATUS_ACCESS_SUSPENDED\x10\x05\x12>\n:MANAGED_INFERENCE_READINESS_STATUS_TEMPORARILY_UNAVAILABLE\x10\x06*\xc0\x04\n\x17ManagedInferenceBlocker\x12)\n%MANAGED_INFERENCE_BLOCKER_UNSPECIFIED\x10\x00\x12\x31\n-MANAGED_INFERENCE_BLOCKER_ENROLLMENT_REQUIRED\x10\x01\x12\x32\n.MANAGED_INFERENCE_BLOCKER_ENROLLMENT_SUSPENDED\x10\x02\x12\x32\n.MANAGED_INFERENCE_BLOCKER_GATEWAY_SYNC_PENDING\x10\x03\x12.\n*MANAGED_INFERENCE_BLOCKER_FUNDING_REQUIRED\x10\x04\x12/\n+MANAGED_INFERENCE_BLOCKER_FUNDING_SUSPENDED\x10\x05\x12\x31\n-MANAGED_INFERENCE_BLOCKER_FUNDING_UNAVAILABLE\x10\x06\x12/\n+MANAGED_INFERENCE_BLOCKER_ROUTE_UNAVAILABLE\x10\x07\x12\x34\n0MANAGED_INFERENCE_BLOCKER_ENROLLMENT_UNAVAILABLE\x10\x08\x12\x32\n.MANAGED_INFERENCE_BLOCKER_BUDGET_LIMIT_REACHED\x10\t\x12\x30\n,MANAGED_INFERENCE_BLOCKER_POLICY_UNAVAILABLE\x10\n*\xdd\x01\n\x1aManagedInferenceNextAction\x12-\n)MANAGED_INFERENCE_NEXT_ACTION_UNSPECIFIED\x10\x00\x12\x37\n3MANAGED_INFERENCE_NEXT_ACTION_CONTACT_ADMINISTRATOR\x10\x01\x12.\n*MANAGED_INFERENCE_NEXT_ACTION_VIEW_FUNDING\x10\x02\x12\'\n#MANAGED_INFERENCE_NEXT_ACTION_RETRY\x10\x03*i\n\x17ProspectingDraftChannel\x12)\n%PROSPECTING_DRAFT_CHANNEL_UNSPECIFIED\x10\x00\x12#\n\x1fPROSPECTING_DRAFT_CHANNEL_EMAIL\x10\x01*\xa8\x01\n\x14ProspectingDraftTone\x12&\n\"PROSPECTING_DRAFT_TONE_UNSPECIFIED\x10\x00\x12!\n\x1dPROSPECTING_DRAFT_TONE_DIRECT\x10\x01\x12\x1f\n\x1bPROSPECTING_DRAFT_TONE_WARM\x10\x02\x12$\n PROSPECTING_DRAFT_TONE_TECHNICAL\x10\x03*\xdb\x01\n\x1bProspectingDraftReviewState\x12.\n*PROSPECTING_DRAFT_REVIEW_STATE_UNSPECIFIED\x10\x00\x12\x32\n.PROSPECTING_DRAFT_REVIEW_STATE_REVIEW_REQUIRED\x10\x01\x12+\n\'PROSPECTING_DRAFT_REVIEW_STATE_APPROVED\x10\x02\x12+\n\'PROSPECTING_DRAFT_REVIEW_STATE_REJECTED\x10\x03\x32\xda\xb1\x02\n\x0e\x43onsoleService\x12\xa8\x01\n\x16ListBusinessBlueprints\x12).console.v1.ListBusinessBlueprintsRequest\x1a*.console.v1.ListBusinessBlueprintsResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xa9\x01\n\x16\x43loneBusinessBlueprint\x12).console.v1.CloneBusinessBlueprintRequest\x1a*.console.v1.CloneBusinessBlueprintResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xba\x01\n\x1cGetBusinessProcessDefinition\x12/.console.v1.GetBusinessProcessDefinitionRequest\x1a\x30.console.v1.GetBusinessProcessDefinitionResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xc0\x01\n\x1eListBusinessProcessDefinitions\x12\x31.console.v1.ListBusinessProcessDefinitionsRequest\x1a\x32.console.v1.ListBusinessProcessDefinitionsResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xa6\x01\n\x15\x44\x65\x66ineBusinessProcess\x12(.console.v1.DefineBusinessProcessRequest\x1a).console.v1.DefineBusinessProcessResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xa3\x01\n\x14StartBusinessProcess\x12\'.console.v1.StartBusinessProcessRequest\x1a(.console.v1.StartBusinessProcessResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\x9c\x01\n\x12GetBusinessProcess\x12%.console.v1.GetBusinessProcessRequest\x1a&.console.v1.GetBusinessProcessResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xa5\x01\n\x15ListBusinessProcesses\x12(.console.v1.ListBusinessProcessesRequest\x1a).console.v1.ListBusinessProcessesResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xb2\x01\n\x19TransitionBusinessProcess\x12,.console.v1.TransitionBusinessProcessRequest\x1a-.console.v1.TransitionBusinessProcessResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xd8\x01\n&PrepareBusinessObjectAuthorityTransfer\x12\x39.console.v1.PrepareBusinessObjectAuthorityTransferRequest\x1a:.console.v1.PrepareBusinessObjectAuthorityTransferResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xdb\x01\n\'FinalizeBusinessObjectAuthorityTransfer\x12:.console.v1.FinalizeBusinessObjectAuthorityTransferRequest\x1a;.console.v1.FinalizeBusinessObjectAuthorityTransferResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xaf\x01\n\x18\x44\x65\x66ineBusinessObjectType\x12+.console.v1.DefineBusinessObjectTypeRequest\x1a,.console.v1.DefineBusinessObjectTypeResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xa5\x01\n\x15GetBusinessObjectType\x12(.console.v1.GetBusinessObjectTypeRequest\x1a).console.v1.GetBusinessObjectTypeResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xab\x01\n\x17ListBusinessObjectTypes\x12*.console.v1.ListBusinessObjectTypesRequest\x1a+.console.v1.ListBusinessObjectTypesResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xa3\x01\n\x14\x43reateBusinessObject\x12\'.console.v1.CreateBusinessObjectRequest\x1a(.console.v1.CreateBusinessObjectResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\x99\x01\n\x11GetBusinessObject\x12$.console.v1.GetBusinessObjectRequest\x1a%.console.v1.GetBusinessObjectResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\x9f\x01\n\x13ListBusinessObjects\x12&.console.v1.ListBusinessObjectsRequest\x1a\'.console.v1.ListBusinessObjectsResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xa3\x01\n\x14UpdateBusinessObject\x12\'.console.v1.UpdateBusinessObjectRequest\x1a(.console.v1.UpdateBusinessObjectResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xa3\x01\n\x14\x44\x65leteBusinessObject\x12\'.console.v1.DeleteBusinessObjectRequest\x1a(.console.v1.DeleteBusinessObjectResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\xb7\x01\n\x1bListBusinessObjectRevisions\x12..console.v1.ListBusinessObjectRevisionsRequest\x1a/.console.v1.ListBusinessObjectRevisionsResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xaf\x01\n\x18\x42indBusinessObjectSource\x12+.console.v1.BindBusinessObjectSourceRequest\x1a,.console.v1.BindBusinessObjectSourceResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xc1\x01\n\x1e\x41\x64mitBusinessObjectObservation\x12\x31.console.v1.AdmitBusinessObjectObservationRequest\x1a\x32.console.v1.AdmitBusinessObjectObservationResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xc3\x01\n\x1fListBusinessObjectRelationships\x12\x32.console.v1.ListBusinessObjectRelationshipsRequest\x1a\x33.console.v1.ListBusinessObjectRelationshipsResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xc7\x01\n CreateBusinessObjectRelationship\x12\x33.console.v1.CreateBusinessObjectRelationshipRequest\x1a\x34.console.v1.CreateBusinessObjectRelationshipResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xc7\x01\n DeleteBusinessObjectRelationship\x12\x33.console.v1.DeleteBusinessObjectRelationshipRequest\x1a\x34.console.v1.DeleteBusinessObjectRelationshipResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\x9a\x01\n\x11\x43reateCaptureForm\x12$.console.v1.CreateCaptureFormRequest\x1a%.console.v1.CreateCaptureFormResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\x96\x01\n\x10ListCaptureForms\x12#.console.v1.ListCaptureFormsRequest\x1a$.console.v1.ListCaptureFormsResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\x90\x01\n\x0eGetCaptureForm\x12!.console.v1.GetCaptureFormRequest\x1a\".console.v1.GetCaptureFormResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\x9a\x01\n\x11UpdateCaptureForm\x12$.console.v1.UpdateCaptureFormRequest\x1a%.console.v1.UpdateCaptureFormResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\x9d\x01\n\x12PublishCaptureForm\x12%.console.v1.PublishCaptureFormRequest\x1a&.console.v1.PublishCaptureFormResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\xbb\x01\n\x1cRevokeCaptureFormPublication\x12/.console.v1.RevokeCaptureFormPublicationRequest\x1a\x30.console.v1.RevokeCaptureFormPublicationResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\xb8\x01\n\x1b\x43reateCaptureFormInvitation\x12..console.v1.CreateCaptureFormInvitationRequest\x1a/.console.v1.CreateCaptureFormInvitationResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\xb8\x01\n\x1bRevokeCaptureFormInvitation\x12..console.v1.RevokeCaptureFormInvitationRequest\x1a/.console.v1.RevokeCaptureFormInvitationResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12r\n\x15GetInvitedCaptureForm\x12(.console.v1.GetInvitedCaptureFormRequest\x1a).console.v1.GetInvitedCaptureFormResponse\"\x04\xe0\xf3\x18\x01\x12{\n\x18SubmitInvitedCaptureForm\x12+.console.v1.SubmitInvitedCaptureFormRequest\x1a,.console.v1.SubmitInvitedCaptureFormResponse\"\x04\xe0\xf3\x18\x01\x12x\n\x17GetPublishedCaptureForm\x12*.console.v1.GetPublishedCaptureFormRequest\x1a+.console.v1.GetPublishedCaptureFormResponse\"\x04\xe0\xf3\x18\x01\x12\x9f\x01\n$GetPublishedCaptureFormBrandingAsset\x12\x37.console.v1.GetPublishedCaptureFormBrandingAssetRequest\x1a\x38.console.v1.GetPublishedCaptureFormBrandingAssetResponse\"\x04\xe0\xf3\x18\x01\x12\x81\x01\n\x1aSubmitPublishedCaptureForm\x12-.console.v1.SubmitPublishedCaptureFormRequest\x1a..console.v1.SubmitPublishedCaptureFormResponse\"\x04\xe0\xf3\x18\x01\x12\x90\x01\n\x1f\x42\x65ginPublishedCaptureFormUpload\x12\x32.console.v1.BeginPublishedCaptureFormUploadRequest\x1a\x33.console.v1.BeginPublishedCaptureFormUploadResponse\"\x04\xe0\xf3\x18\x01\x12\x99\x01\n\"CompletePublishedCaptureFormUpload\x12\x35.console.v1.CompletePublishedCaptureFormUploadRequest\x1a\x36.console.v1.CompletePublishedCaptureFormUploadResponse\"\x04\xe0\xf3\x18\x01\x12\xae\x01\n\x18GetCaptureFormSubmission\x12+.console.v1.GetCaptureFormSubmissionRequest\x1a,.console.v1.GetCaptureFormSubmissionResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xb4\x01\n\x1aListCaptureFormSubmissions\x12-.console.v1.ListCaptureFormSubmissionsRequest\x1a..console.v1.ListCaptureFormSubmissionsResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xb8\x01\n\x1bReviewCaptureFormSubmission\x12..console.v1.ReviewCaptureFormSubmissionRequest\x1a/.console.v1.ReviewCaptureFormSubmissionResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\xa7\x01\n\x1cGetInferenceCreditAutoRefill\x12/.console.v1.GetInferenceCreditAutoRefillRequest\x1a\x30.console.v1.GetInferenceCreditAutoRefillResponse\"$\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12\xb1\x01\n\x1fUpdateInferenceCreditAutoRefill\x12\x32.console.v1.UpdateInferenceCreditAutoRefillRequest\x1a\x33.console.v1.UpdateInferenceCreditAutoRefillResponse\"%\xca\xf3\x18\rbilling:admin\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\x12\xb7\x01\n!CompleteInferenceCreditAutoRefill\x12\x34.console.v1.CompleteInferenceCreditAutoRefillRequest\x1a\x35.console.v1.CompleteInferenceCreditAutoRefillResponse\"%\xca\xf3\x18\rbilling:admin\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\x12\xa4\x01\n\x1bListInferenceCreditReceipts\x12..console.v1.ListInferenceCreditReceiptsRequest\x1a/.console.v1.ListInferenceCreditReceiptsResponse\"$\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12z\n\x0bGetOverview\x12\x1e.console.v1.GetOverviewRequest\x1a\x1f.console.v1.GetOverviewResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x9b\x01\n\x16GetConsoleBootSnapshot\x12).console.v1.GetConsoleBootSnapshotRequest\x1a*.console.v1.GetConsoleBootSnapshotResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12w\n\nListAssets\x12\x1d.console.v1.ListAssetsRequest\x1a\x1e.console.v1.ListAssetsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12k\n\x08GetAsset\x12\x1b.console.v1.GetAssetRequest\x1a\x1c.console.v1.GetAssetResponse\"$\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12}\n\x0cListActivity\x12\x1f.console.v1.ListActivityRequest\x1a .console.v1.ListActivityResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x8e\x01\n\x1dSearchStaffWorkspaceDirectory\x12\x30.console.v1.SearchStaffWorkspaceDirectoryRequest\x1a\x31.console.v1.SearchStaffWorkspaceDirectoryResponse\"\x08\xd8\xf3\x18\x01\xf0\xf3\x18\x01\x12\x9c\x01\n\x18GetStaffWorkspaceContext\x12+.console.v1.GetStaffWorkspaceContextRequest\x1a,.console.v1.GetStaffWorkspaceContextResponse\"%\xca\xf3\x18\x15support_access.manage\xd8\xf3\x18\x01\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\xd0\x01\n\x1fGetStaffManagedInferenceFunding\x12\x32.console.v1.GetStaffManagedInferenceFundingRequest\x1a).meter.v1.GetPrepaidCreditBalanceResponse\"N\xca\xf3\x18\x15support_access.manage\xca\xf3\x18\x17managed_inference:admin\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\xe9\x01\n!GrantStaffManagedInferenceCredits\x12\x34.console.v1.GrantStaffManagedInferenceCreditsRequest\x1a).meter.v1.GrantDevelopmentCreditsResponse\"c\xca\xf3\x18\x15support_access.manage\xca\xf3\x18\x17managed_inference:admin\xca\xf3\x18\x1fmeter:credits:grant-development\xd8\xf3\x18\x03\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\xbf\x01\n\x1dGetStaffManagedInferenceUsage\x12\x30.console.v1.GetStaffManagedInferenceUsageRequest\x1a\x1c.meter.v1.QueryUsageResponse\"N\xca\xf3\x18\x15support_access.manage\xca\xf3\x18\x17managed_inference:admin\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\xc9\x01\n\x1eGetStaffManagedInferenceBudget\x12\x31.console.v1.GetStaffManagedInferenceBudgetRequest\x1a$.meter.v1.GetBudgetDashboardResponse\"N\xca\xf3\x18\x15support_access.manage\xca\xf3\x18\x17managed_inference:admin\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\xc1\x01\n\x1eSetStaffManagedInferenceBudget\x12\x31.console.v1.SetStaffManagedInferenceBudgetRequest\x1a\x1b.meter.v1.SetBudgetResponse\"O\xca\xf3\x18\x15support_access.manage\xca\xf3\x18\x17managed_inference:admin\xca\xf3\x18\x0bmeter:write\xd8\xf3\x18\x03\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\xcd\x01\n!GetStaffManagedInferenceReadiness\x12\x34.console.v1.GetStaffManagedInferenceReadinessRequest\x1a\x30.console.v1.GetManagedInferenceReadinessResponse\"@\xca\xf3\x18\x15support_access.manage\xca\xf3\x18\x17managed_inference:admin\xd8\xf3\x18\x01\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\xba\x01\n\x1cGetManagedInferenceReadiness\x12/.console.v1.GetManagedInferenceReadinessRequest\x1a\x30.console.v1.GetManagedInferenceReadinessResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\x98\x01\n\x1fListManagedProviderAccessGrants\x12\x32.console.v1.ListManagedProviderAccessGrantsRequest\x1a\x33.console.v1.ListManagedProviderAccessGrantsResponse\"\x0c\xd8\xf3\x18\x01\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\x98\x01\n\x1fListManagedProviderAccessEvents\x12\x32.console.v1.ListManagedProviderAccessEventsRequest\x1a\x33.console.v1.ListManagedProviderAccessEventsResponse\"\x0c\xd8\xf3\x18\x01\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\xa0\x01\n$ListStaffManagedInferenceAdminEvents\x12\x37.console.v1.ListStaffManagedInferenceAdminEventsRequest\x1a\x31.meter.v1.ListManagedInferenceAdminEventsResponse\"\x0c\xd8\xf3\x18\x01\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\xa7\x01\n$ListStaffManagedExecutionGrantEvents\x12\x37.console.v1.ListStaffManagedExecutionGrantEventsRequest\x1a\x38.console.v1.ListStaffManagedExecutionGrantEventsResponse\"\x0c\xd8\xf3\x18\x01\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\x9e\x01\n!ListStaffManagedExecutionOutcomes\x12\x34.console.v1.ListStaffManagedExecutionOutcomesRequest\x1a\x35.console.v1.ListStaffManagedExecutionOutcomesResponse\"\x0c\xd8\xf3\x18\x01\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\x9b\x01\n UpsertManagedProviderAccessGrant\x12\x33.console.v1.UpsertManagedProviderAccessGrantRequest\x1a\x34.console.v1.UpsertManagedProviderAccessGrantResponse\"\x0c\xd8\xf3\x18\x03\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\x9b\x01\n RevokeManagedProviderAccessGrant\x12\x33.console.v1.RevokeManagedProviderAccessGrantRequest\x1a\x34.console.v1.RevokeManagedProviderAccessGrantResponse\"\x0c\xd8\xf3\x18\x03\xf0\xf3\x18\x01\xf8\xf3\x18\x01\x12\x94\x01\n\x1fGetStaffInferenceRoutingProfile\x12\x32.console.v1.GetStaffInferenceRoutingProfileRequest\x1a\x33.console.v1.GetStaffInferenceRoutingProfileResponse\"\x08\xd8\xf3\x18\x01\xf0\xf3\x18\x01\x12\x9d\x01\n\"UpdateStaffInferenceRoutingProfile\x12\x35.console.v1.UpdateStaffInferenceRoutingProfileRequest\x1a\x36.console.v1.UpdateStaffInferenceRoutingProfileResponse\"\x08\xd8\xf3\x18\x03\xf0\xf3\x18\x01\x12\x86\x01\n\x0fListEvalResults\x12\".console.v1.ListEvalResultsRequest\x1a#.console.v1.ListEvalResultsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x80\x01\n\rListCostUsage\x12 .console.v1.ListCostUsageRequest\x1a!.console.v1.ListCostUsageResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb3\x01\n\x1aRecordProviderCostSnapshot\x12-.console.v1.RecordProviderCostSnapshotRequest\x1a..console.v1.RecordProviderCostSnapshotResponse\"6\xca\xf3\x18\x0bmeter:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\x95\x01\n\x14ListAuthorityPosture\x12\'.console.v1.ListAuthorityPostureRequest\x1a(.console.v1.ListAuthorityPostureResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xa4\x01\n\x19ListAgentWorkforceRecords\x12,.console.v1.ListAgentWorkforceRecordsRequest\x1a-.console.v1.ListAgentWorkforceRecordsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb1\x01\n\x15ListOrbControlTargets\x12(.console.v1.ListOrbControlTargetsRequest\x1a).console.v1.ListOrbControlTargetsResponse\"C\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x15query.organization_id\x12\xab\x01\n\x13GetOrbControlTarget\x12&.console.v1.GetOrbControlTargetRequest\x1a\'.console.v1.GetOrbControlTargetResponse\"C\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x15query.organization_id\x12\xb5\x01\n\x16SubmitOrbControlAction\x12).console.v1.SubmitOrbControlActionRequest\x1a*.console.v1.SubmitOrbControlActionResponse\"D\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x15query.organization_id\x12\xae\x01\n\x1cSubmitAgentWorkforceEvidence\x12/.console.v1.SubmitAgentWorkforceEvidenceRequest\x1a\x30.console.v1.SubmitAgentWorkforceEvidenceResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12}\n\x0cListFindings\x12\x1f.console.v1.ListFindingsRequest\x1a .console.v1.ListFindingsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x86\x01\n\x11GetTraceDrilldown\x12$.console.v1.GetTraceDrilldownRequest\x1a%.console.v1.GetTraceDrilldownResponse\"$\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12\x95\x01\n\x14ListIntegrationTiles\x12\'.console.v1.ListIntegrationTilesRequest\x1a(.console.v1.ListIntegrationTilesResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x86\x01\n\x11ListPinnedSources\x12$.console.v1.ListPinnedSourcesRequest\x1a%.console.v1.ListPinnedSourcesResponse\"$\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12\x81\x01\n\x0fSetPinnedSource\x12\".console.v1.SetPinnedSourceRequest\x1a#.console.v1.SetPinnedSourceResponse\"%\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12u\n\x0bUnpinSource\x12\x1e.console.v1.UnpinSourceRequest\x1a\x1f.console.v1.UnpinSourceResponse\"%\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12\x93\x01\n\x12\x43reateDexMcpServer\x12%.console.v1.CreateDexMcpServerRequest\x1a&.console.v1.CreateDexMcpServerResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x8f\x01\n\x11ListDexMcpServers\x12$.console.v1.ListDexMcpServersRequest\x1a%.console.v1.ListDexMcpServersResponse\"-\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x89\x01\n\x0fGetDexMcpServer\x12\".console.v1.GetDexMcpServerRequest\x1a#.console.v1.GetDexMcpServerResponse\"-\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x99\x01\n\x14\x44iscoverDexMcpServer\x12\'.console.v1.DiscoverDexMcpServerRequest\x1a(.console.v1.DiscoverDexMcpServerResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x93\x01\n\x12UpdateDexMcpServer\x12%.console.v1.UpdateDexMcpServerRequest\x1a&.console.v1.UpdateDexMcpServerResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x93\x01\n\x12\x44\x65leteDexMcpServer\x12%.console.v1.DeleteDexMcpServerRequest\x1a&.console.v1.DeleteDexMcpServerResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xab\x01\n\x1aInitiateDexMcpOAuthProfile\x12-.console.v1.InitiateDexMcpOAuthProfileRequest\x1a..console.v1.InitiateDexMcpOAuthProfileResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xab\x01\n\x1a\x43ompleteDexMcpOAuthProfile\x12-.console.v1.CompleteDexMcpOAuthProfileRequest\x1a..console.v1.CompleteDexMcpOAuthProfileResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x04\x12\xa1\x01\n\x17ListDexMcpOAuthProfiles\x12*.console.v1.ListDexMcpOAuthProfilesRequest\x1a+.console.v1.ListDexMcpOAuthProfilesResponse\"-\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xa5\x01\n\x18RevokeDexMcpOAuthProfile\x12+.console.v1.RevokeDexMcpOAuthProfileRequest\x1a,.console.v1.RevokeDexMcpOAuthProfileResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xb4\x01\n\x1dReauthorizeDexMcpOAuthProfile\x12\x30.console.v1.ReauthorizeDexMcpOAuthProfileRequest\x1a\x31.console.v1.ReauthorizeDexMcpOAuthProfileResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x04\x12\xa2\x01\n\x17RegisterPrivateEndpoint\x12*.console.v1.RegisterPrivateEndpointRequest\x1a+.console.v1.RegisterPrivateEndpointResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xa0\x01\n\x15VerifyPrivateEndpoint\x12(.console.v1.VerifyPrivateEndpointRequest\x1a).console.v1.VerifyPrivateEndpointResponse\"2\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\xf0\xf3\x18\x01\x12\x98\x01\n\x14ListPrivateEndpoints\x12\'.console.v1.ListPrivateEndpointsRequest\x1a(.console.v1.ListPrivateEndpointsResponse\"-\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x9c\x01\n\x15\x44\x65letePrivateEndpoint\x12(.console.v1.DeletePrivateEndpointRequest\x1a).console.v1.DeletePrivateEndpointResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xb7\x01\n\x1e\x41ttachPrivateEndpointToProfile\x12\x31.console.v1.AttachPrivateEndpointToProfileRequest\x1a\x32.console.v1.AttachPrivateEndpointToProfileResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xa4\x01\n\x18ListGatewayEgressOrigins\x12+.console.v1.ListGatewayEgressOriginsRequest\x1a,.console.v1.ListGatewayEgressOriginsResponse\"-\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x86\x01\n\x11GetOnboardingPlan\x12$.console.v1.GetOnboardingPlanRequest\x1a%.console.v1.GetOnboardingPlanResponse\"$\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12\x98\x01\n\x15ListOperatingChannels\x12(.console.v1.ListOperatingChannelsRequest\x1a).console.v1.ListOperatingChannelsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x8c\x01\n\x11ListOperatingJobs\x12$.console.v1.ListOperatingJobsRequest\x1a%.console.v1.ListOperatingJobsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x9c\x01\n\x16\x41rchiveOperatingThread\x12).console.v1.ArchiveOperatingThreadRequest\x1a*.console.v1.ArchiveOperatingThreadResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x99\x01\n\x15RenameOperatingThread\x12(.console.v1.RenameOperatingThreadRequest\x1a).console.v1.RenameOperatingThreadResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x8f\x01\n\x12GetOperatingThread\x12%.console.v1.GetOperatingThreadRequest\x1a&.console.v1.GetOperatingThreadResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb9\x01\n\x16\x42ootstrapThreadGateway\x12).console.v1.BootstrapThreadGatewayRequest\x1a*.console.v1.BootstrapThreadGatewayResponse\"H\xca\xf3\x18\rconsole:write\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\xac\x01\n\x16PrewarmOperatingThread\x12).console.v1.PrewarmOperatingThreadRequest\x1a*.console.v1.PrewarmOperatingThreadResponse\";\xca\xf3\x18\rconsole:write\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xa4\x01\n\x19ListOperatingThreadEvents\x12,.console.v1.ListOperatingThreadEventsRequest\x1a-.console.v1.ListOperatingThreadEventsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x97\x01\n\x14WatchOperatingThread\x12\'.console.v1.WatchOperatingThreadRequest\x1a(.console.v1.WatchOperatingThreadResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x30\x01\x12\x9c\x01\n\x16RespondOperatingThread\x12).console.v1.RespondOperatingThreadRequest\x1a*.console.v1.RespondOperatingThreadResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xa2\x01\n\x18InterruptOperatingThread\x12+.console.v1.InterruptOperatingThreadRequest\x1a,.console.v1.InterruptOperatingThreadResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x9b\x01\n\x16SearchOperatingHistory\x12).console.v1.SearchOperatingHistoryRequest\x1a*.console.v1.SearchOperatingHistoryResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xa7\x01\n\x1aGetOperatingHistoryContext\x12-.console.v1.GetOperatingHistoryContextRequest\x1a..console.v1.GetOperatingHistoryContextResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xd0\x01\n\x1e\x41\x63\x63\x65ptOperatingProjectSnapshot\x12\x31.console.v1.AcceptOperatingProjectSnapshotRequest\x1a\x32.console.v1.AcceptOperatingProjectSnapshotResponse\"G\x90\x02\x02\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x15query.organization_id\x12\xcd\x01\n\x1eImportOperatingProjectSnapshot\x12\x31.console.v1.ImportOperatingProjectSnapshotRequest\x1a\x32.console.v1.AcceptOperatingProjectSnapshotResponse\"D\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x15query.organization_id\x12\xc3\x01\n\x1bGetOperatingTaskEnvironment\x12..console.v1.GetOperatingTaskEnvironmentRequest\x1a/.console.v1.GetOperatingTaskEnvironmentResponse\"C\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x15query.organization_id\x12\xc6\x01\n\x1bGetOperatingProjectSnapshot\x12..console.v1.GetOperatingProjectSnapshotRequest\x1a\x32.console.v1.AcceptOperatingProjectSnapshotResponse\"C\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x15query.organization_id\x12\xac\x01\n\x16SubmitOperatingMessage\x12).console.v1.SubmitOperatingMessageRequest\x1a*.console.v1.SubmitOperatingMessageResponse\";\xca\xf3\x18\rconsole:write\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xa5\x01\n\x19SubmitOperatingCorrection\x12,.console.v1.SubmitOperatingCorrectionRequest\x1a-.console.v1.SubmitOperatingCorrectionResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x9f\x01\n\x17SubmitOperatingFeedback\x12*.console.v1.SubmitOperatingFeedbackRequest\x1a+.console.v1.SubmitOperatingFeedbackResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xa2\x01\n\x18SubmitProductIssueReport\x12+.console.v1.SubmitProductIssueReportRequest\x1a,.console.v1.SubmitProductIssueReportResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb5\x01\n\x1eSubmitNativeProductIssueReport\x12\x31.console.v1.SubmitNativeProductIssueReportRequest\x1a,.console.v1.SubmitProductIssueReportResponse\"2\xca\xf3\x18\x14product_issues:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x8b\x01\n\x1cListStaffProductIssueReports\x12/.console.v1.ListStaffProductIssueReportsRequest\x1a\x30.console.v1.ListStaffProductIssueReportsResponse\"\x08\xd8\xf3\x18\x01\xf0\xf3\x18\x01\x12\x8e\x01\n\x1d\x45ngageStaffProductIssueReport\x12\x30.console.v1.EngageStaffProductIssueReportRequest\x1a\x31.console.v1.EngageStaffProductIssueReportResponse\"\x08\xd8\xf3\x18\x02\xf0\xf3\x18\x01\x12\x95\x01\n\x14GetOperatingFeedback\x12\'.console.v1.GetOperatingFeedbackRequest\x1a(.console.v1.GetOperatingFeedbackResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xc3\x01\n#ResolveOperatingFeedbackRemediation\x12\x36.console.v1.ResolveOperatingFeedbackRemediationRequest\x1a\x37.console.v1.ResolveOperatingFeedbackRemediationResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb4\x01\n\x1dListCustomerIntelligenceFacts\x12\x30.console.v1.ListCustomerIntelligenceFactsRequest\x1a\x31.console.v1.ListCustomerIntelligenceFactsResponse\".\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\xf0\xf3\x18\x01\x12\xae\x01\n\x1bGetCustomerIntelligenceFact\x12..console.v1.GetCustomerIntelligenceFactRequest\x1a/.console.v1.GetCustomerIntelligenceFactResponse\".\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\xf0\xf3\x18\x01\x12\xb8\x01\n\x1eReviewCustomerIntelligenceFact\x12\x31.console.v1.ReviewCustomerIntelligenceFactRequest\x1a\x32.console.v1.ReviewCustomerIntelligenceFactResponse\"/\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\xf0\xf3\x18\x01\x12\xb7\x01\n\x1fProposeCustomerIntelligenceFact\x12\x32.console.v1.ProposeCustomerIntelligenceFactRequest\x1a\x33.console.v1.ProposeCustomerIntelligenceFactResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xbd\x01\n!RespondToCustomerFactConfirmation\x12\x34.console.v1.RespondToCustomerFactConfirmationRequest\x1a\x35.console.v1.RespondToCustomerFactConfirmationResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xb6\x01\n%AggregateCustomerIntelligencePatterns\x12\x38.console.v1.AggregateCustomerIntelligencePatternsRequest\x1a\x39.console.v1.AggregateCustomerIntelligencePatternsResponse\"\x18\xca\xf3\x18\x0c\x63onsole:read\xd8\xf3\x18\x01\xf0\xf3\x18\x01\x12\xa1\x01\n\x18ListOperatingCorrections\x12+.console.v1.ListOperatingCorrectionsRequest\x1a,.console.v1.ListOperatingCorrectionsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xa5\x01\n\x19ReviewOperatingCorrection\x12,.console.v1.ReviewOperatingCorrectionRequest\x1a-.console.v1.ReviewOperatingCorrectionResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x98\x01\n\x15ListWorkspaceMemories\x12(.console.v1.ListWorkspaceMemoriesRequest\x1a).console.v1.ListWorkspaceMemoriesResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x9c\x01\n\x16\x43orrectWorkspaceMemory\x12).console.v1.CorrectWorkspaceMemoryRequest\x1a*.console.v1.CorrectWorkspaceMemoryResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x99\x01\n\x15ReviewWorkspaceMemory\x12(.console.v1.ReviewWorkspaceMemoryRequest\x1a).console.v1.ReviewWorkspaceMemoryResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x99\x01\n\x15\x46orgetWorkspaceMemory\x12(.console.v1.ForgetWorkspaceMemoryRequest\x1a).console.v1.ForgetWorkspaceMemoryResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xcd\x01\n\x1e\x42\x65ginOperatingAttachmentUpload\x12\x31.console.v1.BeginOperatingAttachmentUploadRequest\x1a\x32.console.v1.BeginOperatingAttachmentUploadResponse\"D\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x15query.organization_id\x12\xd6\x01\n!CompleteOperatingAttachmentUpload\x12\x34.console.v1.CompleteOperatingAttachmentUploadRequest\x1a\x35.console.v1.CompleteOperatingAttachmentUploadResponse\"D\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x15query.organization_id\x12\xba\x01\n\x18ListOperatingAttachments\x12+.console.v1.ListOperatingAttachmentsRequest\x1a,.console.v1.ListOperatingAttachmentsResponse\"C\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x15query.organization_id\x12\xb1\x01\n\x1dResolveOperatingReceiptAction\x12\x30.console.v1.ResolveOperatingReceiptActionRequest\x1a\x31.console.v1.ResolveOperatingReceiptActionResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x92\x01\n\x13GetOperatingReceipt\x12&.console.v1.GetOperatingReceiptRequest\x1a\'.console.v1.GetOperatingReceiptResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x99\x01\n\x15SubmitComputerMission\x12(.console.v1.SubmitComputerMissionRequest\x1a).console.v1.SubmitComputerMissionResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x8f\x01\n\x12GetComputerMission\x12%.console.v1.GetComputerMissionRequest\x1a&.console.v1.GetComputerMissionResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x99\x01\n\x15\x43\x61ncelComputerMission\x12(.console.v1.CancelComputerMissionRequest\x1a).console.v1.CancelComputerMissionResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x9f\x01\n\x17\x43ontinueComputerMission\x12*.console.v1.ContinueComputerMissionRequest\x1a+.console.v1.ContinueComputerMissionResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x96\x01\n\x14PauseComputerMission\x12\'.console.v1.PauseComputerMissionRequest\x1a(.console.v1.PauseComputerMissionResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x99\x01\n\x15ResumeComputerMission\x12(.console.v1.ResumeComputerMissionRequest\x1a).console.v1.ResumeComputerMissionResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x93\x01\n\x13WakeComputerMission\x12&.console.v1.WakeComputerMissionRequest\x1a\'.console.v1.WakeComputerMissionResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x96\x01\n\x14GuideComputerMission\x12\'.console.v1.GuideComputerMissionRequest\x1a(.console.v1.GuideComputerMissionResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xc5\x01\n$ListComputerMissionCanaryDefinitions\x12\x37.console.v1.ListComputerMissionCanaryDefinitionsRequest\x1a\x38.console.v1.ListComputerMissionCanaryDefinitionsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb1\x01\n\x1dStartComputerMissionCanaryRun\x12\x30.console.v1.StartComputerMissionCanaryRunRequest\x1a\x31.console.v1.StartComputerMissionCanaryRunResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xaa\x01\n\x1bGetComputerMissionCanaryRun\x12..console.v1.GetComputerMissionCanaryRunRequest\x1a/.console.v1.GetComputerMissionCanaryRunResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb0\x01\n\x1dListComputerMissionCanaryRuns\x12\x30.console.v1.ListComputerMissionCanaryRunsRequest\x1a\x31.console.v1.ListComputerMissionCanaryRunsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb9\x01\n GetComputerMissionCanaryEvidence\x12\x33.console.v1.GetComputerMissionCanaryEvidenceRequest\x1a\x34.console.v1.GetComputerMissionCanaryEvidenceResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb7\x01\n\x1fOperateComputerMissionCanaryRun\x12\x32.console.v1.OperateComputerMissionCanaryRunRequest\x1a\x33.console.v1.OperateComputerMissionCanaryRunResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x99\x01\n\x15\x43reateMissionSchedule\x12(.console.v1.CreateMissionScheduleRequest\x1a).console.v1.CreateMissionScheduleResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x99\x01\n\x15UpdateMissionSchedule\x12(.console.v1.UpdateMissionScheduleRequest\x1a).console.v1.UpdateMissionScheduleResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xa5\x01\n\x19SetMissionScheduleEnabled\x12,.console.v1.SetMissionScheduleEnabledRequest\x1a-.console.v1.SetMissionScheduleEnabledResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x95\x01\n\x14ListMissionSchedules\x12\'.console.v1.ListMissionSchedulesRequest\x1a(.console.v1.ListMissionSchedulesResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x9c\x01\n\x16\x43reateConnectorTrigger\x12).console.v1.CreateConnectorTriggerRequest\x1a*.console.v1.CreateConnectorTriggerResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x9c\x01\n\x16UpdateConnectorTrigger\x12).console.v1.UpdateConnectorTriggerRequest\x1a*.console.v1.UpdateConnectorTriggerResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x98\x01\n\x15ListConnectorTriggers\x12(.console.v1.ListConnectorTriggersRequest\x1a).console.v1.ListConnectorTriggersResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x9c\x01\n\x16\x44\x65leteConnectorTrigger\x12).console.v1.DeleteConnectorTriggerRequest\x1a*.console.v1.DeleteConnectorTriggerResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xa8\x01\n\x1aSetConnectorTriggerEnabled\x12-.console.v1.SetConnectorTriggerEnabledRequest\x1a..console.v1.SetConnectorTriggerEnabledResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xe6\x01\n!ReserveComputerMissionApexSession\x12\x34.console.v1.ReserveComputerMissionApexSessionRequest\x1a\x35.console.v1.ReserveComputerMissionApexSessionResponse\"T\xca\xf3\x18\rconsole:write\xca\xf3\x18\x18\x61pex:reservation:reserve\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\xfb\x01\n)BindComputerMissionApexSessionReservation\x12<.console.v1.BindComputerMissionApexSessionReservationRequest\x1a=.console.v1.BindComputerMissionApexSessionReservationResponse\"Q\xca\xf3\x18\rconsole:write\xca\xf3\x18\x15\x61pex:reservation:bind\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\xfe\x01\n*BindComputerMissionApexInstructionMetadata\x12=.console.v1.BindComputerMissionApexInstructionMetadataRequest\x1a>.console.v1.BindComputerMissionApexInstructionMetadataResponse\"Q\xca\xf3\x18\rconsole:write\xca\xf3\x18\x15\x61pex:instruction:bind\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\x82\x02\n+AuthorizeComputerMissionApexSessionAdoption\x12>.console.v1.AuthorizeComputerMissionApexSessionAdoptionRequest\x1a?.console.v1.AuthorizeComputerMissionApexSessionAdoptionResponse\"R\xca\xf3\x18\rconsole:write\xca\xf3\x18\x16\x61pex:reservation:adopt\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\x95\x01\n\x14GetWorkspaceSettings\x12\'.console.v1.GetWorkspaceSettingsRequest\x1a(.console.v1.GetWorkspaceSettingsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x9b\x01\n\x16GetOperatorPreferences\x12).console.v1.GetOperatorPreferencesRequest\x1a*.console.v1.GetOperatorPreferencesResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xa5\x01\n\x19UpdateOperatorPreferences\x12,.console.v1.UpdateOperatorPreferencesRequest\x1a-.console.v1.UpdateOperatorPreferencesResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb2\x01\n\x16\x43reateConnectorProfile\x12).console.v1.CreateConnectorProfileRequest\x1a*.console.v1.CreateConnectorProfileResponse\"A\xca\xf3\x18\x10\x63onnectors:write\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x9b\x01\n\x15ListConnectorProfiles\x12(.console.v1.ListConnectorProfilesRequest\x1a).console.v1.ListConnectorProfilesResponse\"-\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb2\x01\n\x16UpdateConnectorProfile\x12).console.v1.UpdateConnectorProfileRequest\x1a*.console.v1.UpdateConnectorProfileResponse\"A\xca\xf3\x18\x10\x63onnectors:write\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x9f\x01\n\x16\x44\x65leteConnectorProfile\x12).console.v1.DeleteConnectorProfileRequest\x1a*.console.v1.DeleteConnectorProfileResponse\".\xca\xf3\x18\x10\x63onnectors:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xa2\x01\n\x12ListConnectedCalls\x12%.console.v1.ListConnectedCallsRequest\x1a&.console.v1.ListConnectedCallsResponse\"=\xca\xf3\x18\x0c\x63onsole:read\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xa7\x01\n\x13StartMeetingCapture\x12&.console.v1.StartMeetingCaptureRequest\x1a\'.console.v1.StartMeetingCaptureResponse\"?\xca\xf3\x18\x0eplatform:write\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x8c\x01\n\x11GetMeetingCapture\x12$.console.v1.GetMeetingCaptureRequest\x1a%.console.v1.GetMeetingCaptureResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x92\x01\n\x13ListMeetingCaptures\x12&.console.v1.ListMeetingCapturesRequest\x1a\'.console.v1.ListMeetingCapturesResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xa4\x01\n\x12StopMeetingCapture\x12%.console.v1.StopMeetingCaptureRequest\x1a&.console.v1.StopMeetingCaptureResponse\"?\xca\xf3\x18\x0eplatform:write\xca\xf3\x18\x0f\x63onnectors:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x86\x01\n\x0fListCommitments\x12\".console.v1.ListCommitmentsRequest\x1a#.console.v1.ListCommitmentsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x95\x01\n\x16GetBillingSubscription\x12).console.v1.GetBillingSubscriptionRequest\x1a*.console.v1.GetBillingSubscriptionResponse\"$\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12\xa2\x01\n\x1a\x43reateBillingPortalSession\x12-.console.v1.CreateBillingPortalSessionRequest\x1a..console.v1.CreateBillingPortalSessionResponse\"%\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\x12\xa8\x01\n\x1c\x43reateBillingCheckoutSession\x12/.console.v1.CreateBillingCheckoutSessionRequest\x1a\x30.console.v1.CreateBillingCheckoutSessionResponse\"%\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\x12\x9e\x01\n\x19GetInferenceCreditBalance\x12,.console.v1.GetInferenceCreditBalanceRequest\x1a-.console.v1.GetInferenceCreditBalanceResponse\"$\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12\xab\x01\n\x1d\x43reateInferenceCreditCheckout\x12\x30.console.v1.CreateInferenceCreditCheckoutRequest\x1a\x31.console.v1.CreateInferenceCreditCheckoutResponse\"%\xca\xf3\x18\rbilling:admin\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\x12\xae\x01\n\x1e\x46ulfillInferenceCreditCheckout\x12\x31.console.v1.FulfillInferenceCreditCheckoutRequest\x1a\x32.console.v1.FulfillInferenceCreditCheckoutResponse\"%\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\x12\x9c\x01\n\x16UpdateWorkspaceProfile\x12).console.v1.UpdateWorkspaceProfileRequest\x1a*.console.v1.UpdateWorkspaceProfileResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x8a\x01\n\x10\x41rchiveWorkspace\x12#.console.v1.ArchiveWorkspaceRequest\x1a$.console.v1.ArchiveWorkspaceResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x99\x01\n\x15UpdateWorkspacePolicy\x12(.console.v1.UpdateWorkspacePolicyRequest\x1a).console.v1.UpdateWorkspacePolicyResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xa2\x01\n\x18UpdateWorkspaceDexPolicy\x12+.console.v1.UpdateWorkspaceDexPolicyRequest\x1a,.console.v1.UpdateWorkspaceDexPolicyResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xbd\x01\n!UpdateWorkspaceArtifactStyleGuide\x12\x34.console.v1.UpdateWorkspaceArtifactStyleGuideRequest\x1a\x35.console.v1.UpdateWorkspaceArtifactStyleGuideResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xc3\x01\n#EvaluateWorkspaceArtifactStyleGuide\x12\x36.console.v1.EvaluateWorkspaceArtifactStyleGuideRequest\x1a\x37.console.v1.EvaluateWorkspaceArtifactStyleGuideResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xb7\x01\n\x1fUpsertWorkspaceIdentityProvider\x12\x32.console.v1.UpsertWorkspaceIdentityProviderRequest\x1a\x33.console.v1.UpsertWorkspaceIdentityProviderResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xb7\x01\n\x1fRemoveWorkspaceIdentityProvider\x12\x32.console.v1.RemoveWorkspaceIdentityProviderRequest\x1a\x33.console.v1.RemoveWorkspaceIdentityProviderResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xa8\x01\n\x1aUpsertWorkspaceIntegration\x12-.console.v1.UpsertWorkspaceIntegrationRequest\x1a..console.v1.UpsertWorkspaceIntegrationResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xa8\x01\n\x1aRemoveWorkspaceIntegration\x12-.console.v1.RemoveWorkspaceIntegrationRequest\x1a..console.v1.RemoveWorkspaceIntegrationResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x9a\x01\n\x16UpdateWorkspaceBilling\x12).console.v1.UpdateWorkspaceBillingRequest\x1a(.console.v1.GetWorkspaceSettingsResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x98\x01\n\x15UpsertWorkspaceMember\x12(.console.v1.UpsertWorkspaceMemberRequest\x1a(.console.v1.GetWorkspaceSettingsResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x98\x01\n\x15RemoveWorkspaceMember\x12(.console.v1.RemoveWorkspaceMemberRequest\x1a(.console.v1.GetWorkspaceSettingsResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xba\x01\n&UpdateWorkspaceNotificationPreferences\x12\x39.console.v1.UpdateWorkspaceNotificationPreferencesRequest\x1a(.console.v1.GetWorkspaceSettingsResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xa8\x01\n\x19\x45nableWorkspaceBreakGlass\x12,.console.v1.EnableWorkspaceBreakGlassRequest\x1a(.console.v1.GetWorkspaceSettingsResponse\"3\xca\xf3\x18\x15support_access.manage\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xa2\x01\n\x1a\x44isableWorkspaceBreakGlass\x12-.console.v1.DisableWorkspaceBreakGlassRequest\x1a(.console.v1.GetWorkspaceSettingsResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x92\x01\n\x13ListWorkspaceSkills\x12&.console.v1.ListWorkspaceSkillsRequest\x1a\'.console.v1.ListWorkspaceSkillsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x98\x01\n\x15\x42rowseDexSkillCatalog\x12(.console.v1.BrowseDexSkillCatalogRequest\x1a).console.v1.BrowseDexSkillCatalogResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xab\x01\n\x1bInstallDexSkillCatalogEntry\x12..console.v1.InstallDexSkillCatalogEntryRequest\x1a/.console.v1.InstallDexSkillCatalogEntryResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x96\x01\n\x14\x43reateWorkspaceSkill\x12\'.console.v1.CreateWorkspaceSkillRequest\x1a(.console.v1.CreateWorkspaceSkillResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x96\x01\n\x14UpdateWorkspaceSkill\x12\'.console.v1.UpdateWorkspaceSkillRequest\x1a(.console.v1.UpdateWorkspaceSkillResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\x96\x01\n\x14\x44\x65leteWorkspaceSkill\x12\'.console.v1.DeleteWorkspaceSkillRequest\x1a(.console.v1.DeleteWorkspaceSkillResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xa2\x01\n\x14ListScenarioFixtures\x12\'.console.v1.ListScenarioFixturesRequest\x1a(.console.v1.ListScenarioFixturesResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xa9\x01\n\x16PromoteScenarioFixture\x12).console.v1.PromoteScenarioFixtureRequest\x1a*.console.v1.PromoteScenarioFixtureResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\xab\x01\n\x17\x43ompareScenarioFixtures\x12*.console.v1.CompareScenarioFixturesRequest\x1a+.console.v1.CompareScenarioFixturesResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xaa\x01\n\x1bListWorkspaceGuardrailRules\x12..console.v1.ListWorkspaceGuardrailRulesRequest\x1a/.console.v1.ListWorkspaceGuardrailRulesResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\xad\x01\n\x1cUpsertWorkspaceGuardrailRule\x12/.console.v1.UpsertWorkspaceGuardrailRuleRequest\x1a/.console.v1.ListWorkspaceGuardrailRulesResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xad\x01\n\x1cRemoveWorkspaceGuardrailRule\x12/.console.v1.RemoveWorkspaceGuardrailRuleRequest\x1a/.console.v1.ListWorkspaceGuardrailRulesResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x02\x12\xae\x01\n\x1cSetOperatingThreadController\x12/.console.v1.SetOperatingThreadControllerRequest\x1a\x30.console.v1.SetOperatingThreadControllerResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\x8f\x01\n\x12GetPrivacySettings\x12%.console.v1.GetPrivacySettingsRequest\x1a&.console.v1.GetPrivacySettingsResponse\"*\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x12\x90\x01\n\x12SetPrivacySettings\x12%.console.v1.SetPrivacySettingsRequest\x1a&.console.v1.GetPrivacySettingsResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\x12\xd2\x01\n\x1d\x43reateProspectingWatchProgram\x12\x30.console.v1.CreateProspectingWatchProgramRequest\x1a\x31.console.v1.CreateProspectingWatchProgramResponse\"L\xca\xf3\x18\x11prospecting.write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x15query.organization_id\xf0\xf3\x18\x01\x12\xc8\x01\n\x1aGetProspectingWatchProgram\x12-.console.v1.GetProspectingWatchProgramRequest\x1a..console.v1.GetProspectingWatchProgramResponse\"K\xca\xf3\x18\x10prospecting.read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x15query.organization_id\xf0\xf3\x18\x01\x12\xce\x01\n\x1cListProspectingWatchPrograms\x12/.console.v1.ListProspectingWatchProgramsRequest\x1a\x30.console.v1.ListProspectingWatchProgramsResponse\"K\xca\xf3\x18\x10prospecting.read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x15query.organization_id\xf0\xf3\x18\x01\x12\xd2\x01\n\x1dUpdateProspectingWatchProgram\x12\x30.console.v1.UpdateProspectingWatchProgramRequest\x1a\x31.console.v1.UpdateProspectingWatchProgramResponse\"L\xca\xf3\x18\x11prospecting.write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x15query.organization_id\xf0\xf3\x18\x01\x12\xbd\x01\n\x16\x43reateProspectingDraft\x12).console.v1.CreateProspectingDraftRequest\x1a*.console.v1.CreateProspectingDraftResponse\"L\xca\xf3\x18\x11prospecting.write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x15query.organization_id\xf0\xf3\x18\x01\x12\xb9\x01\n\x15ListProspectingDrafts\x12(.console.v1.ListProspectingDraftsRequest\x1a).console.v1.ListProspectingDraftsResponse\"K\xca\xf3\x18\x10prospecting.read\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x15query.organization_id\xf0\xf3\x18\x01\x12\xbd\x01\n\x16ReviewProspectingDraft\x12).console.v1.ReviewProspectingDraftRequest\x1a*.console.v1.ReviewProspectingDraftResponse\"L\xca\xf3\x18\x11prospecting.write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x15query.organization_id\xf0\xf3\x18\x01\x12\xd5\x01\n)RecordOperatingHomepageSuggestionFeedback\x12<.console.v1.RecordOperatingHomepageSuggestionFeedbackRequest\x1a=.console.v1.RecordOperatingHomepageSuggestionFeedbackResponse\"+\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x12query.workspace_id\xd8\xf3\x18\x01\x32\x8c\x04\n\x13WorkspaceKeyService\x12\xa2\x01\n\x15GetWorkspaceKeyConfig\x12(.console.v1.GetWorkspaceKeyConfigRequest\x1a&.console.v1.WorkspaceKeyConfigResponse\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\xa3\x01\n\x15PutWorkspaceKeyConfig\x12(.console.v1.PutWorkspaceKeyConfigRequest\x1a&.console.v1.WorkspaceKeyConfigResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\xa9\x01\n\x18\x44\x65leteWorkspaceKeyConfig\x12+.console.v1.DeleteWorkspaceKeyConfigRequest\x1a&.console.v1.WorkspaceKeyConfigResponse\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id2\xac\x02\n\x13ManagedSetupService\x12\x88\x01\n\x0fGetManagedSetup\x12\".console.v1.GetManagedSetupRequest\x1a\x18.console.v1.ManagedSetup\"7\xca\xf3\x18\x0c\x63onsole:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\x89\x01\n\x0fSetManagedSetup\x12\".console.v1.SetManagedSetupRequest\x1a\x18.console.v1.ManagedSetup\"8\xca\xf3\x18\rconsole:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_idB9Z7github.com/evalops/platform/gen/go/console/v1;consolev1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'console.v1.console_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z7github.com/evalops/platform/gen/go/console/v1;consolev1' + _globals['_GETWORKSPACEKEYCONFIGREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETWORKSPACEKEYCONFIGREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETWORKSPACEKEYCONFIGREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETWORKSPACEKEYCONFIGREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUTWORKSPACEKEYCONFIGREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_PUTWORKSPACEKEYCONFIGREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUTWORKSPACEKEYCONFIGREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_PUTWORKSPACEKEYCONFIGREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUTWORKSPACEKEYCONFIGREQUEST'].fields_by_name['provider']._loaded_options = None + _globals['_PUTWORKSPACEKEYCONFIGREQUEST'].fields_by_name['provider']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DELETEWORKSPACEKEYCONFIGREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_DELETEWORKSPACEKEYCONFIGREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DELETEWORKSPACEKEYCONFIGREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_DELETEWORKSPACEKEYCONFIGREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONSOLEQUERY'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CONSOLEQUERY'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONSOLEQUERY'].fields_by_name['limit']._loaded_options = None + _globals['_CONSOLEQUERY'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\364\003(\000' + _globals['_CONSOLEQUERY'].fields_by_name['offset']._loaded_options = None + _globals['_CONSOLEQUERY'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_OPERATINGSURFACEMETADATA'].fields_by_name['kind']._loaded_options = None + _globals['_OPERATINGSURFACEMETADATA'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGMODELSELECTION'].fields_by_name['provider']._loaded_options = None + _globals['_OPERATINGMODELSELECTION'].fields_by_name['provider']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGMODELSELECTION'].fields_by_name['model']._loaded_options = None + _globals['_OPERATINGMODELSELECTION'].fields_by_name['model']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGTURNRECORD'].fields_by_name['sequence']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['sequence']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGTURNRECORD'].fields_by_name['goal']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['goal']._serialized_options = b'\272H\005r\003\030\320\017' + _globals['_OPERATINGTURNRECORD'].fields_by_name['state']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGTURNRECORD'].fields_by_name['verification_state']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['verification_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGTURNRECORD'].fields_by_name['tool_events']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['tool_events']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_OPERATINGTURNRECORD'].fields_by_name['evidence_refs']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['evidence_refs']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_OPERATINGTURNRECORD'].fields_by_name['answer_provenance']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['answer_provenance']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGTURNRECORD'].fields_by_name['context_id']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['context_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGTURNRECORD'].fields_by_name['task_id']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['task_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGTURNRECORD'].fields_by_name['task_revision']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['task_revision']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGTURNRECORD'].fields_by_name['reference_task_ids']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['reference_task_ids']._serialized_options = b'\272H\016\222\001\013\020\020\"\007r\005\020\001\030\200\002' + _globals['_OPERATINGTURNRECORD'].fields_by_name['artifact_intent_kind']._loaded_options = None + _globals['_OPERATINGTURNRECORD'].fields_by_name['artifact_intent_kind']._serialized_options = b'\272H\004r\002\030 ' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['study_org_key']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['study_org_key']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['consent_state']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['consent_state']._serialized_options = b'\272H\004r\002\030 ' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['consent_policy_version']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['consent_policy_version']._serialized_options = b'\272H\004r\002\030@' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['source_revision']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['source_revision']._serialized_options = b'\272H\004r\002\030@' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['workflow_id']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['workflow_id']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['workflow_version']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['workflow_version']._serialized_options = b'\272H\004r\002\030@' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['model_id']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['model_id']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['model_revision']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['model_revision']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['provider_id']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['provider_id']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['provider_route']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['provider_route']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['config_digest']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['config_digest']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['prompt_template_revision']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['prompt_template_revision']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['toolchain_revision']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['toolchain_revision']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['feature_flag_snapshot_digest']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['feature_flag_snapshot_digest']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['rollout_id']._loaded_options = None + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY'].fields_by_name['rollout_id']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['runtime']._loaded_options = None + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['runtime']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['run_id']._loaded_options = None + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['run_id']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['runner_session_id']._loaded_options = None + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['runner_session_id']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['protocol_version']._loaded_options = None + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['protocol_version']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['runtime_generation']._loaded_options = None + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['runtime_generation']._serialized_options = b'\272H\004\"\002 \000' + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['event_cursor']._loaded_options = None + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['event_cursor']._serialized_options = b'\272H\004\"\002 \000' + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['causal_receipt_id']._loaded_options = None + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['causal_receipt_id']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['maestro_session_id']._loaded_options = None + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['maestro_session_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['maestro_run_id']._loaded_options = None + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['maestro_run_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['resident_process_generation']._loaded_options = None + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['resident_process_generation']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['turn_id']._loaded_options = None + _globals['_OPERATINGEXECUTIONIDENTITY'].fields_by_name['turn_id']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['state']._loaded_options = None + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['active_turn_sequence']._loaded_options = None + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['active_turn_sequence']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['replay_cursor']._loaded_options = None + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['replay_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['terminal_turn_sequence']._loaded_options = None + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['terminal_turn_sequence']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['controller_owner']._loaded_options = None + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['controller_owner']._serialized_options = b'\272H\004r\002\030@' + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['controller_lease_generation']._loaded_options = None + _globals['_OPERATINGTHREADEXECUTION'].fields_by_name['controller_lease_generation']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGTHREADTURN'].fields_by_name['sequence']._loaded_options = None + _globals['_OPERATINGTHREADTURN'].fields_by_name['sequence']._serialized_options = b'\272H\004\"\002 \000' + _globals['_OPERATINGTHREADTURN'].fields_by_name['state']._loaded_options = None + _globals['_OPERATINGTHREADTURN'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGTHREADTURN'].fields_by_name['waiting_reason']._loaded_options = None + _globals['_OPERATINGTHREADTURN'].fields_by_name['waiting_reason']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGTHREADTURN'].fields_by_name['first_cursor']._loaded_options = None + _globals['_OPERATINGTHREADTURN'].fields_by_name['first_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGTHREADTURN'].fields_by_name['last_cursor']._loaded_options = None + _globals['_OPERATINGTHREADTURN'].fields_by_name['last_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGTHREADEVENT'].fields_by_name['cursor']._loaded_options = None + _globals['_OPERATINGTHREADEVENT'].fields_by_name['cursor']._serialized_options = b'\272H\004\"\002 \000' + _globals['_OPERATINGTHREADEVENT'].fields_by_name['kind']._loaded_options = None + _globals['_OPERATINGTHREADEVENT'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGTHREADEVENT'].fields_by_name['safe_text']._loaded_options = None + _globals['_OPERATINGTHREADEVENT'].fields_by_name['safe_text']._serialized_options = b'\272H\005r\003\030\200 ' + _globals['_OPERATINGTHREADEVENT'].fields_by_name['artifact_refs']._loaded_options = None + _globals['_OPERATINGTHREADEVENT'].fields_by_name['artifact_refs']._serialized_options = b'\272H\005\222\001\002\020 ' + _globals['_OPERATINGTHREADEVENT'].fields_by_name['request_id']._loaded_options = None + _globals['_OPERATINGTHREADEVENT'].fields_by_name['request_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGTHREADEVENT'].fields_by_name['request_type']._loaded_options = None + _globals['_OPERATINGTHREADEVENT'].fields_by_name['request_type']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGTHREADEVENT'].fields_by_name['request_tool']._loaded_options = None + _globals['_OPERATINGTHREADEVENT'].fields_by_name['request_tool']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGTHREADEVENT'].fields_by_name['request_call_id']._loaded_options = None + _globals['_OPERATINGTHREADEVENT'].fields_by_name['request_call_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['request_id']._loaded_options = None + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['request_id']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['call_id']._loaded_options = None + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['call_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['request_type']._loaded_options = None + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['request_type']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['action']._loaded_options = None + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['action']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['text']._loaded_options = None + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['text']._serialized_options = b'\272H\006r\004\030\200\200\004' + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_OPERATINGTHREADRESPONSE'].fields_by_name['idempotency_key']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_OPERATINGATTACHMENTREF'].fields_by_name['scope']._loaded_options = None + _globals['_OPERATINGATTACHMENTREF'].fields_by_name['scope']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGATTACHMENTREF'].fields_by_name['size_bytes']._loaded_options = None + _globals['_OPERATINGATTACHMENTREF'].fields_by_name['size_bytes']._serialized_options = b'\272H\t\"\007\030\200\200\200\031(\000' + _globals['_OPERATINGATTACHMENTREF'].fields_by_name['processing_state']._loaded_options = None + _globals['_OPERATINGATTACHMENTREF'].fields_by_name['processing_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGRECEIPT'].fields_by_name['lifecycle_state']._loaded_options = None + _globals['_OPERATINGRECEIPT'].fields_by_name['lifecycle_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_LISTOPERATINGCHANNELSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTOPERATINGCHANNELSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTOPERATINGCHANNELSREQUEST'].fields_by_name['archive_filter']._loaded_options = None + _globals['_LISTOPERATINGCHANNELSREQUEST'].fields_by_name['archive_filter']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_ARCHIVEOPERATINGTHREADREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_ARCHIVEOPERATINGTHREADREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_ARCHIVEOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_ARCHIVEOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_ARCHIVEOPERATINGTHREADREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_ARCHIVEOPERATINGTHREADREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\004\200\364\030\002' + _globals['_ARCHIVEOPERATINGTHREADRESPONSE'].fields_by_name['channel']._loaded_options = None + _globals['_ARCHIVEOPERATINGTHREADRESPONSE'].fields_by_name['channel']._serialized_options = b'\272H\003\310\001\001' + _globals['_RENAMEOPERATINGTHREADREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_RENAMEOPERATINGTHREADREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_RENAMEOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_RENAMEOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RENAMEOPERATINGTHREADREQUEST'].fields_by_name['title']._loaded_options = None + _globals['_RENAMEOPERATINGTHREADREQUEST'].fields_by_name['title']._serialized_options = b'\272H\006r\004\020\001\030P\200\364\030\004' + _globals['_RENAMEOPERATINGTHREADRESPONSE'].fields_by_name['channel']._loaded_options = None + _globals['_RENAMEOPERATINGTHREADRESPONSE'].fields_by_name['channel']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETOPERATINGTHREADREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETOPERATINGTHREADREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_GETOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._serialized_options = b'\200\364\030\002' + _globals['_GETOPERATINGTHREADREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_GETOPERATINGTHREADREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\310\001(\000' + _globals['_GETOPERATINGTHREADREQUEST'].fields_by_name['page_token']._loaded_options = None + _globals['_GETOPERATINGTHREADREQUEST'].fields_by_name['page_token']._serialized_options = b'\272H\005r\003\030\200\020\200\364\030\002' + _globals['_GETOPERATINGTHREADRESPONSE'].fields_by_name['replay_cursor']._loaded_options = None + _globals['_GETOPERATINGTHREADRESPONSE'].fields_by_name['replay_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_GETOPERATINGTHREADRESPONSE'].fields_by_name['next_page_token']._loaded_options = None + _globals['_GETOPERATINGTHREADRESPONSE'].fields_by_name['next_page_token']._serialized_options = b'\272H\005r\003\030\200\020\200\364\030\002' + _globals['_RESPONDOPERATINGTHREADREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_RESPONDOPERATINGTHREADREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_RESPONDOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_RESPONDOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESPONDOPERATINGTHREADREQUEST'].fields_by_name['turn_id']._loaded_options = None + _globals['_RESPONDOPERATINGTHREADREQUEST'].fields_by_name['turn_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESPONDOPERATINGTHREADREQUEST'].fields_by_name['response']._loaded_options = None + _globals['_RESPONDOPERATINGTHREADREQUEST'].fields_by_name['response']._serialized_options = b'\272H\003\310\001\001' + _globals['_RESPONDOPERATINGTHREADREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_RESPONDOPERATINGTHREADREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\004\200\364\030\002' + _globals['_RESPONDOPERATINGTHREADRESPONSE'].fields_by_name['replay_cursor']._loaded_options = None + _globals['_RESPONDOPERATINGTHREADRESPONSE'].fields_by_name['replay_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INTERRUPTOPERATINGTHREADREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_INTERRUPTOPERATINGTHREADREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_INTERRUPTOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_INTERRUPTOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_INTERRUPTOPERATINGTHREADREQUEST'].fields_by_name['turn_id']._loaded_options = None + _globals['_INTERRUPTOPERATINGTHREADREQUEST'].fields_by_name['turn_id']._serialized_options = b'\200\364\030\002' + _globals['_INTERRUPTOPERATINGTHREADREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_INTERRUPTOPERATINGTHREADREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\004\200\364\030\002' + _globals['_INTERRUPTOPERATINGTHREADREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_INTERRUPTOPERATINGTHREADREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\005r\003\030\200\004\200\364\030\004' + _globals['_INTERRUPTOPERATINGTHREADRESPONSE'].fields_by_name['replay_cursor']._loaded_options = None + _globals['_INTERRUPTOPERATINGTHREADRESPONSE'].fields_by_name['replay_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INTERRUPTOPERATINGTHREADRESPONSE'].fields_by_name['cancelled_work_ids']._loaded_options = None + _globals['_INTERRUPTOPERATINGTHREADRESPONSE'].fields_by_name['cancelled_work_ids']._serialized_options = b'\272H\005\222\001\002\020 ' + _globals['_LISTOPERATINGTHREADEVENTSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTOPERATINGTHREADEVENTSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTOPERATINGTHREADEVENTSREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_LISTOPERATINGTHREADEVENTSREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_LISTOPERATINGTHREADEVENTSREQUEST'].fields_by_name['after_cursor']._loaded_options = None + _globals['_LISTOPERATINGTHREADEVENTSREQUEST'].fields_by_name['after_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_LISTOPERATINGTHREADEVENTSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTOPERATINGTHREADEVENTSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\310\001(\001' + _globals['_LISTOPERATINGTHREADEVENTSRESPONSE'].fields_by_name['events']._loaded_options = None + _globals['_LISTOPERATINGTHREADEVENTSRESPONSE'].fields_by_name['events']._serialized_options = b'\272H\006\222\001\003\020\310\001' + _globals['_LISTOPERATINGTHREADEVENTSRESPONSE'].fields_by_name['next_cursor']._loaded_options = None + _globals['_LISTOPERATINGTHREADEVENTSRESPONSE'].fields_by_name['next_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_WATCHOPERATINGTHREADREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_WATCHOPERATINGTHREADREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_WATCHOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_WATCHOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_WATCHOPERATINGTHREADREQUEST'].fields_by_name['after_cursor']._loaded_options = None + _globals['_WATCHOPERATINGTHREADREQUEST'].fields_by_name['after_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_WATCHOPERATINGTHREADRESPONSE'].fields_by_name['events']._loaded_options = None + _globals['_WATCHOPERATINGTHREADRESPONSE'].fields_by_name['events']._serialized_options = b'\272H\005\222\001\002\0202' + _globals['_WATCHOPERATINGTHREADRESPONSE'].fields_by_name['next_cursor']._loaded_options = None + _globals['_WATCHOPERATINGTHREADRESPONSE'].fields_by_name['next_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['task_id']._loaded_options = None + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['task_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['repository_id']._loaded_options = None + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['repository_id']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['generation']._loaded_options = None + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['generation']._serialized_options = b'\272H\0042\002 \000' + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['required_assertion_ids']._loaded_options = None + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['required_assertion_ids']._serialized_options = b'\272H\010\222\001\005\010\001\020\200\001' + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['readiness_requirements']._loaded_options = None + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['readiness_requirements']._serialized_options = b'\272H\006\222\001\003\020\200\001' + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['authorized_skips']._loaded_options = None + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['authorized_skips']._serialized_options = b'\272H\006\222\001\003\020\200\001' + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['authorized_dispositions']._loaded_options = None + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['authorized_dispositions']._serialized_options = b'\272H\006\222\001\003\020\200\001' + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['output_paths']._loaded_options = None + _globals['_CODINGACCEPTANCECONTRACT'].fields_by_name['output_paths']._serialized_options = b'\272H\005\222\001\002\020\010' + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['channel_id']._serialized_options = b'\200\364\030\002' + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['body']._loaded_options = None + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['body']._serialized_options = b'\272H\006r\004\030\240\234\001\200\364\030\004' + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\200\364\030\002' + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['attachments']._loaded_options = None + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['attachments']._serialized_options = b'\272H\005\222\001\002\020\001' + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['continuation_task_id']._loaded_options = None + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['continuation_task_id']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\002' + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['reference_task_ids']._loaded_options = None + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['reference_task_ids']._serialized_options = b'\272H\016\222\001\013\020\020\"\007r\005\020\001\030\200\002\200\364\030\002' + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['draft_prewarm_id']._loaded_options = None + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['draft_prewarm_id']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\002' + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['project_resource_id']._loaded_options = None + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['project_resource_id']._serialized_options = b'\272H\007r\005\020\001\030\377\001\200\364\030\002' + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['task_kind']._loaded_options = None + _globals['_SUBMITOPERATINGMESSAGEREQUEST'].fields_by_name['task_kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['filename']._loaded_options = None + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['filename']._serialized_options = b'\272H\004r\002\020\001\200\364\030\003' + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['content_type']._loaded_options = None + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['content_type']._serialized_options = b'\272H\004r\002\020\001\200\364\030\001' + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['size_bytes']._loaded_options = None + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['size_bytes']._serialized_options = b'\272H\t\"\007\030\200\200\200\031 \000' + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['sha256']._loaded_options = None + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['sha256']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['scope']._loaded_options = None + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['scope']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['attachment_id']._loaded_options = None + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['attachment_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['lease_id']._loaded_options = None + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['lease_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['lease_token']._loaded_options = None + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['lease_token']._serialized_options = b'\272H\004r\002\020\001\200\364\030\005' + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['fencing_token']._loaded_options = None + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['fencing_token']._serialized_options = b'\272H\004\"\002(\001' + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['size_bytes']._loaded_options = None + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['size_bytes']._serialized_options = b'\272H\t\"\007\030\200\200\200\031 \000' + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['sha256']._loaded_options = None + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['sha256']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['storage_etag']._loaded_options = None + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['storage_etag']._serialized_options = b'\200\364\030\002' + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['completed_parts']._loaded_options = None + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST'].fields_by_name['completed_parts']._serialized_options = b'\272H\006\222\001\003\020\220N' + _globals['_LISTOPERATINGATTACHMENTSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTOPERATINGATTACHMENTSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTOPERATINGATTACHMENTSREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_LISTOPERATINGATTACHMENTSREQUEST'].fields_by_name['channel_id']._serialized_options = b'\200\364\030\002' + _globals['_LISTOPERATINGATTACHMENTSREQUEST'].fields_by_name['scope']._loaded_options = None + _globals['_LISTOPERATINGATTACHMENTSREQUEST'].fields_by_name['scope']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_LISTOPERATINGATTACHMENTSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTOPERATINGATTACHMENTSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\006\032\004\030d(\000' + _globals['_LISTOPERATINGATTACHMENTSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTOPERATINGATTACHMENTSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_SUBMITOPERATINGMESSAGERESPONSE'].fields_by_name['replay_cursor']._loaded_options = None + _globals['_SUBMITOPERATINGMESSAGERESPONSE'].fields_by_name['replay_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['schema']._loaded_options = None + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['schema']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['organization_id']._loaded_options = None + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['workspace_id']._loaded_options = None + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['correction_id']._loaded_options = None + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['correction_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['source_episode_id']._loaded_options = None + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['source_episode_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['source_episode_digest_sha256']._loaded_options = None + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['source_episode_digest_sha256']._serialized_options = b'\272H\005r\003\230\001@' + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['labels']._loaded_options = None + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['labels']._serialized_options = b'\272H\014\222\001\t\"\007\202\001\004\020\001 \000' + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['evidence_digests_sha256']._loaded_options = None + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['evidence_digests_sha256']._serialized_options = b'\272H\016\222\001\013\010\001\020@\"\005r\003\230\001@' + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['review_state']._loaded_options = None + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['review_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['reuse_boundary']._loaded_options = None + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['reuse_boundary']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['episode_digest_sha256']._loaded_options = None + _globals['_DEXCOMPUTERCORRECTIONEPISODE'].fields_by_name['episode_digest_sha256']._serialized_options = b'\272H\005r\003\230\001@' + _globals['_OPERATINGCORRECTIONCANDIDATE'].fields_by_name['category']._loaded_options = None + _globals['_OPERATINGCORRECTIONCANDIDATE'].fields_by_name['category']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGCORRECTIONCANDIDATE'].fields_by_name['review_state']._loaded_options = None + _globals['_OPERATINGCORRECTIONCANDIDATE'].fields_by_name['review_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGCORRECTIONCANDIDATE'].fields_by_name['evidence_refs']._loaded_options = None + _globals['_OPERATINGCORRECTIONCANDIDATE'].fields_by_name['evidence_refs']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_OPERATINGCORRECTIONCANDIDATE'].fields_by_name['correction_episode']._loaded_options = None + _globals['_OPERATINGCORRECTIONCANDIDATE'].fields_by_name['correction_episode']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['message_id']._loaded_options = None + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['message_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['category']._loaded_options = None + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['category']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['feedback']._loaded_options = None + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['feedback']._serialized_options = b'\272H\005r\003\030\240\037\200\364\030\004' + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SUBMITOPERATINGCORRECTIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_SUBMITOPERATINGCORRECTIONRESPONSE'].fields_by_name['correction']._loaded_options = None + _globals['_SUBMITOPERATINGCORRECTIONRESPONSE'].fields_by_name['correction']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATINGFEEDBACK'].fields_by_name['sentiment']._loaded_options = None + _globals['_OPERATINGFEEDBACK'].fields_by_name['sentiment']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGFEEDBACK'].fields_by_name['category']._loaded_options = None + _globals['_OPERATINGFEEDBACK'].fields_by_name['category']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGFEEDBACK'].fields_by_name['classification_source']._loaded_options = None + _globals['_OPERATINGFEEDBACK'].fields_by_name['classification_source']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGFEEDBACK'].fields_by_name['remediation_action']._loaded_options = None + _globals['_OPERATINGFEEDBACK'].fields_by_name['remediation_action']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGFEEDBACK'].fields_by_name['remediation_outcome']._loaded_options = None + _globals['_OPERATINGFEEDBACK'].fields_by_name['remediation_outcome']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGFEEDBACK'].fields_by_name['reason']._loaded_options = None + _globals['_OPERATINGFEEDBACK'].fields_by_name['reason']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGFEEDBACK'].fields_by_name['lifecycle_state']._loaded_options = None + _globals['_OPERATINGFEEDBACK'].fields_by_name['lifecycle_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['message_id']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['message_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['sentiment']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['sentiment']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['category']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['category']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['classification_source']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['classification_source']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['correction']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['correction']._serialized_options = b'\272H\005r\003\030\240\037\200\364\030\004' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['remediation_action']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['remediation_action']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['remediation_attempt_id']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['remediation_attempt_id']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\002' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['lifecycle_state']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['lifecycle_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['supersedes_feedback_id']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKREQUEST'].fields_by_name['supersedes_feedback_id']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\002' + _globals['_SUBMITOPERATINGFEEDBACKRESPONSE'].fields_by_name['feedback']._loaded_options = None + _globals['_SUBMITOPERATINGFEEDBACKRESPONSE'].fields_by_name['feedback']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['description']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['description']._serialized_options = b'\272H\007r\005\020\001\030\240\037' + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['expected_behavior']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['expected_behavior']._serialized_options = b'\272H\005r\003\030\240\037' + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['page_url']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['page_url']._serialized_options = b'\272H\005r\003\030\200\020' + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['app_version']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['app_version']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['browser']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['browser']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['viewport']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['viewport']._serialized_options = b'\272H\004r\002\030@' + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['screenshot_filename']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['screenshot_filename']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['screenshot_content_type']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['screenshot_content_type']._serialized_options = b'\272H\004r\002\030@' + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['screenshot']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['screenshot']._serialized_options = b'\272H\007z\005\030\200\200\300\002' + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST'].fields_by_name['description']._loaded_options = None + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST'].fields_by_name['description']._serialized_options = b'\272H\007r\005\020\001\030\240\037\200\364\030\004' + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST'].fields_by_name['expected_behavior']._loaded_options = None + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST'].fields_by_name['expected_behavior']._serialized_options = b'\272H\005r\003\030\240\037\200\364\030\004' + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST'].fields_by_name['app_version']._loaded_options = None + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST'].fields_by_name['app_version']._serialized_options = b'\272H\005r\003\030\200\001\200\364\030\001' + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\004\200\364\030\002' + _globals['_PRODUCTISSUEREPORTCONTEXT'].fields_by_name['reproduction_steps']._loaded_options = None + _globals['_PRODUCTISSUEREPORTCONTEXT'].fields_by_name['reproduction_steps']._serialized_options = b'\272H\005r\003\030\240\037\200\364\030\004' + _globals['_PRODUCTISSUEREPORTCONTEXT'].fields_by_name['model']._loaded_options = None + _globals['_PRODUCTISSUEREPORTCONTEXT'].fields_by_name['model']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\001' + _globals['_PRODUCTISSUEREPORTCONTEXT'].fields_by_name['evidence']._loaded_options = None + _globals['_PRODUCTISSUEREPORTCONTEXT'].fields_by_name['evidence']._serialized_options = b'\272H\005\222\001\002\020\n' + _globals['_PRODUCTISSUEREPORTEVIDENCE'].fields_by_name['kind']._loaded_options = None + _globals['_PRODUCTISSUEREPORTEVIDENCE'].fields_by_name['kind']._serialized_options = b'\272H\004r\002\030 \200\364\030\001' + _globals['_PRODUCTISSUEREPORTEVIDENCE'].fields_by_name['source_id']._loaded_options = None + _globals['_PRODUCTISSUEREPORTEVIDENCE'].fields_by_name['source_id']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\002' + _globals['_PRODUCTISSUEREPORTEVIDENCE'].fields_by_name['text']._loaded_options = None + _globals['_PRODUCTISSUEREPORTEVIDENCE'].fields_by_name['text']._serialized_options = b'\272H\005r\003\030\240\037\200\364\030\004' + _globals['_SUBMITPRODUCTISSUEREPORTRESPONSE'].fields_by_name['report']._loaded_options = None + _globals['_SUBMITPRODUCTISSUEREPORTRESPONSE'].fields_by_name['report']._serialized_options = b'\272H\003\310\001\001' + _globals['_STAFFPRODUCTISSUEREPORT'].fields_by_name['symptom_group']._loaded_options = None + _globals['_STAFFPRODUCTISSUEREPORT'].fields_by_name['symptom_group']._serialized_options = b'\200\364\030\002' + _globals['_STAFFPRODUCTISSUEREPORT'].fields_by_name['baseline_test_run_id']._loaded_options = None + _globals['_STAFFPRODUCTISSUEREPORT'].fields_by_name['baseline_test_run_id']._serialized_options = b'\200\364\030\002' + _globals['_STAFFPRODUCTISSUEREPORT'].fields_by_name['verification_test_run_id']._loaded_options = None + _globals['_STAFFPRODUCTISSUEREPORT'].fields_by_name['verification_test_run_id']._serialized_options = b'\200\364\030\002' + _globals['_STAFFPRODUCTISSUEREPORT'].fields_by_name['regression_state']._loaded_options = None + _globals['_STAFFPRODUCTISSUEREPORT'].fields_by_name['regression_state']._serialized_options = b'\200\364\030\001' + _globals['_LISTSTAFFPRODUCTISSUEREPORTSREQUEST'].fields_by_name['engagement_state']._loaded_options = None + _globals['_LISTSTAFFPRODUCTISSUEREPORTSREQUEST'].fields_by_name['engagement_state']._serialized_options = b'\272H\004r\002\030 ' + _globals['_LISTSTAFFPRODUCTISSUEREPORTSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTSTAFFPRODUCTISSUEREPORTSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\006*\004\030d(\001' + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['report_id']._loaded_options = None + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['report_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['note']._loaded_options = None + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['note']._serialized_options = b'\272H\007r\005\020\001\030\350\007' + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['baseline_test_run_id']._loaded_options = None + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['baseline_test_run_id']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\002' + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['verification_test_run_id']._loaded_options = None + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST'].fields_by_name['verification_test_run_id']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\002' + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTRESPONSE'].fields_by_name['report']._loaded_options = None + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTRESPONSE'].fields_by_name['report']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETOPERATINGFEEDBACKREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETOPERATINGFEEDBACKREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETOPERATINGFEEDBACKREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_GETOPERATINGFEEDBACKREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_GETOPERATINGFEEDBACKREQUEST'].fields_by_name['message_id']._loaded_options = None + _globals['_GETOPERATINGFEEDBACKREQUEST'].fields_by_name['message_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONREQUEST'].fields_by_name['feedback_id']._loaded_options = None + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONREQUEST'].fields_by_name['feedback_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONREQUEST'].fields_by_name['outcome']._loaded_options = None + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONREQUEST'].fields_by_name['outcome']._serialized_options = b'\272H\t\202\001\006\020\001\030\002\030\003' + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONRESPONSE'].fields_by_name['feedback']._loaded_options = None + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONRESPONSE'].fields_by_name['feedback']._serialized_options = b'\272H\003\310\001\001' + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['owner_type']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['owner_type']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['owner_id']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['owner_id']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['evidence_id']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['evidence_id']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['polarity']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['polarity']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['digest_sha256']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['digest_sha256']._serialized_options = b'\272H\005r\003\230\001@' + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['safe_label']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF'].fields_by_name['safe_label']._serialized_options = b'\272H\004r\002\030x' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['revision']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['subject_kind']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['subject_kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['subject_ref_hash']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['subject_ref_hash']._serialized_options = b'\272H\005r\003\230\001@' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['product_area']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['product_area']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['journey']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['journey']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['predicate']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['predicate']._serialized_options = b'\272H\006r\004\020\001\030x' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['safe_summary']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['safe_summary']._serialized_options = b'\272H\007r\005\020\001\030\230\002' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['authority']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['authority']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['lifecycle_state']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['lifecycle_state']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['confidence_micros']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['confidence_micros']._serialized_options = b'\272H\010\032\006\030\300\204=(\000' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['evidence_refs']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['evidence_refs']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['producer_kind']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['producer_kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['producer_ref']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['producer_ref']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['model_id']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['model_id']._serialized_options = b'\272H\005r\003\030\240\001' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['run_id']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['run_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['policy_version']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['policy_version']._serialized_options = b'\272H\004r\002\030P' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['lineage_id']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['lineage_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['sensitivity']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['sensitivity']._serialized_options = b'\272H\004r\002\030(' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['retention_class']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['retention_class']._serialized_options = b'\272H\004r\002\030(' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['content_fingerprint_sha256']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['content_fingerprint_sha256']._serialized_options = b'\272H\005r\003\230\001@' + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['actor_id']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACTREVISION'].fields_by_name['actor_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_CUSTOMERINTELLIGENCEFACT'].fields_by_name['current']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACT'].fields_by_name['current']._serialized_options = b'\272H\003\310\001\001' + _globals['_CUSTOMERINTELLIGENCEFACT'].fields_by_name['revisions']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEFACT'].fields_by_name['revisions']._serialized_options = b'\272H\005\222\001\002\020d' + _globals['_CUSTOMERINTELLIGENCERECEIPT'].fields_by_name['revision']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCERECEIPT'].fields_by_name['revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_CUSTOMERINTELLIGENCERECEIPT'].fields_by_name['authority']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCERECEIPT'].fields_by_name['authority']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_CUSTOMERINTELLIGENCERECEIPT'].fields_by_name['lifecycle_state']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCERECEIPT'].fields_by_name['lifecycle_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['authorities']._loaded_options = None + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['authorities']._serialized_options = b'\272H\005\222\001\002\020\006' + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['lifecycle_states']._loaded_options = None + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['lifecycle_states']._serialized_options = b'\272H\005\222\001\002\020\006' + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['subject_kind']._loaded_options = None + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['subject_kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['product_area']._loaded_options = None + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['product_area']._serialized_options = b'\272H\004r\002\030P' + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['journey']._loaded_options = None + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['journey']._serialized_options = b'\272H\004r\002\030P' + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\310\001(\000' + _globals['_GETCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['fact_id']._loaded_options = None + _globals['_GETCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['fact_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCUSTOMERINTELLIGENCEFACTRESPONSE'].fields_by_name['fact']._loaded_options = None + _globals['_GETCUSTOMERINTELLIGENCEFACTRESPONSE'].fields_by_name['fact']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['fact_id']._loaded_options = None + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['fact_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['expected_revision']._loaded_options = None + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['expected_revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['decision']._loaded_options = None + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['decision']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['evidence_refs']._loaded_options = None + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['evidence_refs']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['replacement_safe_summary']._loaded_options = None + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['replacement_safe_summary']._serialized_options = b'\272H\005r\003\030\230\002' + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTRESPONSE'].fields_by_name['fact']._loaded_options = None + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTRESPONSE'].fields_by_name['fact']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['external_fact_id']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['external_fact_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['subject_kind']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['subject_kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['subject_ref']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['subject_ref']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['product_area']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['product_area']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['journey']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['journey']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['predicate']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['predicate']._serialized_options = b'\272H\006r\004\020\001\030x' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['safe_summary']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['safe_summary']._serialized_options = b'\272H\007r\005\020\001\030\230\002' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['authority']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['authority']._serialized_options = b'\272H\t\202\001\006\020\001\030\001\030\004' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['confidence_micros']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['confidence_micros']._serialized_options = b'\272H\010\032\006\030\300\204=(\000' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['evidence_refs']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['evidence_refs']._serialized_options = b'\272H\007\222\001\004\010\001\020@' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['producer_kind']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['producer_kind']._serialized_options = b'\272H\t\202\001\006\020\001\030\001\030\002' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['producer_ref']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['producer_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['model_id']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['model_id']._serialized_options = b'\272H\005r\003\030\240\001' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['run_id']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['run_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['policy_version']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['policy_version']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['lineage_id']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['retention_class']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['retention_class']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTRESPONSE'].fields_by_name['fact']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTRESPONSE'].fields_by_name['fact']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONREQUEST'].fields_by_name['confirmation_intent_id']._loaded_options = None + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONREQUEST'].fields_by_name['confirmation_intent_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONREQUEST'].fields_by_name['response']._loaded_options = None + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONREQUEST'].fields_by_name['response']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST'].fields_by_name['product_area']._loaded_options = None + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST'].fields_by_name['product_area']._serialized_options = b'\272H\004r\002\030P' + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST'].fields_by_name['journey']._loaded_options = None + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST'].fields_by_name['journey']._serialized_options = b'\272H\004r\002\030P' + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST'].fields_by_name['authorities']._loaded_options = None + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST'].fields_by_name['authorities']._serialized_options = b'\272H\005\222\001\002\020\006' + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST'].fields_by_name['lifecycle_states']._loaded_options = None + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST'].fields_by_name['lifecycle_states']._serialized_options = b'\272H\005\222\001\002\020\006' + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST'].fields_by_name['minimum_organization_count']._loaded_options = None + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST'].fields_by_name['minimum_organization_count']._serialized_options = b'\272H\004\032\002(\005' + _globals['_CUSTOMERINTELLIGENCEPATTERN'].fields_by_name['organization_count']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEPATTERN'].fields_by_name['organization_count']._serialized_options = b'\272H\004\"\002(\005' + _globals['_CUSTOMERINTELLIGENCEPATTERN'].fields_by_name['fact_count']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEPATTERN'].fields_by_name['fact_count']._serialized_options = b'\272H\004\"\002(\005' + _globals['_CUSTOMERINTELLIGENCEPATTERN'].fields_by_name['average_confidence_micros']._loaded_options = None + _globals['_CUSTOMERINTELLIGENCEPATTERN'].fields_by_name['average_confidence_micros']._serialized_options = b'\272H\010\032\006\030\300\204=(\000' + _globals['_LISTOPERATINGCORRECTIONSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTOPERATINGCORRECTIONSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTOPERATINGCORRECTIONSREQUEST'].fields_by_name['review_state']._loaded_options = None + _globals['_LISTOPERATINGCORRECTIONSREQUEST'].fields_by_name['review_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_LISTOPERATINGCORRECTIONSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTOPERATINGCORRECTIONSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\310\001(\000' + _globals['_REVIEWOPERATINGCORRECTIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_REVIEWOPERATINGCORRECTIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVIEWOPERATINGCORRECTIONREQUEST'].fields_by_name['correction_id']._loaded_options = None + _globals['_REVIEWOPERATINGCORRECTIONREQUEST'].fields_by_name['correction_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_REVIEWOPERATINGCORRECTIONREQUEST'].fields_by_name['decision']._loaded_options = None + _globals['_REVIEWOPERATINGCORRECTIONREQUEST'].fields_by_name['decision']._serialized_options = b'\272H\t\202\001\006\020\001\030\002\030\003' + _globals['_REVIEWOPERATINGCORRECTIONREQUEST'].fields_by_name['evidence_refs']._loaded_options = None + _globals['_REVIEWOPERATINGCORRECTIONREQUEST'].fields_by_name['evidence_refs']._serialized_options = b'\272H\007\222\001\004\010\001\020@' + _globals['_REVIEWOPERATINGCORRECTIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_REVIEWOPERATINGCORRECTIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_REVIEWOPERATINGCORRECTIONRESPONSE'].fields_by_name['correction']._loaded_options = None + _globals['_REVIEWOPERATINGCORRECTIONRESPONSE'].fields_by_name['correction']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTWORKSPACEMEMORIESREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTWORKSPACEMEMORIESREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTWORKSPACEMEMORIESREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTWORKSPACEMEMORIESREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\006\032\004\030d(\000' + _globals['_LISTWORKSPACEMEMORIESREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTWORKSPACEMEMORIESREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTWORKSPACEMEMORIESRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTWORKSPACEMEMORIESRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_WORKSPACEMEMORY'].fields_by_name['id']._loaded_options = None + _globals['_WORKSPACEMEMORY'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_WORKSPACEMEMORY'].fields_by_name['content']._loaded_options = None + _globals['_WORKSPACEMEMORY'].fields_by_name['content']._serialized_options = b'\200\364\030\004' + _globals['_WORKSPACEMEMORY'].fields_by_name['tags']._loaded_options = None + _globals['_WORKSPACEMEMORY'].fields_by_name['tags']._serialized_options = b'\272H\005\222\001\002\020@\200\364\030\004' + _globals['_WORKSPACEMEMORY'].fields_by_name['revision']._loaded_options = None + _globals['_WORKSPACEMEMORY'].fields_by_name['revision']._serialized_options = b'\272H\004\"\002(\001' + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['memory_id']._loaded_options = None + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['memory_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['expected_revision']._loaded_options = None + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['expected_revision']._serialized_options = b'\272H\004\"\002(\001' + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['content']._loaded_options = None + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['content']._serialized_options = b'\272H\010r\006\020\001\030\240\234\001\200\364\030\004' + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['tags']._loaded_options = None + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['tags']._serialized_options = b'\272H\005\222\001\002\020@\200\364\030\004' + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CORRECTWORKSPACEMEMORYREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_CORRECTWORKSPACEMEMORYRESPONSE'].fields_by_name['memory']._loaded_options = None + _globals['_CORRECTWORKSPACEMEMORYRESPONSE'].fields_by_name['memory']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVIEWWORKSPACEMEMORYREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_REVIEWWORKSPACEMEMORYREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVIEWWORKSPACEMEMORYREQUEST'].fields_by_name['memory_id']._loaded_options = None + _globals['_REVIEWWORKSPACEMEMORYREQUEST'].fields_by_name['memory_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_REVIEWWORKSPACEMEMORYREQUEST'].fields_by_name['expected_revision']._loaded_options = None + _globals['_REVIEWWORKSPACEMEMORYREQUEST'].fields_by_name['expected_revision']._serialized_options = b'\272H\004\"\002(\001' + _globals['_REVIEWWORKSPACEMEMORYREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_REVIEWWORKSPACEMEMORYREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_REVIEWWORKSPACEMEMORYREQUEST'].fields_by_name['review_status']._loaded_options = None + _globals['_REVIEWWORKSPACEMEMORYREQUEST'].fields_by_name['review_status']._serialized_options = b'\272H\007\202\001\004\030\001\030\003' + _globals['_REVIEWWORKSPACEMEMORYRESPONSE'].fields_by_name['memory']._loaded_options = None + _globals['_REVIEWWORKSPACEMEMORYRESPONSE'].fields_by_name['memory']._serialized_options = b'\272H\003\310\001\001' + _globals['_FORGETWORKSPACEMEMORYREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_FORGETWORKSPACEMEMORYREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_FORGETWORKSPACEMEMORYREQUEST'].fields_by_name['memory_id']._loaded_options = None + _globals['_FORGETWORKSPACEMEMORYREQUEST'].fields_by_name['memory_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_FORGETWORKSPACEMEMORYREQUEST'].fields_by_name['expected_revision']._loaded_options = None + _globals['_FORGETWORKSPACEMEMORYREQUEST'].fields_by_name['expected_revision']._serialized_options = b'\272H\004\"\002(\001' + _globals['_FORGETWORKSPACEMEMORYREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_FORGETWORKSPACEMEMORYREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_FORGETWORKSPACEMEMORYRESPONSE'].fields_by_name['memory_id']._loaded_options = None + _globals['_FORGETWORKSPACEMEMORYRESPONSE'].fields_by_name['memory_id']._serialized_options = b'\200\364\030\002' + _globals['_SEARCHOPERATINGHISTORYREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SEARCHOPERATINGHISTORYREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SEARCHOPERATINGHISTORYREQUEST'].fields_by_name['search_query']._loaded_options = None + _globals['_SEARCHOPERATINGHISTORYREQUEST'].fields_by_name['search_query']._serialized_options = b'\272H\007r\005\020\001\030\350\007\200\364\030\004' + _globals['_SEARCHOPERATINGHISTORYREQUEST'].fields_by_name['page_size']._loaded_options = None + _globals['_SEARCHOPERATINGHISTORYREQUEST'].fields_by_name['page_size']._serialized_options = b'\272H\006\032\004\030\031(\000' + _globals['_SEARCHOPERATINGHISTORYREQUEST'].fields_by_name['page_token']._loaded_options = None + _globals['_SEARCHOPERATINGHISTORYREQUEST'].fields_by_name['page_token']._serialized_options = b'\272H\005r\003\030\200 \200\364\030\002' + _globals['_GETOPERATINGHISTORYCONTEXTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETOPERATINGHISTORYCONTEXTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETOPERATINGHISTORYCONTEXTREQUEST'].fields_by_name['context_cursor']._loaded_options = None + _globals['_GETOPERATINGHISTORYCONTEXTREQUEST'].fields_by_name['context_cursor']._serialized_options = b'\272H\007r\005\020\001\030\200 \200\364\030\002' + _globals['_GETOPERATINGHISTORYCONTEXTREQUEST'].fields_by_name['before_count']._loaded_options = None + _globals['_GETOPERATINGHISTORYCONTEXTREQUEST'].fields_by_name['before_count']._serialized_options = b'\272H\006\032\004\030\024(\000' + _globals['_GETOPERATINGHISTORYCONTEXTREQUEST'].fields_by_name['after_count']._loaded_options = None + _globals['_GETOPERATINGHISTORYCONTEXTREQUEST'].fields_by_name['after_count']._serialized_options = b'\272H\006\032\004\030\024(\000' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['schema_version']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['schema_version']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['organization_id']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['workspace_id']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['application_id']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['application_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['subject_id']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['subject_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['actor_chain_digest']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['actor_chain_digest']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['decision_id']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['decision_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['authorization_lineage_id']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['authorization_lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['policy_id']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['policy_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['policy_version']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['policy_version']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['policy_digest']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['policy_digest']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['authorization_fingerprint']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['authorization_fingerprint']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['capability_digest']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['capability_digest']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['action_digest']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['action_digest']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['audience']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['audience']._serialized_options = b'\272H\004r\002\020\001' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['issued_at_ms']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['issued_at_ms']._serialized_options = b'\272H\004\"\002 \000' + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['expires_at_ms']._loaded_options = None + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE'].fields_by_name['expires_at_ms']._serialized_options = b'\272H\004\"\002 \000' + _globals['_OPERATINGEXECUTIONPROFILE'].fields_by_name['kind']._loaded_options = None + _globals['_OPERATINGEXECUTIONPROFILE'].fields_by_name['kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_OPERATINGEXECUTIONPROFILE'].fields_by_name['profile_id']._loaded_options = None + _globals['_OPERATINGEXECUTIONPROFILE'].fields_by_name['profile_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGEXECUTIONPROFILE'].fields_by_name['front_model']._loaded_options = None + _globals['_OPERATINGEXECUTIONPROFILE'].fields_by_name['front_model']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGEXECUTIONPROFILE'].fields_by_name['front_provider']._loaded_options = None + _globals['_OPERATINGEXECUTIONPROFILE'].fields_by_name['front_provider']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGHOSTEDFRONTDECISION'].fields_by_name['kind']._loaded_options = None + _globals['_OPERATINGHOSTEDFRONTDECISION'].fields_by_name['kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_OPERATINGHOSTEDFRONTDECISION'].fields_by_name['assistant_body']._loaded_options = None + _globals['_OPERATINGHOSTEDFRONTDECISION'].fields_by_name['assistant_body']._serialized_options = b'\272H\007r\005\020\001\030\200 ' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['execution_id']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['execution_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['call_id']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['call_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['tool_name']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['tool_name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['state']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['state']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['receipt_id']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['receipt_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['safe_summary']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['safe_summary']._serialized_options = b'\272H\005r\003\030\200 ' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['evidence_refs']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['evidence_refs']._serialized_options = b'\272H\005\222\001\002\020 ' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['thread_id']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['thread_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['turn_id']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['turn_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['authority_revision']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['authority_revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['accepted_at']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['accepted_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['assistant_delta']._loaded_options = None + _globals['_OPERATINGINITIALACTIONRESULT'].fields_by_name['assistant_delta']._serialized_options = b'\272H\007r\005\020\001\030\200 ' + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE'].fields_by_name['provider']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE'].fields_by_name['provider']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE'].fields_by_name['environment']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE'].fields_by_name['environment']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE'].fields_by_name['credential_name']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE'].fields_by_name['credential_name']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE'].fields_by_name['team_id']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE'].fields_by_name['team_id']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE'].fields_by_name['model']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE'].fields_by_name['model']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGMANAGEDINFERENCEOUTPUTTOKENBUDGET'].fields_by_name['origin']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCEOUTPUTTOKENBUDGET'].fields_by_name['origin']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_OPERATINGMANAGEDINFERENCEOUTPUTTOKENBUDGET'].fields_by_name['origin_reference']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCEOUTPUTTOKENBUDGET'].fields_by_name['origin_reference']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_OPERATINGMANAGEDINFERENCESCOPE'].fields_by_name['endpoint']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCESCOPE'].fields_by_name['endpoint']._serialized_options = b'\272H\rr\013\n\tresponses' + _globals['_OPERATINGMANAGEDINFERENCESCOPE'].fields_by_name['model']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCESCOPE'].fields_by_name['model']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGMANAGEDINFERENCESCOPE'].fields_by_name['provider_candidates']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCESCOPE'].fields_by_name['provider_candidates']._serialized_options = b'\272H\007\222\001\004\010\001\020\020' + _globals['_OPERATINGMANAGEDINFERENCESCOPE'].fields_by_name['routing']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCESCOPE'].fields_by_name['routing']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_OPERATINGMANAGEDINFERENCESCOPE'].fields_by_name['output_token_budget']._loaded_options = None + _globals['_OPERATINGMANAGEDINFERENCESCOPE'].fields_by_name['output_token_budget']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['runtime_run_id']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['runtime_run_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['work_id']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['work_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['operation_id']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['operation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['organization_id']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['workspace_id']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['channel_id']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['submitted_message_id']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['submitted_message_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['enqueued_at']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['enqueued_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['causal_receipt_id']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['causal_receipt_id']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['required_initial_tool']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['required_initial_tool']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['required_initial_tool_authority_revision']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['required_initial_tool_authority_revision']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['approved_plan_version']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['approved_plan_version']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['approved_plan_content_hash']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['approved_plan_content_hash']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['objective_id']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['objective_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['actor_id']._loaded_options = None + _globals['_OPERATINGRUNDISPATCH'].fields_by_name['actor_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['actor_id']._loaded_options = None + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['actor_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['task_id']._loaded_options = None + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['task_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['home_key']._loaded_options = None + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['home_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['workspace_dir']._loaded_options = None + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['workspace_dir']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['retention_days']._loaded_options = None + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['retention_days']._serialized_options = b'\272H\010\032\0060\0000\0070\036' + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['policy_revision']._loaded_options = None + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['policy_revision']._serialized_options = b'\272H\0042\002(\001' + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['channel_id']._loaded_options = None + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['retention_hours']._loaded_options = None + _globals['_OPERATINGTASKENVIRONMENTBINDING'].fields_by_name['retention_hours']._serialized_options = b'\272H\014\032\n0\0000\0100\250\0010\320\005' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT_METADATAENTRY']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT_METADATAENTRY']._serialized_options = b'8\001' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['call_id']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['call_id']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['tool_name']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['tool_name']._serialized_options = b'\272H\027r\025\n\023computer.write_file' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['arguments']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['arguments']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['actor_id']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['actor_id']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['tool_idempotency_key']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['tool_idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['sandbox_session_id']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['sandbox_session_id']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['computer_home_key']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['computer_home_key']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['computer_workspace_dir']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['computer_workspace_dir']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['capability']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['capability']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['operation']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['operation']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['risk_level']._loaded_options = None + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT'].fields_by_name['risk_level']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_RESOLVEOPERATINGRECEIPTACTIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_RESOLVEOPERATINGRECEIPTACTIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_RESOLVEOPERATINGRECEIPTACTIONREQUEST'].fields_by_name['receipt_id']._loaded_options = None + _globals['_RESOLVEOPERATINGRECEIPTACTIONREQUEST'].fields_by_name['receipt_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESOLVEOPERATINGRECEIPTACTIONREQUEST'].fields_by_name['action']._loaded_options = None + _globals['_RESOLVEOPERATINGRECEIPTACTIONREQUEST'].fields_by_name['action']._serialized_options = b'\272H\003\310\001\001' + _globals['_RESOLVEOPERATINGRECEIPTACTIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_RESOLVEOPERATINGRECEIPTACTIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\200\364\030\002' + _globals['_GETOPERATINGRECEIPTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETOPERATINGRECEIPTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETOPERATINGRECEIPTREQUEST'].fields_by_name['receipt_id']._loaded_options = None + _globals['_GETOPERATINGRECEIPTREQUEST'].fields_by_name['receipt_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_GETOPERATINGRECEIPTREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_GETOPERATINGRECEIPTREQUEST'].fields_by_name['channel_id']._serialized_options = b'\200\364\030\002' + _globals['_COMPUTERMISSIONEVIDENCEGATE'].fields_by_name['gate_id']._loaded_options = None + _globals['_COMPUTERMISSIONEVIDENCEGATE'].fields_by_name['gate_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONEVIDENCEGATE'].fields_by_name['predicate']._loaded_options = None + _globals['_COMPUTERMISSIONEVIDENCEGATE'].fields_by_name['predicate']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONROLLBACKARGUMENTBINDING'].fields_by_name['argument']._loaded_options = None + _globals['_COMPUTERMISSIONROLLBACKARGUMENTBINDING'].fields_by_name['argument']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONROLLBACKARGUMENTBINDING'].fields_by_name['source']._loaded_options = None + _globals['_COMPUTERMISSIONROLLBACKARGUMENTBINDING'].fields_by_name['source']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_COMPUTERMISSIONROLLBACKARGUMENTBINDING'].fields_by_name['source_path']._loaded_options = None + _globals['_COMPUTERMISSIONROLLBACKARGUMENTBINDING'].fields_by_name['source_path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['forward_capability']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['forward_capability']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['forward_resource_id']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['forward_resource_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['forward_arguments_digest']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['forward_arguments_digest']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_capability']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_capability']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_arguments']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_arguments']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_verification_predicate']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_verification_predicate']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['max_rollback_attempts']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['max_rollback_attempts']._serialized_options = b'\272H\004*\002 \000' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_deadline_seconds']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_deadline_seconds']._serialized_options = b'\272H\0042\002 \000' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['forward_evidence_predicate']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['forward_evidence_predicate']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['cleanup_evidence_predicate']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['cleanup_evidence_predicate']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_resource_id']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_resource_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_argument_bindings']._loaded_options = None + _globals['_COMPUTERMISSIONCOMPENSATINGACTION'].fields_by_name['rollback_argument_bindings']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONCANARYTHRESHOLD'].fields_by_name['dimension']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYTHRESHOLD'].fields_by_name['dimension']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_COMPUTERMISSIONCANARYTHRESHOLD'].fields_by_name['minimum_score']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYTHRESHOLD'].fields_by_name['minimum_score']._serialized_options = b'\272H\024\022\022\031\000\000\000\000\000\000Y@)\000\000\000\000\000\000\000\000' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['definition_id']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['definition_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['version']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['version']._serialized_options = b'\272H\004*\002 \000' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['scenario_kind']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['scenario_kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['objective']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['objective']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['enabled_environments']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['enabled_environments']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['fixture_resource_ids']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['fixture_resource_ids']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['required_canary_tags']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['required_canary_tags']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['required_capabilities']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['required_capabilities']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['runner_profile']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['runner_profile']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['authority_mode']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['authority_mode']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['maximum_grant_duration_seconds']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['maximum_grant_duration_seconds']._serialized_options = b'\272H\0042\002 \000' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['budget']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['budget']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['required_evidence_gates']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['required_evidence_gates']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['expected_forward_effects']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['expected_forward_effects']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['required_compensating_effects']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['required_compensating_effects']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['thresholds']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['thresholds']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['hard_safety_gates']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['hard_safety_gates']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['planner_version']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['planner_version']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['runtime_version']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['runtime_version']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['tool_contract_version']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDEFINITION'].fields_by_name['tool_contract_version']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYOPERATORACTION'].fields_by_name['action_id']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYOPERATORACTION'].fields_by_name['action_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYOPERATORACTION'].fields_by_name['kind']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYOPERATORACTION'].fields_by_name['kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_COMPUTERMISSIONCANARYOPERATORACTION'].fields_by_name['actor_id']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYOPERATORACTION'].fields_by_name['actor_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYOPERATORACTION'].fields_by_name['reason']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYOPERATORACTION'].fields_by_name['reason']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYOPERATORACTION'].fields_by_name['occurred_at']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYOPERATORACTION'].fields_by_name['occurred_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONBUDGET'].fields_by_name['max_steps']._loaded_options = None + _globals['_COMPUTERMISSIONBUDGET'].fields_by_name['max_steps']._serialized_options = b'\272H\004*\002 \000' + _globals['_COMPUTERMISSIONBUDGET'].fields_by_name['wall_clock_budget_seconds']._loaded_options = None + _globals['_COMPUTERMISSIONBUDGET'].fields_by_name['wall_clock_budget_seconds']._serialized_options = b'\272H\0042\002 \000' + _globals['_COMPUTERMISSIONBUDGET'].fields_by_name['token_budget']._loaded_options = None + _globals['_COMPUTERMISSIONBUDGET'].fields_by_name['token_budget']._serialized_options = b'\272H\0042\002 \000' + _globals['_COMPUTERMISSIONBUDGET'].fields_by_name['max_tool_calls']._loaded_options = None + _globals['_COMPUTERMISSIONBUDGET'].fields_by_name['max_tool_calls']._serialized_options = b'\272H\004*\002 \000' + _globals['_COMPUTERMISSIONBUDGET'].fields_by_name['max_cost_micros']._loaded_options = None + _globals['_COMPUTERMISSIONBUDGET'].fields_by_name['max_cost_micros']._serialized_options = b'\272H\0042\002 \000' + _globals['_COMPUTERMISSIONCAPABILITY'].fields_by_name['name']._loaded_options = None + _globals['_COMPUTERMISSIONCAPABILITY'].fields_by_name['name']._serialized_options = b'\272H\030r\0262\024^apex\\.[a-z0-9_.-]+$' + _globals['_COMPUTERMISSIONCAPABILITY'].fields_by_name['input_schema']._loaded_options = None + _globals['_COMPUTERMISSIONCAPABILITY'].fields_by_name['input_schema']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONCAPABILITY'].fields_by_name['observer_name']._loaded_options = None + _globals['_COMPUTERMISSIONCAPABILITY'].fields_by_name['observer_name']._serialized_options = b'\272H\030r\0262\024^apex\\.[a-z0-9_.-]+$' + _globals['_COMPUTERMISSIONCAPABILITY'].fields_by_name['schema_digest_sha256']._loaded_options = None + _globals['_COMPUTERMISSIONCAPABILITY'].fields_by_name['schema_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_COMPUTERMISSIONCAPABILITY'].fields_by_name['dispatch_name']._loaded_options = None + _globals['_COMPUTERMISSIONCAPABILITY'].fields_by_name['dispatch_name']._serialized_options = b'\272H\022r\0202\016^[a-z0-9_.-]+$' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['organization_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['workspace_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['runner_session_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['runner_session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['sandbox_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['sandbox_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['initial_checkpoint_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['initial_checkpoint_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['initial_snapshot_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['initial_snapshot_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['workload_digest']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['workload_digest']._serialized_options = b'\272H\031r\0272\025^sha256:[0-9a-f]{64}$' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['provider']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['provider']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['provider_mode']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['provider_mode']._serialized_options = b'\272H\tr\007\n\005apply' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['reservation_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['reservation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['instruction_artifact_ref']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['instruction_artifact_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['instruction_digest_sha256']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['instruction_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['instruction_byte_count']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING'].fields_by_name['instruction_byte_count']._serialized_options = b'\272H\0102\006\030\200\200@(\001' + _globals['_COMPUTERMISSIONSCOPE'].fields_by_name['organization_id']._loaded_options = None + _globals['_COMPUTERMISSIONSCOPE'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONSCOPE'].fields_by_name['workspace_id']._loaded_options = None + _globals['_COMPUTERMISSIONSCOPE'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONSCOPE'].fields_by_name['resource_ids']._loaded_options = None + _globals['_COMPUTERMISSIONSCOPE'].fields_by_name['resource_ids']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONSCOPE'].fields_by_name['capabilities']._loaded_options = None + _globals['_COMPUTERMISSIONSCOPE'].fields_by_name['capabilities']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_COMPUTERMISSIONAUTHORITYGRANT'].fields_by_name['mode']._loaded_options = None + _globals['_COMPUTERMISSIONAUTHORITYGRANT'].fields_by_name['mode']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_COMPUTERMISSIONAUTHORITYGRANT'].fields_by_name['granted_by']._loaded_options = None + _globals['_COMPUTERMISSIONAUTHORITYGRANT'].fields_by_name['granted_by']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAUTHORITYGRANT'].fields_by_name['granted_at']._loaded_options = None + _globals['_COMPUTERMISSIONAUTHORITYGRANT'].fields_by_name['granted_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONAUTHORITYGRANT'].fields_by_name['confirmation_version']._loaded_options = None + _globals['_COMPUTERMISSIONAUTHORITYGRANT'].fields_by_name['confirmation_version']._serialized_options = b'\272H)r\'\n%dex.mission_authority_confirmation.v1' + _globals['_COMPUTERMISSIONDECISION'].fields_by_name['policy_version']._loaded_options = None + _globals['_COMPUTERMISSIONDECISION'].fields_by_name['policy_version']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONDECISION'].fields_by_name['route']._loaded_options = None + _globals['_COMPUTERMISSIONDECISION'].fields_by_name['route']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_COMPUTERMISSIONDECISION'].fields_by_name['decision_ref']._loaded_options = None + _globals['_COMPUTERMISSIONDECISION'].fields_by_name['decision_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONDECISION'].fields_by_name['decision_digest_sha256']._loaded_options = None + _globals['_COMPUTERMISSIONDECISION'].fields_by_name['decision_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['goal']._loaded_options = None + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['goal']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['scope']._loaded_options = None + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['authority']._loaded_options = None + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['authority']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['budget']._loaded_options = None + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['budget']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['runner_profile']._loaded_options = None + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['runner_profile']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['decision']._loaded_options = None + _globals['_COMPUTERMISSIONCONTRACT'].fields_by_name['decision']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONCONTRACT']._loaded_options = None + _globals['_COMPUTERMISSIONCONTRACT']._serialized_options = b'\272H\311\001\032\306\001\n-console.v1.computer_mission.required_evidence\022Lrequired_evidence must be non-empty unless an APEX runner binding is present\032Gsize(this.required_evidence) > 0 || has(this.scope.apex_runner_binding)' + _globals['_COMPUTERMISSION'].fields_by_name['mission_id']._loaded_options = None + _globals['_COMPUTERMISSION'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSION'].fields_by_name['work_id']._loaded_options = None + _globals['_COMPUTERMISSION'].fields_by_name['work_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSION'].fields_by_name['contract']._loaded_options = None + _globals['_COMPUTERMISSION'].fields_by_name['contract']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSION'].fields_by_name['state']._loaded_options = None + _globals['_COMPUTERMISSION'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_COMPUTERMISSION'].fields_by_name['created_at']._loaded_options = None + _globals['_COMPUTERMISSION'].fields_by_name['created_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSION'].fields_by_name['updated_at']._loaded_options = None + _globals['_COMPUTERMISSION'].fields_by_name['updated_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSION'].fields_by_name['tenant_scope_id']._loaded_options = None + _globals['_COMPUTERMISSION'].fields_by_name['tenant_scope_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSION'].fields_by_name['authority_grant_id']._loaded_options = None + _globals['_COMPUTERMISSION'].fields_by_name['authority_grant_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSION'].fields_by_name['contract_version']._loaded_options = None + _globals['_COMPUTERMISSION'].fields_by_name['contract_version']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSION'].fields_by_name['contract_digest_sha256']._loaded_options = None + _globals['_COMPUTERMISSION'].fields_by_name['contract_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_COMPUTERMISSIONLONGHORIZONBUDGETSTATE'].fields_by_name['deadline_at']._loaded_options = None + _globals['_COMPUTERMISSIONLONGHORIZONBUDGETSTATE'].fields_by_name['deadline_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITCOMPUTERMISSIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SUBMITCOMPUTERMISSIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITCOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_SUBMITCOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITCOMPUTERMISSIONREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_SUBMITCOMPUTERMISSIONREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITCOMPUTERMISSIONREQUEST'].fields_by_name['contract']._loaded_options = None + _globals['_SUBMITCOMPUTERMISSIONREQUEST'].fields_by_name['contract']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITCOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SUBMITCOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITCOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._loaded_options = None + _globals['_SUBMITCOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITCOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_SUBMITCOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETCOMPUTERMISSIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETCOMPUTERMISSIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETCOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETCOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._loaded_options = None + _globals['_GETCOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._loaded_options = None + _globals['_GETCOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETCOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_GETCOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_CANCELCOMPUTERMISSIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_CANCELCOMPUTERMISSIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CANCELCOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_CANCELCOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CANCELCOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._loaded_options = None + _globals['_CANCELCOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CANCELCOMPUTERMISSIONREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_CANCELCOMPUTERMISSIONREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CANCELCOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CANCELCOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CANCELCOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._loaded_options = None + _globals['_CANCELCOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._serialized_options = b'\272H\003\310\001\001' + _globals['_CANCELCOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_CANCELCOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_CONTINUECOMPUTERMISSIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_CONTINUECOMPUTERMISSIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CONTINUECOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_CONTINUECOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONTINUECOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._loaded_options = None + _globals['_CONTINUECOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONTINUECOMPUTERMISSIONREQUEST'].fields_by_name['answer']._loaded_options = None + _globals['_CONTINUECOMPUTERMISSIONREQUEST'].fields_by_name['answer']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONTINUECOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CONTINUECOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONTINUECOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._loaded_options = None + _globals['_CONTINUECOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._serialized_options = b'\272H\003\310\001\001' + _globals['_CONTINUECOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_CONTINUECOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._loaded_options = None + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['expected_generation']._loaded_options = None + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['expected_generation']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_PAUSECOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PAUSECOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._loaded_options = None + _globals['_PAUSECOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._serialized_options = b'\272H\003\310\001\001' + _globals['_PAUSECOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_PAUSECOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_PAUSECOMPUTERMISSIONRESPONSE'].fields_by_name['wake_id']._loaded_options = None + _globals['_PAUSECOMPUTERMISSIONRESPONSE'].fields_by_name['wake_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._loaded_options = None + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['expected_generation']._loaded_options = None + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['expected_generation']._serialized_options = b'\272H\004\"\002(\000' + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_RESUMECOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESUMECOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._loaded_options = None + _globals['_RESUMECOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._serialized_options = b'\272H\003\310\001\001' + _globals['_RESUMECOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_RESUMECOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_RESUMECOMPUTERMISSIONRESPONSE'].fields_by_name['wake_id']._loaded_options = None + _globals['_RESUMECOMPUTERMISSIONRESPONSE'].fields_by_name['wake_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._loaded_options = None + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['expected_generation']._loaded_options = None + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['expected_generation']._serialized_options = b'\272H\004\"\002(\000' + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\004r\002\020\001' + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_WAKECOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_WAKECOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._loaded_options = None + _globals['_WAKECOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._serialized_options = b'\272H\003\310\001\001' + _globals['_WAKECOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_WAKECOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_WAKECOMPUTERMISSIONRESPONSE'].fields_by_name['wake_id']._loaded_options = None + _globals['_WAKECOMPUTERMISSIONRESPONSE'].fields_by_name['wake_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._loaded_options = None + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['expected_generation']._loaded_options = None + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['expected_generation']._serialized_options = b'\272H\004\"\002(\000' + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['guidance']._loaded_options = None + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['guidance']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_GUIDECOMPUTERMISSIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GUIDECOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._loaded_options = None + _globals['_GUIDECOMPUTERMISSIONRESPONSE'].fields_by_name['mission']._serialized_options = b'\272H\003\310\001\001' + _globals['_GUIDECOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_GUIDECOMPUTERMISSIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_GUIDECOMPUTERMISSIONRESPONSE'].fields_by_name['wake_id']._loaded_options = None + _globals['_GUIDECOMPUTERMISSIONRESPONSE'].fields_by_name['wake_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['canary_run_id']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['canary_run_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['canary_definition_id']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['canary_definition_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['mission_id']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['state']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['state']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['scope']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['budget']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['budget']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['grant_expires_at']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['grant_expires_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['recommendation']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYRUN'].fields_by_name['recommendation']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_COMPUTERMISSIONCANARYEFFECT'].fields_by_name['effect_id']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYEFFECT'].fields_by_name['effect_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYEFFECT'].fields_by_name['state']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYEFFECT'].fields_by_name['state']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_COMPUTERMISSIONCANARYEFFECT'].fields_by_name['capability']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYEFFECT'].fields_by_name['capability']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYEFFECT'].fields_by_name['resource_id']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYEFFECT'].fields_by_name['resource_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYDIMENSIONRESULT'].fields_by_name['dimension']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDIMENSIONRESULT'].fields_by_name['dimension']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_COMPUTERMISSIONCANARYDIMENSIONRESULT'].fields_by_name['score']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYDIMENSIONRESULT'].fields_by_name['score']._serialized_options = b'\272H\024\022\022\031\000\000\000\000\000\000Y@)\000\000\000\000\000\000\000\000' + _globals['_COMPUTERMISSIONCANARYHARDGATERESULT'].fields_by_name['gate_id']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYHARDGATERESULT'].fields_by_name['gate_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYEVALUATION'].fields_by_name['evaluation_id']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYEVALUATION'].fields_by_name['evaluation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYEVALUATION'].fields_by_name['evaluator_version']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYEVALUATION'].fields_by_name['evaluator_version']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONCANARYEVALUATION'].fields_by_name['recommendation']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYEVALUATION'].fields_by_name['recommendation']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_COMPUTERMISSIONCANARYEVALUATION'].fields_by_name['aggregate_score']._loaded_options = None + _globals['_COMPUTERMISSIONCANARYEVALUATION'].fields_by_name['aggregate_score']._serialized_options = b'\272H\024\022\022\031\000\000\000\000\000\000Y@)\000\000\000\000\000\000\000\000' + _globals['_LISTCOMPUTERMISSIONCANARYDEFINITIONSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTCOMPUTERMISSIONCANARYDEFINITIONSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCOMPUTERMISSIONCANARYDEFINITIONSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTCOMPUTERMISSIONCANARYDEFINITIONSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['canary_definition_id']._loaded_options = None + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['canary_definition_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['environment']._loaded_options = None + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['environment']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STARTCOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['run']._loaded_options = None + _globals['_STARTCOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['run']._serialized_options = b'\272H\003\310\001\001' + _globals['_STARTCOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['mission']._loaded_options = None + _globals['_STARTCOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['mission']._serialized_options = b'\272H\003\310\001\001' + _globals['_STARTCOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_STARTCOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['canary_run_id']._loaded_options = None + _globals['_GETCOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['canary_run_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['run']._loaded_options = None + _globals['_GETCOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['run']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCOMPUTERMISSIONCANARYRUNSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTCOMPUTERMISSIONCANARYRUNSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCOMPUTERMISSIONCANARYRUNSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTCOMPUTERMISSIONCANARYRUNSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCOMPUTERMISSIONCANARYEVIDENCEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETCOMPUTERMISSIONCANARYEVIDENCEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETCOMPUTERMISSIONCANARYEVIDENCEREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETCOMPUTERMISSIONCANARYEVIDENCEREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCOMPUTERMISSIONCANARYEVIDENCEREQUEST'].fields_by_name['canary_run_id']._loaded_options = None + _globals['_GETCOMPUTERMISSIONCANARYEVIDENCEREQUEST'].fields_by_name['canary_run_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['canary_run_id']._loaded_options = None + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['canary_run_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['kind']._loaded_options = None + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATECOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['run']._loaded_options = None + _globals['_OPERATECOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['run']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATECOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['action']._loaded_options = None + _globals['_OPERATECOMPUTERMISSIONCANARYRUNRESPONSE'].fields_by_name['action']._serialized_options = b'\272H\003\310\001\001' + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['goal']._loaded_options = None + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['goal']._serialized_options = b'\272H\004r\002\020\001' + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['runner_profile']._loaded_options = None + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['runner_profile']._serialized_options = b'\272H\004r\002\020\001' + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['channel_id']._loaded_options = None + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['authority_mode']._loaded_options = None + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['authority_mode']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['capabilities']._loaded_options = None + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['capabilities']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['resource_ids']._loaded_options = None + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['resource_ids']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['required_evidence']._loaded_options = None + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['required_evidence']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['budget']._loaded_options = None + _globals['_MISSIONSCHEDULETEMPLATE'].fields_by_name['budget']._serialized_options = b'\272H\003\310\001\001' + _globals['_MISSIONSCHEDULE'].fields_by_name['schedule_id']._loaded_options = None + _globals['_MISSIONSCHEDULE'].fields_by_name['schedule_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_MISSIONSCHEDULE'].fields_by_name['organization_id']._loaded_options = None + _globals['_MISSIONSCHEDULE'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_MISSIONSCHEDULE'].fields_by_name['workspace_id']._loaded_options = None + _globals['_MISSIONSCHEDULE'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_MISSIONSCHEDULE'].fields_by_name['name']._loaded_options = None + _globals['_MISSIONSCHEDULE'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_MISSIONSCHEDULE'].fields_by_name['cron_expression']._loaded_options = None + _globals['_MISSIONSCHEDULE'].fields_by_name['cron_expression']._serialized_options = b'\272H\004r\002\020\001' + _globals['_MISSIONSCHEDULE'].fields_by_name['template']._loaded_options = None + _globals['_MISSIONSCHEDULE'].fields_by_name['template']._serialized_options = b'\272H\003\310\001\001' + _globals['_MISSIONSCHEDULE'].fields_by_name['next_run_at']._loaded_options = None + _globals['_MISSIONSCHEDULE'].fields_by_name['next_run_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_MISSIONSCHEDULE'].fields_by_name['created_at']._loaded_options = None + _globals['_MISSIONSCHEDULE'].fields_by_name['created_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_MISSIONSCHEDULE'].fields_by_name['updated_at']._loaded_options = None + _globals['_MISSIONSCHEDULE'].fields_by_name['updated_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['cron_expression']._loaded_options = None + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['cron_expression']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['template']._loaded_options = None + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['template']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CREATEMISSIONSCHEDULEREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEMISSIONSCHEDULERESPONSE'].fields_by_name['schedule']._loaded_options = None + _globals['_CREATEMISSIONSCHEDULERESPONSE'].fields_by_name['schedule']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['schedule_id']._loaded_options = None + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['schedule_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['cron_expression']._loaded_options = None + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['cron_expression']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['template']._loaded_options = None + _globals['_UPDATEMISSIONSCHEDULEREQUEST'].fields_by_name['template']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEMISSIONSCHEDULERESPONSE'].fields_by_name['schedule']._loaded_options = None + _globals['_UPDATEMISSIONSCHEDULERESPONSE'].fields_by_name['schedule']._serialized_options = b'\272H\003\310\001\001' + _globals['_SETMISSIONSCHEDULEENABLEDREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SETMISSIONSCHEDULEENABLEDREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SETMISSIONSCHEDULEENABLEDREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_SETMISSIONSCHEDULEENABLEDREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETMISSIONSCHEDULEENABLEDREQUEST'].fields_by_name['schedule_id']._loaded_options = None + _globals['_SETMISSIONSCHEDULEENABLEDREQUEST'].fields_by_name['schedule_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETMISSIONSCHEDULEENABLEDRESPONSE'].fields_by_name['schedule']._loaded_options = None + _globals['_SETMISSIONSCHEDULEENABLEDRESPONSE'].fields_by_name['schedule']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTMISSIONSCHEDULESREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTMISSIONSCHEDULESREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTMISSIONSCHEDULESREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTMISSIONSCHEDULESREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTMISSIONSCHEDULESRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTMISSIONSCHEDULESRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_CONNECTORTRIGGER'].fields_by_name['trigger_id']._loaded_options = None + _globals['_CONNECTORTRIGGER'].fields_by_name['trigger_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORTRIGGER'].fields_by_name['organization_id']._loaded_options = None + _globals['_CONNECTORTRIGGER'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORTRIGGER'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CONNECTORTRIGGER'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORTRIGGER'].fields_by_name['name']._loaded_options = None + _globals['_CONNECTORTRIGGER'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORTRIGGER'].fields_by_name['source']._loaded_options = None + _globals['_CONNECTORTRIGGER'].fields_by_name['source']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CONNECTORTRIGGER'].fields_by_name['template']._loaded_options = None + _globals['_CONNECTORTRIGGER'].fields_by_name['template']._serialized_options = b'\272H\003\310\001\001' + _globals['_CONNECTORTRIGGER'].fields_by_name['created_at']._loaded_options = None + _globals['_CONNECTORTRIGGER'].fields_by_name['created_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_CONNECTORTRIGGER'].fields_by_name['updated_at']._loaded_options = None + _globals['_CONNECTORTRIGGER'].fields_by_name['updated_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['source']._loaded_options = None + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['source']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['template']._loaded_options = None + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['template']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CREATECONNECTORTRIGGERREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECONNECTORTRIGGERRESPONSE'].fields_by_name['trigger']._loaded_options = None + _globals['_CREATECONNECTORTRIGGERRESPONSE'].fields_by_name['trigger']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['trigger_id']._loaded_options = None + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['trigger_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['source']._loaded_options = None + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['source']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['template']._loaded_options = None + _globals['_UPDATECONNECTORTRIGGERREQUEST'].fields_by_name['template']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATECONNECTORTRIGGERRESPONSE'].fields_by_name['trigger']._loaded_options = None + _globals['_UPDATECONNECTORTRIGGERRESPONSE'].fields_by_name['trigger']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCONNECTORTRIGGERSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTCONNECTORTRIGGERSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCONNECTORTRIGGERSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTCONNECTORTRIGGERSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTCONNECTORTRIGGERSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTCONNECTORTRIGGERSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTCONNECTORTRIGGERSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTCONNECTORTRIGGERSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTCONNECTORTRIGGERSRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTCONNECTORTRIGGERSRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_DELETECONNECTORTRIGGERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_DELETECONNECTORTRIGGERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_DELETECONNECTORTRIGGERREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_DELETECONNECTORTRIGGERREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DELETECONNECTORTRIGGERREQUEST'].fields_by_name['trigger_id']._loaded_options = None + _globals['_DELETECONNECTORTRIGGERREQUEST'].fields_by_name['trigger_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETCONNECTORTRIGGERENABLEDREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SETCONNECTORTRIGGERENABLEDREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SETCONNECTORTRIGGERENABLEDREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_SETCONNECTORTRIGGERENABLEDREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETCONNECTORTRIGGERENABLEDREQUEST'].fields_by_name['trigger_id']._loaded_options = None + _globals['_SETCONNECTORTRIGGERENABLEDREQUEST'].fields_by_name['trigger_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETCONNECTORTRIGGERENABLEDRESPONSE'].fields_by_name['trigger']._loaded_options = None + _globals['_SETCONNECTORTRIGGERENABLEDRESPONSE'].fields_by_name['trigger']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['reservation_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['reservation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['organization_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['workspace_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['pack_run_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['pack_run_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['attempt_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['attempt_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['decision_ref']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['decision_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['decision_digest_sha256']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['decision_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['runner_profile']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['runner_profile']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['workload_digest']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['workload_digest']._serialized_options = b'\272H\031r\0272\025^sha256:[0-9a-f]{64}$' + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['state']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['state']._serialized_options = b'\272H2r02.^(reserved|session_bound|adoption_authorized)$' + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['expires_at']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION'].fields_by_name['expires_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['pack_run_id']._loaded_options = None + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['pack_run_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['attempt_id']._loaded_options = None + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['attempt_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['decision_ref']._loaded_options = None + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['decision_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['decision_digest_sha256']._loaded_options = None + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['decision_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['runner_profile']._loaded_options = None + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['runner_profile']._serialized_options = b'\272H\022r\020\n\016apex-agents-v1' + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['workload_digest']._loaded_options = None + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['workload_digest']._serialized_options = b'\272H\031r\0272\025^sha256:[0-9a-f]{64}$' + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONRESPONSE'].fields_by_name['reservation']._loaded_options = None + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONRESPONSE'].fields_by_name['reservation']._serialized_options = b'\272H\003\310\001\001' + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['reservation_id']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['reservation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['runner_session_id']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['runner_session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['runner_profile']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['runner_profile']._serialized_options = b'\272H\022r\020\n\016apex-agents-v1' + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['workload_digest']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['workload_digest']._serialized_options = b'\272H\031r\0272\025^sha256:[0-9a-f]{64}$' + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['create_idempotency_key']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST'].fields_by_name['create_idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONRESPONSE'].fields_by_name['reservation']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONRESPONSE'].fields_by_name['reservation']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['organization_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['workspace_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['reservation_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['reservation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['attempt_id']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['attempt_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['instruction_artifact_ref']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['instruction_artifact_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['instruction_digest_sha256']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['instruction_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['instruction_byte_count']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['instruction_byte_count']._serialized_options = b'\272H\0102\006\030\200\200@(\001' + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['state']._loaded_options = None + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA'].fields_by_name['state']._serialized_options = b'\272H\025r\023\n\021instruction_bound' + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['reservation_id']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['reservation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['attempt_id']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['attempt_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['instruction_artifact_ref']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['instruction_artifact_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['instruction_digest_sha256']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['instruction_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['instruction_byte_count']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['instruction_byte_count']._serialized_options = b'\272H\0102\006\030\200\200@(\001' + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATARESPONSE'].fields_by_name['metadata']._loaded_options = None + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATARESPONSE'].fields_by_name['metadata']._serialized_options = b'\272H\003\310\001\001' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['reservation_id']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['reservation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['runner_session_id']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['runner_session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['mission_id']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['runtime_run_id']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST'].fields_by_name['runtime_run_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['owner_binding']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['owner_binding']._serialized_options = b'\272H\003\310\001\001' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['authorization_id']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['authorization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['authorization_digest_sha256']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['authorization_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['tenant_scope_id']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['tenant_scope_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['workload_digest']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['workload_digest']._serialized_options = b'\272H\031r\0272\025^sha256:[0-9a-f]{64}$' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['instruction_artifact_ref']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['instruction_artifact_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['instruction_digest_sha256']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['instruction_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['instruction_byte_count']._loaded_options = None + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE'].fields_by_name['instruction_byte_count']._serialized_options = b'\272H\0102\006\030\200\200@(\001' + _globals['_GETOVERVIEWREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETOVERVIEWREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETOVERVIEWRESPONSE'].fields_by_name['total_findings']._loaded_options = None + _globals['_GETOVERVIEWRESPONSE'].fields_by_name['total_findings']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETCONSOLEBOOTSNAPSHOTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETCONSOLEBOOTSNAPSHOTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CONSOLESNAPSHOTFRESHNESS'].fields_by_name['stale_age_ms']._loaded_options = None + _globals['_CONSOLESNAPSHOTFRESHNESS'].fields_by_name['stale_age_ms']._serialized_options = b'\272H\004\"\002(\000' + _globals['_LISTASSETSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTASSETSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTASSETSRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTASSETSRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETASSETREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETASSETREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETASSETREQUEST'].fields_by_name['asset_id']._loaded_options = None + _globals['_GETASSETREQUEST'].fields_by_name['asset_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTACTIVITYREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTACTIVITYREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTACTIVITYRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTACTIVITYRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTEVALRESULTSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTEVALRESULTSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTEVALRESULTSREQUEST'].fields_by_name['trace_ids']._loaded_options = None + _globals['_LISTEVALRESULTSREQUEST'].fields_by_name['trace_ids']._serialized_options = b'\272H\016\222\001\013\020d\"\007r\005\020\001\030\200\002' + _globals['_LISTEVALRESULTSRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTEVALRESULTSRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTCOSTUSAGEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTCOSTUSAGEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCOSTUSAGEREQUEST'].fields_by_name['run_id']._loaded_options = None + _globals['_LISTCOSTUSAGEREQUEST'].fields_by_name['run_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_LISTCOSTUSAGERESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTCOSTUSAGERESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_COSTUSAGERUNSUMMARY'].fields_by_name['models']._loaded_options = None + _globals['_COSTUSAGERUNSUMMARY'].fields_by_name['models']._serialized_options = b'\272H\005\222\001\002\020d' + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST'].fields_by_name['spend_month_micros']._loaded_options = None + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST'].fields_by_name['spend_month_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST'].fields_by_name['spend_today_micros']._loaded_options = None + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST'].fields_by_name['spend_today_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST'].fields_by_name['input_tokens']._loaded_options = None + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST'].fields_by_name['input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST'].fields_by_name['output_tokens']._loaded_options = None + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST'].fields_by_name['output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST'].fields_by_name['request_count']._loaded_options = None + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST'].fields_by_name['request_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_LISTAUTHORITYPOSTUREREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTAUTHORITYPOSTUREREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTAUTHORITYPOSTURERESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTAUTHORITYPOSTURERESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTAGENTWORKFORCERECORDSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTAGENTWORKFORCERECORDSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTAGENTWORKFORCERECORDSREQUEST'].fields_by_name['source_event_id']._loaded_options = None + _globals['_LISTAGENTWORKFORCERECORDSREQUEST'].fields_by_name['source_event_id']._serialized_options = b'\272H\004r\002\030x' + _globals['_LISTAGENTWORKFORCERECORDSRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTAGENTWORKFORCERECORDSRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_ORBCONTROLTARGET'].fields_by_name['lifecycle']._loaded_options = None + _globals['_ORBCONTROLTARGET'].fields_by_name['lifecycle']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_LISTORBCONTROLTARGETSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTORBCONTROLTARGETSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTORBCONTROLTARGETSRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTORBCONTROLTARGETSRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETORBCONTROLTARGETREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETORBCONTROLTARGETREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETORBCONTROLTARGETREQUEST'].fields_by_name['target_id']._loaded_options = None + _globals['_GETORBCONTROLTARGETREQUEST'].fields_by_name['target_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITORBCONTROLACTIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SUBMITORBCONTROLACTIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITORBCONTROLACTIONREQUEST'].fields_by_name['target_id']._loaded_options = None + _globals['_SUBMITORBCONTROLACTIONREQUEST'].fields_by_name['target_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITORBCONTROLACTIONREQUEST'].fields_by_name['action']._loaded_options = None + _globals['_SUBMITORBCONTROLACTIONREQUEST'].fields_by_name['action']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_SUBMITORBCONTROLACTIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SUBMITORBCONTROLACTIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITORBCONTROLACTIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_SUBMITORBCONTROLACTIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['evidence_kind']._loaded_options = None + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['evidence_kind']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['evidence_ref']._loaded_options = None + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['evidence_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['cost_usd']._loaded_options = None + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['cost_usd']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['input_tokens']._loaded_options = None + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['output_tokens']._loaded_options = None + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST'].fields_by_name['output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_LISTFINDINGSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTFINDINGSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTFINDINGSRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTFINDINGSRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETTRACEDRILLDOWNREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETTRACEDRILLDOWNREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETTRACEDRILLDOWNREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_GETTRACEDRILLDOWNREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTINTEGRATIONTILESREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTINTEGRATIONTILESREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTINTEGRATIONTILESRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTINTEGRATIONTILESRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTPINNEDSOURCESREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTPINNEDSOURCESREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETPINNEDSOURCEREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_SETPINNEDSOURCEREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETPINNEDSOURCEREQUEST'].fields_by_name['source_id']._loaded_options = None + _globals['_SETPINNEDSOURCEREQUEST'].fields_by_name['source_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UNPINSOURCEREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_UNPINSOURCEREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UNPINSOURCEREQUEST'].fields_by_name['source_id']._loaded_options = None + _globals['_UNPINSOURCEREQUEST'].fields_by_name['source_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETONBOARDINGPLANREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETONBOARDINGPLANREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETWORKSPACESETTINGSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETWORKSPACESETTINGSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETBILLINGSUBSCRIPTIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETBILLINGSUBSCRIPTIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETBILLINGSUBSCRIPTIONRESPONSE'].fields_by_name['seats_used']._loaded_options = None + _globals['_GETBILLINGSUBSCRIPTIONRESPONSE'].fields_by_name['seats_used']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETBILLINGSUBSCRIPTIONRESPONSE'].fields_by_name['seats_total']._loaded_options = None + _globals['_GETBILLINGSUBSCRIPTIONRESPONSE'].fields_by_name['seats_total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_CREATEBILLINGPORTALSESSIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CREATEBILLINGPORTALSESSIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEBILLINGPORTALSESSIONRESPONSE'].fields_by_name['url']._loaded_options = None + _globals['_CREATEBILLINGPORTALSESSIONRESPONSE'].fields_by_name['url']._serialized_options = b'\272H\005r\003\210\001\001' + _globals['_CREATEBILLINGCHECKOUTSESSIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CREATEBILLINGCHECKOUTSESSIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEBILLINGCHECKOUTSESSIONREQUEST'].fields_by_name['request_id']._loaded_options = None + _globals['_CREATEBILLINGCHECKOUTSESSIONREQUEST'].fields_by_name['request_id']._serialized_options = b'\272H\005r\003\260\001\001' + _globals['_CREATEBILLINGCHECKOUTSESSIONRESPONSE'].fields_by_name['url']._loaded_options = None + _globals['_CREATEBILLINGCHECKOUTSESSIONRESPONSE'].fields_by_name['url']._serialized_options = b'\272H\005r\003\210\001\001' + _globals['_UPDATEWORKSPACEPROFILEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATEWORKSPACEPROFILEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEPROFILEREQUEST'].fields_by_name['profile']._loaded_options = None + _globals['_UPDATEWORKSPACEPROFILEREQUEST'].fields_by_name['profile']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEPROFILERESPONSE'].fields_by_name['settings']._loaded_options = None + _globals['_UPDATEWORKSPACEPROFILERESPONSE'].fields_by_name['settings']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATORMODELPREFERENCE'].fields_by_name['provider']._loaded_options = None + _globals['_OPERATORMODELPREFERENCE'].fields_by_name['provider']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_OPERATORMODELPREFERENCE'].fields_by_name['model']._loaded_options = None + _globals['_OPERATORMODELPREFERENCE'].fields_by_name['model']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_OPERATORMODELPREFERENCEUPDATE'].fields_by_name['provider']._loaded_options = None + _globals['_OPERATORMODELPREFERENCEUPDATE'].fields_by_name['provider']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_OPERATORMODELPREFERENCEUPDATE'].fields_by_name['model']._loaded_options = None + _globals['_OPERATORMODELPREFERENCEUPDATE'].fields_by_name['model']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_OPERATORPREFERENCES'].fields_by_name['workspace_id']._loaded_options = None + _globals['_OPERATORPREFERENCES'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATORPREFERENCES'].fields_by_name['dex_hat_id']._loaded_options = None + _globals['_OPERATORPREFERENCES'].fields_by_name['dex_hat_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETOPERATORPREFERENCESREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETOPERATORPREFERENCESREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETOPERATORPREFERENCESRESPONSE'].fields_by_name['preferences']._loaded_options = None + _globals['_GETOPERATORPREFERENCESRESPONSE'].fields_by_name['preferences']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEOPERATORPREFERENCESREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATEOPERATORPREFERENCESREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEOPERATORPREFERENCESRESPONSE'].fields_by_name['preferences']._loaded_options = None + _globals['_UPDATEOPERATORPREFERENCESRESPONSE'].fields_by_name['preferences']._serialized_options = b'\272H\003\310\001\001' + _globals['_WORKSPACEGUARDRAILRULE'].fields_by_name['id']._loaded_options = None + _globals['_WORKSPACEGUARDRAILRULE'].fields_by_name['id']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_WORKSPACEGUARDRAILRULE'].fields_by_name['name']._loaded_options = None + _globals['_WORKSPACEGUARDRAILRULE'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_WORKSPACEGUARDRAILRULE'].fields_by_name['pattern']._loaded_options = None + _globals['_WORKSPACEGUARDRAILRULE'].fields_by_name['pattern']._serialized_options = b'\272H\005r\003\030\200 ' + _globals['_LISTWORKSPACEGUARDRAILRULESREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTWORKSPACEGUARDRAILRULESREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPSERTWORKSPACEGUARDRAILRULEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPSERTWORKSPACEGUARDRAILRULEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPSERTWORKSPACEGUARDRAILRULEREQUEST'].fields_by_name['rule']._loaded_options = None + _globals['_UPSERTWORKSPACEGUARDRAILRULEREQUEST'].fields_by_name['rule']._serialized_options = b'\272H\003\310\001\001' + _globals['_REMOVEWORKSPACEGUARDRAILRULEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_REMOVEWORKSPACEGUARDRAILRULEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_REMOVEWORKSPACEGUARDRAILRULEREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_REMOVEWORKSPACEGUARDRAILRULEREQUEST'].fields_by_name['id']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_CONNECTORPROFILE'].fields_by_name['id']._loaded_options = None + _globals['_CONNECTORPROFILE'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORPROFILE'].fields_by_name['provider_id']._loaded_options = None + _globals['_CONNECTORPROFILE'].fields_by_name['provider_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTORPROFILE'].fields_by_name['profile_name']._loaded_options = None + _globals['_CONNECTORPROFILE'].fields_by_name['profile_name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECONNECTORPROFILEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_CREATECONNECTORPROFILEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATECONNECTORPROFILEREQUEST'].fields_by_name['provider_id']._loaded_options = None + _globals['_CREATECONNECTORPROFILEREQUEST'].fields_by_name['provider_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECONNECTORPROFILEREQUEST'].fields_by_name['profile_name']._loaded_options = None + _globals['_CREATECONNECTORPROFILEREQUEST'].fields_by_name['profile_name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECONNECTORPROFILEREQUEST'].fields_by_name['connection_id']._loaded_options = None + _globals['_CREATECONNECTORPROFILEREQUEST'].fields_by_name['connection_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECONNECTORPROFILERESPONSE'].fields_by_name['profile']._loaded_options = None + _globals['_CREATECONNECTORPROFILERESPONSE'].fields_by_name['profile']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCONNECTORPROFILESREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTCONNECTORPROFILESREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCONNECTORPROFILESREQUEST'].fields_by_name['provider_id']._loaded_options = None + _globals['_LISTCONNECTORPROFILESREQUEST'].fields_by_name['provider_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATECONNECTORPROFILEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATECONNECTORPROFILEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATECONNECTORPROFILEREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_UPDATECONNECTORPROFILEREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATECONNECTORPROFILERESPONSE'].fields_by_name['profile']._loaded_options = None + _globals['_UPDATECONNECTORPROFILERESPONSE'].fields_by_name['profile']._serialized_options = b'\272H\003\310\001\001' + _globals['_DELETECONNECTORPROFILEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_DELETECONNECTORPROFILEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_DELETECONNECTORPROFILEREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_DELETECONNECTORPROFILEREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ARCHIVEWORKSPACEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_ARCHIVEWORKSPACEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_ARCHIVEWORKSPACERESPONSE'].fields_by_name['settings']._loaded_options = None + _globals['_ARCHIVEWORKSPACERESPONSE'].fields_by_name['settings']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEPOLICYREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATEWORKSPACEPOLICYREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEPOLICYREQUEST'].fields_by_name['policy']._loaded_options = None + _globals['_UPDATEWORKSPACEPOLICYREQUEST'].fields_by_name['policy']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEPOLICYRESPONSE'].fields_by_name['settings']._loaded_options = None + _globals['_UPDATEWORKSPACEPOLICYRESPONSE'].fields_by_name['settings']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEDEXPOLICYREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATEWORKSPACEDEXPOLICYREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEDEXPOLICYREQUEST'].fields_by_name['dex_policy']._loaded_options = None + _globals['_UPDATEWORKSPACEDEXPOLICYREQUEST'].fields_by_name['dex_policy']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEDEXPOLICYRESPONSE'].fields_by_name['settings']._loaded_options = None + _globals['_UPDATEWORKSPACEDEXPOLICYRESPONSE'].fields_by_name['settings']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST'].fields_by_name['workspace_artifact_style_guide']._loaded_options = None + _globals['_UPDATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST'].fields_by_name['workspace_artifact_style_guide']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEARTIFACTSTYLEGUIDERESPONSE'].fields_by_name['settings']._loaded_options = None + _globals['_UPDATEWORKSPACEARTIFACTSTYLEGUIDERESPONSE'].fields_by_name['settings']._serialized_options = b'\272H\003\310\001\001' + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST'].fields_by_name['workspace_artifact_style_guide']._loaded_options = None + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST'].fields_by_name['workspace_artifact_style_guide']._serialized_options = b'\272H\003\310\001\001' + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST'].fields_by_name['sample_response']._loaded_options = None + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST'].fields_by_name['sample_response']._serialized_options = b'\272H\010r\006\020\001\030\200\364\003' + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDERESPONSE'].fields_by_name['violations']._loaded_options = None + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDERESPONSE'].fields_by_name['violations']._serialized_options = b'\272H\006\222\001\003\020\310\001' + _globals['_UPSERTWORKSPACEIDENTITYPROVIDERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPSERTWORKSPACEIDENTITYPROVIDERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPSERTWORKSPACEIDENTITYPROVIDERREQUEST'].fields_by_name['provider']._loaded_options = None + _globals['_UPSERTWORKSPACEIDENTITYPROVIDERREQUEST'].fields_by_name['provider']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPSERTWORKSPACEIDENTITYPROVIDERRESPONSE'].fields_by_name['settings']._loaded_options = None + _globals['_UPSERTWORKSPACEIDENTITYPROVIDERRESPONSE'].fields_by_name['settings']._serialized_options = b'\272H\003\310\001\001' + _globals['_REMOVEWORKSPACEIDENTITYPROVIDERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_REMOVEWORKSPACEIDENTITYPROVIDERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_REMOVEWORKSPACEIDENTITYPROVIDERREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_REMOVEWORKSPACEIDENTITYPROVIDERREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REMOVEWORKSPACEIDENTITYPROVIDERRESPONSE'].fields_by_name['settings']._loaded_options = None + _globals['_REMOVEWORKSPACEIDENTITYPROVIDERRESPONSE'].fields_by_name['settings']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPSERTWORKSPACEINTEGRATIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPSERTWORKSPACEINTEGRATIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPSERTWORKSPACEINTEGRATIONREQUEST'].fields_by_name['integration']._loaded_options = None + _globals['_UPSERTWORKSPACEINTEGRATIONREQUEST'].fields_by_name['integration']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPSERTWORKSPACEINTEGRATIONRESPONSE'].fields_by_name['settings']._loaded_options = None + _globals['_UPSERTWORKSPACEINTEGRATIONRESPONSE'].fields_by_name['settings']._serialized_options = b'\272H\003\310\001\001' + _globals['_REMOVEWORKSPACEINTEGRATIONREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_REMOVEWORKSPACEINTEGRATIONREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_REMOVEWORKSPACEINTEGRATIONREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_REMOVEWORKSPACEINTEGRATIONREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REMOVEWORKSPACEINTEGRATIONRESPONSE'].fields_by_name['settings']._loaded_options = None + _globals['_REMOVEWORKSPACEINTEGRATIONRESPONSE'].fields_by_name['settings']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEBILLINGREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATEWORKSPACEBILLINGREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACEBILLINGREQUEST'].fields_by_name['billing']._loaded_options = None + _globals['_UPDATEWORKSPACEBILLINGREQUEST'].fields_by_name['billing']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPSERTWORKSPACEMEMBERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPSERTWORKSPACEMEMBERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPSERTWORKSPACEMEMBERREQUEST'].fields_by_name['member']._loaded_options = None + _globals['_UPSERTWORKSPACEMEMBERREQUEST'].fields_by_name['member']._serialized_options = b'\272H\003\310\001\001' + _globals['_REMOVEWORKSPACEMEMBERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_REMOVEWORKSPACEMEMBERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACENOTIFICATIONPREFERENCESREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATEWORKSPACENOTIFICATIONPREFERENCESREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACENOTIFICATIONPREFERENCESREQUEST'].fields_by_name['notifications']._loaded_options = None + _globals['_UPDATEWORKSPACENOTIFICATIONPREFERENCESREQUEST'].fields_by_name['notifications']._serialized_options = b'\272H\003\310\001\001' + _globals['_ENABLEWORKSPACEBREAKGLASSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_ENABLEWORKSPACEBREAKGLASSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_ENABLEWORKSPACEBREAKGLASSREQUEST'].fields_by_name['grant']._loaded_options = None + _globals['_ENABLEWORKSPACEBREAKGLASSREQUEST'].fields_by_name['grant']._serialized_options = b'\272H\003\310\001\001' + _globals['_DISABLEWORKSPACEBREAKGLASSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_DISABLEWORKSPACEBREAKGLASSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATINGSKILL'].fields_by_name['workspace_id']._loaded_options = None + _globals['_OPERATINGSKILL'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGSKILL'].fields_by_name['name']._loaded_options = None + _globals['_OPERATINGSKILL'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGSKILL'].fields_by_name['organization_id']._loaded_options = None + _globals['_OPERATINGSKILL'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTWORKSPACESKILLSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTWORKSPACESKILLSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_DEXSKILLINPUTDECLARATION'].fields_by_name['name']._loaded_options = None + _globals['_DEXSKILLINPUTDECLARATION'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLINPUTDECLARATION'].fields_by_name['type']._loaded_options = None + _globals['_DEXSKILLINPUTDECLARATION'].fields_by_name['type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLOUTPUTDECLARATION'].fields_by_name['name']._loaded_options = None + _globals['_DEXSKILLOUTPUTDECLARATION'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLOUTPUTDECLARATION'].fields_by_name['type']._loaded_options = None + _globals['_DEXSKILLOUTPUTDECLARATION'].fields_by_name['type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLPACKAGEFILE'].fields_by_name['path']._loaded_options = None + _globals['_DEXSKILLPACKAGEFILE'].fields_by_name['path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLPACKAGEFILE'].fields_by_name['media_type']._loaded_options = None + _globals['_DEXSKILLPACKAGEFILE'].fields_by_name['media_type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLPACKAGEFILE'].fields_by_name['content_digest']._loaded_options = None + _globals['_DEXSKILLPACKAGEFILE'].fields_by_name['content_digest']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLQUALITYFIXTURE'].fields_by_name['id']._loaded_options = None + _globals['_DEXSKILLQUALITYFIXTURE'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLCATALOGENTRY'].fields_by_name['required_tools']._loaded_options = None + _globals['_DEXSKILLCATALOGENTRY'].fields_by_name['required_tools']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_DEXSKILLPLAYBOOKSTEP'].fields_by_name['catalog_skill_id']._loaded_options = None + _globals['_DEXSKILLPLAYBOOKSTEP'].fields_by_name['catalog_skill_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLPLAYBOOKSTEP'].fields_by_name['display_name']._loaded_options = None + _globals['_DEXSKILLPLAYBOOKSTEP'].fields_by_name['display_name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLPLAYBOOK'].fields_by_name['id']._loaded_options = None + _globals['_DEXSKILLPLAYBOOK'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLPLAYBOOK'].fields_by_name['display_name']._loaded_options = None + _globals['_DEXSKILLPLAYBOOK'].fields_by_name['display_name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLPLAYBOOK'].fields_by_name['outcome_description']._loaded_options = None + _globals['_DEXSKILLPLAYBOOK'].fields_by_name['outcome_description']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEXSKILLPLAYBOOK'].fields_by_name['steps']._loaded_options = None + _globals['_DEXSKILLPLAYBOOK'].fields_by_name['steps']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_DEXSKILLPLAYBOOK'].fields_by_name['integration_labels']._loaded_options = None + _globals['_DEXSKILLPLAYBOOK'].fields_by_name['integration_labels']._serialized_options = b'\272H\005\222\001\002\020\020' + _globals['_BROWSEDEXSKILLCATALOGREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_BROWSEDEXSKILLCATALOGREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_INSTALLDEXSKILLCATALOGENTRYREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_INSTALLDEXSKILLCATALOGENTRYREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_INSTALLDEXSKILLCATALOGENTRYREQUEST'].fields_by_name['catalog_id']._loaded_options = None + _globals['_INSTALLDEXSKILLCATALOGENTRYREQUEST'].fields_by_name['catalog_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INSTALLDEXSKILLCATALOGENTRYRESPONSE'].fields_by_name['skill']._loaded_options = None + _globals['_INSTALLDEXSKILLCATALOGENTRYRESPONSE'].fields_by_name['skill']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEWORKSPACESKILLREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_CREATEWORKSPACESKILLREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEWORKSPACESKILLREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_CREATEWORKSPACESKILLREQUEST'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEWORKSPACESKILLREQUEST'].fields_by_name['body']._loaded_options = None + _globals['_CREATEWORKSPACESKILLREQUEST'].fields_by_name['body']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEWORKSPACESKILLRESPONSE'].fields_by_name['skill']._loaded_options = None + _globals['_CREATEWORKSPACESKILLRESPONSE'].fields_by_name['skill']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACESKILLREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATEWORKSPACESKILLREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEWORKSPACESKILLREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_UPDATEWORKSPACESKILLREQUEST'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATEWORKSPACESKILLREQUEST'].fields_by_name['body']._loaded_options = None + _globals['_UPDATEWORKSPACESKILLREQUEST'].fields_by_name['body']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATEWORKSPACESKILLRESPONSE'].fields_by_name['skill']._loaded_options = None + _globals['_UPDATEWORKSPACESKILLRESPONSE'].fields_by_name['skill']._serialized_options = b'\272H\003\310\001\001' + _globals['_DELETEWORKSPACESKILLREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_DELETEWORKSPACESKILLREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_DELETEWORKSPACESKILLREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_DELETEWORKSPACESKILLREQUEST'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_WORKSPACESETTINGSACTIVITYENTRY_DETAILSENTRY']._loaded_options = None + _globals['_WORKSPACESETTINGSACTIVITYENTRY_DETAILSENTRY']._serialized_options = b'8\001' + _globals['_WORKSPACESETTINGSBILLING'].fields_by_name['seats_used']._loaded_options = None + _globals['_WORKSPACESETTINGSBILLING'].fields_by_name['seats_used']._serialized_options = b'\272H\004\032\002(\000' + _globals['_WORKSPACESETTINGSBILLING'].fields_by_name['seats_total']._loaded_options = None + _globals['_WORKSPACESETTINGSBILLING'].fields_by_name['seats_total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_WORKSPACESETTINGSPOLICY'].fields_by_name['audit_log_retention_days']._loaded_options = None + _globals['_WORKSPACESETTINGSPOLICY'].fields_by_name['audit_log_retention_days']._serialized_options = b'\272H\004\032\002(\000' + _globals['_WORKSPACESETTINGSPOLICY'].fields_by_name['data_retention_days']._loaded_options = None + _globals['_WORKSPACESETTINGSPOLICY'].fields_by_name['data_retention_days']._serialized_options = b'\272H\004\032\002(\000' + _globals['_PROJECTTASKENVIRONMENTRETENTION'].fields_by_name['project_resource_id']._loaded_options = None + _globals['_PROJECTTASKENVIRONMENTRETENTION'].fields_by_name['project_resource_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROJECTTASKENVIRONMENTRETENTION'].fields_by_name['retention_days']._loaded_options = None + _globals['_PROJECTTASKENVIRONMENTRETENTION'].fields_by_name['retention_days']._serialized_options = b'\272H\010\032\0060\0000\0070\036' + _globals['_PROJECTTASKENVIRONMENTRETENTION'].fields_by_name['retention_hours']._loaded_options = None + _globals['_PROJECTTASKENVIRONMENTRETENTION'].fields_by_name['retention_hours']._serialized_options = b'\272H\n\032\0100\0100\250\0010\320\005' + _globals['_WORKSPACETASKENVIRONMENTRETENTION'].fields_by_name['retention_days']._loaded_options = None + _globals['_WORKSPACETASKENVIRONMENTRETENTION'].fields_by_name['retention_days']._serialized_options = b'\272H\010\032\0060\0000\0070\036' + _globals['_WORKSPACETASKENVIRONMENTRETENTION'].fields_by_name['retention_hours']._loaded_options = None + _globals['_WORKSPACETASKENVIRONMENTRETENTION'].fields_by_name['retention_hours']._serialized_options = b'\272H\014\032\n0\0000\0100\250\0010\320\005' + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['autonomy_mode']._loaded_options = None + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['autonomy_mode']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['external_action_mode']._loaded_options = None + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['external_action_mode']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['max_turn_seconds']._loaded_options = None + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['max_turn_seconds']._serialized_options = b'\272H\007\032\005\030\204\007(\005' + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['max_tool_calls']._loaded_options = None + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['max_tool_calls']._serialized_options = b'\272H\006\032\004\030@(\000' + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['max_concurrency']._loaded_options = None + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['max_concurrency']._serialized_options = b'\272H\006\032\004\030\010(\001' + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['max_cost_micros']._loaded_options = None + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['max_cost_micros']._serialized_options = b'\272H\t\"\007\030\200\302\327/(\000' + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['allowed_systems']._loaded_options = None + _globals['_WORKSPACEDEXPOLICY'].fields_by_name['allowed_systems']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['voice_and_tone']._loaded_options = None + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['voice_and_tone']._serialized_options = b'\272H\005r\003\030\240\037' + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['document_guidance']._loaded_options = None + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['document_guidance']._serialized_options = b'\272H\005r\003\030\300>' + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['presentation_guidance']._loaded_options = None + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['presentation_guidance']._serialized_options = b'\272H\005r\003\030\300>' + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['required_terms']._loaded_options = None + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['required_terms']._serialized_options = b'\272H\005\222\001\002\020d' + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['forbidden_terms']._loaded_options = None + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['forbidden_terms']._serialized_options = b'\272H\005\222\001\002\020d' + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['response_guidance']._loaded_options = None + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['response_guidance']._serialized_options = b'\272H\005r\003\030\300>' + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['max_response_words']._loaded_options = None + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['max_response_words']._serialized_options = b'\272H\005*\003\030\240\037' + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['allowed_citation_domains']._loaded_options = None + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['allowed_citation_domains']._serialized_options = b'\272H\005\222\001\002\020d' + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['default_brand_voice_id']._loaded_options = None + _globals['_WORKSPACEARTIFACTSTYLEGUIDE'].fields_by_name['default_brand_voice_id']._serialized_options = b'\272H\005r\003\030\200\001\200\364\030\002' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['slack_connection_id']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['slack_connection_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['slack_channel_id']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['slack_channel_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['cadence']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['cadence']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['timezone']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['timezone']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['local_hour']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['local_hour']._serialized_options = b'\272H\004*\002\030\027' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['local_minute']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['local_minute']._serialized_options = b'\272H\004*\002\030;' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['weekly_day_monday_zero']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['weekly_day_monday_zero']._serialized_options = b'\272H\004*\002\030\006' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['materiality_threshold_bp']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['materiality_threshold_bp']._serialized_options = b'\272H\010*\006\030\240\215\006(\001' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['cooldown_seconds']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['cooldown_seconds']._serialized_options = b'\272H\007*\005\030\200\232\236\001' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['quiet_hours_start']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['quiet_hours_start']._serialized_options = b'\272H\004r\002\030\005' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['quiet_hours_end']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['quiet_hours_end']._serialized_options = b'\272H\004r\002\030\005' + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['max_daily_notifications']._loaded_options = None + _globals['_WORKSPACESPENDBEATSETTINGS'].fields_by_name['max_daily_notifications']._serialized_options = b'\272H\004*\002\030\030' + _globals['_SEARCHSTAFFWORKSPACEDIRECTORYREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SEARCHSTAFFWORKSPACEDIRECTORYREQUEST'].fields_by_name['query']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_SEARCHSTAFFWORKSPACEDIRECTORYREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_SEARCHSTAFFWORKSPACEDIRECTORYREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\006\032\004\030\031(\001' + _globals['_GETSTAFFWORKSPACECONTEXTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETSTAFFWORKSPACECONTEXTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSTAFFWORKSPACECONTEXTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETSTAFFWORKSPACECONTEXTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['provider']._loaded_options = None + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['provider']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['environment']._loaded_options = None + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['environment']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['note']._loaded_options = None + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['note']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['provider']._loaded_options = None + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['provider']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['environment']._loaded_options = None + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['environment']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['note']._loaded_options = None + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTREQUEST'].fields_by_name['note']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILEREQUEST'].fields_by_name['note']._loaded_options = None + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILEREQUEST'].fields_by_name['note']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILEREQUEST'].fields_by_name['canary_percent']._loaded_options = None + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILEREQUEST'].fields_by_name['canary_percent']._serialized_options = b'\272H\004*\002\0302' + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILERESPONSE'].fields_by_name['profile']._loaded_options = None + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILERESPONSE'].fields_by_name['profile']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILERESPONSE'].fields_by_name['effective_target']._loaded_options = None + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILERESPONSE'].fields_by_name['effective_target']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTSCENARIOFIXTURESREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTSCENARIOFIXTURESREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTSCENARIOFIXTURESREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTSCENARIOFIXTURESREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTSCENARIOFIXTURESREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTSCENARIOFIXTURESREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\364\003(\000' + _globals['_LISTSCENARIOFIXTURESREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTSCENARIOFIXTURESREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTSCENARIOFIXTURESRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTSCENARIOFIXTURESRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_PROMOTESCENARIOFIXTUREREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_PROMOTESCENARIOFIXTUREREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROMOTESCENARIOFIXTUREREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_PROMOTESCENARIOFIXTUREREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROMOTESCENARIOFIXTUREREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_PROMOTESCENARIOFIXTUREREQUEST'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROMOTESCENARIOFIXTUREREQUEST'].fields_by_name['scenario_json']._loaded_options = None + _globals['_PROMOTESCENARIOFIXTUREREQUEST'].fields_by_name['scenario_json']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPARESCENARIOFIXTURESREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_COMPARESCENARIOFIXTURESREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPARESCENARIOFIXTURESREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_COMPARESCENARIOFIXTURESREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPARESCENARIOFIXTURESREQUEST'].fields_by_name['base_fixture_id']._loaded_options = None + _globals['_COMPARESCENARIOFIXTURESREQUEST'].fields_by_name['base_fixture_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPARESCENARIOFIXTURESREQUEST'].fields_by_name['target_fixture_id']._loaded_options = None + _globals['_COMPARESCENARIOFIXTURESREQUEST'].fields_by_name['target_fixture_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPARESCENARIOFIXTURESREQUEST'].fields_by_name['max_differences']._loaded_options = None + _globals['_COMPARESCENARIOFIXTURESREQUEST'].fields_by_name['max_differences']._serialized_options = b'\272H\006\032\004\030d(\000' + _globals['_COMPARESCENARIOFIXTURESRESPONSE'].fields_by_name['shared_prefix_frames']._loaded_options = None + _globals['_COMPARESCENARIOFIXTURESRESPONSE'].fields_by_name['shared_prefix_frames']._serialized_options = b'\272H\004\032\002(\000' + _globals['_COMPARESCENARIOFIXTURESRESPONSE'].fields_by_name['base_frame_count']._loaded_options = None + _globals['_COMPARESCENARIOFIXTURESRESPONSE'].fields_by_name['base_frame_count']._serialized_options = b'\272H\004\032\002(\000' + _globals['_COMPARESCENARIOFIXTURESRESPONSE'].fields_by_name['target_frame_count']._loaded_options = None + _globals['_COMPARESCENARIOFIXTURESRESPONSE'].fields_by_name['target_frame_count']._serialized_options = b'\272H\004\032\002(\000' + _globals['_SCENARIOFIXTURE'].fields_by_name['tool_count']._loaded_options = None + _globals['_SCENARIOFIXTURE'].fields_by_name['tool_count']._serialized_options = b'\272H\004\032\002(\000' + _globals['_SCENARIOFIXTURE'].fields_by_name['frame_count']._loaded_options = None + _globals['_SCENARIOFIXTURE'].fields_by_name['frame_count']._serialized_options = b'\272H\004\032\002(\000' + _globals['_AIASSET'].fields_by_name['spend_usd']._loaded_options = None + _globals['_AIASSET'].fields_by_name['spend_usd']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_AIASSET'].fields_by_name['request_count']._loaded_options = None + _globals['_AIASSET'].fields_by_name['request_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_AIASSET'].fields_by_name['error_count']._loaded_options = None + _globals['_AIASSET'].fields_by_name['error_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_AIASSET'].fields_by_name['latency_p95_ms']._loaded_options = None + _globals['_AIASSET'].fields_by_name['latency_p95_ms']._serialized_options = b'\272H\004\"\002(\000' + _globals['_ACTIVITYEVENT'].fields_by_name['cost_usd']._loaded_options = None + _globals['_ACTIVITYEVENT'].fields_by_name['cost_usd']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_EVALRESULT'].fields_by_name['score']._loaded_options = None + _globals['_EVALRESULT'].fields_by_name['score']._serialized_options = b'\272H\024\022\022\031\000\000\000\000\000\000\360?)\000\000\000\000\000\000\000\000' + _globals['_EVALRESULT'].fields_by_name['threshold']._loaded_options = None + _globals['_EVALRESULT'].fields_by_name['threshold']._serialized_options = b'\272H\024\022\022\031\000\000\000\000\000\000\360?)\000\000\000\000\000\000\000\000' + _globals['_EVALRESULT'].fields_by_name['quality_per_dollar']._loaded_options = None + _globals['_EVALRESULT'].fields_by_name['quality_per_dollar']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_COSTUSAGE'].fields_by_name['spend_usd']._loaded_options = None + _globals['_COSTUSAGE'].fields_by_name['spend_usd']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_COSTUSAGE'].fields_by_name['input_tokens']._loaded_options = None + _globals['_COSTUSAGE'].fields_by_name['input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGE'].fields_by_name['output_tokens']._loaded_options = None + _globals['_COSTUSAGE'].fields_by_name['output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGE'].fields_by_name['request_count']._loaded_options = None + _globals['_COSTUSAGE'].fields_by_name['request_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGE'].fields_by_name['latency_ms']._loaded_options = None + _globals['_COSTUSAGE'].fields_by_name['latency_ms']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGE'].fields_by_name['spend_micros']._loaded_options = None + _globals['_COSTUSAGE'].fields_by_name['spend_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGE'].fields_by_name['spend_today_micros']._loaded_options = None + _globals['_COSTUSAGE'].fields_by_name['spend_today_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGE'].fields_by_name['cache_read_tokens']._loaded_options = None + _globals['_COSTUSAGE'].fields_by_name['cache_read_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGE'].fields_by_name['cache_write_tokens']._loaded_options = None + _globals['_COSTUSAGE'].fields_by_name['cache_write_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_AUTHORITYLEDGER'].fields_by_name['cost_usd']._loaded_options = None + _globals['_AUTHORITYLEDGER'].fields_by_name['cost_usd']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_AUTHORITYLEDGER'].fields_by_name['input_tokens']._loaded_options = None + _globals['_AUTHORITYLEDGER'].fields_by_name['input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_AUTHORITYLEDGER'].fields_by_name['output_tokens']._loaded_options = None + _globals['_AUTHORITYLEDGER'].fields_by_name['output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_AGENTWORKFORCEAPPROVALQUEUESUMMARY'].fields_by_name['total_records']._loaded_options = None + _globals['_AGENTWORKFORCEAPPROVALQUEUESUMMARY'].fields_by_name['total_records']._serialized_options = b'\272H\004\032\002(\000' + _globals['_AGENTWORKFORCEAPPROVALSTATEBUCKET'].fields_by_name['count']._loaded_options = None + _globals['_AGENTWORKFORCEAPPROVALSTATEBUCKET'].fields_by_name['count']._serialized_options = b'\272H\004\032\002(\000' + _globals['_AGENTWORKFORCEAPPROVALBLOCKERBUCKET'].fields_by_name['count']._loaded_options = None + _globals['_AGENTWORKFORCEAPPROVALBLOCKERBUCKET'].fields_by_name['count']._serialized_options = b'\272H\004\032\002(\000' + _globals['_AGENTWORKFORCEMISSINGEVIDENCEBUCKET'].fields_by_name['count']._loaded_options = None + _globals['_AGENTWORKFORCEMISSINGEVIDENCEBUCKET'].fields_by_name['count']._serialized_options = b'\272H\004\032\002(\000' + _globals['_COSTEVIDENCESUMMARY'].fields_by_name['input_tokens']._loaded_options = None + _globals['_COSTEVIDENCESUMMARY'].fields_by_name['input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTEVIDENCESUMMARY'].fields_by_name['output_tokens']._loaded_options = None + _globals['_COSTEVIDENCESUMMARY'].fields_by_name['output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTEVIDENCESUMMARY'].fields_by_name['total_cost_usd']._loaded_options = None + _globals['_COSTEVIDENCESUMMARY'].fields_by_name['total_cost_usd']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_INTEGRATIONTILE'].fields_by_name['last_sync_duration_ms']._loaded_options = None + _globals['_INTEGRATIONTILE'].fields_by_name['last_sync_duration_ms']._serialized_options = b'\272H\004\032\002(\000' + _globals['_INTEGRATIONTILE'].fields_by_name['synced_item_count']._loaded_options = None + _globals['_INTEGRATIONTILE'].fields_by_name['synced_item_count']._serialized_options = b'\272H\004\032\002(\000' + _globals['_TRACEDRILLDOWN'].fields_by_name['total_latency_ms']._loaded_options = None + _globals['_TRACEDRILLDOWN'].fields_by_name['total_latency_ms']._serialized_options = b'\272H\004\"\002(\000' + _globals['_TRACEDRILLDOWN'].fields_by_name['input_tokens']._loaded_options = None + _globals['_TRACEDRILLDOWN'].fields_by_name['input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_TRACEDRILLDOWN'].fields_by_name['output_tokens']._loaded_options = None + _globals['_TRACEDRILLDOWN'].fields_by_name['output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_TRACEDRILLDOWN'].fields_by_name['cost_usd']._loaded_options = None + _globals['_TRACEDRILLDOWN'].fields_by_name['cost_usd']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_TRACEDRILLDOWN'].fields_by_name['eval_score']._loaded_options = None + _globals['_TRACEDRILLDOWN'].fields_by_name['eval_score']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_TRACESPAN'].fields_by_name['latency_ms']._loaded_options = None + _globals['_TRACESPAN'].fields_by_name['latency_ms']._serialized_options = b'\272H\004\"\002(\000' + _globals['_TRACESPAN'].fields_by_name['cost_usd']._loaded_options = None + _globals['_TRACESPAN'].fields_by_name['cost_usd']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_TRACESPAN'].fields_by_name['input_tokens']._loaded_options = None + _globals['_TRACESPAN'].fields_by_name['input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_TRACESPAN'].fields_by_name['output_tokens']._loaded_options = None + _globals['_TRACESPAN'].fields_by_name['output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['schema']._loaded_options = None + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['schema']._serialized_options = b'\272H\036r\034\n\032dex.homepage_suggestion.v1' + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['label']._loaded_options = None + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['label']._serialized_options = b'\272H\007r\005\020\001\030\240\001' + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['prompt']._loaded_options = None + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['prompt']._serialized_options = b'\272H\007r\005\020\001\030\350\007' + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['source']._loaded_options = None + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['source']._serialized_options = b'\272H\013r\t\n\007cerebro' + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['evidence_refs']._loaded_options = None + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['evidence_refs']._serialized_options = b'\272H\005\222\001\002\020\010' + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['generated_at']._loaded_options = None + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['generated_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['expires_at']._loaded_options = None + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['expires_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['title']._loaded_options = None + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['title']._serialized_options = b'\272H\006r\004\020\001\030<' + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['suggestion_id']._loaded_options = None + _globals['_OPERATINGHOMEPAGESUGGESTION'].fields_by_name['suggestion_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_CREATEDEXMCPSERVERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_CREATEDEXMCPSERVERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEDEXMCPSERVERREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_CREATEDEXMCPSERVERREQUEST'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEDEXMCPSERVERREQUEST'].fields_by_name['base_url']._loaded_options = None + _globals['_CREATEDEXMCPSERVERREQUEST'].fields_by_name['base_url']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEDEXMCPSERVERRESPONSE'].fields_by_name['server']._loaded_options = None + _globals['_CREATEDEXMCPSERVERRESPONSE'].fields_by_name['server']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTDEXMCPSERVERSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTDEXMCPSERVERSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETDEXMCPSERVERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETDEXMCPSERVERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETDEXMCPSERVERREQUEST'].fields_by_name['server_id']._loaded_options = None + _globals['_GETDEXMCPSERVERREQUEST'].fields_by_name['server_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETDEXMCPSERVERRESPONSE'].fields_by_name['server']._loaded_options = None + _globals['_GETDEXMCPSERVERRESPONSE'].fields_by_name['server']._serialized_options = b'\272H\003\310\001\001' + _globals['_DISCOVERDEXMCPSERVERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_DISCOVERDEXMCPSERVERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_DISCOVERDEXMCPSERVERREQUEST'].fields_by_name['server_id']._loaded_options = None + _globals['_DISCOVERDEXMCPSERVERREQUEST'].fields_by_name['server_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DISCOVERDEXMCPSERVERRESPONSE'].fields_by_name['server']._loaded_options = None + _globals['_DISCOVERDEXMCPSERVERRESPONSE'].fields_by_name['server']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEDEXMCPSERVERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATEDEXMCPSERVERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEDEXMCPSERVERREQUEST'].fields_by_name['server_id']._loaded_options = None + _globals['_UPDATEDEXMCPSERVERREQUEST'].fields_by_name['server_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATEDEXMCPSERVERRESPONSE'].fields_by_name['server']._loaded_options = None + _globals['_UPDATEDEXMCPSERVERRESPONSE'].fields_by_name['server']._serialized_options = b'\272H\003\310\001\001' + _globals['_DELETEDEXMCPSERVERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_DELETEDEXMCPSERVERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_DELETEDEXMCPSERVERREQUEST'].fields_by_name['server_id']._loaded_options = None + _globals['_DELETEDEXMCPSERVERREQUEST'].fields_by_name['server_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['server_id']._loaded_options = None + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['server_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_name']._loaded_options = None + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['subject_kind']._loaded_options = None + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['subject_kind']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['resource_url']._loaded_options = None + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['resource_url']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['redirect_uri']._loaded_options = None + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['redirect_uri']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INITIATEDEXMCPOAUTHPROFILERESPONSE'].fields_by_name['profile']._loaded_options = None + _globals['_INITIATEDEXMCPOAUTHPROFILERESPONSE'].fields_by_name['profile']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['server_id']._loaded_options = None + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['server_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_id']._loaded_options = None + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['state']._loaded_options = None + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['state']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['redirect_uri']._loaded_options = None + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['redirect_uri']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_generation']._loaded_options = None + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_generation']._serialized_options = b'\272H\004\"\002 \000' + _globals['_COMPLETEDEXMCPOAUTHPROFILERESPONSE'].fields_by_name['profile']._loaded_options = None + _globals['_COMPLETEDEXMCPOAUTHPROFILERESPONSE'].fields_by_name['profile']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTDEXMCPOAUTHPROFILESREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTDEXMCPOAUTHPROFILESREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['server_id']._loaded_options = None + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['server_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_id']._loaded_options = None + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['reason_code']._loaded_options = None + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['reason_code']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_generation']._loaded_options = None + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_generation']._serialized_options = b'\272H\004\"\002 \000' + _globals['_REVOKEDEXMCPOAUTHPROFILERESPONSE'].fields_by_name['profile']._loaded_options = None + _globals['_REVOKEDEXMCPOAUTHPROFILERESPONSE'].fields_by_name['profile']._serialized_options = b'\272H\003\310\001\001' + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['server_id']._loaded_options = None + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['server_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_id']._loaded_options = None + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['profile_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['redirect_uri']._loaded_options = None + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILEREQUEST'].fields_by_name['redirect_uri']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILERESPONSE'].fields_by_name['profile']._loaded_options = None + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILERESPONSE'].fields_by_name['profile']._serialized_options = b'\272H\003\310\001\001' + _globals['_PRIVATEENDPOINT'].fields_by_name['endpoint_id']._loaded_options = None + _globals['_PRIVATEENDPOINT'].fields_by_name['endpoint_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRIVATEENDPOINT'].fields_by_name['provider']._loaded_options = None + _globals['_PRIVATEENDPOINT'].fields_by_name['provider']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRIVATEENDPOINT'].fields_by_name['endpoint_uri']._loaded_options = None + _globals['_PRIVATEENDPOINT'].fields_by_name['endpoint_uri']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRIVATEENDPOINT'].fields_by_name['service_name']._loaded_options = None + _globals['_PRIVATEENDPOINT'].fields_by_name['service_name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRIVATEENDPOINT'].fields_by_name['region']._loaded_options = None + _globals['_PRIVATEENDPOINT'].fields_by_name['region']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRIVATEENDPOINT'].fields_by_name['dns_name']._loaded_options = None + _globals['_PRIVATEENDPOINT'].fields_by_name['dns_name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRIVATEENDPOINT'].fields_by_name['state']._loaded_options = None + _globals['_PRIVATEENDPOINT'].fields_by_name['state']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRIVATEENDPOINT'].fields_by_name['health_state']._loaded_options = None + _globals['_PRIVATEENDPOINT'].fields_by_name['health_state']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRIVATEENDPOINT'].fields_by_name['route_revision']._loaded_options = None + _globals['_PRIVATEENDPOINT'].fields_by_name['route_revision']._serialized_options = b'\272H\0042\002(\000' + _globals['_PRIVATEENDPOINT'].fields_by_name['route_identity']._loaded_options = None + _globals['_PRIVATEENDPOINT'].fields_by_name['route_identity']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRIVATEPROFILEROUTE'].fields_by_name['profile_id']._loaded_options = None + _globals['_PRIVATEPROFILEROUTE'].fields_by_name['profile_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRIVATEPROFILEROUTE'].fields_by_name['route_mode']._loaded_options = None + _globals['_PRIVATEPROFILEROUTE'].fields_by_name['route_mode']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRIVATEPROFILEROUTE'].fields_by_name['route_revision']._loaded_options = None + _globals['_PRIVATEPROFILEROUTE'].fields_by_name['route_revision']._serialized_options = b'\272H\0042\002(\000' + _globals['_PRIVATEPROFILEROUTE'].fields_by_name['state']._loaded_options = None + _globals['_PRIVATEPROFILEROUTE'].fields_by_name['state']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['endpoint_id']._loaded_options = None + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['endpoint_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['provider']._loaded_options = None + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['provider']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['endpoint_uri']._loaded_options = None + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['endpoint_uri']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['service_name']._loaded_options = None + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['service_name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['region']._loaded_options = None + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['region']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['dns_name']._loaded_options = None + _globals['_REGISTERPRIVATEENDPOINTREQUEST'].fields_by_name['dns_name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REGISTERPRIVATEENDPOINTRESPONSE'].fields_by_name['endpoint']._loaded_options = None + _globals['_REGISTERPRIVATEENDPOINTRESPONSE'].fields_by_name['endpoint']._serialized_options = b'\272H\003\310\001\001' + _globals['_VERIFYPRIVATEENDPOINTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_VERIFYPRIVATEENDPOINTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_VERIFYPRIVATEENDPOINTREQUEST'].fields_by_name['endpoint_id']._loaded_options = None + _globals['_VERIFYPRIVATEENDPOINTREQUEST'].fields_by_name['endpoint_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VERIFYPRIVATEENDPOINTREQUEST'].fields_by_name['evidence_id']._loaded_options = None + _globals['_VERIFYPRIVATEENDPOINTREQUEST'].fields_by_name['evidence_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VERIFYPRIVATEENDPOINTREQUEST'].fields_by_name['provider']._loaded_options = None + _globals['_VERIFYPRIVATEENDPOINTREQUEST'].fields_by_name['provider']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VERIFYPRIVATEENDPOINTRESPONSE'].fields_by_name['endpoint']._loaded_options = None + _globals['_VERIFYPRIVATEENDPOINTRESPONSE'].fields_by_name['endpoint']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTPRIVATEENDPOINTSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTPRIVATEENDPOINTSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_DELETEPRIVATEENDPOINTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_DELETEPRIVATEENDPOINTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_DELETEPRIVATEENDPOINTREQUEST'].fields_by_name['endpoint_id']._loaded_options = None + _globals['_DELETEPRIVATEENDPOINTREQUEST'].fields_by_name['endpoint_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DELETEPRIVATEENDPOINTREQUEST'].fields_by_name['reason_code']._loaded_options = None + _globals['_DELETEPRIVATEENDPOINTREQUEST'].fields_by_name['reason_code']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ATTACHPRIVATEENDPOINTTOPROFILEREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_ATTACHPRIVATEENDPOINTTOPROFILEREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_ATTACHPRIVATEENDPOINTTOPROFILEREQUEST'].fields_by_name['profile_id']._loaded_options = None + _globals['_ATTACHPRIVATEENDPOINTTOPROFILEREQUEST'].fields_by_name['profile_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ATTACHPRIVATEENDPOINTTOPROFILEREQUEST'].fields_by_name['route_mode']._loaded_options = None + _globals['_ATTACHPRIVATEENDPOINTTOPROFILEREQUEST'].fields_by_name['route_mode']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ATTACHPRIVATEENDPOINTTOPROFILERESPONSE'].fields_by_name['route']._loaded_options = None + _globals['_ATTACHPRIVATEENDPOINTTOPROFILERESPONSE'].fields_by_name['route']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTGATEWAYEGRESSORIGINSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTGATEWAYEGRESSORIGINSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\007r\005\020\001\030\200\002\200\364\030\002' + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\004\200\364\030\002' + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['model']._loaded_options = None + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['model']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\001' + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\002' + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_PREWARMOPERATINGTHREADREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\002' + _globals['_TERMINALERRORENVELOPE'].fields_by_name['schema_version']._loaded_options = None + _globals['_TERMINALERRORENVELOPE'].fields_by_name['schema_version']._serialized_options = b'\272H\004*\002\010\001' + _globals['_TERMINALERRORENVELOPE'].fields_by_name['kind']._loaded_options = None + _globals['_TERMINALERRORENVELOPE'].fields_by_name['kind']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_TERMINALERRORENVELOPE'].fields_by_name['boundary']._loaded_options = None + _globals['_TERMINALERRORENVELOPE'].fields_by_name['boundary']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_TERMINALERRORENVELOPE'].fields_by_name['code']._loaded_options = None + _globals['_TERMINALERRORENVELOPE'].fields_by_name['code']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_TERMINALERRORENVELOPE'].fields_by_name['provider_request_id']._loaded_options = None + _globals['_TERMINALERRORENVELOPE'].fields_by_name['provider_request_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_TERMINALERRORENVELOPE'].fields_by_name['display_safe_message']._loaded_options = None + _globals['_TERMINALERRORENVELOPE'].fields_by_name['display_safe_message']._serialized_options = b'\272H\007r\005\020\001\030\200 ' + _globals['_BOOTSTRAPTHREADGATEWAYREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_BOOTSTRAPTHREADGATEWAYREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BOOTSTRAPTHREADGATEWAYREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_BOOTSTRAPTHREADGATEWAYREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BOOTSTRAPTHREADGATEWAYREQUEST'].fields_by_name['thread_id']._loaded_options = None + _globals['_BOOTSTRAPTHREADGATEWAYREQUEST'].fields_by_name['thread_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BOOTSTRAPTHREADGATEWAYREQUEST'].fields_by_name['permissions']._loaded_options = None + _globals['_BOOTSTRAPTHREADGATEWAYREQUEST'].fields_by_name['permissions']._serialized_options = b'\272H\022\222\001\017\010\001\020\003\030\001\"\007\202\001\004\020\001 \000' + _globals['_BOOTSTRAPTHREADGATEWAYRESPONSE'].fields_by_name['shadow_watch_percent']._loaded_options = None + _globals['_BOOTSTRAPTHREADGATEWAYRESPONSE'].fields_by_name['shadow_watch_percent']._serialized_options = b'\272H\004*\002\030d' + _globals['_BOOTSTRAPTHREADGATEWAYRESPONSE'].fields_by_name['direct_watch_percent']._loaded_options = None + _globals['_BOOTSTRAPTHREADGATEWAYRESPONSE'].fields_by_name['direct_watch_percent']._serialized_options = b'\272H\004*\002\030d' + _globals['_BOOTSTRAPTHREADGATEWAYRESPONSE'].fields_by_name['direct_submit_percent']._loaded_options = None + _globals['_BOOTSTRAPTHREADGATEWAYRESPONSE'].fields_by_name['direct_submit_percent']._serialized_options = b'\272H\004*\002\030d' + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['action']._loaded_options = None + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['action']._serialized_options = b'\272H\006r\004\020\001\030@\200\364\030\001' + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['expected_runtime_generation']._loaded_options = None + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['expected_runtime_generation']._serialized_options = b'\272H\004\"\002(\000' + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['expected_replay_cursor']._loaded_options = None + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['expected_replay_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['expected_controller_lease_generation']._loaded_options = None + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['expected_controller_lease_generation']._serialized_options = b'\272H\004\"\002(\000' + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\004\200\364\030\002' + _globals['_SETOPERATINGTHREADCONTROLLERRESPONSE'].fields_by_name['thread_execution']._loaded_options = None + _globals['_SETOPERATINGTHREADCONTROLLERRESPONSE'].fields_by_name['thread_execution']._serialized_options = b'\272H\003\310\001\001' + _globals['_SETOPERATINGTHREADCONTROLLERRESPONSE'].fields_by_name['replay_cursor']._loaded_options = None + _globals['_SETOPERATINGTHREADCONTROLLERRESPONSE'].fields_by_name['replay_cursor']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGESUMMARY'].fields_by_name['spend_today_micros']._loaded_options = None + _globals['_COSTUSAGESUMMARY'].fields_by_name['spend_today_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGESUMMARY'].fields_by_name['spend_month_to_date_micros']._loaded_options = None + _globals['_COSTUSAGESUMMARY'].fields_by_name['spend_month_to_date_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGESUMMARY'].fields_by_name['prior_month_to_date_micros']._loaded_options = None + _globals['_COSTUSAGESUMMARY'].fields_by_name['prior_month_to_date_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGESUMMARY'].fields_by_name['request_count']._loaded_options = None + _globals['_COSTUSAGESUMMARY'].fields_by_name['request_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGESUMMARY'].fields_by_name['input_tokens']._loaded_options = None + _globals['_COSTUSAGESUMMARY'].fields_by_name['input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGESUMMARY'].fields_by_name['output_tokens']._loaded_options = None + _globals['_COSTUSAGESUMMARY'].fields_by_name['output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGESUMMARY'].fields_by_name['source_row_count']._loaded_options = None + _globals['_COSTUSAGESUMMARY'].fields_by_name['source_row_count']._serialized_options = b'\272H\004\032\002(\000' + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['spend_today_micros']._loaded_options = None + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['spend_today_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['spend_month_to_date_micros']._loaded_options = None + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['spend_month_to_date_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['request_count']._loaded_options = None + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['request_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['input_tokens']._loaded_options = None + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['output_tokens']._loaded_options = None + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['prior_month_to_date_micros']._loaded_options = None + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['prior_month_to_date_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['prior_request_count']._loaded_options = None + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['prior_request_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['prior_input_tokens']._loaded_options = None + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['prior_input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['prior_output_tokens']._loaded_options = None + _globals['_COSTUSAGEATTRIBUTIONSUMMARY'].fields_by_name['prior_output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_GETPRIVACYSETTINGSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETPRIVACYSETTINGSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SETPRIVACYSETTINGSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_SETPRIVACYSETTINGSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_SETPRIVACYSETTINGSREQUEST'].fields_by_name['scope']._loaded_options = None + _globals['_SETPRIVACYSETTINGSREQUEST'].fields_by_name['scope']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_SETPRIVACYSETTINGSREQUEST'].fields_by_name['mode']._loaded_options = None + _globals['_SETPRIVACYSETTINGSREQUEST'].fields_by_name['mode']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_MANAGEDRULE'].fields_by_name['id']._loaded_options = None + _globals['_MANAGEDRULE'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_MANAGEDSKILLREF'].fields_by_name['id']._loaded_options = None + _globals['_MANAGEDSKILLREF'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETMANAGEDSETUPREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETMANAGEDSETUPREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETMANAGEDSETUPREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_SETMANAGEDSETUPREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETMANAGEDSETUPREQUEST'].fields_by_name['setup']._loaded_options = None + _globals['_SETMANAGEDSETUPREQUEST'].fields_by_name['setup']._serialized_options = b'\272H\003\310\001\001' + _globals['_MISSIONSCHEDULECAPABILITY'].fields_by_name['name']._loaded_options = None + _globals['_MISSIONSCHEDULECAPABILITY'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_MISSIONSCHEDULECAPABILITY'].fields_by_name['description']._loaded_options = None + _globals['_MISSIONSCHEDULECAPABILITY'].fields_by_name['description']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['meet_url']._loaded_options = None + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['meet_url']._serialized_options = b'\272H\005r\003\030\320\017' + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['recall_connection_id']._loaded_options = None + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['recall_connection_id']._serialized_options = b'\030\001' + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\310\001' + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['maximum_duration_minutes']._loaded_options = None + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['maximum_duration_minutes']._serialized_options = b'\272H\007\032\005\030\360\001(\001' + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['language_code']._loaded_options = None + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['language_code']._serialized_options = b'\272H\004r\002\030#' + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['connected_call_id']._loaded_options = None + _globals['_STARTMEETINGCAPTUREREQUEST'].fields_by_name['connected_call_id']._serialized_options = b'\272H\005r\003\030\310\001' + _globals['_LISTCONNECTEDCALLSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTCONNECTEDCALLSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CONNECTEDCALL'].fields_by_name['id']._loaded_options = None + _globals['_CONNECTEDCALL'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CONNECTEDCALL'].fields_by_name['title']._loaded_options = None + _globals['_CONNECTEDCALL'].fields_by_name['title']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_CONNECTEDCALL'].fields_by_name['meet_url']._loaded_options = None + _globals['_CONNECTEDCALL'].fields_by_name['meet_url']._serialized_options = b'\272H\005r\003\210\001\001' + _globals['_GETMEETINGCAPTUREREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETMEETINGCAPTUREREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETMEETINGCAPTUREREQUEST'].fields_by_name['capture_id']._loaded_options = None + _globals['_GETMEETINGCAPTUREREQUEST'].fields_by_name['capture_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTMEETINGCAPTURESREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTMEETINGCAPTURESREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_STOPMEETINGCAPTUREREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_STOPMEETINGCAPTUREREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_STOPMEETINGCAPTUREREQUEST'].fields_by_name['capture_id']._loaded_options = None + _globals['_STOPMEETINGCAPTUREREQUEST'].fields_by_name['capture_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STOPMEETINGCAPTUREREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_STOPMEETINGCAPTUREREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\310\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['organization_id']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['workspace_id']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['watch_program_id']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['watch_program_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['name']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['config']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['config']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['scoring_rule_revision']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['scoring_rule_revision']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['lifecycle']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['lifecycle']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['revision']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['created_by_principal_id']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['created_by_principal_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['updated_by_principal_id']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['updated_by_principal_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['reason']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['reason']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['audit_receipt_id']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['audit_receipt_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['created_at']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['created_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['updated_at']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAM'].fields_by_name['updated_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROSPECTINGWATCHPROGRAMMUTATIONRECEIPT'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAMMUTATIONRECEIPT'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGWATCHPROGRAMMUTATIONRECEIPT'].fields_by_name['request_digest_sha256']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAMMUTATIONRECEIPT'].fields_by_name['request_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_PROSPECTINGWATCHPROGRAMMUTATIONRECEIPT'].fields_by_name['revision']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAMMUTATIONRECEIPT'].fields_by_name['revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_PROSPECTINGWATCHPROGRAMMUTATIONRECEIPT'].fields_by_name['audit_receipt_id']._loaded_options = None + _globals['_PROSPECTINGWATCHPROGRAMMUTATIONRECEIPT'].fields_by_name['audit_receipt_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['config']._loaded_options = None + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['config']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['scoring_rule_revision']._loaded_options = None + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['scoring_rule_revision']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_CREATEPROSPECTINGWATCHPROGRAMRESPONSE'].fields_by_name['program']._loaded_options = None + _globals['_CREATEPROSPECTINGWATCHPROGRAMRESPONSE'].fields_by_name['program']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEPROSPECTINGWATCHPROGRAMRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_CREATEPROSPECTINGWATCHPROGRAMRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['watch_program_id']._loaded_options = None + _globals['_GETPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['watch_program_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETPROSPECTINGWATCHPROGRAMRESPONSE'].fields_by_name['program']._loaded_options = None + _globals['_GETPROSPECTINGWATCHPROGRAMRESPONSE'].fields_by_name['program']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTPROSPECTINGWATCHPROGRAMSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTPROSPECTINGWATCHPROGRAMSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTPROSPECTINGWATCHPROGRAMSRESPONSE'].fields_by_name['programs']._loaded_options = None + _globals['_LISTPROSPECTINGWATCHPROGRAMSRESPONSE'].fields_by_name['programs']._serialized_options = b'\272H\005\222\001\002\020d' + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['watch_program_id']._loaded_options = None + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['watch_program_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['config']._loaded_options = None + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['config']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['scoring_rule_revision']._loaded_options = None + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['scoring_rule_revision']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['lifecycle']._loaded_options = None + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['lifecycle']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['expected_revision']._loaded_options = None + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['expected_revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_UPDATEPROSPECTINGWATCHPROGRAMRESPONSE'].fields_by_name['program']._loaded_options = None + _globals['_UPDATEPROSPECTINGWATCHPROGRAMRESPONSE'].fields_by_name['program']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATEPROSPECTINGWATCHPROGRAMRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_UPDATEPROSPECTINGWATCHPROGRAMRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCOMMITMENTSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTCOMMITMENTSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCOMMITMENTSREQUEST'].fields_by_name['status']._loaded_options = None + _globals['_LISTCOMMITMENTSREQUEST'].fields_by_name['status']._serialized_options = b'\272H\004r\002\030 \200\364\030\001' + _globals['_COMMITMENT'].fields_by_name['citations']._loaded_options = None + _globals['_COMMITMENT'].fields_by_name['citations']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_COMMITMENTCITATION'].fields_by_name['excerpt']._loaded_options = None + _globals['_COMMITMENTCITATION'].fields_by_name['excerpt']._serialized_options = b'\272H\005r\003\030\320\017' + _globals['_OPERATINGJOBRECORDLINK'].fields_by_name['correlation_id']._loaded_options = None + _globals['_OPERATINGJOBRECORDLINK'].fields_by_name['correlation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGJOBRECORDLINK'].fields_by_name['relation']._loaded_options = None + _globals['_OPERATINGJOBRECORDLINK'].fields_by_name['relation']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGJOBRECORDLINK'].fields_by_name['record']._loaded_options = None + _globals['_OPERATINGJOBRECORDLINK'].fields_by_name['record']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATINGJOB'].fields_by_name['job_id']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['job_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGJOB'].fields_by_name['objective_id']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['objective_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGJOB'].fields_by_name['title']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['title']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATINGJOB'].fields_by_name['state']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGJOB'].fields_by_name['verification_state']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['verification_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGJOB'].fields_by_name['origin']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['origin']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGJOB'].fields_by_name['channel_id']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['channel_id']._serialized_options = b'\200\364\030\002' + _globals['_OPERATINGJOB'].fields_by_name['submitted_message_id']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['submitted_message_id']._serialized_options = b'\200\364\030\002' + _globals['_OPERATINGJOB'].fields_by_name['conversation_context_id']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['conversation_context_id']._serialized_options = b'\200\364\030\002' + _globals['_OPERATINGJOB'].fields_by_name['conversation_task_id']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['conversation_task_id']._serialized_options = b'\200\364\030\002' + _globals['_OPERATINGJOB'].fields_by_name['conversation_task_revision']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['conversation_task_revision']._serialized_options = b'\272H\004\"\002(\000' + _globals['_OPERATINGJOB'].fields_by_name['active_run_id']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['active_run_id']._serialized_options = b'\200\364\030\002' + _globals['_OPERATINGJOB'].fields_by_name['attempt_count']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['attempt_count']._serialized_options = b'\272H\004\032\002(\000' + _globals['_OPERATINGJOB'].fields_by_name['missing_owner_data']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['missing_owner_data']._serialized_options = b'\272H\r\222\001\n\020\020\"\006r\004\020\001\030@' + _globals['_OPERATINGJOB'].fields_by_name['record_links']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['record_links']._serialized_options = b'\272H\006\222\001\003\020\200\002' + _globals['_OPERATINGJOB'].fields_by_name['proof_state']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['proof_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATINGJOB'].fields_by_name['missing_proof']._loaded_options = None + _globals['_OPERATINGJOB'].fields_by_name['missing_proof']._serialized_options = b'\272H\r\222\001\n\020\020\"\006r\004\020\001\030@' + _globals['_LISTOPERATINGJOBSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTOPERATINGJOBSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTOPERATINGJOBSRESPONSE'].fields_by_name['jobs']._loaded_options = None + _globals['_LISTOPERATINGJOBSRESPONSE'].fields_by_name['jobs']._serialized_options = b'\272H\006\222\001\003\020\310\001' + _globals['_RECORDOPERATINGHOMEPAGESUGGESTIONFEEDBACKREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_RECORDOPERATINGHOMEPAGESUGGESTIONFEEDBACKREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_RECORDOPERATINGHOMEPAGESUGGESTIONFEEDBACKREQUEST'].fields_by_name['suggestion_id']._loaded_options = None + _globals['_RECORDOPERATINGHOMEPAGESUGGESTIONFEEDBACKREQUEST'].fields_by_name['suggestion_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RECORDOPERATINGHOMEPAGESUGGESTIONFEEDBACKREQUEST'].fields_by_name['action']._loaded_options = None + _globals['_RECORDOPERATINGHOMEPAGESUGGESTIONFEEDBACKREQUEST'].fields_by_name['action']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_INFERENCECREDITBALANCE'].fields_by_name['granted_micros']._loaded_options = None + _globals['_INFERENCECREDITBALANCE'].fields_by_name['granted_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITBALANCE'].fields_by_name['expired_grant_micros']._loaded_options = None + _globals['_INFERENCECREDITBALANCE'].fields_by_name['expired_grant_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITBALANCE'].fields_by_name['grant_spent_micros']._loaded_options = None + _globals['_INFERENCECREDITBALANCE'].fields_by_name['grant_spent_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITBALANCE'].fields_by_name['grant_reserved_micros']._loaded_options = None + _globals['_INFERENCECREDITBALANCE'].fields_by_name['grant_reserved_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITBALANCE'].fields_by_name['reversed_micros']._loaded_options = None + _globals['_INFERENCECREDITBALANCE'].fields_by_name['reversed_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITBALANCE'].fields_by_name['debt_micros']._loaded_options = None + _globals['_INFERENCECREDITBALANCE'].fields_by_name['debt_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITBALANCE'].fields_by_name['purchased_micros']._loaded_options = None + _globals['_INFERENCECREDITBALANCE'].fields_by_name['purchased_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITBALANCE'].fields_by_name['spent_micros']._loaded_options = None + _globals['_INFERENCECREDITBALANCE'].fields_by_name['spent_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITBALANCE'].fields_by_name['reserved_micros']._loaded_options = None + _globals['_INFERENCECREDITBALANCE'].fields_by_name['reserved_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITBALANCE'].fields_by_name['available_micros']._loaded_options = None + _globals['_INFERENCECREDITBALANCE'].fields_by_name['available_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_GETINFERENCECREDITBALANCEREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETINFERENCECREDITBALANCEREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETINFERENCECREDITBALANCEREQUEST'].fields_by_name['run_id']._loaded_options = None + _globals['_GETINFERENCECREDITBALANCEREQUEST'].fields_by_name['run_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_INFERENCECREDITPRICING'].fields_by_name['input_micros_per_million_tokens']._loaded_options = None + _globals['_INFERENCECREDITPRICING'].fields_by_name['input_micros_per_million_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITPRICING'].fields_by_name['cached_input_micros_per_million_tokens']._loaded_options = None + _globals['_INFERENCECREDITPRICING'].fields_by_name['cached_input_micros_per_million_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITPRICING'].fields_by_name['output_micros_per_million_tokens']._loaded_options = None + _globals['_INFERENCECREDITPRICING'].fields_by_name['output_micros_per_million_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITRECONCILIATION'].fields_by_name['pending_reservation_count']._loaded_options = None + _globals['_INFERENCECREDITRECONCILIATION'].fields_by_name['pending_reservation_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_INFERENCECREDITRECONCILIATION'].fields_by_name['unfunded_payment_count']._loaded_options = None + _globals['_INFERENCECREDITRECONCILIATION'].fields_by_name['unfunded_payment_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_CREATEINFERENCECREDITCHECKOUTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CREATEINFERENCECREDITCHECKOUTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEINFERENCECREDITCHECKOUTREQUEST'].fields_by_name['request_id']._loaded_options = None + _globals['_CREATEINFERENCECREDITCHECKOUTREQUEST'].fields_by_name['request_id']._serialized_options = b'\272H\005r\003\260\001\001' + _globals['_CREATEINFERENCECREDITCHECKOUTRESPONSE'].fields_by_name['url']._loaded_options = None + _globals['_CREATEINFERENCECREDITCHECKOUTRESPONSE'].fields_by_name['url']._serialized_options = b'\272H\005r\003\210\001\001' + _globals['_FULFILLINFERENCECREDITCHECKOUTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_FULFILLINFERENCECREDITCHECKOUTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_FULFILLINFERENCECREDITCHECKOUTREQUEST'].fields_by_name['checkout_session_id']._loaded_options = None + _globals['_FULFILLINFERENCECREDITCHECKOUTREQUEST'].fields_by_name['checkout_session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMOBJECTTARGET'].fields_by_name['type_id']._loaded_options = None + _globals['_CAPTUREFORMOBJECTTARGET'].fields_by_name['type_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMOBJECTTARGET'].fields_by_name['schema_revision']._loaded_options = None + _globals['_CAPTUREFORMOBJECTTARGET'].fields_by_name['schema_revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_CAPTUREFORMASSETREF'].fields_by_name['object_id']._loaded_options = None + _globals['_CAPTUREFORMASSETREF'].fields_by_name['object_id']._serialized_options = b'\272H\007r\005\020\001\030\377\001' + _globals['_CAPTUREFORMASSETREF'].fields_by_name['version_id']._loaded_options = None + _globals['_CAPTUREFORMASSETREF'].fields_by_name['version_id']._serialized_options = b'\272H\007r\005\020\001\030\377\001' + _globals['_CAPTUREFORMBRANDINGINPUT'].fields_by_name['display_name']._loaded_options = None + _globals['_CAPTUREFORMBRANDINGINPUT'].fields_by_name['display_name']._serialized_options = b'\272H\004r\002\030x' + _globals['_CAPTUREFORMBRANDINGINPUT'].fields_by_name['tagline']._loaded_options = None + _globals['_CAPTUREFORMBRANDINGINPUT'].fields_by_name['tagline']._serialized_options = b'\272H\005r\003\030\240\001' + _globals['_CAPTUREFORMBRANDINGINPUT'].fields_by_name['description']._loaded_options = None + _globals['_CAPTUREFORMBRANDINGINPUT'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\320\017' + _globals['_CAPTUREFORMBRANDINGINPUT'].fields_by_name['accent_color']._loaded_options = None + _globals['_CAPTUREFORMBRANDINGINPUT'].fields_by_name['accent_color']._serialized_options = b'\272H\030r\0262\024^$|^#[0-9a-fA-F]{6}$' + _globals['_CAPTUREFORMBRANDING'].fields_by_name['display_name']._loaded_options = None + _globals['_CAPTUREFORMBRANDING'].fields_by_name['display_name']._serialized_options = b'\272H\004r\002\030x' + _globals['_CAPTUREFORMBRANDING'].fields_by_name['tagline']._loaded_options = None + _globals['_CAPTUREFORMBRANDING'].fields_by_name['tagline']._serialized_options = b'\272H\005r\003\030\240\001' + _globals['_CAPTUREFORMBRANDING'].fields_by_name['description']._loaded_options = None + _globals['_CAPTUREFORMBRANDING'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\320\017' + _globals['_CAPTUREFORMBRANDING'].fields_by_name['accent_color']._loaded_options = None + _globals['_CAPTUREFORMBRANDING'].fields_by_name['accent_color']._serialized_options = b'\272H\030r\0262\024^$|^#[0-9a-fA-F]{6}$' + _globals['_CAPTUREFORMBRANDING'].fields_by_name['branding_digest']._loaded_options = None + _globals['_CAPTUREFORMBRANDING'].fields_by_name['branding_digest']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_CAPTUREFORMBRANDING'].fields_by_name['validation_receipt_id']._loaded_options = None + _globals['_CAPTUREFORMBRANDING'].fields_by_name['validation_receipt_id']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['display_name']._loaded_options = None + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['display_name']._serialized_options = b'\272H\004r\002\030x' + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['tagline']._loaded_options = None + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['tagline']._serialized_options = b'\272H\005r\003\030\240\001' + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['description']._loaded_options = None + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\320\017' + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['accent_color']._loaded_options = None + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['accent_color']._serialized_options = b'\272H\030r\0262\024^$|^#[0-9a-fA-F]{6}$' + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['logo_url']._loaded_options = None + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['logo_url']._serialized_options = b'\272H\005r\003\030\200\020' + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['favicon_url']._loaded_options = None + _globals['_CAPTUREFORMPUBLICBRANDING'].fields_by_name['favicon_url']._serialized_options = b'\272H\005r\003\030\200\020' + _globals['_CAPTUREFORMSELECTOPTION'].fields_by_name['option_id']._loaded_options = None + _globals['_CAPTUREFORMSELECTOPTION'].fields_by_name['option_id']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_CAPTUREFORMSELECTOPTION'].fields_by_name['label']._loaded_options = None + _globals['_CAPTUREFORMSELECTOPTION'].fields_by_name['label']._serialized_options = b'\272H\007r\005\020\001\030\240\001' + _globals['_CAPTUREFORMSELECTOPTION'].fields_by_name['description']._loaded_options = None + _globals['_CAPTUREFORMSELECTOPTION'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\364\003' + _globals['_CAPTUREFORMSELECTSPEC'].fields_by_name['options']._loaded_options = None + _globals['_CAPTUREFORMSELECTSPEC'].fields_by_name['options']._serialized_options = b'\272H\010\222\001\005\010\001\020\200\001' + _globals['_CAPTUREFORMSELECTSPEC'].fields_by_name['max_selected']._loaded_options = None + _globals['_CAPTUREFORMSELECTSPEC'].fields_by_name['max_selected']._serialized_options = b'\272H\007\032\005\030\200\001(\001' + _globals['_CAPTUREFORMUPLOADSPEC'].fields_by_name['accepted_content_types']._loaded_options = None + _globals['_CAPTUREFORMUPLOADSPEC'].fields_by_name['accepted_content_types']._serialized_options = b'\272H\014\222\001\t\020 \"\005r\003\030\200\001' + _globals['_CAPTUREFORMUPLOADSPEC'].fields_by_name['max_size_bytes']._loaded_options = None + _globals['_CAPTUREFORMUPLOADSPEC'].fields_by_name['max_size_bytes']._serialized_options = b'\272H\t\"\007\030\200\200\200\031 \000' + _globals['_CAPTUREFORMUPLOADSPEC'].fields_by_name['max_files']._loaded_options = None + _globals['_CAPTUREFORMUPLOADSPEC'].fields_by_name['max_files']._serialized_options = b'\272H\004\032\002\010\001' + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['upload_id']._loaded_options = None + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['upload_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['input_id']._loaded_options = None + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['input_id']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['filename']._loaded_options = None + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['filename']._serialized_options = b'\272H\007r\005\020\001\030\377\001' + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['content_type']._loaded_options = None + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['content_type']._serialized_options = b'\272H\007r\005\020\001\030\377\001' + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['size_bytes']._loaded_options = None + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['size_bytes']._serialized_options = b'\272H\t\"\007\030\200\200\200\031 \000' + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['sha256']._loaded_options = None + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['state']._loaded_options = None + _globals['_CAPTUREFORMUPLOAD'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_CAPTUREFORMTYPEDVALUE_OPTIONVALUES'].fields_by_name['option_ids']._loaded_options = None + _globals['_CAPTUREFORMTYPEDVALUE_OPTIONVALUES'].fields_by_name['option_ids']._serialized_options = b'\272H\020\222\001\r\010\001\020\200\001\"\006r\004\020\001\030P' + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['text']._loaded_options = None + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['text']._serialized_options = b'\272H\005r\003\030\200@' + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['decimal']._loaded_options = None + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['decimal']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['date']._loaded_options = None + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['date']._serialized_options = b'\272H\004r\002\030 ' + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['email']._loaded_options = None + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['email']._serialized_options = b'\272H\005r\003\030\300\002' + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['phone']._loaded_options = None + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['phone']._serialized_options = b'\272H\004r\002\030@' + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['url']._loaded_options = None + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['url']._serialized_options = b'\272H\005r\003\030\200\020' + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['option_id']._loaded_options = None + _globals['_CAPTUREFORMTYPEDVALUE'].fields_by_name['option_id']._serialized_options = b'\272H\004r\002\030P' + _globals['_CAPTUREFORMFIELD'].fields_by_name['input_id']._loaded_options = None + _globals['_CAPTUREFORMFIELD'].fields_by_name['input_id']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_CAPTUREFORMFIELD'].fields_by_name['label']._loaded_options = None + _globals['_CAPTUREFORMFIELD'].fields_by_name['label']._serialized_options = b'\272H\007r\005\020\001\030\240\001' + _globals['_CAPTUREFORMFIELD'].fields_by_name['help_text']._loaded_options = None + _globals['_CAPTUREFORMFIELD'].fields_by_name['help_text']._serialized_options = b'\272H\005r\003\030\350\007' + _globals['_CAPTUREFORMFIELD'].fields_by_name['kind']._loaded_options = None + _globals['_CAPTUREFORMFIELD'].fields_by_name['kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CAPTUREFORMFIELD'].fields_by_name['position']._loaded_options = None + _globals['_CAPTUREFORMFIELD'].fields_by_name['position']._serialized_options = b'\272H\007\032\005\030\200\010(\000' + _globals['_CAPTUREFORMFIELD'].fields_by_name['placeholder']._loaded_options = None + _globals['_CAPTUREFORMFIELD'].fields_by_name['placeholder']._serialized_options = b'\272H\005r\003\030\360\001' + _globals['_CAPTUREFORMFIELD'].fields_by_name['business_field_id']._loaded_options = None + _globals['_CAPTUREFORMFIELD'].fields_by_name['business_field_id']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_CAPTUREFORMFIELD'].fields_by_name['mapping_state']._loaded_options = None + _globals['_CAPTUREFORMFIELD'].fields_by_name['mapping_state']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CAPTUREFORMFIELD'].fields_by_name['max_length']._loaded_options = None + _globals['_CAPTUREFORMFIELD'].fields_by_name['max_length']._serialized_options = b'\272H\007\032\005\030\200@(\000' + _globals['_CAPTUREFORMFIELD'].fields_by_name['min_decimal']._loaded_options = None + _globals['_CAPTUREFORMFIELD'].fields_by_name['min_decimal']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_CAPTUREFORMFIELD'].fields_by_name['max_decimal']._loaded_options = None + _globals['_CAPTUREFORMFIELD'].fields_by_name['max_decimal']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['input_id']._loaded_options = None + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['input_id']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['label']._loaded_options = None + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['label']._serialized_options = b'\272H\007r\005\020\001\030\240\001' + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['help_text']._loaded_options = None + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['help_text']._serialized_options = b'\272H\005r\003\030\350\007' + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['kind']._loaded_options = None + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['position']._loaded_options = None + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['position']._serialized_options = b'\272H\004\032\002(\000' + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['placeholder']._loaded_options = None + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['placeholder']._serialized_options = b'\272H\005r\003\030\360\001' + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['max_length']._loaded_options = None + _globals['_CAPTUREFORMPUBLICFIELD'].fields_by_name['max_length']._serialized_options = b'\272H\007\032\005\030\200@(\000' + _globals['_CAPTUREFORMVERSIONINPUT'].fields_by_name['object_target']._loaded_options = None + _globals['_CAPTUREFORMVERSIONINPUT'].fields_by_name['object_target']._serialized_options = b'\272H\003\310\001\001' + _globals['_CAPTUREFORMVERSIONINPUT'].fields_by_name['fields']._loaded_options = None + _globals['_CAPTUREFORMVERSIONINPUT'].fields_by_name['fields']._serialized_options = b'\272H\007\222\001\004\010\001\020@' + _globals['_CAPTUREFORMVERSIONINPUT'].fields_by_name['branding']._loaded_options = None + _globals['_CAPTUREFORMVERSIONINPUT'].fields_by_name['branding']._serialized_options = b'\272H\003\310\001\001' + _globals['_CAPTUREFORMVERSION'].fields_by_name['form_id']._loaded_options = None + _globals['_CAPTUREFORMVERSION'].fields_by_name['form_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMVERSION'].fields_by_name['version_id']._loaded_options = None + _globals['_CAPTUREFORMVERSION'].fields_by_name['version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMVERSION'].fields_by_name['revision']._loaded_options = None + _globals['_CAPTUREFORMVERSION'].fields_by_name['revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_CAPTUREFORMVERSION'].fields_by_name['object_target']._loaded_options = None + _globals['_CAPTUREFORMVERSION'].fields_by_name['object_target']._serialized_options = b'\272H\003\310\001\001' + _globals['_CAPTUREFORMVERSION'].fields_by_name['fields']._loaded_options = None + _globals['_CAPTUREFORMVERSION'].fields_by_name['fields']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_CAPTUREFORMVERSION'].fields_by_name['schema_digest']._loaded_options = None + _globals['_CAPTUREFORMVERSION'].fields_by_name['schema_digest']._serialized_options = b'\272H\005r\003\030\200\001' + _globals['_CAPTUREFORMVERSION'].fields_by_name['created_by']._loaded_options = None + _globals['_CAPTUREFORMVERSION'].fields_by_name['created_by']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_CAPTUREFORMPUBLICATIONINPUT'].fields_by_name['slug']._loaded_options = None + _globals['_CAPTUREFORMPUBLICATIONINPUT'].fields_by_name['slug']._serialized_options = b'\272H\"r \020\001\030P2\032^[a-z0-9]+(?:-[a-z0-9]+)*$' + _globals['_CAPTUREFORMPUBLICATIONINPUT'].fields_by_name['custom_domain_id']._loaded_options = None + _globals['_CAPTUREFORMPUBLICATIONINPUT'].fields_by_name['custom_domain_id']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_CAPTUREFORMPUBLICATIONINPUT'].fields_by_name['allowed_origins']._loaded_options = None + _globals['_CAPTUREFORMPUBLICATIONINPUT'].fields_by_name['allowed_origins']._serialized_options = b'\272H\014\222\001\t\020 \"\005r\003\030\200\020' + _globals['_CAPTUREFORMPUBLICROUTE'].fields_by_name['hostname']._loaded_options = None + _globals['_CAPTUREFORMPUBLICROUTE'].fields_by_name['hostname']._serialized_options = b'\272H\005r\003\030\375\001' + _globals['_CAPTUREFORMPUBLICROUTE'].fields_by_name['path']._loaded_options = None + _globals['_CAPTUREFORMPUBLICROUTE'].fields_by_name['path']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_CAPTUREFORMPUBLICROUTE'].fields_by_name['embed_path']._loaded_options = None + _globals['_CAPTUREFORMPUBLICROUTE'].fields_by_name['embed_path']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_CAPTUREFORMPUBLICROUTE'].fields_by_name['custom_domain_id']._loaded_options = None + _globals['_CAPTUREFORMPUBLICROUTE'].fields_by_name['custom_domain_id']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_CAPTUREFORMPUBLICROUTE'].fields_by_name['allowed_origins']._loaded_options = None + _globals['_CAPTUREFORMPUBLICROUTE'].fields_by_name['allowed_origins']._serialized_options = b'\272H\005\222\001\002\020 ' + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['publication_id']._loaded_options = None + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['publication_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['form_id']._loaded_options = None + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['form_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['version_id']._loaded_options = None + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['state']._loaded_options = None + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['generation']._loaded_options = None + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['generation']._serialized_options = b'\272H\004\"\002 \000' + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['slug']._loaded_options = None + _globals['_CAPTUREFORMPUBLICATION'].fields_by_name['slug']._serialized_options = b'\272H\004r\002\030P' + _globals['_CAPTUREFORM'].fields_by_name['organization_id']._loaded_options = None + _globals['_CAPTUREFORM'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORM'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CAPTUREFORM'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORM'].fields_by_name['form_id']._loaded_options = None + _globals['_CAPTUREFORM'].fields_by_name['form_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORM'].fields_by_name['name']._loaded_options = None + _globals['_CAPTUREFORM'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\001\030\240\001' + _globals['_CAPTUREFORM'].fields_by_name['description']._loaded_options = None + _globals['_CAPTUREFORM'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\320\017' + _globals['_CAPTUREFORM'].fields_by_name['state']._loaded_options = None + _globals['_CAPTUREFORM'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_CAPTUREFORM'].fields_by_name['current_version_id']._loaded_options = None + _globals['_CAPTUREFORM'].fields_by_name['current_version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORM'].fields_by_name['current_revision']._loaded_options = None + _globals['_CAPTUREFORM'].fields_by_name['current_revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_CAPTUREFORM'].fields_by_name['object_target']._loaded_options = None + _globals['_CAPTUREFORM'].fields_by_name['object_target']._serialized_options = b'\272H\003\310\001\001' + _globals['_CAPTUREFORM'].fields_by_name['publications']._loaded_options = None + _globals['_CAPTUREFORM'].fields_by_name['publications']._serialized_options = b'\272H\005\222\001\002\020 ' + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['publication_id']._loaded_options = None + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['publication_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['form_id']._loaded_options = None + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['form_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['version_id']._loaded_options = None + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['version_revision']._loaded_options = None + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['version_revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['name']._loaded_options = None + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\001\030\240\001' + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['description']._loaded_options = None + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\320\017' + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['fields']._loaded_options = None + _globals['_PUBLISHEDCAPTUREFORM'].fields_by_name['fields']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_CAPTUREFORMANSWER'].fields_by_name['input_id']._loaded_options = None + _globals['_CAPTUREFORMANSWER'].fields_by_name['input_id']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_CAPTUREFORMANSWER'].fields_by_name['value']._loaded_options = None + _globals['_CAPTUREFORMANSWER'].fields_by_name['value']._serialized_options = b'\272H\003\310\001\001' + _globals['_CAPTUREFORMREVIEW'].fields_by_name['decision']._loaded_options = None + _globals['_CAPTUREFORMREVIEW'].fields_by_name['decision']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_CAPTUREFORMREVIEW'].fields_by_name['reviewer_id']._loaded_options = None + _globals['_CAPTUREFORMREVIEW'].fields_by_name['reviewer_id']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_CAPTUREFORMREVIEW'].fields_by_name['note']._loaded_options = None + _globals['_CAPTUREFORMREVIEW'].fields_by_name['note']._serialized_options = b'\272H\005r\003\030\240\037' + _globals['_CAPTUREFORMREVIEW'].fields_by_name['supplemental_values']._loaded_options = None + _globals['_CAPTUREFORMREVIEW'].fields_by_name['supplemental_values']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['result_id']._loaded_options = None + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['result_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['state']._loaded_options = None + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['object_id']._loaded_options = None + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['object_id']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['object_type_id']._loaded_options = None + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['object_type_id']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['object_schema_revision']._loaded_options = None + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['object_schema_revision']._serialized_options = b'\272H\004\"\002(\000' + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['object_revision']._loaded_options = None + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['object_revision']._serialized_options = b'\272H\004\"\002(\000' + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['mapping_receipt_id']._loaded_options = None + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['mapping_receipt_id']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['unmapped_input_ids']._loaded_options = None + _globals['_CAPTUREFORMOBJECTRESULT'].fields_by_name['unmapped_input_ids']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['organization_id']._loaded_options = None + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['submission_id']._loaded_options = None + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['submission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['form_id']._loaded_options = None + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['form_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['publication_id']._loaded_options = None + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['publication_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['version_id']._loaded_options = None + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['state']._loaded_options = None + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['answers']._loaded_options = None + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['answers']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['revision']._loaded_options = None + _globals['_CAPTUREFORMSUBMISSION'].fields_by_name['revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_CAPTUREFORMPUBLICSUBMISSIONRECEIPT'].fields_by_name['submission_id']._loaded_options = None + _globals['_CAPTUREFORMPUBLICSUBMISSIONRECEIPT'].fields_by_name['submission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CAPTUREFORMPUBLICSUBMISSIONRECEIPT'].fields_by_name['result_id']._loaded_options = None + _globals['_CAPTUREFORMPUBLICSUBMISSIONRECEIPT'].fields_by_name['result_id']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_CAPTUREFORMPUBLICSUBMISSIONRECEIPT'].fields_by_name['state']._loaded_options = None + _globals['_CAPTUREFORMPUBLICSUBMISSIONRECEIPT'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\001\030\240\001' + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['description']._loaded_options = None + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\320\017' + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['version']._loaded_options = None + _globals['_CREATECAPTUREFORMREQUEST'].fields_by_name['version']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATECAPTUREFORMRESPONSE'].fields_by_name['form']._loaded_options = None + _globals['_CREATECAPTUREFORMRESPONSE'].fields_by_name['form']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATECAPTUREFORMRESPONSE'].fields_by_name['version']._loaded_options = None + _globals['_CREATECAPTUREFORMRESPONSE'].fields_by_name['version']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCAPTUREFORMSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTCAPTUREFORMSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTCAPTUREFORMSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTCAPTUREFORMSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTCAPTUREFORMSREQUEST'].fields_by_name['state']._loaded_options = None + _globals['_LISTCAPTUREFORMSREQUEST'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_LISTCAPTUREFORMSREQUEST'].fields_by_name['page_size']._loaded_options = None + _globals['_LISTCAPTUREFORMSREQUEST'].fields_by_name['page_size']._serialized_options = b'\272H\006\032\004\030d(\000' + _globals['_LISTCAPTUREFORMSREQUEST'].fields_by_name['page_token']._loaded_options = None + _globals['_LISTCAPTUREFORMSREQUEST'].fields_by_name['page_token']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_LISTCAPTUREFORMSRESPONSE'].fields_by_name['forms']._loaded_options = None + _globals['_LISTCAPTUREFORMSRESPONSE'].fields_by_name['forms']._serialized_options = b'\272H\005\222\001\002\020d' + _globals['_LISTCAPTUREFORMSRESPONSE'].fields_by_name['next_page_token']._loaded_options = None + _globals['_LISTCAPTUREFORMSRESPONSE'].fields_by_name['next_page_token']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_GETCAPTUREFORMREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETCAPTUREFORMREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCAPTUREFORMREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETCAPTUREFORMREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCAPTUREFORMREQUEST'].fields_by_name['form_id']._loaded_options = None + _globals['_GETCAPTUREFORMREQUEST'].fields_by_name['form_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCAPTUREFORMREQUEST'].fields_by_name['version_id']._loaded_options = None + _globals['_GETCAPTUREFORMREQUEST'].fields_by_name['version_id']._serialized_options = b'\272H\005r\003\030\377\001' + _globals['_GETCAPTUREFORMRESPONSE'].fields_by_name['form']._loaded_options = None + _globals['_GETCAPTUREFORMRESPONSE'].fields_by_name['form']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETCAPTUREFORMRESPONSE'].fields_by_name['version']._loaded_options = None + _globals['_GETCAPTUREFORMRESPONSE'].fields_by_name['version']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['form_id']._loaded_options = None + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['form_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['expected_revision']._loaded_options = None + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['expected_revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['name']._serialized_options = b'\272H\007r\005\020\001\030\240\001' + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['description']._loaded_options = None + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\320\017' + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['version']._loaded_options = None + _globals['_UPDATECAPTUREFORMREQUEST'].fields_by_name['version']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATECAPTUREFORMRESPONSE'].fields_by_name['form']._loaded_options = None + _globals['_UPDATECAPTUREFORMRESPONSE'].fields_by_name['form']._serialized_options = b'\272H\003\310\001\001' + _globals['_UPDATECAPTUREFORMRESPONSE'].fields_by_name['version']._loaded_options = None + _globals['_UPDATECAPTUREFORMRESPONSE'].fields_by_name['version']._serialized_options = b'\272H\003\310\001\001' + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['form_id']._loaded_options = None + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['form_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['version_id']._loaded_options = None + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['publication']._loaded_options = None + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['publication']._serialized_options = b'\272H\003\310\001\001' + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_PUBLISHCAPTUREFORMREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_PUBLISHCAPTUREFORMRESPONSE'].fields_by_name['form']._loaded_options = None + _globals['_PUBLISHCAPTUREFORMRESPONSE'].fields_by_name['form']._serialized_options = b'\272H\003\310\001\001' + _globals['_PUBLISHCAPTUREFORMRESPONSE'].fields_by_name['version']._loaded_options = None + _globals['_PUBLISHCAPTUREFORMRESPONSE'].fields_by_name['version']._serialized_options = b'\272H\003\310\001\001' + _globals['_PUBLISHCAPTUREFORMRESPONSE'].fields_by_name['publication']._loaded_options = None + _globals['_PUBLISHCAPTUREFORMRESPONSE'].fields_by_name['publication']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST'].fields_by_name['form_id']._loaded_options = None + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST'].fields_by_name['form_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST'].fields_by_name['publication_id']._loaded_options = None + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST'].fields_by_name['publication_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_REVOKECAPTUREFORMPUBLICATIONRESPONSE'].fields_by_name['form']._loaded_options = None + _globals['_REVOKECAPTUREFORMPUBLICATIONRESPONSE'].fields_by_name['form']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVOKECAPTUREFORMPUBLICATIONRESPONSE'].fields_by_name['publication']._loaded_options = None + _globals['_REVOKECAPTUREFORMPUBLICATIONRESPONSE'].fields_by_name['publication']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETPUBLISHEDCAPTUREFORMREQUEST'].fields_by_name['publication_id']._loaded_options = None + _globals['_GETPUBLISHEDCAPTUREFORMREQUEST'].fields_by_name['publication_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETPUBLISHEDCAPTUREFORMRESPONSE'].fields_by_name['form']._loaded_options = None + _globals['_GETPUBLISHEDCAPTUREFORMRESPONSE'].fields_by_name['form']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETREQUEST'].fields_by_name['publication_id']._loaded_options = None + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETREQUEST'].fields_by_name['publication_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETREQUEST'].fields_by_name['role']._loaded_options = None + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETREQUEST'].fields_by_name['role']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETRESPONSE'].fields_by_name['content']._loaded_options = None + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETRESPONSE'].fields_by_name['content']._serialized_options = b'\272H\006z\004\030\200\200 ' + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETRESPONSE'].fields_by_name['content_type']._loaded_options = None + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETRESPONSE'].fields_by_name['content_type']._serialized_options = b'\272H\006r\004\020\001\030@' + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETRESPONSE'].fields_by_name['digest']._loaded_options = None + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETRESPONSE'].fields_by_name['digest']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETRESPONSE'].fields_by_name['size_bytes']._loaded_options = None + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETRESPONSE'].fields_by_name['size_bytes']._serialized_options = b'\272H\010\"\006\030\200\200 (\000' + _globals['_SUBMITPUBLISHEDCAPTUREFORMREQUEST'].fields_by_name['publication_id']._loaded_options = None + _globals['_SUBMITPUBLISHEDCAPTUREFORMREQUEST'].fields_by_name['publication_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITPUBLISHEDCAPTUREFORMREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SUBMITPUBLISHEDCAPTUREFORMREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_SUBMITPUBLISHEDCAPTUREFORMREQUEST'].fields_by_name['answers']._loaded_options = None + _globals['_SUBMITPUBLISHEDCAPTUREFORMREQUEST'].fields_by_name['answers']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_SUBMITPUBLISHEDCAPTUREFORMRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_SUBMITPUBLISHEDCAPTUREFORMRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['publication_id']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['publication_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['input_id']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['input_id']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['filename']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['filename']._serialized_options = b'\272H\007r\005\020\001\030\377\001\200\364\030\003' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['content_type']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['content_type']._serialized_options = b'\272H\007r\005\020\001\030\377\001\200\364\030\001' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['size_bytes']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['size_bytes']._serialized_options = b'\272H\t\"\007\030\200\200\200\031 \000' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['sha256']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$\200\364\030\002' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001\200\364\030\002' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['grant']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['grant']._serialized_options = b'\272H\003\310\001\001' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['lease_id']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['lease_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['lease_token']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['lease_token']._serialized_options = b'\272H\007r\005\020\001\030\200\004\200\364\030\005' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['fencing_token']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['fencing_token']._serialized_options = b'\272H\004\"\002 \000' + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['upload']._loaded_options = None + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['upload']._serialized_options = b'\272H\003\310\001\001' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['publication_id']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['publication_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['input_id']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['input_id']._serialized_options = b'\272H\006r\004\020\001\030P' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['upload_id']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['upload_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['lease_id']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['lease_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['lease_token']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['lease_token']._serialized_options = b'\272H\007r\005\020\001\030\200\004\200\364\030\005' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['fencing_token']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['fencing_token']._serialized_options = b'\272H\004\"\002 \000' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['size_bytes']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['size_bytes']._serialized_options = b'\272H\t\"\007\030\200\200\200\031 \000' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['sha256']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$\200\364\030\002' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['storage_etag']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['storage_etag']._serialized_options = b'\200\364\030\002' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001\200\364\030\002' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['completed_parts']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST'].fields_by_name['completed_parts']._serialized_options = b'\272H\006\222\001\003\020\220N' + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['upload']._loaded_options = None + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADRESPONSE'].fields_by_name['upload']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['submission_id']._loaded_options = None + _globals['_GETCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['submission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETCAPTUREFORMSUBMISSIONRESPONSE'].fields_by_name['submission']._loaded_options = None + _globals['_GETCAPTUREFORMSUBMISSIONRESPONSE'].fields_by_name['submission']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['form_id']._loaded_options = None + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['form_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['state']._loaded_options = None + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['page_size']._loaded_options = None + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['page_size']._serialized_options = b'\272H\006\032\004\030d(\000' + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['page_token']._loaded_options = None + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST'].fields_by_name['page_token']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_LISTCAPTUREFORMSUBMISSIONSRESPONSE'].fields_by_name['submissions']._loaded_options = None + _globals['_LISTCAPTUREFORMSUBMISSIONSRESPONSE'].fields_by_name['submissions']._serialized_options = b'\272H\005\222\001\002\020d' + _globals['_LISTCAPTUREFORMSUBMISSIONSRESPONSE'].fields_by_name['next_page_token']._loaded_options = None + _globals['_LISTCAPTUREFORMSUBMISSIONSRESPONSE'].fields_by_name['next_page_token']._serialized_options = b'\272H\005r\003\030\200\004' + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['submission_id']._loaded_options = None + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['submission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['expected_revision']._loaded_options = None + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['expected_revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['decision']._loaded_options = None + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['decision']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['note']._loaded_options = None + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['note']._serialized_options = b'\272H\005r\003\030\240\037' + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['supplemental_values']._loaded_options = None + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST'].fields_by_name['supplemental_values']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_REVIEWCAPTUREFORMSUBMISSIONRESPONSE'].fields_by_name['submission']._loaded_options = None + _globals['_REVIEWCAPTUREFORMSUBMISSIONRESPONSE'].fields_by_name['submission']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETBUSINESSOBJECTTYPEREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETBUSINESSOBJECTTYPEREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETBUSINESSOBJECTTYPEREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETBUSINESSOBJECTTYPEREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETBUSINESSOBJECTTYPEREQUEST'].fields_by_name['type_id']._loaded_options = None + _globals['_GETBUSINESSOBJECTTYPEREQUEST'].fields_by_name['type_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETBUSINESSOBJECTTYPEREQUEST'].fields_by_name['revision']._loaded_options = None + _globals['_GETBUSINESSOBJECTTYPEREQUEST'].fields_by_name['revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_LISTINFERENCECREDITRECEIPTSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTINFERENCECREDITRECEIPTSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETINFERENCECREDITAUTOREFILLREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETINFERENCECREDITAUTOREFILLREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATEINFERENCECREDITAUTOREFILLREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_UPDATEINFERENCECREDITAUTOREFILLREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATEINFERENCECREDITAUTOREFILLREQUEST'].fields_by_name['request_id']._loaded_options = None + _globals['_UPDATEINFERENCECREDITAUTOREFILLREQUEST'].fields_by_name['request_id']._serialized_options = b'\272H\005r\003\260\001\001' + _globals['_COMPLETEINFERENCECREDITAUTOREFILLREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_COMPLETEINFERENCECREDITAUTOREFILLREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETEINFERENCECREDITAUTOREFILLREQUEST'].fields_by_name['setup_session_id']._loaded_options = None + _globals['_COMPLETEINFERENCECREDITAUTOREFILLREQUEST'].fields_by_name['setup_session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DEFINEBUSINESSPROCESSREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_DEFINEBUSINESSPROCESSREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_STARTBUSINESSPROCESSREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_STARTBUSINESSPROCESSREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_TRANSITIONBUSINESSPROCESSREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_TRANSITIONBUSINESSPROCESSREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_OPERATINGPROJECTSNAPSHOTFILEINPUT'].fields_by_name['path']._loaded_options = None + _globals['_OPERATINGPROJECTSNAPSHOTFILEINPUT'].fields_by_name['path']._serialized_options = b'\272H\007r\005\020\001\030\200\010' + _globals['_OPERATINGPROJECTSNAPSHOTFILEINPUT'].fields_by_name['attachment']._loaded_options = None + _globals['_OPERATINGPROJECTSNAPSHOTFILEINPUT'].fields_by_name['attachment']._serialized_options = b'\272H\003\310\001\001' + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['project_resource_id']._loaded_options = None + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['project_resource_id']._serialized_options = b'\272H\007r\005\020\001\030\377\001' + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\377\001' + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['files']._loaded_options = None + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['files']._serialized_options = b'\272H\006\222\001\003\020\350\007' + _globals['_GETOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['project_resource_id']._loaded_options = None + _globals['_GETOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['project_resource_id']._serialized_options = b'\272H\007r\005\020\001\030\377\001' + _globals['_GETOPERATINGTASKENVIRONMENTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_GETOPERATINGTASKENVIRONMENTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETOPERATINGTASKENVIRONMENTREQUEST'].fields_by_name['channel_id']._loaded_options = None + _globals['_GETOPERATINGTASKENVIRONMENTREQUEST'].fields_by_name['channel_id']._serialized_options = b'\272H\007r\005\020\001\030\377\001' + _globals['_GETOPERATINGTASKENVIRONMENTREQUEST'].fields_by_name['task_id']._loaded_options = None + _globals['_GETOPERATINGTASKENVIRONMENTREQUEST'].fields_by_name['task_id']._serialized_options = b'\272H\007r\005\020\001\030\377\001' + _globals['_IMPORTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_IMPORTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_IMPORTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['project_resource_id']._loaded_options = None + _globals['_IMPORTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['project_resource_id']._serialized_options = b'\272H\007r\005\020\001\030\377\001' + _globals['_IMPORTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_IMPORTOPERATINGPROJECTSNAPSHOTREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\377\001' + _globals['_LISTBUSINESSBLUEPRINTSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTBUSINESSBLUEPRINTSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTBUSINESSBLUEPRINTSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTBUSINESSBLUEPRINTSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['blueprint_id']._loaded_options = None + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['blueprint_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['version']._loaded_options = None + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['version']._serialized_options = b'\272H\004\"\002 \000' + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['content_digest']._loaded_options = None + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['content_digest']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['name']._loaded_options = None + _globals['_CLONEBUSINESSBLUEPRINTREQUEST'].fields_by_name['name']._serialized_options = b'\272H\006r\004\020\001\030x' + _globals['_CAPTUREFORMINVITATION'].fields_by_name['recipient_email']._loaded_options = None + _globals['_CAPTUREFORMINVITATION'].fields_by_name['recipient_email']._serialized_options = b'\200\364\030\002' + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['publication_id']._loaded_options = None + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['publication_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['recipient_email']._loaded_options = None + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['recipient_email']._serialized_options = b'\272H\004r\002`\001' + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['expires_at']._loaded_options = None + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['expires_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['bound_values']._loaded_options = None + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['bound_values']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CREATECAPTUREFORMINVITATIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_CREATECAPTUREFORMINVITATIONRESPONSE'].fields_by_name['invitation']._loaded_options = None + _globals['_CREATECAPTUREFORMINVITATIONRESPONSE'].fields_by_name['invitation']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVOKECAPTUREFORMINVITATIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_REVOKECAPTUREFORMINVITATIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKECAPTUREFORMINVITATIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_REVOKECAPTUREFORMINVITATIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKECAPTUREFORMINVITATIONREQUEST'].fields_by_name['invitation_id']._loaded_options = None + _globals['_REVOKECAPTUREFORMINVITATIONREQUEST'].fields_by_name['invitation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKECAPTUREFORMINVITATIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_REVOKECAPTUREFORMINVITATIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_REVOKECAPTUREFORMINVITATIONRESPONSE'].fields_by_name['invitation']._loaded_options = None + _globals['_REVOKECAPTUREFORMINVITATIONRESPONSE'].fields_by_name['invitation']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETINVITEDCAPTUREFORMREQUEST'].fields_by_name['invitation_id']._loaded_options = None + _globals['_GETINVITEDCAPTUREFORMREQUEST'].fields_by_name['invitation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITINVITEDCAPTUREFORMREQUEST'].fields_by_name['invitation_id']._loaded_options = None + _globals['_SUBMITINVITEDCAPTUREFORMREQUEST'].fields_by_name['invitation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITINVITEDCAPTUREFORMREQUEST'].fields_by_name['answers']._loaded_options = None + _globals['_SUBMITINVITEDCAPTUREFORMREQUEST'].fields_by_name['answers']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_SUBMITINVITEDCAPTUREFORMREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SUBMITINVITEDCAPTUREFORMREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_SUBMITINVITEDCAPTUREFORMRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_SUBMITINVITEDCAPTUREFORMRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETSTAFFMANAGEDINFERENCEREADINESSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETSTAFFMANAGEDINFERENCEREADINESSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSTAFFMANAGEDINFERENCEREADINESSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETSTAFFMANAGEDINFERENCEREADINESSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETMANAGEDINFERENCEREADINESSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETMANAGEDINFERENCEREADINESSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETMANAGEDINFERENCEREADINESSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETMANAGEDINFERENCEREADINESSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSTAFFMANAGEDINFERENCEFUNDINGREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETSTAFFMANAGEDINFERENCEFUNDINGREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSTAFFMANAGEDINFERENCEFUNDINGREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETSTAFFMANAGEDINFERENCEFUNDINGREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GRANTSTAFFMANAGEDINFERENCECREDITSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GRANTSTAFFMANAGEDINFERENCECREDITSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GRANTSTAFFMANAGEDINFERENCECREDITSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GRANTSTAFFMANAGEDINFERENCECREDITSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSTAFFMANAGEDINFERENCEUSAGEREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETSTAFFMANAGEDINFERENCEUSAGEREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSTAFFMANAGEDINFERENCEUSAGEREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETSTAFFMANAGEDINFERENCEUSAGEREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSTAFFMANAGEDINFERENCEBUDGETREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETSTAFFMANAGEDINFERENCEBUDGETREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSTAFFMANAGEDINFERENCEBUDGETREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETSTAFFMANAGEDINFERENCEBUDGETREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETSTAFFMANAGEDINFERENCEBUDGETREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_SETSTAFFMANAGEDINFERENCEBUDGETREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SETSTAFFMANAGEDINFERENCEBUDGETREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_SETSTAFFMANAGEDINFERENCEBUDGETREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTMANAGEDPROVIDERACCESSEVENTSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTMANAGEDPROVIDERACCESSEVENTSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTMANAGEDPROVIDERACCESSEVENTSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTMANAGEDPROVIDERACCESSEVENTSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTMANAGEDPROVIDERACCESSEVENTSREQUEST'].fields_by_name['page_size']._loaded_options = None + _globals['_LISTMANAGEDPROVIDERACCESSEVENTSREQUEST'].fields_by_name['page_size']._serialized_options = b'\272H\006\032\004\030d(\000' + _globals['_LISTSTAFFMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTSTAFFMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTSTAFFMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTSTAFFMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST'].fields_by_name['session_id']._loaded_options = None + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST'].fields_by_name['session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST'].fields_by_name['after_sequence']._loaded_options = None + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST'].fields_by_name['after_sequence']._serialized_options = b'\272H\004\"\002(\000' + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\006\032\004\030d(\000' + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESREQUEST'].fields_by_name['lineage_id']._loaded_options = None + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESREQUEST'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\006\032\004\030d(\000' + _globals['_PROSPECTINGDRAFTTARGETACCOUNT'].fields_by_name['account_organization_id']._loaded_options = None + _globals['_PROSPECTINGDRAFTTARGETACCOUNT'].fields_by_name['account_organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGDRAFTTARGETACCOUNT'].fields_by_name['account_workspace_id']._loaded_options = None + _globals['_PROSPECTINGDRAFTTARGETACCOUNT'].fields_by_name['account_workspace_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_PROSPECTINGDRAFTTARGETACCOUNT'].fields_by_name['identity_revision']._loaded_options = None + _globals['_PROSPECTINGDRAFTTARGETACCOUNT'].fields_by_name['identity_revision']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_PROSPECTINGDRAFTTARGETACCOUNT'].fields_by_name['access_grant_id']._loaded_options = None + _globals['_PROSPECTINGDRAFTTARGETACCOUNT'].fields_by_name['access_grant_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_PROSPECTINGDRAFT'].fields_by_name['organization_id']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['workspace_id']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['draft_id']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['draft_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['candidate_id']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['candidate_id']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['target_account']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['target_account']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['channel']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['channel']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['tone']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['tone']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['evidence_ids']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['evidence_ids']._serialized_options = b'\272H\007\222\001\004\010\001\0202' + _globals['_PROSPECTINGDRAFT'].fields_by_name['content_digest_sha256']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['content_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_PROSPECTINGDRAFT'].fields_by_name['review_state']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['review_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['reviewer_principal_id']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['reviewer_principal_id']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_PROSPECTINGDRAFT'].fields_by_name['reason']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['reason']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_PROSPECTINGDRAFT'].fields_by_name['revision']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_PROSPECTINGDRAFT'].fields_by_name['created_by_principal_id']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['created_by_principal_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['updated_by_principal_id']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['updated_by_principal_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['audit_receipt_id']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['audit_receipt_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['created_at']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['created_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROSPECTINGDRAFT'].fields_by_name['updated_at']._loaded_options = None + _globals['_PROSPECTINGDRAFT'].fields_by_name['updated_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROSPECTINGDRAFTMUTATIONRECEIPT'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_PROSPECTINGDRAFTMUTATIONRECEIPT'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROSPECTINGDRAFTMUTATIONRECEIPT'].fields_by_name['request_digest_sha256']._loaded_options = None + _globals['_PROSPECTINGDRAFTMUTATIONRECEIPT'].fields_by_name['request_digest_sha256']._serialized_options = b'\272H\022r\0202\016^[0-9a-f]{64}$' + _globals['_PROSPECTINGDRAFTMUTATIONRECEIPT'].fields_by_name['revision']._loaded_options = None + _globals['_PROSPECTINGDRAFTMUTATIONRECEIPT'].fields_by_name['revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_PROSPECTINGDRAFTMUTATIONRECEIPT'].fields_by_name['audit_receipt_id']._loaded_options = None + _globals['_PROSPECTINGDRAFTMUTATIONRECEIPT'].fields_by_name['audit_receipt_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['candidate_id']._loaded_options = None + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['candidate_id']._serialized_options = b'\272H\007r\005\020\001\030\200\001' + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['target_account']._loaded_options = None + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['target_account']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['channel']._loaded_options = None + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['channel']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['tone']._loaded_options = None + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['tone']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['evidence_ids']._loaded_options = None + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['evidence_ids']._serialized_options = b'\272H\007\222\001\004\010\001\0202' + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CREATEPROSPECTINGDRAFTREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_CREATEPROSPECTINGDRAFTRESPONSE'].fields_by_name['draft']._loaded_options = None + _globals['_CREATEPROSPECTINGDRAFTRESPONSE'].fields_by_name['draft']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEPROSPECTINGDRAFTRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_CREATEPROSPECTINGDRAFTRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTPROSPECTINGDRAFTSREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_LISTPROSPECTINGDRAFTSREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTPROSPECTINGDRAFTSRESPONSE'].fields_by_name['drafts']._loaded_options = None + _globals['_LISTPROSPECTINGDRAFTSRESPONSE'].fields_by_name['drafts']._serialized_options = b'\272H\005\222\001\002\020d' + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['query']._loaded_options = None + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['query']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['draft_id']._loaded_options = None + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['draft_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['decision']._loaded_options = None + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['decision']._serialized_options = b'\272H\t\202\001\006\020\001\030\002\030\003' + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['expected_revision']._loaded_options = None + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['expected_revision']._serialized_options = b'\272H\004\"\002 \000' + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\007r\005\020\001\030\200\004' + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_REVIEWPROSPECTINGDRAFTREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\007r\005\020\001\030\200\002' + _globals['_REVIEWPROSPECTINGDRAFTRESPONSE'].fields_by_name['draft']._loaded_options = None + _globals['_REVIEWPROSPECTINGDRAFTRESPONSE'].fields_by_name['draft']._serialized_options = b'\272H\003\310\001\001' + _globals['_REVIEWPROSPECTINGDRAFTRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_REVIEWPROSPECTINGDRAFTRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_WORKSPACEBRANDVOICE_SCOPE'].fields_by_name['kind']._loaded_options = None + _globals['_WORKSPACEBRANDVOICE_SCOPE'].fields_by_name['kind']._serialized_options = b'\272H\004r\002\030@\200\364\030\004' + _globals['_WORKSPACEBRANDVOICE_SCOPE'].fields_by_name['value']._loaded_options = None + _globals['_WORKSPACEBRANDVOICE_SCOPE'].fields_by_name['value']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\004' + _globals['_WORKSPACEBRANDVOICE'].fields_by_name['voice_id']._loaded_options = None + _globals['_WORKSPACEBRANDVOICE'].fields_by_name['voice_id']._serialized_options = b'\272H\005r\003\030\200\001\200\364\030\002' + _globals['_WORKSPACEBRANDVOICE'].fields_by_name['name']._loaded_options = None + _globals['_WORKSPACEBRANDVOICE'].fields_by_name['name']._serialized_options = b'\272H\004r\002\030P\200\364\030\004' + _globals['_WORKSPACEBRANDVOICE'].fields_by_name['description']._loaded_options = None + _globals['_WORKSPACEBRANDVOICE'].fields_by_name['description']._serialized_options = b'\272H\005r\003\030\230\002\200\364\030\004' + _globals['_WORKSPACEBRANDVOICE'].fields_by_name['guidance']._loaded_options = None + _globals['_WORKSPACEBRANDVOICE'].fields_by_name['guidance']._serialized_options = b'\272H\005r\003\030\240\037\200\364\030\004' + _globals['_WORKSPACEBRANDVOICE'].fields_by_name['archived']._loaded_options = None + _globals['_WORKSPACEBRANDVOICE'].fields_by_name['archived']._serialized_options = b'\200\364\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessBlueprints']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessBlueprints']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['CloneBusinessBlueprint']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CloneBusinessBlueprint']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['GetBusinessProcessDefinition']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetBusinessProcessDefinition']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessProcessDefinitions']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessProcessDefinitions']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['DefineBusinessProcess']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['DefineBusinessProcess']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['StartBusinessProcess']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['StartBusinessProcess']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['GetBusinessProcess']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetBusinessProcess']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessProcesses']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessProcesses']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['TransitionBusinessProcess']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['TransitionBusinessProcess']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['PrepareBusinessObjectAuthorityTransfer']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['PrepareBusinessObjectAuthorityTransfer']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['FinalizeBusinessObjectAuthorityTransfer']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['FinalizeBusinessObjectAuthorityTransfer']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['DefineBusinessObjectType']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['DefineBusinessObjectType']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['GetBusinessObjectType']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetBusinessObjectType']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessObjectTypes']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessObjectTypes']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['CreateBusinessObject']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateBusinessObject']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['GetBusinessObject']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetBusinessObject']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessObjects']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessObjects']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateBusinessObject']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateBusinessObject']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['DeleteBusinessObject']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['DeleteBusinessObject']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessObjectRevisions']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessObjectRevisions']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['BindBusinessObjectSource']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['BindBusinessObjectSource']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['AdmitBusinessObjectObservation']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['AdmitBusinessObjectObservation']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessObjectRelationships']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListBusinessObjectRelationships']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['CreateBusinessObjectRelationship']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateBusinessObjectRelationship']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['DeleteBusinessObjectRelationship']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['DeleteBusinessObjectRelationship']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['CreateCaptureForm']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateCaptureForm']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListCaptureForms']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListCaptureForms']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['GetCaptureForm']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetCaptureForm']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateCaptureForm']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateCaptureForm']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['PublishCaptureForm']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['PublishCaptureForm']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['RevokeCaptureFormPublication']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RevokeCaptureFormPublication']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['CreateCaptureFormInvitation']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateCaptureFormInvitation']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['RevokeCaptureFormInvitation']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RevokeCaptureFormInvitation']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['GetInvitedCaptureForm']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetInvitedCaptureForm']._serialized_options = b'\340\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['SubmitInvitedCaptureForm']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SubmitInvitedCaptureForm']._serialized_options = b'\340\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetPublishedCaptureForm']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetPublishedCaptureForm']._serialized_options = b'\340\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetPublishedCaptureFormBrandingAsset']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetPublishedCaptureFormBrandingAsset']._serialized_options = b'\340\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['SubmitPublishedCaptureForm']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SubmitPublishedCaptureForm']._serialized_options = b'\340\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['BeginPublishedCaptureFormUpload']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['BeginPublishedCaptureFormUpload']._serialized_options = b'\340\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['CompletePublishedCaptureFormUpload']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CompletePublishedCaptureFormUpload']._serialized_options = b'\340\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetCaptureFormSubmission']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetCaptureFormSubmission']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListCaptureFormSubmissions']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListCaptureFormSubmissions']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ReviewCaptureFormSubmission']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ReviewCaptureFormSubmission']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['GetInferenceCreditAutoRefill']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetInferenceCreditAutoRefill']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateInferenceCreditAutoRefill']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateInferenceCreditAutoRefill']._serialized_options = b'\312\363\030\rbilling:admin\322\363\030\014workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['CompleteInferenceCreditAutoRefill']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CompleteInferenceCreditAutoRefill']._serialized_options = b'\312\363\030\rbilling:admin\322\363\030\014workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['ListInferenceCreditReceipts']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListInferenceCreditReceipts']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetOverview']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetOverview']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetConsoleBootSnapshot']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetConsoleBootSnapshot']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListAssets']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListAssets']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetAsset']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetAsset']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListActivity']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListActivity']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['SearchStaffWorkspaceDirectory']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SearchStaffWorkspaceDirectory']._serialized_options = b'\330\363\030\001\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffWorkspaceContext']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffWorkspaceContext']._serialized_options = b'\312\363\030\025support_access.manage\330\363\030\001\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffManagedInferenceFunding']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffManagedInferenceFunding']._serialized_options = b'\312\363\030\025support_access.manage\312\363\030\027managed_inference:admin\312\363\030\nmeter:read\330\363\030\001\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GrantStaffManagedInferenceCredits']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GrantStaffManagedInferenceCredits']._serialized_options = b'\312\363\030\025support_access.manage\312\363\030\027managed_inference:admin\312\363\030\037meter:credits:grant-development\330\363\030\003\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffManagedInferenceUsage']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffManagedInferenceUsage']._serialized_options = b'\312\363\030\025support_access.manage\312\363\030\027managed_inference:admin\312\363\030\nmeter:read\330\363\030\001\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffManagedInferenceBudget']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffManagedInferenceBudget']._serialized_options = b'\312\363\030\025support_access.manage\312\363\030\027managed_inference:admin\312\363\030\nmeter:read\330\363\030\001\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['SetStaffManagedInferenceBudget']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SetStaffManagedInferenceBudget']._serialized_options = b'\312\363\030\025support_access.manage\312\363\030\027managed_inference:admin\312\363\030\013meter:write\330\363\030\003\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffManagedInferenceReadiness']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffManagedInferenceReadiness']._serialized_options = b'\312\363\030\025support_access.manage\312\363\030\027managed_inference:admin\330\363\030\001\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetManagedInferenceReadiness']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetManagedInferenceReadiness']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListManagedProviderAccessGrants']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListManagedProviderAccessGrants']._serialized_options = b'\330\363\030\001\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListManagedProviderAccessEvents']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListManagedProviderAccessEvents']._serialized_options = b'\330\363\030\001\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListStaffManagedInferenceAdminEvents']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListStaffManagedInferenceAdminEvents']._serialized_options = b'\330\363\030\001\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListStaffManagedExecutionGrantEvents']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListStaffManagedExecutionGrantEvents']._serialized_options = b'\330\363\030\001\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListStaffManagedExecutionOutcomes']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListStaffManagedExecutionOutcomes']._serialized_options = b'\330\363\030\001\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['UpsertManagedProviderAccessGrant']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpsertManagedProviderAccessGrant']._serialized_options = b'\330\363\030\003\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['RevokeManagedProviderAccessGrant']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RevokeManagedProviderAccessGrant']._serialized_options = b'\330\363\030\003\360\363\030\001\370\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffInferenceRoutingProfile']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetStaffInferenceRoutingProfile']._serialized_options = b'\330\363\030\001\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateStaffInferenceRoutingProfile']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateStaffInferenceRoutingProfile']._serialized_options = b'\330\363\030\003\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListEvalResults']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListEvalResults']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListCostUsage']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListCostUsage']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['RecordProviderCostSnapshot']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RecordProviderCostSnapshot']._serialized_options = b'\312\363\030\013meter:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListAuthorityPosture']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListAuthorityPosture']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListAgentWorkforceRecords']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListAgentWorkforceRecords']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListOrbControlTargets']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListOrbControlTargets']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001\352\363\030\025query.organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['GetOrbControlTarget']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetOrbControlTarget']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001\352\363\030\025query.organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['SubmitOrbControlAction']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SubmitOrbControlAction']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003\352\363\030\025query.organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['SubmitAgentWorkforceEvidence']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SubmitAgentWorkforceEvidence']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ListFindings']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListFindings']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetTraceDrilldown']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetTraceDrilldown']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListIntegrationTiles']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListIntegrationTiles']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListPinnedSources']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListPinnedSources']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['SetPinnedSource']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SetPinnedSource']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['UnpinSource']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UnpinSource']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['CreateDexMcpServer']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateDexMcpServer']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['ListDexMcpServers']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListDexMcpServers']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetDexMcpServer']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetDexMcpServer']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['DiscoverDexMcpServer']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['DiscoverDexMcpServer']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateDexMcpServer']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateDexMcpServer']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['DeleteDexMcpServer']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['DeleteDexMcpServer']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['InitiateDexMcpOAuthProfile']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['InitiateDexMcpOAuthProfile']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['CompleteDexMcpOAuthProfile']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CompleteDexMcpOAuthProfile']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\004' + _globals['_CONSOLESERVICE'].methods_by_name['ListDexMcpOAuthProfiles']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListDexMcpOAuthProfiles']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['RevokeDexMcpOAuthProfile']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RevokeDexMcpOAuthProfile']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ReauthorizeDexMcpOAuthProfile']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ReauthorizeDexMcpOAuthProfile']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\004' + _globals['_CONSOLESERVICE'].methods_by_name['RegisterPrivateEndpoint']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RegisterPrivateEndpoint']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['VerifyPrivateEndpoint']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['VerifyPrivateEndpoint']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\003\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListPrivateEndpoints']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListPrivateEndpoints']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['DeletePrivateEndpoint']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['DeletePrivateEndpoint']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['AttachPrivateEndpointToProfile']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['AttachPrivateEndpointToProfile']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ListGatewayEgressOrigins']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListGatewayEgressOrigins']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetOnboardingPlan']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetOnboardingPlan']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListOperatingChannels']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListOperatingChannels']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListOperatingJobs']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListOperatingJobs']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ArchiveOperatingThread']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ArchiveOperatingThread']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['RenameOperatingThread']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RenameOperatingThread']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingThread']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingThread']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['BootstrapThreadGateway']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['BootstrapThreadGateway']._serialized_options = b'\312\363\030\rconsole:write\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['PrewarmOperatingThread']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['PrewarmOperatingThread']._serialized_options = b'\312\363\030\rconsole:write\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ListOperatingThreadEvents']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListOperatingThreadEvents']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['WatchOperatingThread']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['WatchOperatingThread']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['RespondOperatingThread']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RespondOperatingThread']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['InterruptOperatingThread']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['InterruptOperatingThread']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['SearchOperatingHistory']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SearchOperatingHistory']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingHistoryContext']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingHistoryContext']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['AcceptOperatingProjectSnapshot']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['AcceptOperatingProjectSnapshot']._serialized_options = b'\220\002\002\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002\352\363\030\025query.organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ImportOperatingProjectSnapshot']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ImportOperatingProjectSnapshot']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002\352\363\030\025query.organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingTaskEnvironment']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingTaskEnvironment']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001\352\363\030\025query.organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingProjectSnapshot']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingProjectSnapshot']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001\352\363\030\025query.organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['SubmitOperatingMessage']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SubmitOperatingMessage']._serialized_options = b'\312\363\030\rconsole:write\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['SubmitOperatingCorrection']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SubmitOperatingCorrection']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['SubmitOperatingFeedback']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SubmitOperatingFeedback']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['SubmitProductIssueReport']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SubmitProductIssueReport']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['SubmitNativeProductIssueReport']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SubmitNativeProductIssueReport']._serialized_options = b'\312\363\030\024product_issues:write\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListStaffProductIssueReports']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListStaffProductIssueReports']._serialized_options = b'\330\363\030\001\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['EngageStaffProductIssueReport']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['EngageStaffProductIssueReport']._serialized_options = b'\330\363\030\002\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingFeedback']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingFeedback']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ResolveOperatingFeedbackRemediation']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ResolveOperatingFeedbackRemediation']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListCustomerIntelligenceFacts']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListCustomerIntelligenceFacts']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetCustomerIntelligenceFact']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetCustomerIntelligenceFact']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ReviewCustomerIntelligenceFact']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ReviewCustomerIntelligenceFact']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ProposeCustomerIntelligenceFact']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ProposeCustomerIntelligenceFact']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['RespondToCustomerFactConfirmation']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RespondToCustomerFactConfirmation']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['AggregateCustomerIntelligencePatterns']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['AggregateCustomerIntelligencePatterns']._serialized_options = b'\312\363\030\014console:read\330\363\030\001\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListOperatingCorrections']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListOperatingCorrections']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ReviewOperatingCorrection']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ReviewOperatingCorrection']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ListWorkspaceMemories']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListWorkspaceMemories']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['CorrectWorkspaceMemory']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CorrectWorkspaceMemory']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['ReviewWorkspaceMemory']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ReviewWorkspaceMemory']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['ForgetWorkspaceMemory']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ForgetWorkspaceMemory']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['BeginOperatingAttachmentUpload']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['BeginOperatingAttachmentUpload']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002\352\363\030\025query.organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['CompleteOperatingAttachmentUpload']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CompleteOperatingAttachmentUpload']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002\352\363\030\025query.organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListOperatingAttachments']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListOperatingAttachments']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001\352\363\030\025query.organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ResolveOperatingReceiptAction']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ResolveOperatingReceiptAction']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingReceipt']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatingReceipt']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['SubmitComputerMission']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SubmitComputerMission']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['GetComputerMission']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetComputerMission']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['CancelComputerMission']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CancelComputerMission']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ContinueComputerMission']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ContinueComputerMission']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['PauseComputerMission']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['PauseComputerMission']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ResumeComputerMission']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ResumeComputerMission']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['WakeComputerMission']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['WakeComputerMission']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['GuideComputerMission']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GuideComputerMission']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ListComputerMissionCanaryDefinitions']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListComputerMissionCanaryDefinitions']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['StartComputerMissionCanaryRun']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['StartComputerMissionCanaryRun']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['GetComputerMissionCanaryRun']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetComputerMissionCanaryRun']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListComputerMissionCanaryRuns']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListComputerMissionCanaryRuns']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetComputerMissionCanaryEvidence']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetComputerMissionCanaryEvidence']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['OperateComputerMissionCanaryRun']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['OperateComputerMissionCanaryRun']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['CreateMissionSchedule']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateMissionSchedule']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateMissionSchedule']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateMissionSchedule']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['SetMissionScheduleEnabled']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SetMissionScheduleEnabled']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ListMissionSchedules']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListMissionSchedules']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['CreateConnectorTrigger']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateConnectorTrigger']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateConnectorTrigger']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateConnectorTrigger']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ListConnectorTriggers']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListConnectorTriggers']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['DeleteConnectorTrigger']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['DeleteConnectorTrigger']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['SetConnectorTriggerEnabled']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SetConnectorTriggerEnabled']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ReserveComputerMissionApexSession']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ReserveComputerMissionApexSession']._serialized_options = b'\312\363\030\rconsole:write\312\363\030\030apex:reservation:reserve\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['BindComputerMissionApexSessionReservation']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['BindComputerMissionApexSessionReservation']._serialized_options = b'\312\363\030\rconsole:write\312\363\030\025apex:reservation:bind\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['BindComputerMissionApexInstructionMetadata']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['BindComputerMissionApexInstructionMetadata']._serialized_options = b'\312\363\030\rconsole:write\312\363\030\025apex:instruction:bind\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['AuthorizeComputerMissionApexSessionAdoption']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['AuthorizeComputerMissionApexSessionAdoption']._serialized_options = b'\312\363\030\rconsole:write\312\363\030\026apex:reservation:adopt\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['GetWorkspaceSettings']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetWorkspaceSettings']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatorPreferences']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetOperatorPreferences']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateOperatorPreferences']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateOperatorPreferences']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['CreateConnectorProfile']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateConnectorProfile']._serialized_options = b'\312\363\030\020connectors:write\312\363\030\017connectors:read\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['ListConnectorProfiles']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListConnectorProfiles']._serialized_options = b'\312\363\030\017connectors:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateConnectorProfile']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateConnectorProfile']._serialized_options = b'\312\363\030\020connectors:write\312\363\030\017connectors:read\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['DeleteConnectorProfile']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['DeleteConnectorProfile']._serialized_options = b'\312\363\030\020connectors:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['ListConnectedCalls']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListConnectedCalls']._serialized_options = b'\312\363\030\014console:read\312\363\030\017connectors:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['StartMeetingCapture']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['StartMeetingCapture']._serialized_options = b'\312\363\030\016platform:write\312\363\030\017connectors:read\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['GetMeetingCapture']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetMeetingCapture']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListMeetingCaptures']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListMeetingCaptures']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['StopMeetingCapture']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['StopMeetingCapture']._serialized_options = b'\312\363\030\016platform:write\312\363\030\017connectors:read\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['ListCommitments']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListCommitments']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetBillingSubscription']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetBillingSubscription']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['CreateBillingPortalSession']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateBillingPortalSession']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['CreateBillingCheckoutSession']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateBillingCheckoutSession']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['GetInferenceCreditBalance']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetInferenceCreditBalance']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['CreateInferenceCreditCheckout']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateInferenceCreditCheckout']._serialized_options = b'\312\363\030\rbilling:admin\322\363\030\014workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['FulfillInferenceCreditCheckout']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['FulfillInferenceCreditCheckout']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceProfile']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceProfile']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['ArchiveWorkspace']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ArchiveWorkspace']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspacePolicy']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspacePolicy']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceDexPolicy']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceDexPolicy']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceArtifactStyleGuide']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceArtifactStyleGuide']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['EvaluateWorkspaceArtifactStyleGuide']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['EvaluateWorkspaceArtifactStyleGuide']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['UpsertWorkspaceIdentityProvider']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpsertWorkspaceIdentityProvider']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['RemoveWorkspaceIdentityProvider']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RemoveWorkspaceIdentityProvider']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['UpsertWorkspaceIntegration']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpsertWorkspaceIntegration']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['RemoveWorkspaceIntegration']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RemoveWorkspaceIntegration']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceBilling']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceBilling']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['UpsertWorkspaceMember']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpsertWorkspaceMember']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['RemoveWorkspaceMember']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RemoveWorkspaceMember']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceNotificationPreferences']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceNotificationPreferences']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['EnableWorkspaceBreakGlass']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['EnableWorkspaceBreakGlass']._serialized_options = b'\312\363\030\025support_access.manage\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['DisableWorkspaceBreakGlass']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['DisableWorkspaceBreakGlass']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['ListWorkspaceSkills']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListWorkspaceSkills']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['BrowseDexSkillCatalog']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['BrowseDexSkillCatalog']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['InstallDexSkillCatalogEntry']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['InstallDexSkillCatalogEntry']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['CreateWorkspaceSkill']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateWorkspaceSkill']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceSkill']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateWorkspaceSkill']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['DeleteWorkspaceSkill']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['DeleteWorkspaceSkill']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['ListScenarioFixtures']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListScenarioFixtures']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['PromoteScenarioFixture']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['PromoteScenarioFixture']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['CompareScenarioFixtures']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CompareScenarioFixtures']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_CONSOLESERVICE'].methods_by_name['ListWorkspaceGuardrailRules']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListWorkspaceGuardrailRules']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['UpsertWorkspaceGuardrailRule']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpsertWorkspaceGuardrailRule']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['RemoveWorkspaceGuardrailRule']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RemoveWorkspaceGuardrailRule']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\002' + _globals['_CONSOLESERVICE'].methods_by_name['SetOperatingThreadController']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SetOperatingThreadController']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['GetPrivacySettings']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetPrivacySettings']._serialized_options = b'\312\363\030\014console:read\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['SetPrivacySettings']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['SetPrivacySettings']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\003' + _globals['_CONSOLESERVICE'].methods_by_name['CreateProspectingWatchProgram']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateProspectingWatchProgram']._serialized_options = b'\312\363\030\021prospecting.write\322\363\030\022query.workspace_id\330\363\030\003\352\363\030\025query.organization_id\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['GetProspectingWatchProgram']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['GetProspectingWatchProgram']._serialized_options = b'\312\363\030\020prospecting.read\322\363\030\022query.workspace_id\330\363\030\001\352\363\030\025query.organization_id\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListProspectingWatchPrograms']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListProspectingWatchPrograms']._serialized_options = b'\312\363\030\020prospecting.read\322\363\030\022query.workspace_id\330\363\030\001\352\363\030\025query.organization_id\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['UpdateProspectingWatchProgram']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['UpdateProspectingWatchProgram']._serialized_options = b'\312\363\030\021prospecting.write\322\363\030\022query.workspace_id\330\363\030\003\352\363\030\025query.organization_id\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['CreateProspectingDraft']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['CreateProspectingDraft']._serialized_options = b'\312\363\030\021prospecting.write\322\363\030\022query.workspace_id\330\363\030\003\352\363\030\025query.organization_id\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ListProspectingDrafts']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ListProspectingDrafts']._serialized_options = b'\312\363\030\020prospecting.read\322\363\030\022query.workspace_id\330\363\030\001\352\363\030\025query.organization_id\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['ReviewProspectingDraft']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['ReviewProspectingDraft']._serialized_options = b'\312\363\030\021prospecting.write\322\363\030\022query.workspace_id\330\363\030\003\352\363\030\025query.organization_id\360\363\030\001' + _globals['_CONSOLESERVICE'].methods_by_name['RecordOperatingHomepageSuggestionFeedback']._loaded_options = None + _globals['_CONSOLESERVICE'].methods_by_name['RecordOperatingHomepageSuggestionFeedback']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\022query.workspace_id\330\363\030\001' + _globals['_WORKSPACEKEYSERVICE'].methods_by_name['GetWorkspaceKeyConfig']._loaded_options = None + _globals['_WORKSPACEKEYSERVICE'].methods_by_name['GetWorkspaceKeyConfig']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_WORKSPACEKEYSERVICE'].methods_by_name['PutWorkspaceKeyConfig']._loaded_options = None + _globals['_WORKSPACEKEYSERVICE'].methods_by_name['PutWorkspaceKeyConfig']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_WORKSPACEKEYSERVICE'].methods_by_name['DeleteWorkspaceKeyConfig']._loaded_options = None + _globals['_WORKSPACEKEYSERVICE'].methods_by_name['DeleteWorkspaceKeyConfig']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_MANAGEDSETUPSERVICE'].methods_by_name['GetManagedSetup']._loaded_options = None + _globals['_MANAGEDSETUPSERVICE'].methods_by_name['GetManagedSetup']._serialized_options = b'\312\363\030\014console:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_MANAGEDSETUPSERVICE'].methods_by_name['SetManagedSetup']._loaded_options = None + _globals['_MANAGEDSETUPSERVICE'].methods_by_name['SetManagedSetup']._serialized_options = b'\312\363\030\rconsole:write\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_OPERATINGTURNROUTEKIND']._serialized_start=214222 + _globals['_OPERATINGTURNROUTEKIND']._serialized_end=214424 + _globals['_OPERATINGTURNINTENTKIND']._serialized_start=214427 + _globals['_OPERATINGTURNINTENTKIND']._serialized_end=214758 + _globals['_OPERATINGTURNANSWERKIND']._serialized_start=214761 + _globals['_OPERATINGTURNANSWERKIND']._serialized_end=215015 + _globals['_OPERATINGTURNSAFETYKIND']._serialized_start=215018 + _globals['_OPERATINGTURNSAFETYKIND']._serialized_end=215220 + _globals['_OPERATINGTHREADARCHIVEFILTER']._serialized_start=215223 + _globals['_OPERATINGTHREADARCHIVEFILTER']._serialized_end=215443 + _globals['_OPERATINGSURFACEKIND']._serialized_start=215446 + _globals['_OPERATINGSURFACEKIND']._serialized_end=215727 + _globals['_OPERATINGTURNSTATE']._serialized_start=215730 + _globals['_OPERATINGTURNSTATE']._serialized_end=216067 + _globals['_OPERATINGVERIFICATIONSTATE']._serialized_start=216070 + _globals['_OPERATINGVERIFICATIONSTATE']._serialized_end=216317 + _globals['_OPERATINGANSWERPROVENANCE']._serialized_start=216320 + _globals['_OPERATINGANSWERPROVENANCE']._serialized_end=216824 + _globals['_OPERATINGTHREADEXECUTIONSTATE']._serialized_start=216827 + _globals['_OPERATINGTHREADEXECUTIONSTATE']._serialized_end=217188 + _globals['_OPERATINGTHREADWAITINGREASON']._serialized_start=217191 + _globals['_OPERATINGTHREADWAITINGREASON']._serialized_end=217507 + _globals['_OPERATINGEXECUTIONRUNTIME']._serialized_start=217509 + _globals['_OPERATINGEXECUTIONRUNTIME']._serialized_end=217622 + _globals['_OPERATINGTHREADEVENTKIND']._serialized_start=217625 + _globals['_OPERATINGTHREADEVENTKIND']._serialized_end=218428 + _globals['_OPERATINGTHREADREQUESTTYPE']._serialized_start=218431 + _globals['_OPERATINGTHREADREQUESTTYPE']._serialized_end=218693 + _globals['_OPERATINGTHREADRESPONSEACTION']._serialized_start=218696 + _globals['_OPERATINGTHREADRESPONSEACTION']._serialized_end=219042 + _globals['_OPERATINGATTACHMENTSCOPE']._serialized_start=219045 + _globals['_OPERATINGATTACHMENTSCOPE']._serialized_end=219202 + _globals['_OPERATINGATTACHMENTPROCESSINGSTATE']._serialized_start=219205 + _globals['_OPERATINGATTACHMENTPROCESSINGSTATE']._serialized_end=219502 + _globals['_RECEIPTLIFECYCLESTATE']._serialized_start=219505 + _globals['_RECEIPTLIFECYCLESTATE']._serialized_end=220070 + _globals['_OPERATINGTASKKIND']._serialized_start=220073 + _globals['_OPERATINGTASKKIND']._serialized_end=220214 + _globals['_OPERATINGCORRECTIONCATEGORY']._serialized_start=220217 + _globals['_OPERATINGCORRECTIONCATEGORY']._serialized_end=220524 + _globals['_OPERATINGCORRECTIONREVIEWSTATE']._serialized_start=220527 + _globals['_OPERATINGCORRECTIONREVIEWSTATE']._serialized_end=220810 + _globals['_DEXCOMPUTERCORRECTIONLABEL']._serialized_start=220813 + _globals['_DEXCOMPUTERCORRECTIONLABEL']._serialized_end=221235 + _globals['_OPERATINGFEEDBACKSENTIMENT']._serialized_start=221238 + _globals['_OPERATINGFEEDBACKSENTIMENT']._serialized_end=221398 + _globals['_OPERATINGFEEDBACKREASON']._serialized_start=221401 + _globals['_OPERATINGFEEDBACKREASON']._serialized_end=222100 + _globals['_OPERATINGFEEDBACKCLASSIFICATIONSOURCE']._serialized_start=222103 + _globals['_OPERATINGFEEDBACKCLASSIFICATIONSOURCE']._serialized_end=222328 + _globals['_OPERATINGFEEDBACKREMEDIATIONACTION']._serialized_start=222331 + _globals['_OPERATINGFEEDBACKREMEDIATIONACTION']._serialized_end=222569 + _globals['_OPERATINGFEEDBACKREMEDIATIONOUTCOME']._serialized_start=222572 + _globals['_OPERATINGFEEDBACKREMEDIATIONOUTCOME']._serialized_end=222827 + _globals['_OPERATINGFEEDBACKLIFECYCLESTATE']._serialized_start=222830 + _globals['_OPERATINGFEEDBACKLIFECYCLESTATE']._serialized_end=223063 + _globals['_CUSTOMERINTELLIGENCEAUTHORITY']._serialized_start=223066 + _globals['_CUSTOMERINTELLIGENCEAUTHORITY']._serialized_end=223379 + _globals['_CUSTOMERINTELLIGENCELIFECYCLESTATE']._serialized_start=223382 + _globals['_CUSTOMERINTELLIGENCELIFECYCLESTATE']._serialized_end=223732 + _globals['_CUSTOMERINTELLIGENCESUBJECTKIND']._serialized_start=223735 + _globals['_CUSTOMERINTELLIGENCESUBJECTKIND']._serialized_end=224022 + _globals['_CUSTOMERINTELLIGENCEEVIDENCEPOLARITY']._serialized_start=224025 + _globals['_CUSTOMERINTELLIGENCEEVIDENCEPOLARITY']._serialized_end=224235 + _globals['_CUSTOMERINTELLIGENCEPRODUCERKIND']._serialized_start=224238 + _globals['_CUSTOMERINTELLIGENCEPRODUCERKIND']._serialized_end=224623 + _globals['_CUSTOMERINTELLIGENCEREVIEWDECISION']._serialized_start=224626 + _globals['_CUSTOMERINTELLIGENCEREVIEWDECISION']._serialized_end=225106 + _globals['_CUSTOMERFACTCONFIRMATIONRESPONSE']._serialized_start=225109 + _globals['_CUSTOMERFACTCONFIRMATIONRESPONSE']._serialized_end=225294 + _globals['_OPERATINGEXECUTIONPROFILEKIND']._serialized_start=225297 + _globals['_OPERATINGEXECUTIONPROFILEKIND']._serialized_end=225488 + _globals['_OPERATINGHOSTEDFRONTDECISIONKIND']._serialized_start=225491 + _globals['_OPERATINGHOSTEDFRONTDECISIONKIND']._serialized_end=225810 + _globals['_OPERATINGMANAGEDINFERENCEROUTING']._serialized_start=225813 + _globals['_OPERATINGMANAGEDINFERENCEROUTING']._serialized_end=225949 + _globals['_OPERATINGMANAGEDINFERENCEBUDGETORIGIN']._serialized_start=225952 + _globals['_OPERATINGMANAGEDINFERENCEBUDGETORIGIN']._serialized_end=226230 + _globals['_COMPUTERMISSIONAUTHORITYMODE']._serialized_start=226233 + _globals['_COMPUTERMISSIONAUTHORITYMODE']._serialized_end=226465 + _globals['_COMPUTERMISSIONSTATE']._serialized_start=226468 + _globals['_COMPUTERMISSIONSTATE']._serialized_end=227189 + _globals['_COMPUTERMISSIONCANARYSCENARIOKIND']._serialized_start=227192 + _globals['_COMPUTERMISSIONCANARYSCENARIOKIND']._serialized_end=227642 + _globals['_COMPUTERMISSIONEFFECTSTATE']._serialized_start=227645 + _globals['_COMPUTERMISSIONEFFECTSTATE']._serialized_end=228079 + _globals['_COMPUTERMISSIONCANARYRUNSTATE']._serialized_start=228082 + _globals['_COMPUTERMISSIONCANARYRUNSTATE']._serialized_end=228670 + _globals['_COMPUTERMISSIONCANARYSCOREDIMENSION']._serialized_start=228673 + _globals['_COMPUTERMISSIONCANARYSCOREDIMENSION']._serialized_end=229305 + _globals['_COMPUTERMISSIONCANARYRECOMMENDATION']._serialized_start=229308 + _globals['_COMPUTERMISSIONCANARYRECOMMENDATION']._serialized_end=229556 + _globals['_COMPUTERMISSIONCANARYOPERATORACTIONKIND']._serialized_start=229559 + _globals['_COMPUTERMISSIONCANARYOPERATORACTIONKIND']._serialized_end=229901 + _globals['_COMPUTERMISSIONROLLBACKARGUMENTSOURCE']._serialized_start=229904 + _globals['_COMPUTERMISSIONROLLBACKARGUMENTSOURCE']._serialized_end=230129 + _globals['_COMPUTERMISSIONDECISIONROUTE']._serialized_start=230132 + _globals['_COMPUTERMISSIONDECISIONROUTE']._serialized_end=230355 + _globals['_CONNECTORTRIGGERSOURCE']._serialized_start=230358 + _globals['_CONNECTORTRIGGERSOURCE']._serialized_end=230510 + _globals['_WORKSPACESETTINGSROLE']._serialized_start=230513 + _globals['_WORKSPACESETTINGSROLE']._serialized_end=230765 + _globals['_WORKSPACESETTINGSAVAILABILITYSTATUS']._serialized_start=230768 + _globals['_WORKSPACESETTINGSAVAILABILITYSTATUS']._serialized_end=230968 + _globals['_WORKSPACESETTINGSBILLINGSTATUS']._serialized_start=230971 + _globals['_WORKSPACESETTINGSBILLINGSTATUS']._serialized_end=231341 + _globals['_WORKSPACESETTINGSMEMBERSTATUS']._serialized_start=231344 + _globals['_WORKSPACESETTINGSMEMBERSTATUS']._serialized_end=231564 + _globals['_WORKSPACESETTINGSIDENTITYPROVIDERSTATUS']._serialized_start=231567 + _globals['_WORKSPACESETTINGSIDENTITYPROVIDERSTATUS']._serialized_end=231965 + _globals['_WORKSPACESETTINGSINTEGRATIONSTATUS']._serialized_start=231968 + _globals['_WORKSPACESETTINGSINTEGRATIONSTATUS']._serialized_end=232376 + _globals['_WORKSPACESETTINGSOWNERSERVICESTATUS']._serialized_start=232379 + _globals['_WORKSPACESETTINGSOWNERSERVICESTATUS']._serialized_end=232742 + _globals['_WORKSPACESETTINGSSOURCE']._serialized_start=232745 + _globals['_WORKSPACESETTINGSSOURCE']._serialized_end=233199 + _globals['_GUARDRAILDETECTORKIND']._serialized_start=233202 + _globals['_GUARDRAILDETECTORKIND']._serialized_end=233444 + _globals['_GUARDRAILACTION']._serialized_start=233447 + _globals['_GUARDRAILACTION']._serialized_end=233582 + _globals['_SKILLANALYSISVERDICT']._serialized_start=233585 + _globals['_SKILLANALYSISVERDICT']._serialized_end=233797 + _globals['_DEXSKILLPACKAGEFILEKIND']._serialized_start=233800 + _globals['_DEXSKILLPACKAGEFILEKIND']._serialized_end=234201 + _globals['_DEXSKILLFIXTUREKIND']._serialized_start=234204 + _globals['_DEXSKILLFIXTUREKIND']._serialized_end=234379 + _globals['_DEXSKILLLIFECYCLESTATE']._serialized_start=234382 + _globals['_DEXSKILLLIFECYCLESTATE']._serialized_end=234653 + _globals['_DEXSKILLRUNTIMEREADINESS']._serialized_start=234656 + _globals['_DEXSKILLRUNTIMEREADINESS']._serialized_end=234951 + _globals['_DEXSKILLCATALOGEXPOSURE']._serialized_start=234954 + _globals['_DEXSKILLCATALOGEXPOSURE']._serialized_end=235108 + _globals['_DEXAUTONOMYMODE']._serialized_start=235111 + _globals['_DEXAUTONOMYMODE']._serialized_end=235282 + _globals['_DEXEXTERNALACTIONMODE']._serialized_start=235285 + _globals['_DEXEXTERNALACTIONMODE']._serialized_end=235473 + _globals['_WORKSPACESPENDBEATCADENCE']._serialized_start=235476 + _globals['_WORKSPACESPENDBEATCADENCE']._serialized_end=235630 + _globals['_STAFFWORKSPACEACCESSSTATE']._serialized_start=235633 + _globals['_STAFFWORKSPACEACCESSSTATE']._serialized_end=235943 + _globals['_MANAGEDPROVIDERACCESSSTATE']._serialized_start=235946 + _globals['_MANAGEDPROVIDERACCESSSTATE']._serialized_end=236194 + _globals['_STAFFINFERENCEROUTINGPURPOSE']._serialized_start=236197 + _globals['_STAFFINFERENCEROUTINGPURPOSE']._serialized_end=236518 + _globals['_THREADGATEWAYPERMISSION']._serialized_start=236521 + _globals['_THREADGATEWAYPERMISSION']._serialized_end=236705 + _globals['_TENANTPRIVACYMODE']._serialized_start=236708 + _globals['_TENANTPRIVACYMODE']._serialized_end=236871 + _globals['_PRIVACYSETTINGSCOPE']._serialized_start=236874 + _globals['_PRIVACYSETTINGSCOPE']._serialized_end=237011 + _globals['_RULESCOPE']._serialized_start=237013 + _globals['_RULESCOPE']._serialized_end=237107 + _globals['_MCPPOLICYMODE']._serialized_start=237110 + _globals['_MCPPOLICYMODE']._serialized_end=237245 + _globals['_CONNECTEDCALLSOURCESTATE']._serialized_start=237248 + _globals['_CONNECTEDCALLSOURCESTATE']._serialized_end=237409 + _globals['_PROSPECTINGWATCHPROGRAMLIFECYCLE']._serialized_start=237412 + _globals['_PROSPECTINGWATCHPROGRAMLIFECYCLE']._serialized_end=237645 + _globals['_COMMITMENTSOURCESTATE']._serialized_start=237648 + _globals['_COMMITMENTSOURCESTATE']._serialized_end=237795 + _globals['_OPERATINGJOBSTATE']._serialized_start=237798 + _globals['_OPERATINGJOBSTATE']._serialized_end=238088 + _globals['_OPERATINGJOBVERIFICATIONSTATE']._serialized_start=238091 + _globals['_OPERATINGJOBVERIFICATIONSTATE']._serialized_end=238361 + _globals['_OPERATINGJOBORIGIN']._serialized_start=238364 + _globals['_OPERATINGJOBORIGIN']._serialized_end=238617 + _globals['_OPERATINGJOBPROOFSTATE']._serialized_start=238620 + _globals['_OPERATINGJOBPROOFSTATE']._serialized_end=238809 + _globals['_OPERATINGHOMEPAGESUGGESTIONFEEDBACKACTION']._serialized_start=238812 + _globals['_OPERATINGHOMEPAGESUGGESTIONFEEDBACKACTION']._serialized_end=239038 + _globals['_BUSINESSFIELDKIND']._serialized_start=239041 + _globals['_BUSINESSFIELDKIND']._serialized_end=239456 + _globals['_BUSINESSOBJECTRECORDKIND']._serialized_start=239459 + _globals['_BUSINESSOBJECTRECORDKIND']._serialized_end=239887 + _globals['_BUSINESSSOURCEPROPERTY']._serialized_start=239890 + _globals['_BUSINESSSOURCEPROPERTY']._serialized_end=240041 + _globals['_BUSINESSSOURCESTATE']._serialized_start=240044 + _globals['_BUSINESSSOURCESTATE']._serialized_end=240251 + _globals['_BUSINESSOBJECTRELATIONSHIPDIRECTION']._serialized_start=240254 + _globals['_BUSINESSOBJECTRELATIONSHIPDIRECTION']._serialized_end=240453 + _globals['_CAPTUREFORMSTATE']._serialized_start=240456 + _globals['_CAPTUREFORMSTATE']._serialized_end=240604 + _globals['_CAPTUREFORMPUBLICATIONSTATE']._serialized_start=240607 + _globals['_CAPTUREFORMPUBLICATIONSTATE']._serialized_end=240815 + _globals['_CAPTUREFORMSUBMISSIONSTATE']._serialized_start=240818 + _globals['_CAPTUREFORMSUBMISSIONSTATE']._serialized_end=241115 + _globals['_CAPTUREFORMREVIEWDECISION']._serialized_start=241118 + _globals['_CAPTUREFORMREVIEWDECISION']._serialized_end=241273 + _globals['_CAPTUREFORMFIELDKIND']._serialized_start=241276 + _globals['_CAPTUREFORMFIELDKIND']._serialized_end=241810 + _globals['_CAPTUREFORMMAPPINGSTATE']._serialized_start=241813 + _globals['_CAPTUREFORMMAPPINGSTATE']._serialized_end=241962 + _globals['_CAPTUREFORMOBJECTRESULTSTATE']._serialized_start=241965 + _globals['_CAPTUREFORMOBJECTRESULTSTATE']._serialized_end=242182 + _globals['_CAPTUREFORMBRANDINGASSETROLE']._serialized_start=242185 + _globals['_CAPTUREFORMBRANDINGASSETROLE']._serialized_end=242354 + _globals['_CAPTUREFORMUPLOADSTATE']._serialized_start=242357 + _globals['_CAPTUREFORMUPLOADSTATE']._serialized_end=242623 + _globals['_MANAGEDINFERENCEREADINESSSTATUS']._serialized_start=242626 + _globals['_MANAGEDINFERENCEREADINESSSTATUS']._serialized_end=243049 + _globals['_MANAGEDINFERENCEBLOCKER']._serialized_start=243052 + _globals['_MANAGEDINFERENCEBLOCKER']._serialized_end=243628 + _globals['_MANAGEDINFERENCENEXTACTION']._serialized_start=243631 + _globals['_MANAGEDINFERENCENEXTACTION']._serialized_end=243852 + _globals['_PROSPECTINGDRAFTCHANNEL']._serialized_start=243854 + _globals['_PROSPECTINGDRAFTCHANNEL']._serialized_end=243959 + _globals['_PROSPECTINGDRAFTTONE']._serialized_start=243962 + _globals['_PROSPECTINGDRAFTTONE']._serialized_end=244130 + _globals['_PROSPECTINGDRAFTREVIEWSTATE']._serialized_start=244133 + _globals['_PROSPECTINGDRAFTREVIEWSTATE']._serialized_end=244352 + _globals['_GETWORKSPACEKEYCONFIGREQUEST']._serialized_start=471 + _globals['_GETWORKSPACEKEYCONFIGREQUEST']._serialized_end=595 + _globals['_PUTWORKSPACEKEYCONFIGREQUEST']._serialized_start=598 + _globals['_PUTWORKSPACEKEYCONFIGREQUEST']._serialized_end=844 + _globals['_DELETEWORKSPACEKEYCONFIGREQUEST']._serialized_start=846 + _globals['_DELETEWORKSPACEKEYCONFIGREQUEST']._serialized_end=973 + _globals['_WORKSPACEKEYCONFIGRESPONSE']._serialized_start=976 + _globals['_WORKSPACEKEYCONFIGRESPONSE']._serialized_end=1231 + _globals['_TIMERANGE']._serialized_start=1233 + _globals['_TIMERANGE']._serialized_end=1358 + _globals['_CONSOLEQUERY']._serialized_start=1361 + _globals['_CONSOLEQUERY']._serialized_end=1822 + _globals['_OPERATINGCAPABILITYSTATE']._serialized_start=1825 + _globals['_OPERATINGCAPABILITYSTATE']._serialized_end=2109 + _globals['_OPERATINGTURNROUTE']._serialized_start=2112 + _globals['_OPERATINGTURNROUTE']._serialized_end=2481 + _globals['_OPERATINGCHANNEL']._serialized_start=2484 + _globals['_OPERATINGCHANNEL']._serialized_end=3096 + _globals['_OPERATINGSURFACEMETADATA']._serialized_start=3099 + _globals['_OPERATINGSURFACEMETADATA']._serialized_end=3440 + _globals['_OPERATINGMODELSELECTION']._serialized_start=3442 + _globals['_OPERATINGMODELSELECTION']._serialized_end=3537 + _globals['_OPERATINGMESSAGE']._serialized_start=3540 + _globals['_OPERATINGMESSAGE']._serialized_end=4117 + _globals['_OPERATINGTOOLEVENT']._serialized_start=4120 + _globals['_OPERATINGTOOLEVENT']._serialized_end=4315 + _globals['_OPERATINGTURNRECORD']._serialized_start=4318 + _globals['_OPERATINGTURNRECORD']._serialized_end=5447 + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY']._serialized_start=5450 + _globals['_OPERATINGCUSTOMEROUTCOMEIDENTITY']._serialized_end=6250 + _globals['_OPERATINGEXECUTIONIDENTITY']._serialized_start=6253 + _globals['_OPERATINGEXECUTIONIDENTITY']._serialized_end=6909 + _globals['_OPERATINGTHREADEXECUTION']._serialized_start=6912 + _globals['_OPERATINGTHREADEXECUTION']._serialized_end=7481 + _globals['_OPERATINGTHREADTURN']._serialized_start=7484 + _globals['_OPERATINGTHREADTURN']._serialized_end=8184 + _globals['_OPERATINGTHREADEVENT']._serialized_start=8187 + _globals['_OPERATINGTHREADEVENT']._serialized_end=8918 + _globals['_OPERATINGTHREADRESPONSE']._serialized_start=8921 + _globals['_OPERATINGTHREADRESPONSE']._serialized_end=9295 + _globals['_OPERATINGATTACHMENTREF']._serialized_start=9298 + _globals['_OPERATINGATTACHMENTREF']._serialized_end=9893 + _globals['_OPERATINGRECEIPT']._serialized_start=9896 + _globals['_OPERATINGRECEIPT']._serialized_end=10697 + _globals['_OPERATINGRECEIPTACTION']._serialized_start=10700 + _globals['_OPERATINGRECEIPTACTION']._serialized_end=10989 + _globals['_LISTOPERATINGCHANNELSREQUEST']._serialized_start=10992 + _globals['_LISTOPERATINGCHANNELSREQUEST']._serialized_end=11169 + _globals['_LISTOPERATINGCHANNELSRESPONSE']._serialized_start=11172 + _globals['_LISTOPERATINGCHANNELSRESPONSE']._serialized_end=11425 + _globals['_ARCHIVEOPERATINGTHREADREQUEST']._serialized_start=11428 + _globals['_ARCHIVEOPERATINGTHREADREQUEST']._serialized_end=11644 + _globals['_ARCHIVEOPERATINGTHREADRESPONSE']._serialized_start=11647 + _globals['_ARCHIVEOPERATINGTHREADRESPONSE']._serialized_end=11797 + _globals['_RENAMEOPERATINGTHREADREQUEST']._serialized_start=11800 + _globals['_RENAMEOPERATINGTHREADREQUEST']._serialized_end=11967 + _globals['_RENAMEOPERATINGTHREADRESPONSE']._serialized_start=11969 + _globals['_RENAMEOPERATINGTHREADRESPONSE']._serialized_end=12090 + _globals['_GETOPERATINGTHREADREQUEST']._serialized_start=12093 + _globals['_GETOPERATINGTHREADREQUEST']._serialized_end=12292 + _globals['_GETOPERATINGTHREADRESPONSE']._serialized_start=12295 + _globals['_GETOPERATINGTHREADRESPONSE']._serialized_end=13037 + _globals['_RESPONDOPERATINGTHREADREQUEST']._serialized_start=13040 + _globals['_RESPONDOPERATINGTHREADREQUEST']._serialized_end=13339 + _globals['_RESPONDOPERATINGTHREADRESPONSE']._serialized_start=13342 + _globals['_RESPONDOPERATINGTHREADRESPONSE']._serialized_end=13622 + _globals['_INTERRUPTOPERATINGTHREADREQUEST']._serialized_start=13625 + _globals['_INTERRUPTOPERATINGTHREADREQUEST']._serialized_end=13884 + _globals['_INTERRUPTOPERATINGTHREADRESPONSE']._serialized_start=13887 + _globals['_INTERRUPTOPERATINGTHREADRESPONSE']._serialized_end=14212 + _globals['_LISTOPERATINGTHREADEVENTSREQUEST']._serialized_start=14215 + _globals['_LISTOPERATINGTHREADEVENTSREQUEST']._serialized_end=14427 + _globals['_LISTOPERATINGTHREADEVENTSRESPONSE']._serialized_start=14430 + _globals['_LISTOPERATINGTHREADEVENTSRESPONSE']._serialized_end=14795 + _globals['_WATCHOPERATINGTHREADREQUEST']._serialized_start=14798 + _globals['_WATCHOPERATINGTHREADREQUEST']._serialized_end=14971 + _globals['_WATCHOPERATINGTHREADRESPONSE']._serialized_start=14974 + _globals['_WATCHOPERATINGTHREADRESPONSE']._serialized_end=15306 + _globals['_CODINGACCEPTANCECONTRACT']._serialized_start=15309 + _globals['_CODINGACCEPTANCECONTRACT']._serialized_end=15842 + _globals['_SUBMITOPERATINGMESSAGEREQUEST']._serialized_start=15845 + _globals['_SUBMITOPERATINGMESSAGEREQUEST']._serialized_end=16644 + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST']._serialized_start=16647 + _globals['_BEGINOPERATINGATTACHMENTUPLOADREQUEST']._serialized_end=17083 + _globals['_BEGINOPERATINGATTACHMENTUPLOADRESPONSE']._serialized_start=17086 + _globals['_BEGINOPERATINGATTACHMENTUPLOADRESPONSE']._serialized_end=17340 + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST']._serialized_start=17343 + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADREQUEST']._serialized_end=17928 + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADRESPONSE']._serialized_start=17930 + _globals['_COMPLETEOPERATINGATTACHMENTUPLOADRESPONSE']._serialized_end=18041 + _globals['_LISTOPERATINGATTACHMENTSREQUEST']._serialized_start=18044 + _globals['_LISTOPERATINGATTACHMENTSREQUEST']._serialized_end=18306 + _globals['_LISTOPERATINGATTACHMENTSRESPONSE']._serialized_start=18309 + _globals['_LISTOPERATINGATTACHMENTSRESPONSE']._serialized_end=18440 + _globals['_SUBMITOPERATINGMESSAGERESPONSE']._serialized_start=18443 + _globals['_SUBMITOPERATINGMESSAGERESPONSE']._serialized_end=18891 + _globals['_DEXCOMPUTERCORRECTIONEPISODE']._serialized_start=18894 + _globals['_DEXCOMPUTERCORRECTIONEPISODE']._serialized_end=19629 + _globals['_OPERATINGCORRECTIONCANDIDATE']._serialized_start=19632 + _globals['_OPERATINGCORRECTIONCANDIDATE']._serialized_end=20466 + _globals['_SUBMITOPERATINGCORRECTIONREQUEST']._serialized_start=20469 + _globals['_SUBMITOPERATINGCORRECTIONREQUEST']._serialized_end=20852 + _globals['_SUBMITOPERATINGCORRECTIONRESPONSE']._serialized_start=20854 + _globals['_SUBMITOPERATINGCORRECTIONRESPONSE']._serialized_end=20971 + _globals['_OPERATINGFEEDBACK']._serialized_start=20974 + _globals['_OPERATINGFEEDBACK']._serialized_end=22253 + _globals['_SUBMITOPERATINGFEEDBACKREQUEST']._serialized_start=22256 + _globals['_SUBMITOPERATINGFEEDBACKREQUEST']._serialized_end=23247 + _globals['_SUBMITOPERATINGFEEDBACKRESPONSE']._serialized_start=23250 + _globals['_SUBMITOPERATINGFEEDBACKRESPONSE']._serialized_end=23500 + _globals['_PRODUCTISSUEREPORT']._serialized_start=23503 + _globals['_PRODUCTISSUEREPORT']._serialized_end=23728 + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST']._serialized_start=23731 + _globals['_SUBMITPRODUCTISSUEREPORTREQUEST']._serialized_end=24409 + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST']._serialized_start=24412 + _globals['_SUBMITNATIVEPRODUCTISSUEREPORTREQUEST']._serialized_end=24846 + _globals['_PRODUCTISSUEREPORTCONTEXT']._serialized_start=24849 + _globals['_PRODUCTISSUEREPORTCONTEXT']._serialized_end=25051 + _globals['_PRODUCTISSUEREPORTEVIDENCE']._serialized_start=25054 + _globals['_PRODUCTISSUEREPORTEVIDENCE']._serialized_end=25192 + _globals['_SUBMITPRODUCTISSUEREPORTRESPONSE']._serialized_start=25194 + _globals['_SUBMITPRODUCTISSUEREPORTRESPONSE']._serialized_end=25292 + _globals['_STAFFPRODUCTISSUEREPORT']._serialized_start=25295 + _globals['_STAFFPRODUCTISSUEREPORT']._serialized_end=26427 + _globals['_LISTSTAFFPRODUCTISSUEREPORTSREQUEST']._serialized_start=26429 + _globals['_LISTSTAFFPRODUCTISSUEREPORTSREQUEST']._serialized_end=26551 + _globals['_LISTSTAFFPRODUCTISSUEREPORTSRESPONSE']._serialized_start=26553 + _globals['_LISTSTAFFPRODUCTISSUEREPORTSRESPONSE']._serialized_end=26654 + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST']._serialized_start=26657 + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTREQUEST']._serialized_end=26993 + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTRESPONSE']._serialized_start=26995 + _globals['_ENGAGESTAFFPRODUCTISSUEREPORTRESPONSE']._serialized_end=27103 + _globals['_GETOPERATINGFEEDBACKREQUEST']._serialized_start=27106 + _globals['_GETOPERATINGFEEDBACKREQUEST']._serialized_end=27279 + _globals['_GETOPERATINGFEEDBACKRESPONSE']._serialized_start=27281 + _globals['_GETOPERATINGFEEDBACKRESPONSE']._serialized_end=27370 + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONREQUEST']._serialized_start=27373 + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONREQUEST']._serialized_end=27662 + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONRESPONSE']._serialized_start=27665 + _globals['_RESOLVEOPERATINGFEEDBACKREMEDIATIONRESPONSE']._serialized_end=27853 + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF']._serialized_start=27856 + _globals['_CUSTOMERINTELLIGENCEEVIDENCEREF']._serialized_end=28192 + _globals['_CUSTOMERINTELLIGENCEFACTREVISION']._serialized_start=28195 + _globals['_CUSTOMERINTELLIGENCEFACTREVISION']._serialized_end=29696 + _globals['_CUSTOMERINTELLIGENCEFACT']._serialized_start=29699 + _globals['_CUSTOMERINTELLIGENCEFACT']._serialized_end=29891 + _globals['_CUSTOMERINTELLIGENCERECEIPT']._serialized_start=29894 + _globals['_CUSTOMERINTELLIGENCERECEIPT']._serialized_end=30271 + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST']._serialized_start=30274 + _globals['_LISTCUSTOMERINTELLIGENCEFACTSREQUEST']._serialized_end=30824 + _globals['_LISTCUSTOMERINTELLIGENCEFACTSRESPONSE']._serialized_start=30826 + _globals['_LISTCUSTOMERINTELLIGENCEFACTSRESPONSE']._serialized_end=30925 + _globals['_GETCUSTOMERINTELLIGENCEFACTREQUEST']._serialized_start=30928 + _globals['_GETCUSTOMERINTELLIGENCEFACTREQUEST']._serialized_end=31095 + _globals['_GETCUSTOMERINTELLIGENCEFACTRESPONSE']._serialized_start=31097 + _globals['_GETCUSTOMERINTELLIGENCEFACTRESPONSE']._serialized_end=31200 + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST']._serialized_start=31203 + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTREQUEST']._serialized_end=31684 + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTRESPONSE']._serialized_start=31687 + _globals['_REVIEWCUSTOMERINTELLIGENCEFACTRESPONSE']._serialized_end=31868 + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST']._serialized_start=31871 + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTREQUEST']._serialized_end=33024 + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTRESPONSE']._serialized_start=33027 + _globals['_PROPOSECUSTOMERINTELLIGENCEFACTRESPONSE']._serialized_end=33209 + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONREQUEST']._serialized_start=33212 + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONREQUEST']._serialized_end=33509 + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONRESPONSE']._serialized_start=33511 + _globals['_RESPONDTOCUSTOMERFACTCONFIRMATIONRESPONSE']._serialized_end=33629 + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST']._serialized_start=33632 + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSREQUEST']._serialized_end=34081 + _globals['_CUSTOMERINTELLIGENCEPATTERN']._serialized_start=34084 + _globals['_CUSTOMERINTELLIGENCEPATTERN']._serialized_end=34373 + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSRESPONSE']._serialized_start=34375 + _globals['_AGGREGATECUSTOMERINTELLIGENCEPATTERNSRESPONSE']._serialized_end=34491 + _globals['_LISTOPERATINGCORRECTIONSREQUEST']._serialized_start=34494 + _globals['_LISTOPERATINGCORRECTIONSREQUEST']._serialized_end=34706 + _globals['_LISTOPERATINGCORRECTIONSRESPONSE']._serialized_start=34708 + _globals['_LISTOPERATINGCORRECTIONSRESPONSE']._serialized_end=34818 + _globals['_REVIEWOPERATINGCORRECTIONREQUEST']._serialized_start=34821 + _globals['_REVIEWOPERATINGCORRECTIONREQUEST']._serialized_end=35179 + _globals['_REVIEWOPERATINGCORRECTIONRESPONSE']._serialized_start=35181 + _globals['_REVIEWOPERATINGCORRECTIONRESPONSE']._serialized_end=35298 + _globals['_LISTWORKSPACEMEMORIESREQUEST']._serialized_start=35301 + _globals['_LISTWORKSPACEMEMORIESREQUEST']._serialized_end=35521 + _globals['_LISTWORKSPACEMEMORIESRESPONSE']._serialized_start=35524 + _globals['_LISTWORKSPACEMEMORIESRESPONSE']._serialized_end=35670 + _globals['_WORKSPACEMEMORY']._serialized_start=35673 + _globals['_WORKSPACEMEMORY']._serialized_end=36068 + _globals['_CORRECTWORKSPACEMEMORYREQUEST']._serialized_start=36071 + _globals['_CORRECTWORKSPACEMEMORYREQUEST']._serialized_end=36385 + _globals['_CORRECTWORKSPACEMEMORYRESPONSE']._serialized_start=36387 + _globals['_CORRECTWORKSPACEMEMORYRESPONSE']._serialized_end=36480 + _globals['_REVIEWWORKSPACEMEMORYREQUEST']._serialized_start=36483 + _globals['_REVIEWWORKSPACEMEMORYREQUEST']._serialized_end=36799 + _globals['_REVIEWWORKSPACEMEMORYRESPONSE']._serialized_start=36801 + _globals['_REVIEWWORKSPACEMEMORYRESPONSE']._serialized_end=36893 + _globals['_FORGETWORKSPACEMEMORYREQUEST']._serialized_start=36896 + _globals['_FORGETWORKSPACEMEMORYREQUEST']._serialized_end=37132 + _globals['_FORGETWORKSPACEMEMORYRESPONSE']._serialized_start=37134 + _globals['_FORGETWORKSPACEMEMORYRESPONSE']._serialized_end=37200 + _globals['_OPERATINGHISTORYSEARCHFILTER']._serialized_start=37203 + _globals['_OPERATINGHISTORYSEARCHFILTER']._serialized_end=37518 + _globals['_SEARCHOPERATINGHISTORYREQUEST']._serialized_start=37521 + _globals['_SEARCHOPERATINGHISTORYREQUEST']._serialized_end=37810 + _globals['_OPERATINGHISTORYSEARCHRESULT']._serialized_start=37813 + _globals['_OPERATINGHISTORYSEARCHRESULT']._serialized_end=38254 + _globals['_SEARCHOPERATINGHISTORYRESPONSE']._serialized_start=38257 + _globals['_SEARCHOPERATINGHISTORYRESPONSE']._serialized_end=38397 + _globals['_GETOPERATINGHISTORYCONTEXTREQUEST']._serialized_start=38400 + _globals['_GETOPERATINGHISTORYCONTEXTREQUEST']._serialized_end=38636 + _globals['_OPERATINGHISTORYCONTEXTRECORD']._serialized_start=38639 + _globals['_OPERATINGHISTORYCONTEXTRECORD']._serialized_end=38977 + _globals['_GETOPERATINGHISTORYCONTEXTRESPONSE']._serialized_start=38980 + _globals['_GETOPERATINGHISTORYCONTEXTRESPONSE']._serialized_end=39153 + _globals['_OPERATINGCAPABILITYCONTRACT']._serialized_start=39156 + _globals['_OPERATINGCAPABILITYCONTRACT']._serialized_end=39636 + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE']._serialized_start=39639 + _globals['_IDENTITYTOOLAUTHORIZATIONEVIDENCE']._serialized_end=40495 + _globals['_OPERATINGEXECUTIONPROFILE']._serialized_start=40498 + _globals['_OPERATINGEXECUTIONPROFILE']._serialized_end=40732 + _globals['_OPERATINGHOSTEDFRONTDECISION']._serialized_start=40735 + _globals['_OPERATINGHOSTEDFRONTDECISION']._serialized_end=40894 + _globals['_OPERATINGINITIALACTIONRESULT']._serialized_start=40897 + _globals['_OPERATINGINITIALACTIONRESULT']._serialized_end=41613 + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE']._serialized_start=41616 + _globals['_OPERATINGMANAGEDINFERENCEPROVIDERCANDIDATE']._serialized_end=41857 + _globals['_OPERATINGMANAGEDINFERENCEOUTPUTTOKENBUDGET']._serialized_start=41860 + _globals['_OPERATINGMANAGEDINFERENCEOUTPUTTOKENBUDGET']._serialized_end=42081 + _globals['_OPERATINGMANAGEDINFERENCESCOPE']._serialized_start=42084 + _globals['_OPERATINGMANAGEDINFERENCESCOPE']._serialized_end=42506 + _globals['_OPERATINGRUNDISPATCH']._serialized_start=42509 + _globals['_OPERATINGRUNDISPATCH']._serialized_end=44375 + _globals['_OPERATINGTASKENVIRONMENTBINDING']._serialized_start=44378 + _globals['_OPERATINGTASKENVIRONMENTBINDING']._serialized_end=44848 + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT']._serialized_start=44851 + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT']._serialized_end=45623 + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT_METADATAENTRY']._serialized_start=45564 + _globals['_OPERATINGREQUIREDINITIALTOOLINTENT_METADATAENTRY']._serialized_end=45623 + _globals['_RESOLVEOPERATINGRECEIPTACTIONREQUEST']._serialized_start=45626 + _globals['_RESOLVEOPERATINGRECEIPTACTIONREQUEST']._serialized_end=45879 + _globals['_RESOLVEOPERATINGRECEIPTACTIONRESPONSE']._serialized_start=45882 + _globals['_RESOLVEOPERATINGRECEIPTACTIONRESPONSE']._serialized_end=46051 + _globals['_GETOPERATINGRECEIPTREQUEST']._serialized_start=46054 + _globals['_GETOPERATINGRECEIPTREQUEST']._serialized_end=46286 + _globals['_OPERATINGCODINGACCEPTANCE']._serialized_start=46289 + _globals['_OPERATINGCODINGACCEPTANCE']._serialized_end=46777 + _globals['_OPERATINGCODINGOUTPUT']._serialized_start=46780 + _globals['_OPERATINGCODINGOUTPUT']._serialized_end=46964 + _globals['_GETOPERATINGRECEIPTRESPONSE']._serialized_start=46966 + _globals['_GETOPERATINGRECEIPTRESPONSE']._serialized_end=47051 + _globals['_COMPUTERMISSIONEVIDENCEGATE']._serialized_start=47054 + _globals['_COMPUTERMISSIONEVIDENCEGATE']._serialized_end=47198 + _globals['_COMPUTERMISSIONROLLBACKARGUMENTBINDING']._serialized_start=47201 + _globals['_COMPUTERMISSIONROLLBACKARGUMENTBINDING']._serialized_end=47407 + _globals['_COMPUTERMISSIONCOMPENSATINGACTION']._serialized_start=47410 + _globals['_COMPUTERMISSIONCOMPENSATINGACTION']._serialized_end=48457 + _globals['_COMPUTERMISSIONCANARYTHRESHOLD']._serialized_start=48460 + _globals['_COMPUTERMISSIONCANARYTHRESHOLD']._serialized_end=48645 + _globals['_COMPUTERMISSIONCANARYDEFINITION']._serialized_start=48648 + _globals['_COMPUTERMISSIONCANARYDEFINITION']._serialized_end=50069 + _globals['_COMPUTERMISSIONCANARYOPERATORACTION']._serialized_start=50072 + _globals['_COMPUTERMISSIONCANARYOPERATORACTION']._serialized_end=50878 + _globals['_COMPUTERMISSIONBUDGET']._serialized_start=50881 + _globals['_COMPUTERMISSIONBUDGET']._serialized_end=51150 + _globals['_COMPUTERMISSIONCAPABILITY']._serialized_start=51153 + _globals['_COMPUTERMISSIONCAPABILITY']._serialized_end=51496 + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING']._serialized_start=51499 + _globals['_COMPUTERMISSIONAPEXRUNNERBINDING']._serialized_end=52262 + _globals['_COMPUTERMISSIONSCOPE']._serialized_start=52265 + _globals['_COMPUTERMISSIONSCOPE']._serialized_end=52656 + _globals['_COMPUTERMISSIONAUTHORITYGRANT']._serialized_start=52659 + _globals['_COMPUTERMISSIONAUTHORITYGRANT']._serialized_end=52968 + _globals['_COMPUTERMISSIONDECISION']._serialized_start=52971 + _globals['_COMPUTERMISSIONDECISION']._serialized_end=53293 + _globals['_COMPUTERMISSIONCONTRACT']._serialized_start=53296 + _globals['_COMPUTERMISSIONCONTRACT']._serialized_end=53985 + _globals['_COMPUTERMISSION']._serialized_start=53988 + _globals['_COMPUTERMISSION']._serialized_end=55074 + _globals['_COMPUTERMISSIONLONGHORIZONBUDGETSTATE']._serialized_start=55077 + _globals['_COMPUTERMISSIONLONGHORIZONBUDGETSTATE']._serialized_end=55588 + _globals['_SUBMITCOMPUTERMISSIONREQUEST']._serialized_start=55591 + _globals['_SUBMITCOMPUTERMISSIONREQUEST']._serialized_end=55890 + _globals['_SUBMITCOMPUTERMISSIONRESPONSE']._serialized_start=55893 + _globals['_SUBMITCOMPUTERMISSIONRESPONSE']._serialized_end=56051 + _globals['_GETCOMPUTERMISSIONREQUEST']._serialized_start=56054 + _globals['_GETCOMPUTERMISSIONREQUEST']._serialized_end=56227 + _globals['_GETCOMPUTERMISSIONRESPONSE']._serialized_start=56230 + _globals['_GETCOMPUTERMISSIONRESPONSE']._serialized_end=56385 + _globals['_CANCELCOMPUTERMISSIONREQUEST']._serialized_start=56388 + _globals['_CANCELCOMPUTERMISSIONREQUEST']._serialized_end=56647 + _globals['_CANCELCOMPUTERMISSIONRESPONSE']._serialized_start=56650 + _globals['_CANCELCOMPUTERMISSIONRESPONSE']._serialized_end=56808 + _globals['_CONTINUECOMPUTERMISSIONREQUEST']._serialized_start=56811 + _globals['_CONTINUECOMPUTERMISSIONREQUEST']._serialized_end=57072 + _globals['_CONTINUECOMPUTERMISSIONRESPONSE']._serialized_start=57075 + _globals['_CONTINUECOMPUTERMISSIONRESPONSE']._serialized_end=57235 + _globals['_PAUSECOMPUTERMISSIONREQUEST']._serialized_start=57238 + _globals['_PAUSECOMPUTERMISSIONREQUEST']._serialized_end=57662 + _globals['_PAUSECOMPUTERMISSIONRESPONSE']._serialized_start=57665 + _globals['_PAUSECOMPUTERMISSIONRESPONSE']._serialized_end=57856 + _globals['_RESUMECOMPUTERMISSIONREQUEST']._serialized_start=57859 + _globals['_RESUMECOMPUTERMISSIONREQUEST']._serialized_end=58284 + _globals['_RESUMECOMPUTERMISSIONRESPONSE']._serialized_start=58287 + _globals['_RESUMECOMPUTERMISSIONRESPONSE']._serialized_end=58479 + _globals['_WAKECOMPUTERMISSIONREQUEST']._serialized_start=58482 + _globals['_WAKECOMPUTERMISSIONREQUEST']._serialized_end=58905 + _globals['_WAKECOMPUTERMISSIONRESPONSE']._serialized_start=58908 + _globals['_WAKECOMPUTERMISSIONRESPONSE']._serialized_end=59098 + _globals['_GUIDECOMPUTERMISSIONREQUEST']._serialized_start=59101 + _globals['_GUIDECOMPUTERMISSIONREQUEST']._serialized_end=59529 + _globals['_GUIDECOMPUTERMISSIONRESPONSE']._serialized_start=59532 + _globals['_GUIDECOMPUTERMISSIONRESPONSE']._serialized_end=59723 + _globals['_COMPUTERMISSIONCANARYRUN']._serialized_start=59726 + _globals['_COMPUTERMISSIONCANARYRUN']._serialized_end=60281 + _globals['_COMPUTERMISSIONCANARYEFFECT']._serialized_start=60284 + _globals['_COMPUTERMISSIONCANARYEFFECT']._serialized_end=60892 + _globals['_COMPUTERMISSIONCANARYDIMENSIONRESULT']._serialized_start=60895 + _globals['_COMPUTERMISSIONCANARYDIMENSIONRESULT']._serialized_end=61095 + _globals['_COMPUTERMISSIONCANARYHARDGATERESULT']._serialized_start=61097 + _globals['_COMPUTERMISSIONCANARYHARDGATERESULT']._serialized_end=61192 + _globals['_COMPUTERMISSIONCANARYEVALUATION']._serialized_start=61195 + _globals['_COMPUTERMISSIONCANARYEVALUATION']._serialized_end=61980 + _globals['_LISTCOMPUTERMISSIONCANARYDEFINITIONSREQUEST']._serialized_start=61983 + _globals['_LISTCOMPUTERMISSIONCANARYDEFINITIONSREQUEST']._serialized_end=62134 + _globals['_LISTCOMPUTERMISSIONCANARYDEFINITIONSRESPONSE']._serialized_start=62136 + _globals['_LISTCOMPUTERMISSIONCANARYDEFINITIONSRESPONSE']._serialized_end=62261 + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST']._serialized_start=62264 + _globals['_STARTCOMPUTERMISSIONCANARYRUNREQUEST']._serialized_end=62600 + _globals['_STARTCOMPUTERMISSIONCANARYRUNRESPONSE']._serialized_start=62603 + _globals['_STARTCOMPUTERMISSIONCANARYRUNRESPONSE']._serialized_end=62833 + _globals['_GETCOMPUTERMISSIONCANARYRUNREQUEST']._serialized_start=62836 + _globals['_GETCOMPUTERMISSIONCANARYRUNREQUEST']._serialized_end=63023 + _globals['_GETCOMPUTERMISSIONCANARYRUNRESPONSE']._serialized_start=63025 + _globals['_GETCOMPUTERMISSIONCANARYRUNRESPONSE']._serialized_end=63126 + _globals['_LISTCOMPUTERMISSIONCANARYRUNSREQUEST']._serialized_start=63129 + _globals['_LISTCOMPUTERMISSIONCANARYRUNSREQUEST']._serialized_end=63273 + _globals['_LISTCOMPUTERMISSIONCANARYRUNSRESPONSE']._serialized_start=63275 + _globals['_LISTCOMPUTERMISSIONCANARYRUNSRESPONSE']._serialized_end=63372 + _globals['_GETCOMPUTERMISSIONCANARYEVIDENCEREQUEST']._serialized_start=63375 + _globals['_GETCOMPUTERMISSIONCANARYEVIDENCEREQUEST']._serialized_end=63567 + _globals['_GETCOMPUTERMISSIONCANARYEVIDENCERESPONSE']._serialized_start=63570 + _globals['_GETCOMPUTERMISSIONCANARYEVIDENCERESPONSE']._serialized_end=63925 + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST']._serialized_start=63928 + _globals['_OPERATECOMPUTERMISSIONCANARYRUNREQUEST']._serialized_end=64523 + _globals['_OPERATECOMPUTERMISSIONCANARYRUNRESPONSE']._serialized_start=64526 + _globals['_OPERATECOMPUTERMISSIONCANARYRUNRESPONSE']._serialized_end=64712 + _globals['_MISSIONSCHEDULETEMPLATE']._serialized_start=64715 + _globals['_MISSIONSCHEDULETEMPLATE']._serialized_end=65163 + _globals['_MISSIONSCHEDULE']._serialized_start=65166 + _globals['_MISSIONSCHEDULE']._serialized_end=65832 + _globals['_CREATEMISSIONSCHEDULEREQUEST']._serialized_start=65835 + _globals['_CREATEMISSIONSCHEDULEREQUEST']._serialized_end=66173 + _globals['_CREATEMISSIONSCHEDULERESPONSE']._serialized_start=66175 + _globals['_CREATEMISSIONSCHEDULERESPONSE']._serialized_end=66271 + _globals['_UPDATEMISSIONSCHEDULEREQUEST']._serialized_start=66274 + _globals['_UPDATEMISSIONSCHEDULEREQUEST']._serialized_end=66604 + _globals['_UPDATEMISSIONSCHEDULERESPONSE']._serialized_start=66606 + _globals['_UPDATEMISSIONSCHEDULERESPONSE']._serialized_end=66702 + _globals['_SETMISSIONSCHEDULEENABLEDREQUEST']._serialized_start=66705 + _globals['_SETMISSIONSCHEDULEENABLEDREQUEST']._serialized_end=66913 + _globals['_SETMISSIONSCHEDULEENABLEDRESPONSE']._serialized_start=66915 + _globals['_SETMISSIONSCHEDULEENABLEDRESPONSE']._serialized_end=67015 + _globals['_LISTMISSIONSCHEDULESREQUEST']._serialized_start=67018 + _globals['_LISTMISSIONSCHEDULESREQUEST']._serialized_end=67153 + _globals['_LISTMISSIONSCHEDULESRESPONSE']._serialized_start=67156 + _globals['_LISTMISSIONSCHEDULESRESPONSE']._serialized_end=67397 + _globals['_CONNECTORTRIGGER']._serialized_start=67400 + _globals['_CONNECTORTRIGGER']._serialized_end=68313 + _globals['_CREATECONNECTORTRIGGERREQUEST']._serialized_start=68316 + _globals['_CREATECONNECTORTRIGGERREQUEST']._serialized_end=68875 + _globals['_CREATECONNECTORTRIGGERRESPONSE']._serialized_start=68877 + _globals['_CREATECONNECTORTRIGGERRESPONSE']._serialized_end=68973 + _globals['_UPDATECONNECTORTRIGGERREQUEST']._serialized_start=68976 + _globals['_UPDATECONNECTORTRIGGERREQUEST']._serialized_end=69525 + _globals['_UPDATECONNECTORTRIGGERRESPONSE']._serialized_start=69527 + _globals['_UPDATECONNECTORTRIGGERRESPONSE']._serialized_end=69623 + _globals['_LISTCONNECTORTRIGGERSREQUEST']._serialized_start=69626 + _globals['_LISTCONNECTORTRIGGERSREQUEST']._serialized_end=69826 + _globals['_LISTCONNECTORTRIGGERSRESPONSE']._serialized_start=69829 + _globals['_LISTCONNECTORTRIGGERSRESPONSE']._serialized_end=69976 + _globals['_DELETECONNECTORTRIGGERREQUEST']._serialized_start=69979 + _globals['_DELETECONNECTORTRIGGERREQUEST']._serialized_end=70156 + _globals['_DELETECONNECTORTRIGGERRESPONSE']._serialized_start=70158 + _globals['_DELETECONNECTORTRIGGERRESPONSE']._serialized_end=70190 + _globals['_SETCONNECTORTRIGGERENABLEDREQUEST']._serialized_start=70193 + _globals['_SETCONNECTORTRIGGERENABLEDREQUEST']._serialized_end=70400 + _globals['_SETCONNECTORTRIGGERENABLEDRESPONSE']._serialized_start=70402 + _globals['_SETCONNECTORTRIGGERENABLEDRESPONSE']._serialized_end=70502 + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION']._serialized_start=70505 + _globals['_COMPUTERMISSIONAPEXSESSIONRESERVATION']._serialized_end=71224 + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST']._serialized_start=71227 + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONREQUEST']._serialized_end=71777 + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONRESPONSE']._serialized_start=71780 + _globals['_RESERVECOMPUTERMISSIONAPEXSESSIONRESPONSE']._serialized_end=71916 + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST']._serialized_start=71919 + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONREQUEST']._serialized_end=72360 + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONRESPONSE']._serialized_start=72363 + _globals['_BINDCOMPUTERMISSIONAPEXSESSIONRESERVATIONRESPONSE']._serialized_end=72507 + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA']._serialized_start=72510 + _globals['_COMPUTERMISSIONAPEXINSTRUCTIONMETADATA']._serialized_end=72997 + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST']._serialized_start=73000 + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATAREQUEST']._serialized_end=73500 + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATARESPONSE']._serialized_start=73503 + _globals['_BINDCOMPUTERMISSIONAPEXINSTRUCTIONMETADATARESPONSE']._serialized_end=73643 + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST']._serialized_start=73646 + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONREQUEST']._serialized_end=73980 + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE']._serialized_start=73983 + _globals['_AUTHORIZECOMPUTERMISSIONAPEXSESSIONADOPTIONRESPONSE']._serialized_end=74601 + _globals['_GETOVERVIEWREQUEST']._serialized_start=74603 + _globals['_GETOVERVIEWREQUEST']._serialized_end=74679 + _globals['_GETOVERVIEWRESPONSE']._serialized_start=74682 + _globals['_GETOVERVIEWRESPONSE']._serialized_end=75220 + _globals['_GETCONSOLEBOOTSNAPSHOTREQUEST']._serialized_start=75223 + _globals['_GETCONSOLEBOOTSNAPSHOTREQUEST']._serialized_end=75362 + _globals['_CONSOLESNAPSHOTFRESHNESS']._serialized_start=75365 + _globals['_CONSOLESNAPSHOTFRESHNESS']._serialized_end=75581 + _globals['_GETCONSOLEBOOTSNAPSHOTRESPONSE']._serialized_start=75584 + _globals['_GETCONSOLEBOOTSNAPSHOTRESPONSE']._serialized_end=76099 + _globals['_LISTASSETSREQUEST']._serialized_start=76101 + _globals['_LISTASSETSREQUEST']._serialized_end=76176 + _globals['_LISTASSETSRESPONSE']._serialized_start=76178 + _globals['_LISTASSETSRESPONSE']._serialized_end=76301 + _globals['_GETASSETREQUEST']._serialized_start=76303 + _globals['_GETASSETREQUEST']._serialized_end=76400 + _globals['_GETASSETRESPONSE']._serialized_start=76403 + _globals['_GETASSETRESPONSE']._serialized_end=76659 + _globals['_LISTACTIVITYREQUEST']._serialized_start=76661 + _globals['_LISTACTIVITYREQUEST']._serialized_end=76738 + _globals['_LISTACTIVITYRESPONSE']._serialized_start=76741 + _globals['_LISTACTIVITYRESPONSE']._serialized_end=76934 + _globals['_LISTEVALRESULTSREQUEST']._serialized_start=76937 + _globals['_LISTEVALRESULTSREQUEST']._serialized_end=77107 + _globals['_LISTEVALRESULTSRESPONSE']._serialized_start=77110 + _globals['_LISTEVALRESULTSRESPONSE']._serialized_end=77243 + _globals['_LISTCOSTUSAGEREQUEST']._serialized_start=77245 + _globals['_LISTCOSTUSAGEREQUEST']._serialized_end=77356 + _globals['_LISTCOSTUSAGERESPONSE']._serialized_start=77359 + _globals['_LISTCOSTUSAGERESPONSE']._serialized_end=77605 + _globals['_COSTUSAGERUNSUMMARY']._serialized_start=77608 + _globals['_COSTUSAGERUNSUMMARY']._serialized_end=78066 + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST']._serialized_start=78069 + _globals['_RECORDPROVIDERCOSTSNAPSHOTREQUEST']._serialized_end=78840 + _globals['_RECORDPROVIDERCOSTSNAPSHOTRESPONSE']._serialized_start=78842 + _globals['_RECORDPROVIDERCOSTSNAPSHOTRESPONSE']._serialized_end=78911 + _globals['_LISTAUTHORITYPOSTUREREQUEST']._serialized_start=78913 + _globals['_LISTAUTHORITYPOSTUREREQUEST']._serialized_end=78998 + _globals['_LISTAUTHORITYPOSTURERESPONSE']._serialized_start=79001 + _globals['_LISTAUTHORITYPOSTURERESPONSE']._serialized_end=79166 + _globals['_LISTAGENTWORKFORCERECORDSREQUEST']._serialized_start=79169 + _globals['_LISTAGENTWORKFORCERECORDSREQUEST']._serialized_end=79445 + _globals['_LISTAGENTWORKFORCERECORDSRESPONSE']._serialized_start=79448 + _globals['_LISTAGENTWORKFORCERECORDSRESPONSE']._serialized_end=79857 + _globals['_ORBCONTROLTARGET']._serialized_start=79860 + _globals['_ORBCONTROLTARGET']._serialized_end=80433 + _globals['_LISTORBCONTROLTARGETSREQUEST']._serialized_start=80435 + _globals['_LISTORBCONTROLTARGETSREQUEST']._serialized_end=80521 + _globals['_LISTORBCONTROLTARGETSRESPONSE']._serialized_start=80524 + _globals['_LISTORBCONTROLTARGETSRESPONSE']._serialized_end=80669 + _globals['_GETORBCONTROLTARGETREQUEST']._serialized_start=80671 + _globals['_GETORBCONTROLTARGETREQUEST']._serialized_end=80793 + _globals['_GETORBCONTROLTARGETRESPONSE']._serialized_start=80796 + _globals['_GETORBCONTROLTARGETRESPONSE']._serialized_end=80935 + _globals['_SUBMITORBCONTROLACTIONREQUEST']._serialized_start=80938 + _globals['_SUBMITORBCONTROLACTIONREQUEST']._serialized_end=81229 + _globals['_SUBMITORBCONTROLACTIONRESPONSE']._serialized_start=81232 + _globals['_SUBMITORBCONTROLACTIONRESPONSE']._serialized_end=81382 + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST']._serialized_start=81385 + _globals['_SUBMITAGENTWORKFORCEEVIDENCEREQUEST']._serialized_end=82249 + _globals['_SUBMITAGENTWORKFORCEEVIDENCERESPONSE']._serialized_start=82252 + _globals['_SUBMITAGENTWORKFORCEEVIDENCERESPONSE']._serialized_end=82696 + _globals['_AGENTWORKFORCESUBMITTEDEVIDENCE']._serialized_start=82699 + _globals['_AGENTWORKFORCESUBMITTEDEVIDENCE']._serialized_end=83150 + _globals['_LISTFINDINGSREQUEST']._serialized_start=83152 + _globals['_LISTFINDINGSREQUEST']._serialized_end=83229 + _globals['_LISTFINDINGSRESPONSE']._serialized_start=83232 + _globals['_LISTFINDINGSRESPONSE']._serialized_end=83365 + _globals['_GETTRACEDRILLDOWNREQUEST']._serialized_start=83367 + _globals['_GETTRACEDRILLDOWNREQUEST']._serialized_end=83473 + _globals['_GETTRACEDRILLDOWNRESPONSE']._serialized_start=83475 + _globals['_GETTRACEDRILLDOWNRESPONSE']._serialized_end=83552 + _globals['_LISTINTEGRATIONTILESREQUEST']._serialized_start=83554 + _globals['_LISTINTEGRATIONTILESREQUEST']._serialized_end=83639 + _globals['_LISTINTEGRATIONTILESRESPONSE']._serialized_start=83641 + _globals['_LISTINTEGRATIONTILESRESPONSE']._serialized_end=83753 + _globals['_LISTPINNEDSOURCESREQUEST']._serialized_start=83755 + _globals['_LISTPINNEDSOURCESREQUEST']._serialized_end=83825 + _globals['_LISTPINNEDSOURCESRESPONSE']._serialized_start=83827 + _globals['_LISTPINNEDSOURCESRESPONSE']._serialized_end=83900 + _globals['_PINNEDSOURCE']._serialized_start=83903 + _globals['_PINNEDSOURCE']._serialized_end=84032 + _globals['_SETPINNEDSOURCEREQUEST']._serialized_start=84034 + _globals['_SETPINNEDSOURCEREQUEST']._serialized_end=84140 + _globals['_SETPINNEDSOURCERESPONSE']._serialized_start=84142 + _globals['_SETPINNEDSOURCERESPONSE']._serialized_end=84211 + _globals['_UNPINSOURCEREQUEST']._serialized_start=84213 + _globals['_UNPINSOURCEREQUEST']._serialized_end=84315 + _globals['_UNPINSOURCERESPONSE']._serialized_start=84317 + _globals['_UNPINSOURCERESPONSE']._serialized_end=84338 + _globals['_GETONBOARDINGPLANREQUEST']._serialized_start=84340 + _globals['_GETONBOARDINGPLANREQUEST']._serialized_end=84444 + _globals['_GETONBOARDINGPLANRESPONSE']._serialized_start=84446 + _globals['_GETONBOARDINGPLANRESPONSE']._serialized_end=84523 + _globals['_GETWORKSPACESETTINGSREQUEST']._serialized_start=84525 + _globals['_GETWORKSPACESETTINGSREQUEST']._serialized_end=84610 + _globals['_GETWORKSPACESETTINGSRESPONSE']._serialized_start=84613 + _globals['_GETWORKSPACESETTINGSRESPONSE']._serialized_end=85914 + _globals['_TASKENVIRONMENTPROJECTOPTION']._serialized_start=85916 + _globals['_TASKENVIRONMENTPROJECTOPTION']._serialized_end=86029 + _globals['_GETBILLINGSUBSCRIPTIONREQUEST']._serialized_start=86031 + _globals['_GETBILLINGSUBSCRIPTIONREQUEST']._serialized_end=86106 + _globals['_GETBILLINGSUBSCRIPTIONRESPONSE']._serialized_start=86109 + _globals['_GETBILLINGSUBSCRIPTIONRESPONSE']._serialized_end=86562 + _globals['_CREATEBILLINGPORTALSESSIONREQUEST']._serialized_start=86564 + _globals['_CREATEBILLINGPORTALSESSIONREQUEST']._serialized_end=86643 + _globals['_CREATEBILLINGPORTALSESSIONRESPONSE']._serialized_start=86645 + _globals['_CREATEBILLINGPORTALSESSIONRESPONSE']._serialized_end=86709 + _globals['_CREATEBILLINGCHECKOUTSESSIONREQUEST']._serialized_start=86711 + _globals['_CREATEBILLINGCHECKOUTSESSIONREQUEST']._serialized_end=86833 + _globals['_CREATEBILLINGCHECKOUTSESSIONRESPONSE']._serialized_start=86835 + _globals['_CREATEBILLINGCHECKOUTSESSIONRESPONSE']._serialized_end=86901 + _globals['_UPDATEWORKSPACEPROFILEREQUEST']._serialized_start=86904 + _globals['_UPDATEWORKSPACEPROFILEREQUEST']._serialized_end=87063 + _globals['_UPDATEWORKSPACEPROFILERESPONSE']._serialized_start=87065 + _globals['_UPDATEWORKSPACEPROFILERESPONSE']._serialized_end=87175 + _globals['_OPERATORMODELPREFERENCE']._serialized_start=87178 + _globals['_OPERATORMODELPREFERENCE']._serialized_end=87329 + _globals['_OPERATORMODELPREFERENCEUPDATE']._serialized_start=87332 + _globals['_OPERATORMODELPREFERENCEUPDATE']._serialized_end=87523 + _globals['_OPERATORPREFERENCES']._serialized_start=87526 + _globals['_OPERATORPREFERENCES']._serialized_end=87825 + _globals['_GETOPERATORPREFERENCESREQUEST']._serialized_start=87827 + _globals['_GETOPERATORPREFERENCESREQUEST']._serialized_end=87914 + _globals['_GETOPERATORPREFERENCESRESPONSE']._serialized_start=87916 + _globals['_GETOPERATORPREFERENCESRESPONSE']._serialized_end=88023 + _globals['_UPDATEOPERATORPREFERENCESREQUEST']._serialized_start=88026 + _globals['_UPDATEOPERATORPREFERENCESREQUEST']._serialized_end=88318 + _globals['_UPDATEOPERATORPREFERENCESRESPONSE']._serialized_start=88320 + _globals['_UPDATEOPERATORPREFERENCESRESPONSE']._serialized_end=88430 + _globals['_WORKSPACEGUARDRAILRULE']._serialized_start=88433 + _globals['_WORKSPACEGUARDRAILRULE']._serialized_end=88763 + _globals['_LISTWORKSPACEGUARDRAILRULESREQUEST']._serialized_start=88765 + _globals['_LISTWORKSPACEGUARDRAILRULESREQUEST']._serialized_end=88857 + _globals['_LISTWORKSPACEGUARDRAILRULESRESPONSE']._serialized_start=88859 + _globals['_LISTWORKSPACEGUARDRAILRULESRESPONSE']._serialized_end=88954 + _globals['_UPSERTWORKSPACEGUARDRAILRULEREQUEST']._serialized_start=88957 + _globals['_UPSERTWORKSPACEGUARDRAILRULEREQUEST']._serialized_end=89114 + _globals['_REMOVEWORKSPACEGUARDRAILRULEREQUEST']._serialized_start=89116 + _globals['_REMOVEWORKSPACEGUARDRAILRULEREQUEST']._serialized_end=89237 + _globals['_CONNECTORPROFILE']._serialized_start=89240 + _globals['_CONNECTORPROFILE']._serialized_end=89568 + _globals['_CONNECTORPROFILESCOPESET']._serialized_start=89570 + _globals['_CONNECTORPROFILESCOPESET']._serialized_end=89620 + _globals['_CREATECONNECTORPROFILEREQUEST']._serialized_start=89623 + _globals['_CREATECONNECTORPROFILEREQUEST']._serialized_end=89940 + _globals['_CREATECONNECTORPROFILERESPONSE']._serialized_start=89942 + _globals['_CREATECONNECTORPROFILERESPONSE']._serialized_end=90038 + _globals['_LISTCONNECTORPROFILESREQUEST']._serialized_start=90041 + _globals['_LISTCONNECTORPROFILESREQUEST']._serialized_end=90169 + _globals['_LISTCONNECTORPROFILESRESPONSE']._serialized_start=90171 + _globals['_LISTCONNECTORPROFILESRESPONSE']._serialized_end=90260 + _globals['_UPDATECONNECTORPROFILEREQUEST']._serialized_start=90263 + _globals['_UPDATECONNECTORPROFILEREQUEST']._serialized_end=90531 + _globals['_UPDATECONNECTORPROFILERESPONSE']._serialized_start=90533 + _globals['_UPDATECONNECTORPROFILERESPONSE']._serialized_end=90629 + _globals['_DELETECONNECTORPROFILEREQUEST']._serialized_start=90631 + _globals['_DELETECONNECTORPROFILEREQUEST']._serialized_end=90743 + _globals['_DELETECONNECTORPROFILERESPONSE']._serialized_start=90745 + _globals['_DELETECONNECTORPROFILERESPONSE']._serialized_end=90803 + _globals['_ARCHIVEWORKSPACEREQUEST']._serialized_start=90805 + _globals['_ARCHIVEWORKSPACEREQUEST']._serialized_end=90914 + _globals['_ARCHIVEWORKSPACERESPONSE']._serialized_start=90916 + _globals['_ARCHIVEWORKSPACERESPONSE']._serialized_end=91020 + _globals['_UPDATEWORKSPACEPOLICYREQUEST']._serialized_start=91023 + _globals['_UPDATEWORKSPACEPOLICYREQUEST']._serialized_end=91178 + _globals['_UPDATEWORKSPACEPOLICYRESPONSE']._serialized_start=91180 + _globals['_UPDATEWORKSPACEPOLICYRESPONSE']._serialized_end=91289 + _globals['_UPDATEWORKSPACEDEXPOLICYREQUEST']._serialized_start=91292 + _globals['_UPDATEWORKSPACEDEXPOLICYREQUEST']._serialized_end=91452 + _globals['_UPDATEWORKSPACEDEXPOLICYRESPONSE']._serialized_start=91454 + _globals['_UPDATEWORKSPACEDEXPOLICYRESPONSE']._serialized_end=91566 + _globals['_UPDATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST']._serialized_start=91569 + _globals['_UPDATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST']._serialized_end=91785 + _globals['_UPDATEWORKSPACEARTIFACTSTYLEGUIDERESPONSE']._serialized_start=91787 + _globals['_UPDATEWORKSPACEARTIFACTSTYLEGUIDERESPONSE']._serialized_end=91908 + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST']._serialized_start=91911 + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDEREQUEST']._serialized_end=92183 + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDERESPONSE']._serialized_start=92186 + _globals['_EVALUATEWORKSPACEARTIFACTSTYLEGUIDERESPONSE']._serialized_end=92374 + _globals['_WORKSPACECONTENTPOLICYVIOLATION']._serialized_start=92376 + _globals['_WORKSPACECONTENTPOLICYVIOLATION']._serialized_end=92455 + _globals['_UPSERTWORKSPACEIDENTITYPROVIDERREQUEST']._serialized_start=92458 + _globals['_UPSERTWORKSPACEIDENTITYPROVIDERREQUEST']._serialized_end=92637 + _globals['_UPSERTWORKSPACEIDENTITYPROVIDERRESPONSE']._serialized_start=92639 + _globals['_UPSERTWORKSPACEIDENTITYPROVIDERRESPONSE']._serialized_end=92758 + _globals['_REMOVEWORKSPACEIDENTITYPROVIDERREQUEST']._serialized_start=92760 + _globals['_REMOVEWORKSPACEIDENTITYPROVIDERREQUEST']._serialized_end=92881 + _globals['_REMOVEWORKSPACEIDENTITYPROVIDERRESPONSE']._serialized_start=92883 + _globals['_REMOVEWORKSPACEIDENTITYPROVIDERRESPONSE']._serialized_end=93002 + _globals['_UPSERTWORKSPACEINTEGRATIONREQUEST']._serialized_start=93005 + _globals['_UPSERTWORKSPACEINTEGRATIONREQUEST']._serialized_end=93180 + _globals['_UPSERTWORKSPACEINTEGRATIONRESPONSE']._serialized_start=93182 + _globals['_UPSERTWORKSPACEINTEGRATIONRESPONSE']._serialized_end=93296 + _globals['_REMOVEWORKSPACEINTEGRATIONREQUEST']._serialized_start=93298 + _globals['_REMOVEWORKSPACEINTEGRATIONREQUEST']._serialized_end=93414 + _globals['_REMOVEWORKSPACEINTEGRATIONRESPONSE']._serialized_start=93416 + _globals['_REMOVEWORKSPACEINTEGRATIONRESPONSE']._serialized_end=93530 + _globals['_UPDATEWORKSPACEBILLINGREQUEST']._serialized_start=93533 + _globals['_UPDATEWORKSPACEBILLINGREQUEST']._serialized_end=93692 + _globals['_UPSERTWORKSPACEMEMBERREQUEST']._serialized_start=93695 + _globals['_UPSERTWORKSPACEMEMBERREQUEST']._serialized_end=93850 + _globals['_REMOVEWORKSPACEMEMBERREQUEST']._serialized_start=93853 + _globals['_REMOVEWORKSPACEMEMBERREQUEST']._serialized_end=93987 + _globals['_UPDATEWORKSPACENOTIFICATIONPREFERENCESREQUEST']._serialized_start=93990 + _globals['_UPDATEWORKSPACENOTIFICATIONPREFERENCESREQUEST']._serialized_end=94183 + _globals['_ENABLEWORKSPACEBREAKGLASSREQUEST']._serialized_start=94186 + _globals['_ENABLEWORKSPACEBREAKGLASSREQUEST']._serialized_end=94352 + _globals['_DISABLEWORKSPACEBREAKGLASSREQUEST']._serialized_start=94354 + _globals['_DISABLEWORKSPACEBREAKGLASSREQUEST']._serialized_end=94472 + _globals['_OPERATINGSKILL']._serialized_start=94475 + _globals['_OPERATINGSKILL']._serialized_end=95980 + _globals['_LISTWORKSPACESKILLSREQUEST']._serialized_start=95982 + _globals['_LISTWORKSPACESKILLSREQUEST']._serialized_end=96066 + _globals['_LISTWORKSPACESKILLSRESPONSE']._serialized_start=96068 + _globals['_LISTWORKSPACESKILLSRESPONSE']._serialized_end=96149 + _globals['_SKILLANALYSISFINDING']._serialized_start=96152 + _globals['_SKILLANALYSISFINDING']._serialized_end=96323 + _globals['_SKILLANALYSISREPORT']._serialized_start=96326 + _globals['_SKILLANALYSISREPORT']._serialized_end=96631 + _globals['_DEXSKILLINPUTDECLARATION']._serialized_start=96634 + _globals['_DEXSKILLINPUTDECLARATION']._serialized_end=96780 + _globals['_DEXSKILLOUTPUTDECLARATION']._serialized_start=96782 + _globals['_DEXSKILLOUTPUTDECLARATION']._serialized_end=96901 + _globals['_DEXSKILLPACKAGEFILE']._serialized_start=96904 + _globals['_DEXSKILLPACKAGEFILE']._serialized_end=97150 + _globals['_DEXSKILLLICENSEEVIDENCE']._serialized_start=97153 + _globals['_DEXSKILLLICENSEEVIDENCE']._serialized_end=97331 + _globals['_DEXSKILLCOMPATIBILITY']._serialized_start=97334 + _globals['_DEXSKILLCOMPATIBILITY']._serialized_end=97476 + _globals['_DEXSKILLQUALITYFIXTURE']._serialized_start=97479 + _globals['_DEXSKILLQUALITYFIXTURE']._serialized_end=97822 + _globals['_DEXSKILLQUALITYEVIDENCE']._serialized_start=97825 + _globals['_DEXSKILLQUALITYEVIDENCE']._serialized_end=98081 + _globals['_DEXSKILLUPDATEDIFF']._serialized_start=98084 + _globals['_DEXSKILLUPDATEDIFF']._serialized_end=98451 + _globals['_DEXSKILLCATALOGENTRY']._serialized_start=98454 + _globals['_DEXSKILLCATALOGENTRY']._serialized_end=100273 + _globals['_DEXSKILLPLAYBOOKSTEP']._serialized_start=100276 + _globals['_DEXSKILLPLAYBOOKSTEP']._serialized_end=100427 + _globals['_DEXSKILLPLAYBOOK']._serialized_start=100430 + _globals['_DEXSKILLPLAYBOOK']._serialized_end=100698 + _globals['_BROWSEDEXSKILLCATALOGREQUEST']._serialized_start=100700 + _globals['_BROWSEDEXSKILLCATALOGREQUEST']._serialized_end=100786 + _globals['_BROWSEDEXSKILLCATALOGRESPONSE']._serialized_start=100789 + _globals['_BROWSEDEXSKILLCATALOGRESPONSE']._serialized_end=100940 + _globals['_INSTALLDEXSKILLCATALOGENTRYREQUEST']._serialized_start=100943 + _globals['_INSTALLDEXSKILLCATALOGENTRYREQUEST']._serialized_end=101453 + _globals['_INSTALLDEXSKILLCATALOGENTRYRESPONSE']._serialized_start=101456 + _globals['_INSTALLDEXSKILLCATALOGENTRYRESPONSE']._serialized_end=101668 + _globals['_CREATEWORKSPACESKILLREQUEST']._serialized_start=101671 + _globals['_CREATEWORKSPACESKILLREQUEST']._serialized_end=101848 + _globals['_CREATEWORKSPACESKILLRESPONSE']._serialized_start=101850 + _globals['_CREATEWORKSPACESKILLRESPONSE']._serialized_end=101938 + _globals['_UPDATEWORKSPACESKILLREQUEST']._serialized_start=101941 + _globals['_UPDATEWORKSPACESKILLREQUEST']._serialized_end=102118 + _globals['_UPDATEWORKSPACESKILLRESPONSE']._serialized_start=102120 + _globals['_UPDATEWORKSPACESKILLRESPONSE']._serialized_end=102208 + _globals['_DELETEWORKSPACESKILLREQUEST']._serialized_start=102210 + _globals['_DELETEWORKSPACESKILLREQUEST']._serialized_end=102324 + _globals['_DELETEWORKSPACESKILLRESPONSE']._serialized_start=102326 + _globals['_DELETEWORKSPACESKILLRESPONSE']._serialized_end=102356 + _globals['_WORKSPACESETTINGSPROFILE']._serialized_start=102359 + _globals['_WORKSPACESETTINGSPROFILE']._serialized_end=102870 + _globals['_WORKSPACESETTINGSPRINCIPAL']._serialized_start=102873 + _globals['_WORKSPACESETTINGSPRINCIPAL']._serialized_end=103103 + _globals['_WORKSPACESETTINGSCAPABILITY']._serialized_start=103106 + _globals['_WORKSPACESETTINGSCAPABILITY']._serialized_end=103258 + _globals['_WORKSPACESETTINGSWORKSPACE']._serialized_start=103261 + _globals['_WORKSPACESETTINGSWORKSPACE']._serialized_end=103791 + _globals['_WORKSPACESETTINGSACTIVITYENTRY']._serialized_start=103794 + _globals['_WORKSPACESETTINGSACTIVITYENTRY']._serialized_end=104190 + _globals['_WORKSPACESETTINGSACTIVITYENTRY_DETAILSENTRY']._serialized_start=104132 + _globals['_WORKSPACESETTINGSACTIVITYENTRY_DETAILSENTRY']._serialized_end=104190 + _globals['_WORKSPACESETTINGSMEMBER']._serialized_start=104193 + _globals['_WORKSPACESETTINGSMEMBER']._serialized_end=104897 + _globals['_WORKSPACESETTINGSBILLING']._serialized_start=104900 + _globals['_WORKSPACESETTINGSBILLING']._serialized_end=105315 + _globals['_WORKSPACESETTINGSPOLICY']._serialized_start=105318 + _globals['_WORKSPACESETTINGSPOLICY']._serialized_end=106458 + _globals['_PROJECTTASKENVIRONMENTRETENTION']._serialized_start=106461 + _globals['_PROJECTTASKENVIRONMENTRETENTION']._serialized_end=106708 + _globals['_WORKSPACETASKENVIRONMENTRETENTION']._serialized_start=106711 + _globals['_WORKSPACETASKENVIRONMENTRETENTION']._serialized_end=106970 + _globals['_WORKSPACEDEXPOLICY']._serialized_start=106973 + _globals['_WORKSPACEDEXPOLICY']._serialized_end=108170 + _globals['_WORKSPACEARTIFACTSTYLEGUIDE']._serialized_start=108173 + _globals['_WORKSPACEARTIFACTSTYLEGUIDE']._serialized_end=109024 + _globals['_WORKSPACESETTINGSNOTIFICATIONPREFERENCE']._serialized_start=109027 + _globals['_WORKSPACESETTINGSNOTIFICATIONPREFERENCE']._serialized_end=109242 + _globals['_WORKSPACESPENDBEATSETTINGS']._serialized_start=109245 + _globals['_WORKSPACESPENDBEATSETTINGS']._serialized_end=110135 + _globals['_WORKSPACESETTINGSNOTIFICATIONS']._serialized_start=110138 + _globals['_WORKSPACESETTINGSNOTIFICATIONS']._serialized_end=110434 + _globals['_WORKSPACESETTINGSIDENTITYPROVIDER']._serialized_start=110437 + _globals['_WORKSPACESETTINGSIDENTITYPROVIDER']._serialized_end=110828 + _globals['_WORKSPACESETTINGSINTEGRATION']._serialized_start=110831 + _globals['_WORKSPACESETTINGSINTEGRATION']._serialized_end=111268 + _globals['_WORKSPACESETTINGSOWNERSTATUS']._serialized_start=111271 + _globals['_WORKSPACESETTINGSOWNERSTATUS']._serialized_end=111668 + _globals['_WORKSPACESETTINGSBREAKGLASSGRANT']._serialized_start=111671 + _globals['_WORKSPACESETTINGSBREAKGLASSGRANT']._serialized_end=112211 + _globals['_STAFFCONTEXTCAPABILITY']._serialized_start=112213 + _globals['_STAFFCONTEXTCAPABILITY']._serialized_end=112291 + _globals['_SEARCHSTAFFWORKSPACEDIRECTORYREQUEST']._serialized_start=112293 + _globals['_SEARCHSTAFFWORKSPACEDIRECTORYREQUEST']._serialized_end=112398 + _globals['_STAFFWORKSPACEDIRECTORYENTRY']._serialized_start=112401 + _globals['_STAFFWORKSPACEDIRECTORYENTRY']._serialized_end=112723 + _globals['_SEARCHSTAFFWORKSPACEDIRECTORYRESPONSE']._serialized_start=112725 + _globals['_SEARCHSTAFFWORKSPACEDIRECTORYRESPONSE']._serialized_end=112832 + _globals['_GETSTAFFWORKSPACECONTEXTREQUEST']._serialized_start=112834 + _globals['_GETSTAFFWORKSPACECONTEXTREQUEST']._serialized_end=112961 + _globals['_STAFFGRANTEVENTSUMMARY']._serialized_start=112964 + _globals['_STAFFGRANTEVENTSUMMARY']._serialized_end=113159 + _globals['_STAFFRECEIPTSUMMARY']._serialized_start=113162 + _globals['_STAFFRECEIPTSUMMARY']._serialized_end=113328 + _globals['_STAFFTRACESUMMARY']._serialized_start=113331 + _globals['_STAFFTRACESUMMARY']._serialized_end=113488 + _globals['_STAFFFAILURESUMMARY']._serialized_start=113491 + _globals['_STAFFFAILURESUMMARY']._serialized_end=113663 + _globals['_STAFFCOMPUTERENVIRONMENT']._serialized_start=113665 + _globals['_STAFFCOMPUTERENVIRONMENT']._serialized_end=113784 + _globals['_STAFFWORKSPACECONTEXT']._serialized_start=113787 + _globals['_STAFFWORKSPACECONTEXT']._serialized_end=114807 + _globals['_GETSTAFFWORKSPACECONTEXTRESPONSE']._serialized_start=114809 + _globals['_GETSTAFFWORKSPACECONTEXTRESPONSE']._serialized_end=114904 + _globals['_MANAGEDPROVIDERACCESSGRANT']._serialized_start=114907 + _globals['_MANAGEDPROVIDERACCESSGRANT']._serialized_end=115541 + _globals['_LISTMANAGEDPROVIDERACCESSGRANTSREQUEST']._serialized_start=115543 + _globals['_LISTMANAGEDPROVIDERACCESSGRANTSREQUEST']._serialized_end=115624 + _globals['_LISTMANAGEDPROVIDERACCESSGRANTSRESPONSE']._serialized_start=115627 + _globals['_LISTMANAGEDPROVIDERACCESSGRANTSRESPONSE']._serialized_end=115786 + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTREQUEST']._serialized_start=115789 + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTREQUEST']._serialized_end=116266 + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTRESPONSE']._serialized_start=116268 + _globals['_UPSERTMANAGEDPROVIDERACCESSGRANTRESPONSE']._serialized_end=116372 + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTREQUEST']._serialized_start=116375 + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTREQUEST']._serialized_end=116623 + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTRESPONSE']._serialized_start=116625 + _globals['_REVOKEMANAGEDPROVIDERACCESSGRANTRESPONSE']._serialized_end=116729 + _globals['_INFERENCEPROVIDERTARGET']._serialized_start=116732 + _globals['_INFERENCEPROVIDERTARGET']._serialized_end=117095 + _globals['_STAFFINFERENCEPURPOSEROUTE']._serialized_start=117098 + _globals['_STAFFINFERENCEPURPOSEROUTE']._serialized_end=117383 + _globals['_STAFFINFERENCEROUTINGPROFILE']._serialized_start=117386 + _globals['_STAFFINFERENCEROUTINGPROFILE']._serialized_end=117765 + _globals['_STAFFINFERENCEROUTINGEVENT']._serialized_start=117768 + _globals['_STAFFINFERENCEROUTINGEVENT']._serialized_end=118095 + _globals['_GETSTAFFINFERENCEROUTINGPROFILEREQUEST']._serialized_start=118097 + _globals['_GETSTAFFINFERENCEROUTINGPROFILEREQUEST']._serialized_end=118137 + _globals['_GETSTAFFINFERENCEROUTINGPROFILERESPONSE']._serialized_start=118140 + _globals['_GETSTAFFINFERENCEROUTINGPROFILERESPONSE']._serialized_end=118688 + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILEREQUEST']._serialized_start=118691 + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILEREQUEST']._serialized_end=119140 + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILERESPONSE']._serialized_start=119143 + _globals['_UPDATESTAFFINFERENCEROUTINGPROFILERESPONSE']._serialized_end=119351 + _globals['_LISTSCENARIOFIXTURESREQUEST']._serialized_start=119354 + _globals['_LISTSCENARIOFIXTURESREQUEST']._serialized_end=119564 + _globals['_LISTSCENARIOFIXTURESRESPONSE']._serialized_start=119567 + _globals['_LISTSCENARIOFIXTURESRESPONSE']._serialized_end=119712 + _globals['_PROMOTESCENARIOFIXTUREREQUEST']._serialized_start=119715 + _globals['_PROMOTESCENARIOFIXTUREREQUEST']._serialized_end=120074 + _globals['_PROMOTESCENARIOFIXTURERESPONSE']._serialized_start=120076 + _globals['_PROMOTESCENARIOFIXTURERESPONSE']._serialized_end=120163 + _globals['_COMPARESCENARIOFIXTURESREQUEST']._serialized_start=120166 + _globals['_COMPARESCENARIOFIXTURESREQUEST']._serialized_end=120446 + _globals['_COMPARESCENARIOFIXTURESRESPONSE']._serialized_start=120449 + _globals['_COMPARESCENARIOFIXTURESRESPONSE']._serialized_end=120962 + _globals['_SCENARIOFIXTUREDIFFERENCE']._serialized_start=120965 + _globals['_SCENARIOFIXTUREDIFFERENCE']._serialized_end=121124 + _globals['_SCENARIOFIXTURE']._serialized_start=121127 + _globals['_SCENARIOFIXTURE']._serialized_end=121703 + _globals['_CONSOLEMETRIC']._serialized_start=121706 + _globals['_CONSOLEMETRIC']._serialized_end=121867 + _globals['_AIASSET']._serialized_start=121870 + _globals['_AIASSET']._serialized_end=122499 + _globals['_ACTIVITYEVENT']._serialized_start=122502 + _globals['_ACTIVITYEVENT']._serialized_end=123001 + _globals['_EVALRESULT']._serialized_start=123004 + _globals['_EVALRESULT']._serialized_end=123587 + _globals['_COSTUSAGE']._serialized_start=123590 + _globals['_COSTUSAGE']._serialized_end=124987 + _globals['_AUTHORITYLEDGER']._serialized_start=124990 + _globals['_AUTHORITYLEDGER']._serialized_end=126819 + _globals['_AUTHORITYSCOPELEDGER']._serialized_start=126822 + _globals['_AUTHORITYSCOPELEDGER']._serialized_end=127076 + _globals['_AUTHORITYMISSINGEVIDENCE']._serialized_start=127079 + _globals['_AUTHORITYMISSINGEVIDENCE']._serialized_end=127303 + _globals['_AUTHORITYDENIEDACTION']._serialized_start=127306 + _globals['_AUTHORITYDENIEDACTION']._serialized_end=127551 + _globals['_AGENTWORKFORCERECORD']._serialized_start=127554 + _globals['_AGENTWORKFORCERECORD']._serialized_end=129141 + _globals['_AGENTWORKFORCESOURCEREADINESS']._serialized_start=129144 + _globals['_AGENTWORKFORCESOURCEREADINESS']._serialized_end=129588 + _globals['_AGENTWORKFORCEPROOFSUMMARY']._serialized_start=129591 + _globals['_AGENTWORKFORCEPROOFSUMMARY']._serialized_end=130043 + _globals['_AGENTWORKFORCEAPPROVALQUEUESUMMARY']._serialized_start=130046 + _globals['_AGENTWORKFORCEAPPROVALQUEUESUMMARY']._serialized_end=130409 + _globals['_AGENTWORKFORCEAPPROVALSTATEBUCKET']._serialized_start=130412 + _globals['_AGENTWORKFORCEAPPROVALSTATEBUCKET']._serialized_end=130555 + _globals['_AGENTWORKFORCEAPPROVALBLOCKERBUCKET']._serialized_start=130558 + _globals['_AGENTWORKFORCEAPPROVALBLOCKERBUCKET']._serialized_end=130733 + _globals['_AGENTWORKFORCEACTIONAUTHORITYBOUNDARY']._serialized_start=130736 + _globals['_AGENTWORKFORCEACTIONAUTHORITYBOUNDARY']._serialized_end=131032 + _globals['_AGENTWORKFORCEMISSINGEVIDENCEBUCKET']._serialized_start=131035 + _globals['_AGENTWORKFORCEMISSINGEVIDENCEBUCKET']._serialized_end=131166 + _globals['_ENDPOINTGUARDRAILSUMMARY']._serialized_start=131169 + _globals['_ENDPOINTGUARDRAILSUMMARY']._serialized_end=131626 + _globals['_AGENTWORKFORCEQUESTIONSUMMARY']._serialized_start=131629 + _globals['_AGENTWORKFORCEQUESTIONSUMMARY']._serialized_end=131886 + _globals['_AGENTWORKFORCEAPPROVALDISABLEMENT']._serialized_start=131889 + _globals['_AGENTWORKFORCEAPPROVALDISABLEMENT']._serialized_end=132139 + _globals['_RUNASIDENTITYSUMMARY']._serialized_start=132142 + _globals['_RUNASIDENTITYSUMMARY']._serialized_end=132345 + _globals['_AGENTWORKFORCEACTIONEVIDENCE']._serialized_start=132348 + _globals['_AGENTWORKFORCEACTIONEVIDENCE']._serialized_end=133048 + _globals['_CREDENTIALAUTHORITYSUMMARY']._serialized_start=133051 + _globals['_CREDENTIALAUTHORITYSUMMARY']._serialized_end=133411 + _globals['_COSTEVIDENCESUMMARY']._serialized_start=133414 + _globals['_COSTEVIDENCESUMMARY']._serialized_end=133721 + _globals['_AGENTWORKFORCEDEBUGIDENTIFIERS']._serialized_start=133724 + _globals['_AGENTWORKFORCEDEBUGIDENTIFIERS']._serialized_end=134007 + _globals['_RISKFINDING']._serialized_start=134010 + _globals['_RISKFINDING']._serialized_end=134331 + _globals['_INTEGRATIONCREDENTIALFIELD']._serialized_start=134334 + _globals['_INTEGRATIONCREDENTIALFIELD']._serialized_end=134559 + _globals['_INTEGRATIONTILE']._serialized_start=134562 + _globals['_INTEGRATIONTILE']._serialized_end=135877 + _globals['_ONBOARDINGTASK']._serialized_start=135880 + _globals['_ONBOARDINGTASK']._serialized_end=136090 + _globals['_TRACEDRILLDOWN']._serialized_start=136093 + _globals['_TRACEDRILLDOWN']._serialized_end=136934 + _globals['_TRACESPAN']._serialized_start=136937 + _globals['_TRACESPAN']._serialized_end=137582 + _globals['_TRACESPANREFERENCE']._serialized_start=137584 + _globals['_TRACESPANREFERENCE']._serialized_end=137697 + _globals['_TRACECOMPLETENESSSIGNAL']._serialized_start=137700 + _globals['_TRACECOMPLETENESSSIGNAL']._serialized_end=137838 + _globals['_SECURITYDECISIONPACKET']._serialized_start=137841 + _globals['_SECURITYDECISIONPACKET']._serialized_end=138322 + _globals['_SECURITYDECISIONEVIDENCEGAP']._serialized_start=138325 + _globals['_SECURITYDECISIONEVIDENCEGAP']._serialized_end=138489 + _globals['_RELATEDRESOURCE']._serialized_start=138491 + _globals['_RELATEDRESOURCE']._serialized_end=138601 + _globals['_OPERATINGHOMEPAGESUGGESTION']._serialized_start=138604 + _globals['_OPERATINGHOMEPAGESUGGESTION']._serialized_end=139099 + _globals['_DEXMCPSERVER']._serialized_start=139102 + _globals['_DEXMCPSERVER']._serialized_end=141362 + _globals['_DEXMCPCATALOGTOOL']._serialized_start=141365 + _globals['_DEXMCPCATALOGTOOL']._serialized_end=141520 + _globals['_CREATEDEXMCPSERVERREQUEST']._serialized_start=141523 + _globals['_CREATEDEXMCPSERVERREQUEST']._serialized_end=141761 + _globals['_CREATEDEXMCPSERVERRESPONSE']._serialized_start=141763 + _globals['_CREATEDEXMCPSERVERRESPONSE']._serialized_end=141849 + _globals['_LISTDEXMCPSERVERSREQUEST']._serialized_start=141851 + _globals['_LISTDEXMCPSERVERSREQUEST']._serialized_end=141933 + _globals['_LISTDEXMCPSERVERSRESPONSE']._serialized_start=141935 + _globals['_LISTDEXMCPSERVERSRESPONSE']._serialized_end=142014 + _globals['_GETDEXMCPSERVERREQUEST']._serialized_start=142016 + _globals['_GETDEXMCPSERVERREQUEST']._serialized_end=142134 + _globals['_GETDEXMCPSERVERRESPONSE']._serialized_start=142136 + _globals['_GETDEXMCPSERVERRESPONSE']._serialized_end=142219 + _globals['_DISCOVERDEXMCPSERVERREQUEST']._serialized_start=142221 + _globals['_DISCOVERDEXMCPSERVERREQUEST']._serialized_end=142344 + _globals['_DISCOVERDEXMCPSERVERRESPONSE']._serialized_start=142346 + _globals['_DISCOVERDEXMCPSERVERRESPONSE']._serialized_end=142434 + _globals['_UPDATEDEXMCPSERVERREQUEST']._serialized_start=142437 + _globals['_UPDATEDEXMCPSERVERREQUEST']._serialized_end=142736 + _globals['_UPDATEDEXMCPSERVERRESPONSE']._serialized_start=142738 + _globals['_UPDATEDEXMCPSERVERRESPONSE']._serialized_end=142824 + _globals['_DELETEDEXMCPSERVERREQUEST']._serialized_start=142826 + _globals['_DELETEDEXMCPSERVERREQUEST']._serialized_end=142947 + _globals['_DELETEDEXMCPSERVERRESPONSE']._serialized_start=142949 + _globals['_DELETEDEXMCPSERVERRESPONSE']._serialized_end=143003 + _globals['_DEXMCPOAUTHPROFILE']._serialized_start=143006 + _globals['_DEXMCPOAUTHPROFILE']._serialized_end=143587 + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST']._serialized_start=143590 + _globals['_INITIATEDEXMCPOAUTHPROFILEREQUEST']._serialized_end=144126 + _globals['_INITIATEDEXMCPOAUTHPROFILERESPONSE']._serialized_start=144129 + _globals['_INITIATEDEXMCPOAUTHPROFILERESPONSE']._serialized_end=144481 + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST']._serialized_start=144484 + _globals['_COMPLETEDEXMCPOAUTHPROFILEREQUEST']._serialized_end=145063 + _globals['_COMPLETEDEXMCPOAUTHPROFILERESPONSE']._serialized_start=145065 + _globals['_COMPLETEDEXMCPOAUTHPROFILERESPONSE']._serialized_end=145167 + _globals['_LISTDEXMCPOAUTHPROFILESREQUEST']._serialized_start=145169 + _globals['_LISTDEXMCPOAUTHPROFILESREQUEST']._serialized_end=145286 + _globals['_LISTDEXMCPOAUTHPROFILESRESPONSE']._serialized_start=145288 + _globals['_LISTDEXMCPOAUTHPROFILESRESPONSE']._serialized_end=145381 + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST']._serialized_start=145384 + _globals['_REVOKEDEXMCPOAUTHPROFILEREQUEST']._serialized_end=145649 + _globals['_REVOKEDEXMCPOAUTHPROFILERESPONSE']._serialized_start=145651 + _globals['_REVOKEDEXMCPOAUTHPROFILERESPONSE']._serialized_end=145751 + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILEREQUEST']._serialized_start=145754 + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILEREQUEST']._serialized_end=145994 + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILERESPONSE']._serialized_start=145997 + _globals['_REAUTHORIZEDEXMCPOAUTHPROFILERESPONSE']._serialized_end=146352 + _globals['_PRIVATEENDPOINT']._serialized_start=146355 + _globals['_PRIVATEENDPOINT']._serialized_end=147078 + _globals['_PRIVATEPROFILEROUTE']._serialized_start=147081 + _globals['_PRIVATEPROFILEROUTE']._serialized_end=147446 + _globals['_REGISTERPRIVATEENDPOINTREQUEST']._serialized_start=147449 + _globals['_REGISTERPRIVATEENDPOINTREQUEST']._serialized_end=147800 + _globals['_REGISTERPRIVATEENDPOINTRESPONSE']._serialized_start=147802 + _globals['_REGISTERPRIVATEENDPOINTRESPONSE']._serialized_end=147900 + _globals['_VERIFYPRIVATEENDPOINTREQUEST']._serialized_start=147903 + _globals['_VERIFYPRIVATEENDPOINTREQUEST']._serialized_end=148201 + _globals['_VERIFYPRIVATEENDPOINTRESPONSE']._serialized_start=148203 + _globals['_VERIFYPRIVATEENDPOINTRESPONSE']._serialized_end=148299 + _globals['_LISTPRIVATEENDPOINTSREQUEST']._serialized_start=148301 + _globals['_LISTPRIVATEENDPOINTSREQUEST']._serialized_end=148386 + _globals['_LISTPRIVATEENDPOINTSRESPONSE']._serialized_start=148388 + _globals['_LISTPRIVATEENDPOINTSRESPONSE']._serialized_end=148477 + _globals['_DELETEPRIVATEENDPOINTREQUEST']._serialized_start=148480 + _globals['_DELETEPRIVATEENDPOINTREQUEST']._serialized_end=148650 + _globals['_DELETEPRIVATEENDPOINTRESPONSE']._serialized_start=148652 + _globals['_DELETEPRIVATEENDPOINTRESPONSE']._serialized_end=148766 + _globals['_ATTACHPRIVATEENDPOINTTOPROFILEREQUEST']._serialized_start=148769 + _globals['_ATTACHPRIVATEENDPOINTTOPROFILEREQUEST']._serialized_end=149018 + _globals['_ATTACHPRIVATEENDPOINTTOPROFILERESPONSE']._serialized_start=149020 + _globals['_ATTACHPRIVATEENDPOINTTOPROFILERESPONSE']._serialized_end=149123 + _globals['_LISTGATEWAYEGRESSORIGINSREQUEST']._serialized_start=149125 + _globals['_LISTGATEWAYEGRESSORIGINSREQUEST']._serialized_end=149214 + _globals['_LISTGATEWAYEGRESSORIGINSRESPONSE']._serialized_start=149216 + _globals['_LISTGATEWAYEGRESSORIGINSRESPONSE']._serialized_end=149332 + _globals['_OPERATINGCAPABILITYREQUIREMENTSTATE']._serialized_start=149335 + _globals['_OPERATINGCAPABILITYREQUIREMENTSTATE']._serialized_end=149496 + _globals['_PREWARMOPERATINGTHREADREQUEST']._serialized_start=149499 + _globals['_PREWARMOPERATINGTHREADREQUEST']._serialized_end=149830 + _globals['_PREWARMOPERATINGTHREADRESPONSE']._serialized_start=149833 + _globals['_PREWARMOPERATINGTHREADRESPONSE']._serialized_end=150362 + _globals['_TERMINALERRORENVELOPE']._serialized_start=150365 + _globals['_TERMINALERRORENVELOPE']._serialized_end=150690 + _globals['_BOOTSTRAPTHREADGATEWAYREQUEST']._serialized_start=150693 + _globals['_BOOTSTRAPTHREADGATEWAYREQUEST']._serialized_end=150950 + _globals['_BOOTSTRAPTHREADGATEWAYRESPONSE']._serialized_start=150953 + _globals['_BOOTSTRAPTHREADGATEWAYRESPONSE']._serialized_end=151541 + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST']._serialized_start=151544 + _globals['_SETOPERATINGTHREADCONTROLLERREQUEST']._serialized_end=152003 + _globals['_SETOPERATINGTHREADCONTROLLERRESPONSE']._serialized_start=152006 + _globals['_SETOPERATINGTHREADCONTROLLERRESPONSE']._serialized_end=152207 + _globals['_COSTUSAGESUMMARY']._serialized_start=152210 + _globals['_COSTUSAGESUMMARY']._serialized_end=152734 + _globals['_COSTUSAGEATTRIBUTIONSUMMARY']._serialized_start=152737 + _globals['_COSTUSAGEATTRIBUTIONSUMMARY']._serialized_end=153374 + _globals['_TENANTPRIVACYSETTING']._serialized_start=153377 + _globals['_TENANTPRIVACYSETTING']._serialized_end=153616 + _globals['_GETPRIVACYSETTINGSREQUEST']._serialized_start=153618 + _globals['_GETPRIVACYSETTINGSREQUEST']._serialized_end=153701 + _globals['_GETPRIVACYSETTINGSRESPONSE']._serialized_start=153704 + _globals['_GETPRIVACYSETTINGSRESPONSE']._serialized_end=153936 + _globals['_SETPRIVACYSETTINGSREQUEST']._serialized_start=153939 + _globals['_SETPRIVACYSETTINGSREQUEST']._serialized_end=154152 + _globals['_MANAGEDRULE']._serialized_start=154155 + _globals['_MANAGEDRULE']._serialized_end=154297 + _globals['_MANAGEDSKILLREF']._serialized_start=154299 + _globals['_MANAGEDSKILLREF']._serialized_end=154419 + _globals['_MCPSERVERREF']._serialized_start=154421 + _globals['_MCPSERVERREF']._serialized_end=154518 + _globals['_MCPPOLICY']._serialized_start=154520 + _globals['_MCPPOLICY']._serialized_end=154630 + _globals['_MANAGEDSETUP']._serialized_start=154633 + _globals['_MANAGEDSETUP']._serialized_end=154995 + _globals['_GETMANAGEDSETUPREQUEST']._serialized_start=154997 + _globals['_GETMANAGEDSETUPREQUEST']._serialized_end=155106 + _globals['_SETMANAGEDSETUPREQUEST']._serialized_start=155109 + _globals['_SETMANAGEDSETUPREQUEST']._serialized_end=155274 + _globals['_MISSIONSCHEDULECAPABILITY']._serialized_start=155276 + _globals['_MISSIONSCHEDULECAPABILITY']._serialized_end=155375 + _globals['_STARTMEETINGCAPTUREREQUEST']._serialized_start=155378 + _globals['_STARTMEETINGCAPTUREREQUEST']._serialized_end=155884 + _globals['_LISTCONNECTEDCALLSREQUEST']._serialized_start=155886 + _globals['_LISTCONNECTEDCALLSREQUEST']._serialized_end=155969 + _globals['_LISTCONNECTEDCALLSRESPONSE']._serialized_start=155972 + _globals['_LISTCONNECTEDCALLSRESPONSE']._serialized_end=156122 + _globals['_CONNECTEDCALL']._serialized_start=156125 + _globals['_CONNECTEDCALL']._serialized_end=156344 + _globals['_STARTMEETINGCAPTURERESPONSE']._serialized_start=156346 + _globals['_STARTMEETINGCAPTURERESPONSE']._serialized_end=156429 + _globals['_GETMEETINGCAPTUREREQUEST']._serialized_start=156431 + _globals['_GETMEETINGCAPTUREREQUEST']._serialized_end=156553 + _globals['_GETMEETINGCAPTURERESPONSE']._serialized_start=156555 + _globals['_GETMEETINGCAPTURERESPONSE']._serialized_end=156636 + _globals['_LISTMEETINGCAPTURESREQUEST']._serialized_start=156638 + _globals['_LISTMEETINGCAPTURESREQUEST']._serialized_end=156722 + _globals['_LISTMEETINGCAPTURESRESPONSE']._serialized_start=156724 + _globals['_LISTMEETINGCAPTURESRESPONSE']._serialized_end=156809 + _globals['_STOPMEETINGCAPTUREREQUEST']._serialized_start=156812 + _globals['_STOPMEETINGCAPTUREREQUEST']._serialized_end=156988 + _globals['_STOPMEETINGCAPTURERESPONSE']._serialized_start=156990 + _globals['_STOPMEETINGCAPTURERESPONSE']._serialized_end=157072 + _globals['_MEETINGCAPTURE']._serialized_start=157075 + _globals['_MEETINGCAPTURE']._serialized_end=158326 + _globals['_PROSPECTINGWATCHPROGRAM']._serialized_start=158329 + _globals['_PROSPECTINGWATCHPROGRAM']._serialized_end=159124 + _globals['_PROSPECTINGWATCHPROGRAMMUTATIONRECEIPT']._serialized_start=159127 + _globals['_PROSPECTINGWATCHPROGRAMMUTATIONRECEIPT']._serialized_end=159408 + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST']._serialized_start=159411 + _globals['_CREATEPROSPECTINGWATCHPROGRAMREQUEST']._serialized_end=159747 + _globals['_CREATEPROSPECTINGWATCHPROGRAMRESPONSE']._serialized_start=159750 + _globals['_CREATEPROSPECTINGWATCHPROGRAMRESPONSE']._serialized_end=159946 + _globals['_GETPROSPECTINGWATCHPROGRAMREQUEST']._serialized_start=159949 + _globals['_GETPROSPECTINGWATCHPROGRAMREQUEST']._serialized_end=160091 + _globals['_GETPROSPECTINGWATCHPROGRAMRESPONSE']._serialized_start=160093 + _globals['_GETPROSPECTINGWATCHPROGRAMRESPONSE']._serialized_end=160200 + _globals['_LISTPROSPECTINGWATCHPROGRAMSREQUEST']._serialized_start=160202 + _globals['_LISTPROSPECTINGWATCHPROGRAMSREQUEST']._serialized_end=160295 + _globals['_LISTPROSPECTINGWATCHPROGRAMSRESPONSE']._serialized_start=160298 + _globals['_LISTPROSPECTINGWATCHPROGRAMSRESPONSE']._serialized_end=160438 + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST']._serialized_start=160441 + _globals['_UPDATEPROSPECTINGWATCHPROGRAMREQUEST']._serialized_end=160970 + _globals['_UPDATEPROSPECTINGWATCHPROGRAMRESPONSE']._serialized_start=160973 + _globals['_UPDATEPROSPECTINGWATCHPROGRAMRESPONSE']._serialized_end=161169 + _globals['_LISTCOMMITMENTSREQUEST']._serialized_start=161171 + _globals['_LISTCOMMITMENTSREQUEST']._serialized_end=161288 + _globals['_LISTCOMMITMENTSRESPONSE']._serialized_start=161291 + _globals['_LISTCOMMITMENTSRESPONSE']._serialized_end=161474 + _globals['_COMMITMENT']._serialized_start=161477 + _globals['_COMMITMENT']._serialized_end=161965 + _globals['_COMMITMENTCITATION']._serialized_start=161968 + _globals['_COMMITMENTCITATION']._serialized_end=162198 + _globals['_OPERATINGJOBRECORDLINK']._serialized_start=162201 + _globals['_OPERATINGJOBRECORDLINK']._serialized_end=162366 + _globals['_OPERATINGJOB']._serialized_start=162369 + _globals['_OPERATINGJOB']._serialized_end=163536 + _globals['_LISTOPERATINGJOBSREQUEST']._serialized_start=163538 + _globals['_LISTOPERATINGJOBSREQUEST']._serialized_end=163620 + _globals['_LISTOPERATINGJOBSRESPONSE']._serialized_start=163622 + _globals['_LISTOPERATINGJOBSRESPONSE']._serialized_end=163732 + _globals['_RECORDOPERATINGHOMEPAGESUGGESTIONFEEDBACKREQUEST']._serialized_start=163735 + _globals['_RECORDOPERATINGHOMEPAGESUGGESTIONFEEDBACKREQUEST']._serialized_end=163982 + _globals['_RECORDOPERATINGHOMEPAGESUGGESTIONFEEDBACKRESPONSE']._serialized_start=163984 + _globals['_RECORDOPERATINGHOMEPAGESUGGESTIONFEEDBACKRESPONSE']._serialized_end=164061 + _globals['_INFERENCECREDITBALANCE']._serialized_start=164064 + _globals['_INFERENCECREDITBALANCE']._serialized_end=164706 + _globals['_GETINFERENCECREDITBALANCEREQUEST']._serialized_start=164708 + _globals['_GETINFERENCECREDITBALANCEREQUEST']._serialized_end=164819 + _globals['_INFERENCECREDITBLOCK']._serialized_start=164822 + _globals['_INFERENCECREDITBLOCK']._serialized_end=164978 + _globals['_INFERENCECREDITPRICING']._serialized_start=164981 + _globals['_INFERENCECREDITPRICING']._serialized_end=165383 + _globals['_GETINFERENCECREDITBALANCERESPONSE']._serialized_start=165386 + _globals['_GETINFERENCECREDITBALANCERESPONSE']._serialized_end=165805 + _globals['_INFERENCERUNCREDITBALANCE']._serialized_start=165808 + _globals['_INFERENCERUNCREDITBALANCE']._serialized_end=166123 + _globals['_INFERENCECREDITRECONCILIATION']._serialized_start=166126 + _globals['_INFERENCECREDITRECONCILIATION']._serialized_end=166691 + _globals['_CREATEINFERENCECREDITCHECKOUTREQUEST']._serialized_start=166694 + _globals['_CREATEINFERENCECREDITCHECKOUTREQUEST']._serialized_end=166852 + _globals['_CREATEINFERENCECREDITCHECKOUTRESPONSE']._serialized_start=166854 + _globals['_CREATEINFERENCECREDITCHECKOUTRESPONSE']._serialized_end=166921 + _globals['_FULFILLINFERENCECREDITCHECKOUTREQUEST']._serialized_start=166924 + _globals['_FULFILLINFERENCECREDITCHECKOUTREQUEST']._serialized_end=167064 + _globals['_FULFILLINFERENCECREDITCHECKOUTRESPONSE']._serialized_start=167066 + _globals['_FULFILLINFERENCECREDITCHECKOUTRESPONSE']._serialized_end=167168 + _globals['_OPERATINGAUTOMODELROUTE']._serialized_start=167171 + _globals['_OPERATINGAUTOMODELROUTE']._serialized_end=167364 + _globals['_BUSINESSFIELDDEFINITION']._serialized_start=167367 + _globals['_BUSINESSFIELDDEFINITION']._serialized_end=167731 + _globals['_BUSINESSRELATIONSHIPDEFINITION']._serialized_start=167734 + _globals['_BUSINESSRELATIONSHIPDEFINITION']._serialized_end=167865 + _globals['_BUSINESSOBJECTTYPE']._serialized_start=167868 + _globals['_BUSINESSOBJECTTYPE']._serialized_end=168364 + _globals['_BUSINESSMONEY']._serialized_start=168366 + _globals['_BUSINESSMONEY']._serialized_end=168433 + _globals['_BUSINESSOBJECTREFERENCE']._serialized_start=168435 + _globals['_BUSINESSOBJECTREFERENCE']._serialized_end=168489 + _globals['_BUSINESSARTIFACTREFERENCE']._serialized_start=168491 + _globals['_BUSINESSARTIFACTREFERENCE']._serialized_end=168566 + _globals['_BUSINESSTEXTLIST']._serialized_start=168568 + _globals['_BUSINESSTEXTLIST']._serialized_end=168610 + _globals['_BUSINESSFIELDVALUE']._serialized_start=168613 + _globals['_BUSINESSFIELDVALUE']._serialized_end=169112 + _globals['_BUSINESSSOURCEFIELD']._serialized_start=169114 + _globals['_BUSINESSSOURCEFIELD']._serialized_end=169226 + _globals['_BUSINESSSOURCEBINDING']._serialized_start=169229 + _globals['_BUSINESSSOURCEBINDING']._serialized_end=169790 + _globals['_BUSINESSOBJECT']._serialized_start=169793 + _globals['_BUSINESSOBJECT']._serialized_end=170141 + _globals['_BUSINESSOBJECTREVISION']._serialized_start=170144 + _globals['_BUSINESSOBJECTREVISION']._serialized_end=170352 + _globals['_BUSINESSOBJECTRELATIONSHIP']._serialized_start=170355 + _globals['_BUSINESSOBJECTRELATIONSHIP']._serialized_end=170508 + _globals['_DEFINEBUSINESSOBJECTTYPEREQUEST']._serialized_start=170511 + _globals['_DEFINEBUSINESSOBJECTTYPEREQUEST']._serialized_end=170770 + _globals['_DEFINEBUSINESSOBJECTTYPERESPONSE']._serialized_start=170772 + _globals['_DEFINEBUSINESSOBJECTTYPERESPONSE']._serialized_end=170870 + _globals['_LISTBUSINESSOBJECTTYPESREQUEST']._serialized_start=170873 + _globals['_LISTBUSINESSOBJECTTYPESREQUEST']._serialized_end=171080 + _globals['_LISTBUSINESSOBJECTTYPESRESPONSE']._serialized_start=171083 + _globals['_LISTBUSINESSOBJECTTYPESRESPONSE']._serialized_end=171216 + _globals['_CREATEBUSINESSOBJECTREQUEST']._serialized_start=171219 + _globals['_CREATEBUSINESSOBJECTREQUEST']._serialized_end=171487 + _globals['_CREATEBUSINESSOBJECTRESPONSE']._serialized_start=171489 + _globals['_CREATEBUSINESSOBJECTRESPONSE']._serialized_end=171571 + _globals['_GETBUSINESSOBJECTREQUEST']._serialized_start=171574 + _globals['_GETBUSINESSOBJECTREQUEST']._serialized_end=171798 + _globals['_GETBUSINESSOBJECTRESPONSE']._serialized_start=171801 + _globals['_GETBUSINESSOBJECTRESPONSE']._serialized_end=171963 + _globals['_BUSINESSOBJECTSOURCERECOVERY']._serialized_start=171966 + _globals['_BUSINESSOBJECTSOURCERECOVERY']._serialized_end=172179 + _globals['_LISTBUSINESSOBJECTSREQUEST']._serialized_start=172182 + _globals['_LISTBUSINESSOBJECTSREQUEST']._serialized_end=172472 + _globals['_BUSINESSOBJECTFILTER']._serialized_start=172475 + _globals['_BUSINESSOBJECTFILTER']._serialized_end=172654 + _globals['_BUSINESSOBJECTREFERENCEFILTER']._serialized_start=172656 + _globals['_BUSINESSOBJECTREFERENCEFILTER']._serialized_end=172756 + _globals['_LISTBUSINESSOBJECTSRESPONSE']._serialized_start=172758 + _globals['_LISTBUSINESSOBJECTSRESPONSE']._serialized_end=172879 + _globals['_UPDATEBUSINESSOBJECTREQUEST']._serialized_start=172882 + _globals['_UPDATEBUSINESSOBJECTREQUEST']._serialized_end=173199 + _globals['_UPDATEBUSINESSOBJECTRESPONSE']._serialized_start=173201 + _globals['_UPDATEBUSINESSOBJECTRESPONSE']._serialized_end=173283 + _globals['_DELETEBUSINESSOBJECTREQUEST']._serialized_start=173286 + _globals['_DELETEBUSINESSOBJECTREQUEST']._serialized_end=173506 + _globals['_DELETEBUSINESSOBJECTRESPONSE']._serialized_start=173508 + _globals['_DELETEBUSINESSOBJECTRESPONSE']._serialized_end=173590 + _globals['_LISTBUSINESSOBJECTREVISIONSREQUEST']._serialized_start=173593 + _globals['_LISTBUSINESSOBJECTREVISIONSREQUEST']._serialized_end=173838 + _globals['_LISTBUSINESSOBJECTREVISIONSRESPONSE']._serialized_start=173841 + _globals['_LISTBUSINESSOBJECTREVISIONSRESPONSE']._serialized_end=173994 + _globals['_BINDBUSINESSOBJECTSOURCEREQUEST']._serialized_start=173997 + _globals['_BINDBUSINESSOBJECTSOURCEREQUEST']._serialized_end=174448 + _globals['_BINDBUSINESSOBJECTSOURCERESPONSE']._serialized_start=174450 + _globals['_BINDBUSINESSOBJECTSOURCERESPONSE']._serialized_end=174536 + _globals['_ADMITBUSINESSOBJECTOBSERVATIONREQUEST']._serialized_start=174539 + _globals['_ADMITBUSINESSOBJECTOBSERVATIONREQUEST']._serialized_end=174810 + _globals['_ADMITBUSINESSOBJECTOBSERVATIONRESPONSE']._serialized_start=174812 + _globals['_ADMITBUSINESSOBJECTOBSERVATIONRESPONSE']._serialized_end=174904 + _globals['_LISTBUSINESSOBJECTRELATIONSHIPSREQUEST']._serialized_start=174907 + _globals['_LISTBUSINESSOBJECTRELATIONSHIPSREQUEST']._serialized_end=175223 + _globals['_LISTBUSINESSOBJECTRELATIONSHIPSRESPONSE']._serialized_start=175226 + _globals['_LISTBUSINESSOBJECTRELATIONSHIPSRESPONSE']._serialized_end=175372 + _globals['_CREATEBUSINESSOBJECTRELATIONSHIPREQUEST']._serialized_start=175375 + _globals['_CREATEBUSINESSOBJECTRELATIONSHIPREQUEST']._serialized_end=175654 + _globals['_CREATEBUSINESSOBJECTRELATIONSHIPRESPONSE']._serialized_start=175656 + _globals['_CREATEBUSINESSOBJECTRELATIONSHIPRESPONSE']._serialized_end=175750 + _globals['_DELETEBUSINESSOBJECTRELATIONSHIPREQUEST']._serialized_start=175753 + _globals['_DELETEBUSINESSOBJECTRELATIONSHIPREQUEST']._serialized_end=176032 + _globals['_DELETEBUSINESSOBJECTRELATIONSHIPRESPONSE']._serialized_start=176034 + _globals['_DELETEBUSINESSOBJECTRELATIONSHIPRESPONSE']._serialized_end=176128 + _globals['_CAPTUREFORMOBJECTTARGET']._serialized_start=176130 + _globals['_CAPTUREFORMOBJECTTARGET']._serialized_end=176239 + _globals['_CAPTUREFORMASSETREF']._serialized_start=176241 + _globals['_CAPTUREFORMASSETREF']._serialized_end=176346 + _globals['_CAPTUREFORMBRANDINGINPUT']._serialized_start=176349 + _globals['_CAPTUREFORMBRANDINGINPUT']._serialized_end=176715 + _globals['_CAPTUREFORMBRANDING']._serialized_start=176718 + _globals['_CAPTUREFORMBRANDING']._serialized_end=177192 + _globals['_CAPTUREFORMPUBLICBRANDING']._serialized_start=177195 + _globals['_CAPTUREFORMPUBLICBRANDING']._serialized_end=177530 + _globals['_CAPTUREFORMSELECTOPTION']._serialized_start=177533 + _globals['_CAPTUREFORMSELECTOPTION']._serialized_end=177704 + _globals['_CAPTUREFORMSELECTSPEC']._serialized_start=177707 + _globals['_CAPTUREFORMSELECTSPEC']._serialized_end=177853 + _globals['_CAPTUREFORMUPLOADSPEC']._serialized_start=177856 + _globals['_CAPTUREFORMUPLOADSPEC']._serialized_end=178040 + _globals['_CAPTUREFORMUPLOAD']._serialized_start=178043 + _globals['_CAPTUREFORMUPLOAD']._serialized_end=178499 + _globals['_CAPTUREFORMTYPEDVALUE']._serialized_start=178502 + _globals['_CAPTUREFORMTYPEDVALUE']._serialized_end=179104 + _globals['_CAPTUREFORMTYPEDVALUE_OPTIONVALUES']._serialized_start=179029 + _globals['_CAPTUREFORMTYPEDVALUE_OPTIONVALUES']._serialized_end=179095 + _globals['_CAPTUREFORMFIELD']._serialized_start=179107 + _globals['_CAPTUREFORMFIELD']._serialized_end=179911 + _globals['_CAPTUREFORMPUBLICFIELD']._serialized_start=179914 + _globals['_CAPTUREFORMPUBLICFIELD']._serialized_end=180399 + _globals['_CAPTUREFORMVERSIONINPUT']._serialized_start=180402 + _globals['_CAPTUREFORMVERSIONINPUT']._serialized_end=180649 + _globals['_CAPTUREFORMVERSION']._serialized_start=180652 + _globals['_CAPTUREFORMVERSION']._serialized_end=181137 + _globals['_CAPTUREFORMPUBLICATIONINPUT']._serialized_start=181140 + _globals['_CAPTUREFORMPUBLICATIONINPUT']._serialized_end=181475 + _globals['_CAPTUREFORMPUBLICROUTE']._serialized_start=181478 + _globals['_CAPTUREFORMPUBLICROUTE']._serialized_end=181751 + _globals['_CAPTUREFORMPUBLICATION']._serialized_start=181754 + _globals['_CAPTUREFORMPUBLICATION']._serialized_end=182323 + _globals['_CAPTUREFORM']._serialized_start=182326 + _globals['_CAPTUREFORM']._serialized_end=183055 + _globals['_PUBLISHEDCAPTUREFORM']._serialized_start=183058 + _globals['_PUBLISHEDCAPTUREFORM']._serialized_end=183584 + _globals['_CAPTUREFORMANSWER']._serialized_start=183586 + _globals['_CAPTUREFORMANSWER']._serialized_end=183708 + _globals['_CAPTUREFORMREVIEW']._serialized_start=183711 + _globals['_CAPTUREFORMREVIEW']._serialized_end=184032 + _globals['_CAPTUREFORMOBJECTRESULT']._serialized_start=184035 + _globals['_CAPTUREFORMOBJECTRESULT']._serialized_end=184484 + _globals['_CAPTUREFORMSUBMISSION']._serialized_start=184487 + _globals['_CAPTUREFORMSUBMISSION']._serialized_end=185199 + _globals['_CAPTUREFORMPUBLICSUBMISSIONRECEIPT']._serialized_start=185202 + _globals['_CAPTUREFORMPUBLICSUBMISSIONRECEIPT']._serialized_end=185458 + _globals['_CREATECAPTUREFORMREQUEST']._serialized_start=185461 + _globals['_CREATECAPTUREFORMREQUEST']._serialized_end=185781 + _globals['_CREATECAPTUREFORMRESPONSE']._serialized_start=185784 + _globals['_CREATECAPTUREFORMRESPONSE']._serialized_end=185930 + _globals['_LISTCAPTUREFORMSREQUEST']._serialized_start=185933 + _globals['_LISTCAPTUREFORMSREQUEST']._serialized_end=186195 + _globals['_LISTCAPTUREFORMSRESPONSE']._serialized_start=186198 + _globals['_LISTCAPTUREFORMSRESPONSE']._serialized_end=186331 + _globals['_GETCAPTUREFORMREQUEST']._serialized_start=186334 + _globals['_GETCAPTUREFORMREQUEST']._serialized_end=186526 + _globals['_GETCAPTUREFORMRESPONSE']._serialized_start=186529 + _globals['_GETCAPTUREFORMRESPONSE']._serialized_end=186672 + _globals['_UPDATECAPTUREFORMREQUEST']._serialized_start=186675 + _globals['_UPDATECAPTUREFORMREQUEST']._serialized_end=187083 + _globals['_UPDATECAPTUREFORMRESPONSE']._serialized_start=187086 + _globals['_UPDATECAPTUREFORMRESPONSE']._serialized_end=187232 + _globals['_PUBLISHCAPTUREFORMREQUEST']._serialized_start=187235 + _globals['_PUBLISHCAPTUREFORMREQUEST']._serialized_end=187566 + _globals['_PUBLISHCAPTUREFORMRESPONSE']._serialized_start=187569 + _globals['_PUBLISHCAPTUREFORMRESPONSE']._serialized_end=187794 + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST']._serialized_start=187797 + _globals['_REVOKECAPTUREFORMPUBLICATIONREQUEST']._serialized_end=188063 + _globals['_REVOKECAPTUREFORMPUBLICATIONRESPONSE']._serialized_start=188066 + _globals['_REVOKECAPTUREFORMPUBLICATIONRESPONSE']._serialized_end=188235 + _globals['_GETPUBLISHEDCAPTUREFORMREQUEST']._serialized_start=188237 + _globals['_GETPUBLISHEDCAPTUREFORMREQUEST']._serialized_end=188317 + _globals['_GETPUBLISHEDCAPTUREFORMRESPONSE']._serialized_start=188319 + _globals['_GETPUBLISHEDCAPTUREFORMRESPONSE']._serialized_end=188414 + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETREQUEST']._serialized_start=188417 + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETREQUEST']._serialized_end=188584 + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETRESPONSE']._serialized_start=188587 + _globals['_GETPUBLISHEDCAPTUREFORMBRANDINGASSETRESPONSE']._serialized_end=188807 + _globals['_SUBMITPUBLISHEDCAPTUREFORMREQUEST']._serialized_start=188810 + _globals['_SUBMITPUBLISHEDCAPTUREFORMREQUEST']._serialized_end=189013 + _globals['_SUBMITPUBLISHEDCAPTUREFORMRESPONSE']._serialized_start=189015 + _globals['_SUBMITPUBLISHEDCAPTUREFORMRESPONSE']._serialized_end=189133 + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST']._serialized_start=189136 + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADREQUEST']._serialized_end=189510 + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE']._serialized_start=189513 + _globals['_BEGINPUBLISHEDCAPTUREFORMUPLOADRESPONSE']._serialized_end=189803 + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST']._serialized_start=189806 + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADREQUEST']._serialized_end=190382 + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADRESPONSE']._serialized_start=190384 + _globals['_COMPLETEPUBLISHEDCAPTUREFORMUPLOADRESPONSE']._serialized_end=190491 + _globals['_GETCAPTUREFORMSUBMISSIONREQUEST']._serialized_start=190494 + _globals['_GETCAPTUREFORMSUBMISSIONREQUEST']._serialized_end=190667 + _globals['_GETCAPTUREFORMSUBMISSIONRESPONSE']._serialized_start=190669 + _globals['_GETCAPTUREFORMSUBMISSIONRESPONSE']._serialized_end=190778 + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST']._serialized_start=190781 + _globals['_LISTCAPTUREFORMSUBMISSIONSREQUEST']._serialized_end=191097 + _globals['_LISTCAPTUREFORMSUBMISSIONSRESPONSE']._serialized_start=191100 + _globals['_LISTCAPTUREFORMSUBMISSIONSRESPONSE']._serialized_end=191265 + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST']._serialized_start=191268 + _globals['_REVIEWCAPTUREFORMSUBMISSIONREQUEST']._serialized_end=191751 + _globals['_REVIEWCAPTUREFORMSUBMISSIONRESPONSE']._serialized_start=191754 + _globals['_REVIEWCAPTUREFORMSUBMISSIONRESPONSE']._serialized_end=191940 + _globals['_GETBUSINESSOBJECTTYPEREQUEST']._serialized_start=191943 + _globals['_GETBUSINESSOBJECTTYPEREQUEST']._serialized_end=192138 + _globals['_GETBUSINESSOBJECTTYPERESPONSE']._serialized_start=192140 + _globals['_GETBUSINESSOBJECTTYPERESPONSE']._serialized_end=192235 + _globals['_INFERENCECREDITRECEIPT']._serialized_start=192238 + _globals['_INFERENCECREDITRECEIPT']._serialized_end=192537 + _globals['_LISTINFERENCECREDITRECEIPTSREQUEST']._serialized_start=192539 + _globals['_LISTINFERENCECREDITRECEIPTSREQUEST']._serialized_end=192650 + _globals['_LISTINFERENCECREDITRECEIPTSRESPONSE']._serialized_start=192653 + _globals['_LISTINFERENCECREDITRECEIPTSRESPONSE']._serialized_end=192824 + _globals['_INFERENCECREDITAUTOREFILL']._serialized_start=192827 + _globals['_INFERENCECREDITAUTOREFILL']._serialized_end=193108 + _globals['_GETINFERENCECREDITAUTOREFILLREQUEST']._serialized_start=193110 + _globals['_GETINFERENCECREDITAUTOREFILLREQUEST']._serialized_end=193191 + _globals['_GETINFERENCECREDITAUTOREFILLRESPONSE']._serialized_start=193193 + _globals['_GETINFERENCECREDITAUTOREFILLRESPONSE']._serialized_end=193298 + _globals['_UPDATEINFERENCECREDITAUTOREFILLREQUEST']._serialized_start=193301 + _globals['_UPDATEINFERENCECREDITAUTOREFILLREQUEST']._serialized_end=193647 + _globals['_UPDATEINFERENCECREDITAUTOREFILLRESPONSE']._serialized_start=193649 + _globals['_UPDATEINFERENCECREDITAUTOREFILLRESPONSE']._serialized_end=193751 + _globals['_COMPLETEINFERENCECREDITAUTOREFILLREQUEST']._serialized_start=193754 + _globals['_COMPLETEINFERENCECREDITAUTOREFILLREQUEST']._serialized_end=193891 + _globals['_COMPLETEINFERENCECREDITAUTOREFILLRESPONSE']._serialized_start=193893 + _globals['_COMPLETEINFERENCECREDITAUTOREFILLRESPONSE']._serialized_end=193962 + _globals['_PREPAREBUSINESSOBJECTAUTHORITYTRANSFERREQUEST']._serialized_start=193965 + _globals['_PREPAREBUSINESSOBJECTAUTHORITYTRANSFERREQUEST']._serialized_end=194244 + _globals['_PREPAREBUSINESSOBJECTAUTHORITYTRANSFERRESPONSE']._serialized_start=194247 + _globals['_PREPAREBUSINESSOBJECTAUTHORITYTRANSFERRESPONSE']._serialized_end=194416 + _globals['_FINALIZEBUSINESSOBJECTAUTHORITYTRANSFERREQUEST']._serialized_start=194419 + _globals['_FINALIZEBUSINESSOBJECTAUTHORITYTRANSFERREQUEST']._serialized_end=194788 + _globals['_FINALIZEBUSINESSOBJECTAUTHORITYTRANSFERRESPONSE']._serialized_start=194790 + _globals['_FINALIZEBUSINESSOBJECTAUTHORITYTRANSFERRESPONSE']._serialized_end=194891 + _globals['_BUSINESSPROCESSPARTICIPANTTYPE']._serialized_start=194893 + _globals['_BUSINESSPROCESSPARTICIPANTTYPE']._serialized_end=195016 + _globals['_BUSINESSPROCESSPARTICIPANT']._serialized_start=195018 + _globals['_BUSINESSPROCESSPARTICIPANT']._serialized_end=195141 + _globals['_BUSINESSPROCESSREQUIREMENT']._serialized_start=195144 + _globals['_BUSINESSPROCESSREQUIREMENT']._serialized_end=195399 + _globals['_BUSINESSPROCESSTRANSITION']._serialized_start=195402 + _globals['_BUSINESSPROCESSTRANSITION']._serialized_end=195733 + _globals['_BUSINESSPROCESSFOLLOWUP']._serialized_start=195736 + _globals['_BUSINESSPROCESSFOLLOWUP']._serialized_end=195887 + _globals['_BUSINESSPROCESSDEFINITION']._serialized_start=195890 + _globals['_BUSINESSPROCESSDEFINITION']._serialized_end=196373 + _globals['_BUSINESSPROCESSRECEIPT']._serialized_start=196376 + _globals['_BUSINESSPROCESSRECEIPT']._serialized_end=196782 + _globals['_BUSINESSPROCESS']._serialized_start=196785 + _globals['_BUSINESSPROCESS']._serialized_end=197392 + _globals['_DEFINEBUSINESSPROCESSREQUEST']._serialized_start=197395 + _globals['_DEFINEBUSINESSPROCESSREQUEST']._serialized_end=197670 + _globals['_DEFINEBUSINESSPROCESSRESPONSE']._serialized_start=197672 + _globals['_DEFINEBUSINESSPROCESSRESPONSE']._serialized_end=197774 + _globals['_STARTBUSINESSPROCESSREQUEST']._serialized_start=197777 + _globals['_STARTBUSINESSPROCESSREQUEST']._serialized_end=198149 + _globals['_STARTBUSINESSPROCESSRESPONSE']._serialized_start=198151 + _globals['_STARTBUSINESSPROCESSRESPONSE']._serialized_end=198236 + _globals['_GETBUSINESSPROCESSREQUEST']._serialized_start=198239 + _globals['_GETBUSINESSPROCESSREQUEST']._serialized_end=198373 + _globals['_GETBUSINESSPROCESSRESPONSE']._serialized_start=198376 + _globals['_GETBUSINESSPROCESSRESPONSE']._serialized_end=198530 + _globals['_LISTBUSINESSPROCESSESREQUEST']._serialized_start=198533 + _globals['_LISTBUSINESSPROCESSESREQUEST']._serialized_end=198754 + _globals['_LISTBUSINESSPROCESSESRESPONSE']._serialized_start=198757 + _globals['_LISTBUSINESSPROCESSESRESPONSE']._serialized_end=198898 + _globals['_TRANSITIONBUSINESSPROCESSREQUEST']._serialized_start=198901 + _globals['_TRANSITIONBUSINESSPROCESSREQUEST']._serialized_end=199294 + _globals['_TRANSITIONBUSINESSPROCESSRESPONSE']._serialized_start=199297 + _globals['_TRANSITIONBUSINESSPROCESSRESPONSE']._serialized_end=199467 + _globals['_GETBUSINESSPROCESSDEFINITIONREQUEST']._serialized_start=199470 + _globals['_GETBUSINESSPROCESSDEFINITIONREQUEST']._serialized_end=199648 + _globals['_GETBUSINESSPROCESSDEFINITIONRESPONSE']._serialized_start=199650 + _globals['_GETBUSINESSPROCESSDEFINITIONRESPONSE']._serialized_end=199759 + _globals['_LISTBUSINESSPROCESSDEFINITIONSREQUEST']._serialized_start=199762 + _globals['_LISTBUSINESSPROCESSDEFINITIONSREQUEST']._serialized_end=199954 + _globals['_LISTBUSINESSPROCESSDEFINITIONSRESPONSE']._serialized_start=199957 + _globals['_LISTBUSINESSPROCESSDEFINITIONSRESPONSE']._serialized_end=200127 + _globals['_OPERATINGPROJECTSNAPSHOTFILEINPUT']._serialized_start=200130 + _globals['_OPERATINGPROJECTSNAPSHOTFILEINPUT']._serialized_end=200273 + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTREQUEST']._serialized_start=200276 + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTREQUEST']._serialized_end=200675 + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTRESPONSE']._serialized_start=200678 + _globals['_ACCEPTOPERATINGPROJECTSNAPSHOTRESPONSE']._serialized_end=200985 + _globals['_GETOPERATINGPROJECTSNAPSHOTREQUEST']._serialized_start=200988 + _globals['_GETOPERATINGPROJECTSNAPSHOTREQUEST']._serialized_end=201217 + _globals['_GETOPERATINGTASKENVIRONMENTREQUEST']._serialized_start=201220 + _globals['_GETOPERATINGTASKENVIRONMENTREQUEST']._serialized_end=201392 + _globals['_GETOPERATINGTASKENVIRONMENTRESPONSE']._serialized_start=201395 + _globals['_GETOPERATINGTASKENVIRONMENTRESPONSE']._serialized_end=201825 + _globals['_IMPORTOPERATINGPROJECTSNAPSHOTREQUEST']._serialized_start=201828 + _globals['_IMPORTOPERATINGPROJECTSNAPSHOTREQUEST']._serialized_end=202116 + _globals['_BUSINESSBLUEPRINT']._serialized_start=202119 + _globals['_BUSINESSBLUEPRINT']._serialized_end=202606 + _globals['_LISTBUSINESSBLUEPRINTSREQUEST']._serialized_start=202608 + _globals['_LISTBUSINESSBLUEPRINTSREQUEST']._serialized_end=202733 + _globals['_LISTBUSINESSBLUEPRINTSRESPONSE']._serialized_start=202735 + _globals['_LISTBUSINESSBLUEPRINTSRESPONSE']._serialized_end=202830 + _globals['_CLONEBUSINESSBLUEPRINTREQUEST']._serialized_start=202833 + _globals['_CLONEBUSINESSBLUEPRINTREQUEST']._serialized_end=203199 + _globals['_CLONEBUSINESSBLUEPRINTRESPONSE']._serialized_start=203202 + _globals['_CLONEBUSINESSBLUEPRINTRESPONSE']._serialized_end=203625 + _globals['_BUSINESSBLUEPRINTSOURCE']._serialized_start=203628 + _globals['_BUSINESSBLUEPRINTSOURCE']._serialized_end=203780 + _globals['_CAPTUREFORMINVITATION']._serialized_start=203783 + _globals['_CAPTUREFORMINVITATION']._serialized_end=204010 + _globals['_CREATECAPTUREFORMINVITATIONREQUEST']._serialized_start=204013 + _globals['_CREATECAPTUREFORMINVITATIONREQUEST']._serialized_end=204438 + _globals['_CREATECAPTUREFORMINVITATIONRESPONSE']._serialized_start=204440 + _globals['_CREATECAPTUREFORMINVITATIONRESPONSE']._serialized_end=204552 + _globals['_REVOKECAPTUREFORMINVITATIONREQUEST']._serialized_start=204555 + _globals['_REVOKECAPTUREFORMINVITATIONREQUEST']._serialized_end=204784 + _globals['_REVOKECAPTUREFORMINVITATIONRESPONSE']._serialized_start=204786 + _globals['_REVOKECAPTUREFORMINVITATIONRESPONSE']._serialized_end=204898 + _globals['_GETINVITEDCAPTUREFORMREQUEST']._serialized_start=204900 + _globals['_GETINVITEDCAPTUREFORMREQUEST']._serialized_end=204976 + _globals['_GETINVITEDCAPTUREFORMRESPONSE']._serialized_start=204979 + _globals['_GETINVITEDCAPTUREFORMRESPONSE']._serialized_end=205138 + _globals['_SUBMITINVITEDCAPTUREFORMREQUEST']._serialized_start=205141 + _globals['_SUBMITINVITEDCAPTUREFORMREQUEST']._serialized_end=205340 + _globals['_SUBMITINVITEDCAPTUREFORMRESPONSE']._serialized_start=205342 + _globals['_SUBMITINVITEDCAPTUREFORMRESPONSE']._serialized_end=205458 + _globals['_GETSTAFFMANAGEDINFERENCEREADINESSREQUEST']._serialized_start=205461 + _globals['_GETSTAFFMANAGEDINFERENCEREADINESSREQUEST']._serialized_end=205681 + _globals['_GETMANAGEDINFERENCEREADINESSREQUEST']._serialized_start=205684 + _globals['_GETMANAGEDINFERENCEREADINESSREQUEST']._serialized_end=205899 + _globals['_GETMANAGEDINFERENCEREADINESSRESPONSE']._serialized_start=205902 + _globals['_GETMANAGEDINFERENCEREADINESSRESPONSE']._serialized_end=206686 + _globals['_GETSTAFFMANAGEDINFERENCEFUNDINGREQUEST']._serialized_start=206689 + _globals['_GETSTAFFMANAGEDINFERENCEFUNDINGREQUEST']._serialized_end=206891 + _globals['_GRANTSTAFFMANAGEDINFERENCECREDITSREQUEST']._serialized_start=206894 + _globals['_GRANTSTAFFMANAGEDINFERENCECREDITSREQUEST']._serialized_end=207098 + _globals['_GETSTAFFMANAGEDINFERENCEUSAGEREQUEST']._serialized_start=207101 + _globals['_GETSTAFFMANAGEDINFERENCEUSAGEREQUEST']._serialized_end=207288 + _globals['_GETSTAFFMANAGEDINFERENCEBUDGETREQUEST']._serialized_start=207291 + _globals['_GETSTAFFMANAGEDINFERENCEBUDGETREQUEST']._serialized_end=207487 + _globals['_SETSTAFFMANAGEDINFERENCEBUDGETREQUEST']._serialized_start=207490 + _globals['_SETSTAFFMANAGEDINFERENCEBUDGETREQUEST']._serialized_end=207732 + _globals['_LISTMANAGEDPROVIDERACCESSEVENTSREQUEST']._serialized_start=207735 + _globals['_LISTMANAGEDPROVIDERACCESSEVENTSREQUEST']._serialized_end=207940 + _globals['_MANAGEDPROVIDERACCESSEVENT']._serialized_start=207943 + _globals['_MANAGEDPROVIDERACCESSEVENT']._serialized_end=208337 + _globals['_LISTMANAGEDPROVIDERACCESSEVENTSRESPONSE']._serialized_start=208340 + _globals['_LISTMANAGEDPROVIDERACCESSEVENTSRESPONSE']._serialized_end=208485 + _globals['_LISTSTAFFMANAGEDINFERENCEADMINEVENTSREQUEST']._serialized_start=208488 + _globals['_LISTSTAFFMANAGEDINFERENCEADMINEVENTSREQUEST']._serialized_end=208703 + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST']._serialized_start=208706 + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSREQUEST']._serialized_end=208966 + _globals['_MANAGEDEXECUTIONGRANTEVENT']._serialized_start=208969 + _globals['_MANAGEDEXECUTIONGRANTEVENT']._serialized_end=209627 + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSRESPONSE']._serialized_start=209630 + _globals['_LISTSTAFFMANAGEDEXECUTIONGRANTEVENTSRESPONSE']._serialized_end=209814 + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESREQUEST']._serialized_start=209817 + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESREQUEST']._serialized_end=210026 + _globals['_MANAGEDEXECUTIONOUTCOME']._serialized_start=210029 + _globals['_MANAGEDEXECUTIONOUTCOME']._serialized_end=210595 + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESRESPONSE']._serialized_start=210598 + _globals['_LISTSTAFFMANAGEDEXECUTIONOUTCOMESRESPONSE']._serialized_end=210731 + _globals['_PROSPECTINGDRAFTTARGETACCOUNT']._serialized_start=210734 + _globals['_PROSPECTINGDRAFTTARGETACCOUNT']._serialized_end=210997 + _globals['_PROSPECTINGDRAFT']._serialized_start=211000 + _globals['_PROSPECTINGDRAFT']._serialized_end=212078 + _globals['_PROSPECTINGDRAFTMUTATIONRECEIPT']._serialized_start=212081 + _globals['_PROSPECTINGDRAFTMUTATIONRECEIPT']._serialized_end=212355 + _globals['_CREATEPROSPECTINGDRAFTREQUEST']._serialized_start=212358 + _globals['_CREATEPROSPECTINGDRAFTREQUEST']._serialized_end=212859 + _globals['_CREATEPROSPECTINGDRAFTRESPONSE']._serialized_start=212862 + _globals['_CREATEPROSPECTINGDRAFTRESPONSE']._serialized_end=213033 + _globals['_LISTPROSPECTINGDRAFTSREQUEST']._serialized_start=213035 + _globals['_LISTPROSPECTINGDRAFTSREQUEST']._serialized_end=213121 + _globals['_LISTPROSPECTINGDRAFTSRESPONSE']._serialized_start=213123 + _globals['_LISTPROSPECTINGDRAFTSRESPONSE']._serialized_end=213245 + _globals['_REVIEWPROSPECTINGDRAFTREQUEST']._serialized_start=213248 + _globals['_REVIEWPROSPECTINGDRAFTREQUEST']._serialized_end=213597 + _globals['_REVIEWPROSPECTINGDRAFTRESPONSE']._serialized_start=213600 + _globals['_REVIEWPROSPECTINGDRAFTRESPONSE']._serialized_end=213771 + _globals['_WORKSPACEBRANDVOICE']._serialized_start=213774 + _globals['_WORKSPACEBRANDVOICE']._serialized_end=214219 + _globals['_WORKSPACEBRANDVOICE_SCOPE']._serialized_start=214143 + _globals['_WORKSPACEBRANDVOICE_SCOPE']._serialized_end=214219 + _globals['_CONSOLESERVICE']._serialized_start=244356 + _globals['_CONSOLESERVICE']._serialized_end=283486 + _globals['_WORKSPACEKEYSERVICE']._serialized_start=283489 + _globals['_WORKSPACEKEYSERVICE']._serialized_end=284013 + _globals['_MANAGEDSETUPSERVICE']._serialized_start=284016 + _globals['_MANAGEDSETUPSERVICE']._serialized_end=284316 +# @@protoc_insertion_point(module_scope) diff --git a/src/deixic/__init__.py b/src/deixic/__init__.py new file mode 100644 index 0000000..e22d5c4 --- /dev/null +++ b/src/deixic/__init__.py @@ -0,0 +1,15 @@ +from .auth import Credential, CredentialProvider +from .client import Deixic +from .errors import DeixicError +from .tasks import SetupCheck, Task, TaskCheckpoint, TaskResult + +__all__ = [ + "Credential", + "CredentialProvider", + "Deixic", + "DeixicError", + "SetupCheck", + "Task", + "TaskCheckpoint", + "TaskResult", +] diff --git a/src/deixic/auth.py b/src/deixic/auth.py new file mode 100644 index 0000000..c3e2e58 --- /dev/null +++ b/src/deixic/auth.py @@ -0,0 +1,138 @@ +from __future__ import annotations + +import re +from dataclasses import dataclass +from typing import Protocol + +from .errors import authentication_error, validation_error + + +_HTTP_TOKEN = re.compile(r"^[!#$%&'*+.^_`|~0-9A-Za-z-]+$") + + +@dataclass(frozen=True) +class Credential: + access_token: str + token_type: str = "Bearer" + subject: str | None = None + organization_id: str | None = None + workspace_id: str | None = None + scopes: tuple[str, ...] = () + + +class CredentialProvider(Protocol): + @property + def can_refresh(self) -> bool: ... + + def get_credential(self) -> Credential: ... + + def refresh_credential(self, current: Credential) -> Credential: ... + + +class StaticCredentialProvider: + can_refresh = False + + def __init__(self, token: str) -> None: + token = token.strip() + if not token: + raise validation_error("api_key must be non-empty") + self._credential = Credential(access_token=token) + + def get_credential(self) -> Credential: + return self._credential + + def refresh_credential(self, current: Credential) -> Credential: + return current + + +class CredentialIdentity: + def __init__(self, organization_id: str, workspace_id: str) -> None: + self._organization_id = organization_id + self._workspace_id = workspace_id + self._subject: str | None = None + self._scopes: frozenset[str] | None = None + self._declared_organization = False + self._declared_workspace = False + + def check(self, credential: Credential) -> Credential: + access_token = credential.access_token + if not access_token.strip(): + raise authentication_error( + "credential provider returned an empty access token" + ) + if access_token != access_token.strip() or any( + ord(char) < 0x20 or ord(char) == 0x7F for char in access_token + ): + raise authentication_error( + "credential provider returned an invalid access token" + ) + token_type = credential.token_type.strip() + if token_type != credential.token_type or not _HTTP_TOKEN.fullmatch(token_type): + raise authentication_error( + "credential provider returned an invalid token type" + ) + organization_id = _clean(credential.organization_id) + workspace_id = _clean(credential.workspace_id) + if organization_id and organization_id != self._organization_id: + raise authentication_error( + "credential organization_id does not match the client scope" + ) + if workspace_id and workspace_id != self._workspace_id: + raise authentication_error( + "credential workspace_id does not match the client scope" + ) + if self._declared_organization and not organization_id: + raise authentication_error( + "credential refresh removed its declared organization_id" + ) + if self._declared_workspace and not workspace_id: + raise authentication_error( + "credential refresh removed its declared workspace_id" + ) + self._declared_organization = self._declared_organization or bool( + organization_id + ) + self._declared_workspace = self._declared_workspace or bool(workspace_id) + + subject = _clean(credential.subject) + if self._subject and not subject: + raise authentication_error( + "credential refresh removed the authenticated subject" + ) + if self._subject and subject != self._subject: + raise authentication_error( + "credential refresh changed the authenticated subject" + ) + if subject: + self._subject = subject + + scopes = frozenset( + scope.strip() for scope in credential.scopes if scope.strip() + ) + if self._scopes is not None and not scopes: + raise authentication_error( + "credential refresh removed its declared OAuth scopes" + ) + if self._scopes is not None and scopes != self._scopes: + raise authentication_error( + "credential refresh changed its declared OAuth scopes" + ) + if scopes and self._scopes is None: + self._scopes = scopes + return credential + + def check_refresh(self, current: Credential, refreshed: Credential) -> Credential: + current_subject = _clean(current.subject) + refreshed_subject = _clean(refreshed.subject) + if not current_subject or refreshed_subject != current_subject: + raise authentication_error( + "credential refresh requires the same stable subject before replay" + ) + return self.check(refreshed) + + +def _clean(value: str | None) -> str | None: + if value is None: + return None + cleaned = value.strip() + return cleaned or None diff --git a/src/deixic/client.py b/src/deixic/client.py new file mode 100644 index 0000000..6941074 --- /dev/null +++ b/src/deixic/client.py @@ -0,0 +1,500 @@ +from __future__ import annotations + +import json +import math +import struct +from collections.abc import Iterator +from typing import Any, TypeVar +from urllib.parse import urlsplit + +from console.v1 import console_pb2 +from google.protobuf.message import Message + +from .auth import ( + Credential, + CredentialIdentity, + CredentialProvider, + StaticCredentialProvider, +) +from .errors import ( + DeixicError, + connect_stream_error, + error_from_response, + validation_error, +) +from .transport import RequestsTransport, Response, Transport + +MessageT = TypeVar("MessageT", bound=Message) + +_SERVICE = "deixic.v1.DeixicService" +_MAX_STREAM_FRAME_BYTES = 16 * 1024 * 1024 + + +class Deixic: + """Scope-bound client for Deixic's durable operating contract.""" + + def __init__( + self, + *, + organization_id: str, + workspace_id: str, + api_key: str | None = None, + credential_provider: CredentialProvider | None = None, + base_url: str = "https://app.deixic.com", + timeout: float = 30.0, + transport: Transport | None = None, + ) -> None: + self._organization_id = _required(organization_id, "organization_id") + self._workspace_id = _required(workspace_id, "workspace_id") + if bool(api_key) == bool(credential_provider): + raise validation_error( + 'provide exactly one of "api_key" or "credential_provider"' + ) + self._credentials = credential_provider or StaticCredentialProvider( + api_key or "" + ) + self._identity = CredentialIdentity(self.organization_id, self.workspace_id) + self._base_url = _validated_base_url(base_url) + if ( + isinstance(timeout, bool) + or not isinstance(timeout, (int, float)) + or not math.isfinite(timeout) + or timeout <= 0 + ): + raise validation_error("timeout must be a positive finite number") + self._timeout = float(timeout) + self._transport = transport or RequestsTransport() + + self.threads = ThreadsClient(self) + self.events = EventsClient(self) + self.messages = MessagesClient(self) + self.controls = ControlsClient(self) + self.receipts = ReceiptsClient(self) + from .tasks import TasksClient + + self.tasks = TasksClient(self) + + @property + def organization_id(self) -> str: + """Organization scope fixed when this client was created.""" + return self._organization_id + + @property + def workspace_id(self) -> str: + """Workspace scope fixed when this client was created.""" + return self._workspace_id + + @property + def base_url(self) -> str: + """Platform origin fixed when this client was created.""" + return self._base_url + + def _query(self, *, limit: int = 50, offset: int = 0) -> console_pb2.ConsoleQuery: + return console_pb2.ConsoleQuery( + organization_id=self.organization_id, + workspace_id=self.workspace_id, + environment="production", + limit=limit, + offset=offset, + ) + + def _unary( + self, + method: str, + request: Message, + response_type: type[MessageT], + *, + timeout: float | None = None, + ) -> MessageT: + body = request.SerializeToString(deterministic=True) + current = self._identity.check(self._credentials.get_credential()) + response = self._send(method, body, current, stream=False, timeout=timeout) + if int(response.status_code) == 401 and self._credentials.can_refresh: + response.close() + refreshed = self._credentials.refresh_credential(current) + current = self._identity.check_refresh(current, refreshed) + response = self._send(method, body, current, stream=False, timeout=timeout) + try: + if not 200 <= int(response.status_code) < 300: + raise error_from_response(response) + result = response_type() + try: + result.ParseFromString(bytes(response.content)) + except Exception as exc: + raise DeixicError( + "Deixic returned an invalid protobuf response", + kind="protocol", + status_code=int(response.status_code), + ) from exc + return result + finally: + response.close() + + def _stream( + self, + method: str, + request: Message, + response_type: type[MessageT], + ) -> Iterator[MessageT]: + payload = request.SerializeToString(deterministic=True) + body = struct.pack(">BI", 0, len(payload)) + payload + current = self._identity.check(self._credentials.get_credential()) + response = self._send(method, body, current, stream=True) + if int(response.status_code) == 401 and self._credentials.can_refresh: + response.close() + refreshed = self._credentials.refresh_credential(current) + current = self._identity.check_refresh(current, refreshed) + response = self._send(method, body, current, stream=True) + if not 200 <= int(response.status_code) < 300: + try: + raise error_from_response(response) + finally: + response.close() + return _decode_stream(response, response_type) + + def _send( + self, + method: str, + body: bytes, + credential: Credential, + *, + stream: bool, + timeout: float | None = None, + ) -> Response: + if timeout is not None and ( + isinstance(timeout, bool) + or not isinstance(timeout, (int, float)) + or not math.isfinite(timeout) + or timeout <= 0 + ): + raise validation_error("timeout must be a positive finite number") + content_type = "application/connect+proto" if stream else "application/proto" + try: + return self._transport.send( + "POST", + f"{self._base_url}/{_SERVICE}/{method}", + headers={ + "Authorization": f"{credential.token_type or 'Bearer'} {credential.access_token}", + "Connect-Protocol-Version": "1", + "Content-Type": content_type, + "Accept": content_type, + "X-Organization-ID": self.organization_id, + "X-Workspace-ID": self.workspace_id, + }, + body=body, + timeout=min(self._timeout, timeout) + if timeout is not None + else self._timeout, + stream=stream, + ) + except DeixicError: + raise + except Exception as exc: + raise DeixicError("Deixic transport failed", kind="transport") from exc + + +class ThreadsClient: + def __init__(self, client: Deixic) -> None: + self._client = client + + def get( + self, + *, + channel_id: str, + limit: int = 100, + offset: int = 0, + page_token: str = "", + timeout: float | None = None, + ) -> console_pb2.GetOperatingThreadResponse: + _bounded_int(limit, "limit", minimum=1, maximum=200) + _bounded_int(offset, "offset", minimum=0, maximum=2_147_483_647) + request = console_pb2.GetOperatingThreadRequest( + query=self._client._query(limit=limit, offset=offset), + channel_id=_required(channel_id, "channel_id"), + limit=limit, + page_token=page_token, + ) + return self._client._unary( + "GetOperatingThread", + request, + console_pb2.GetOperatingThreadResponse, + timeout=timeout, + ) + + +class EventsClient: + def __init__(self, client: Deixic) -> None: + self._client = client + + def list( + self, + *, + channel_id: str, + after_cursor: int, + limit: int = 200, + timeout: float | None = None, + ) -> console_pb2.ListOperatingThreadEventsResponse: + _bounded_int(after_cursor, "after_cursor", minimum=0, maximum=2**63 - 1) + _bounded_int(limit, "limit", minimum=1, maximum=200) + request = console_pb2.ListOperatingThreadEventsRequest( + query=self._client._query(), + channel_id=_required(channel_id, "channel_id"), + after_cursor=after_cursor, + limit=limit, + ) + return self._client._unary( + "ListOperatingThreadEvents", + request, + console_pb2.ListOperatingThreadEventsResponse, + timeout=timeout, + ) + + def watch( + self, + *, + channel_id: str, + after_cursor: int, + ) -> Iterator[console_pb2.WatchOperatingThreadResponse]: + _bounded_int(after_cursor, "after_cursor", minimum=0, maximum=2**63 - 1) + request = console_pb2.WatchOperatingThreadRequest( + query=self._client._query(), + channel_id=_required(channel_id, "channel_id"), + after_cursor=after_cursor, + ) + return self._client._stream( + "WatchOperatingThread", + request, + console_pb2.WatchOperatingThreadResponse, + ) + + +class MessagesClient: + def __init__(self, client: Deixic) -> None: + self._client = client + + def send( + self, + *, + channel_id: str, + body: str, + idempotency_key: str, + continuation_task_id: str = "", + reference_task_ids: tuple[str, ...] | list[str] = (), + project_resource_id: str | None = None, + coding_acceptance: console_pb2.CodingAcceptanceContract | None = None, + ) -> console_pb2.SubmitOperatingMessageResponse: + request = console_pb2.SubmitOperatingMessageRequest( + query=self._client._query(), + channel_id=_required(channel_id, "channel_id"), + body=body, + idempotency_key=_required(idempotency_key, "idempotency_key"), + continuation_task_id=continuation_task_id, + reference_task_ids=list(reference_task_ids), + ) + if coding_acceptance is not None: + request.coding_acceptance.CopyFrom(coding_acceptance) + request.task_kind = console_pb2.OPERATING_TASK_KIND_CODING_IMPLEMENTATION + if project_resource_id is not None: + request.project_resource_id = _required( + project_resource_id, "project_resource_id" + ) + return self._client._unary( + "SubmitOperatingMessage", + request, + console_pb2.SubmitOperatingMessageResponse, + ) + + +class ControlsClient: + def __init__(self, client: Deixic) -> None: + self._client = client + + def interrupt( + self, + *, + channel_id: str, + idempotency_key: str, + turn_id: str = "", + reason: str = "", + ) -> console_pb2.InterruptOperatingThreadResponse: + request = console_pb2.InterruptOperatingThreadRequest( + query=self._client._query(), + channel_id=_required(channel_id, "channel_id"), + turn_id=turn_id, + idempotency_key=_required(idempotency_key, "idempotency_key"), + reason=reason, + ) + return self._client._unary( + "InterruptOperatingThread", + request, + console_pb2.InterruptOperatingThreadResponse, + ) + + def respond( + self, + *, + channel_id: str, + turn_id: str, + response: console_pb2.OperatingThreadResponse, + idempotency_key: str, + ) -> console_pb2.RespondOperatingThreadResponse: + key = _required(idempotency_key, "idempotency_key") + response_copy = console_pb2.OperatingThreadResponse() + response_copy.CopyFrom(response) + if response_copy.idempotency_key and response_copy.idempotency_key != key: + raise validation_error( + "response.idempotency_key must match idempotency_key" + ) + response_copy.idempotency_key = key + request = console_pb2.RespondOperatingThreadRequest( + query=self._client._query(), + channel_id=_required(channel_id, "channel_id"), + turn_id=_required(turn_id, "turn_id"), + response=response_copy, + idempotency_key=key, + ) + return self._client._unary( + "RespondOperatingThread", + request, + console_pb2.RespondOperatingThreadResponse, + ) + + +class ReceiptsClient: + def __init__(self, client: Deixic) -> None: + self._client = client + + def get( + self, + *, + channel_id: str, + receipt_id: str, + include_coding_output_content: bool = False, + timeout: float | None = None, + ) -> console_pb2.GetOperatingReceiptResponse: + request = console_pb2.GetOperatingReceiptRequest( + query=self._client._query(), + channel_id=_required(channel_id, "channel_id"), + receipt_id=_required(receipt_id, "receipt_id"), + include_coding_output_content=include_coding_output_content, + ) + return self._client._unary( + "GetOperatingReceipt", + request, + console_pb2.GetOperatingReceiptResponse, + timeout=timeout, + ) + + def resolve( + self, + *, + receipt_id: str, + action: console_pb2.OperatingReceiptAction, + idempotency_key: str, + ) -> console_pb2.ResolveOperatingReceiptActionResponse: + request = console_pb2.ResolveOperatingReceiptActionRequest( + query=self._client._query(), + receipt_id=_required(receipt_id, "receipt_id"), + action=action, + idempotency_key=_required(idempotency_key, "idempotency_key"), + ) + return self._client._unary( + "ResolveOperatingReceiptAction", + request, + console_pb2.ResolveOperatingReceiptActionResponse, + ) + + +def _decode_stream( + response: Response, response_type: type[MessageT] +) -> Iterator[MessageT]: + def messages() -> Iterator[MessageT]: + buffer = bytearray() + try: + for chunk in response.iter_content(chunk_size=64 * 1024): + if not chunk: + continue + buffer.extend(chunk) + while len(buffer) >= 5: + flags = buffer[0] + length = struct.unpack(">I", buffer[1:5])[0] + if length > _MAX_STREAM_FRAME_BYTES: + raise DeixicError( + "Deixic stream frame exceeds the 16 MiB SDK limit", + kind="protocol", + ) + if len(buffer) < 5 + length: + break + payload = bytes(buffer[5 : 5 + length]) + del buffer[: 5 + length] + if flags == 0x02: + try: + document = ( + json.loads(payload.decode("utf-8")) if payload else {} + ) + except (UnicodeDecodeError, json.JSONDecodeError) as exc: + raise DeixicError( + "Deixic stream returned an invalid end envelope", + kind="protocol", + ) from exc + if isinstance(document, dict) and document.get("error"): + raise connect_stream_error(payload, response.headers) + return + if flags != 0: + raise DeixicError( + f"Deixic stream used unsupported envelope flags: {flags}", + kind="protocol", + ) + message = response_type() + try: + message.ParseFromString(payload) + except Exception as exc: + raise DeixicError( + "Deixic stream returned an invalid protobuf frame", + kind="protocol", + ) from exc + yield message + if buffer: + raise DeixicError( + "Deixic stream ended with an incomplete frame", kind="protocol" + ) + except DeixicError: + raise + except Exception as exc: + raise DeixicError( + "Deixic stream transport failed", kind="transport" + ) from exc + finally: + response.close() + + return messages() + + +def _required(value: str, field: str) -> str: + cleaned = value.strip() if isinstance(value, str) else "" + if not cleaned: + raise validation_error(f"{field} is required") + return cleaned + + +def _validated_base_url(value: str) -> str: + cleaned = _required(value, "base_url").rstrip("/") + parsed = urlsplit(cleaned) + if parsed.scheme not in {"http", "https"} or not parsed.netloc: + raise validation_error("base_url must be an absolute HTTP(S) URL") + if parsed.username or parsed.password or parsed.query or parsed.fragment: + raise validation_error( + "base_url must not contain credentials, a query, or a fragment" + ) + return cleaned + + +def _bounded_int(value: int, field: str, *, minimum: int, maximum: int) -> None: + if ( + isinstance(value, bool) + or not isinstance(value, int) + or not minimum <= value <= maximum + ): + raise validation_error( + f"{field} must be an integer between {minimum} and {maximum}" + ) diff --git a/src/deixic/errors.py b/src/deixic/errors.py new file mode 100644 index 0000000..e3c997f --- /dev/null +++ b/src/deixic/errors.py @@ -0,0 +1,141 @@ +from __future__ import annotations + +import json +from collections.abc import Mapping +from typing import Any + + +class DeixicError(Exception): + """Base failure raised by the Deixic SDK.""" + + def __init__( + self, + message: str, + *, + kind: str = "protocol", + status_code: int | None = None, + code: str | None = None, + request_id: str | None = None, + traceparent: str | None = None, + details: Mapping[str, Any] | None = None, + ) -> None: + super().__init__(message) + self.kind = kind + self.status_code = status_code + self.code = code + self.request_id = request_id + self.traceparent = traceparent + self.details = dict(details or {}) + + +def error_from_response(response: Any) -> DeixicError: + status_code = int(getattr(response, "status_code", 0) or 0) + headers = getattr(response, "headers", {}) or {} + payload = _payload(response) + code = _string(payload.get("code")) + message = _string(payload.get("message")) + nested = payload.get("error") + if isinstance(nested, Mapping): + code = code or _string(nested.get("code")) + message = message or _string(nested.get("message")) + elif isinstance(nested, str): + message = message or nested + message = message or f"Deixic request failed with HTTP {status_code}" + return DeixicError( + message, + kind=_kind(status_code, code), + status_code=status_code or None, + code=_header(headers, "x-evalops-error-code") or code, + request_id=_header(headers, "x-request-id"), + traceparent=_header(headers, "traceparent"), + details=payload, + ) + + +def connect_stream_error(payload: bytes, headers: Mapping[str, str]) -> DeixicError: + try: + document = json.loads(payload.decode("utf-8")) + except (UnicodeDecodeError, json.JSONDecodeError): + document = {} + error = document.get("error") if isinstance(document, Mapping) else None + if not isinstance(error, Mapping): + error = {} + code = _string(error.get("code")) or "unknown" + message = _string(error.get("message")) or "Deixic stream ended with an error" + return DeixicError( + message, + kind=_connect_kind(code), + code=code, + request_id=_header(headers, "x-request-id"), + traceparent=_header(headers, "traceparent"), + details=document if isinstance(document, Mapping) else {}, + ) + + +def validation_error(message: str) -> DeixicError: + return DeixicError(message, kind="validation", status_code=400) + + +def authentication_error(message: str) -> DeixicError: + return DeixicError(message, kind="authentication", status_code=401) + + +def _payload(response: Any) -> dict[str, Any]: + try: + value = response.json() + except (ValueError, AttributeError): + content = getattr(response, "content", b"") + if isinstance(content, bytes): + try: + value = json.loads(content.decode("utf-8")) + except (UnicodeDecodeError, json.JSONDecodeError): + value = {} + else: + value = {} + return dict(value) if isinstance(value, Mapping) else {} + + +def _header(headers: Mapping[str, Any], name: str) -> str | None: + for key, value in headers.items(): + if str(key).lower() == name: + return str(value) + return None + + +def _string(value: object) -> str | None: + return value if isinstance(value, str) and value else None + + +def _kind(status_code: int, code: str | None) -> str: + if status_code == 401: + return "authentication" + if status_code == 403: + return "authorization" + if status_code in {400, 422}: + return "validation" + if status_code == 404: + return "not_found" + if status_code in {409, 412}: + return "conflict" + if status_code == 429: + return "rate_limited" + if status_code in {502, 503, 504}: + return "unavailable" + return _connect_kind(code or "unknown") + + +def _connect_kind(code: str) -> str: + return { + "unauthenticated": "authentication", + "permission_denied": "authorization", + "invalid_argument": "validation", + "out_of_range": "validation", + "not_found": "not_found", + "already_exists": "conflict", + "aborted": "conflict", + "failed_precondition": "conflict", + "resource_exhausted": "rate_limited", + "unavailable": "unavailable", + "deadline_exceeded": "unavailable", + "canceled": "transport", + }.get(code.lower(), "protocol") diff --git a/src/deixic/examples/__init__.py b/src/deixic/examples/__init__.py new file mode 100644 index 0000000..c5e4713 --- /dev/null +++ b/src/deixic/examples/__init__.py @@ -0,0 +1 @@ +"""Runnable examples built from the supported public client operations.""" diff --git a/src/deixic/examples/account_brief.py b/src/deixic/examples/account_brief.py new file mode 100644 index 0000000..c877444 --- /dev/null +++ b/src/deixic/examples/account_brief.py @@ -0,0 +1,302 @@ +"""Prepare an account brief from CRM data available in your Deixic workspace.""" + +from __future__ import annotations + +import argparse +import json +import os +import sys +from pathlib import Path + +from console.v1 import console_pb2 as pb +from deixic import Deixic, DeixicError + +from .task_result import save +from .account_brief_result import FORMAT_INSTRUCTION, parse_account_brief + + +def main() -> int: + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument( + "action", choices=("check", "start", "resume", "replay", "approve", "deny") + ) + parser.add_argument("state", type=Path, nargs="?") + parser.add_argument("--channel") + parser.add_argument("--account") + parser.add_argument( + "--structured", + action="store_true", + help="Request a validated JSON account brief", + ) + parser.add_argument( + "--progress", + action="store_true", + help="Write matching-turn event IDs to stderr", + ) + parser.add_argument( + "--request", help="Approval request ID selected by the authorized operator" + ) + parser.add_argument( + "--decision-key", help="Stable idempotency key for this explicit decision" + ) + parser.add_argument( + "--trigger", help="Stable ID for this business request; reused on recovery" + ) + parser.add_argument( + "--timeout", type=float, default=60, help="Observation budget in seconds" + ) + args = parser.parse_args() + if args.action != "check" and args.state is None: + parser.error("This action requires a checkpoint path") + if args.action == "start" and (not args.account or not args.trigger): + parser.error("start requires --account and --trigger") + if args.action in ("resume", "replay", "approve", "deny") and any( + (args.account, args.trigger, args.channel, args.structured) + ): + parser.error( + "This action uses the saved request; omit --account, --trigger, --channel and --structured" + ) + if args.action in ("approve", "deny"): + if not args.request or not args.decision_key: + parser.error("approve and deny require --request and --decision-key") + elif args.request or args.decision_key: + parser.error("--request and --decision-key require approve or deny") + if args.structured and args.action != "start": + parser.error("--structured requires start; resume uses the saved format") + try: + required = ("DEIXIC_API_KEY", "DEIXIC_ORGANIZATION_ID", "DEIXIC_WORKSPACE_ID") + missing = [name for name in required if not os.environ.get(name, "").strip()] + if missing: + raise ValueError("Missing configuration: " + ", ".join(missing)) + client = Deixic( + api_key=os.environ["DEIXIC_API_KEY"], + organization_id=os.environ["DEIXIC_ORGANIZATION_ID"], + workspace_id=os.environ["DEIXIC_WORKSPACE_ID"], + base_url=os.environ.get("DEIXIC_BASE_URL", "https://app.deixic.com"), + ) + if args.action == "check": + check = client.tasks.check_setup(channel_id=args.channel or "company") + print( + json.dumps( + dict( + status=check.status, + channel_id=check.channel_id, + write_access=check.write_access, + next_action=check.next_action, + requirements=[ + dict( + service=item.service, + missing_requirements=list(item.missing_requirements), + reason_codes=[ + reason.reason_code + for reason in item.missing_requirement_states + ], + ) + for item in check.capabilities + ], + model_ready=check.selected_model.ready + if check.selected_model + else None, + error_kind=check.error.kind if check.error else None, + request_id=check.error.request_id if check.error else None, + ) + ) + ) + return 0 if check.status == "accessible" else 2 + + if args.action == "start": + # A new file is exclusive; subsequent writes atomically replace it. + creating = True + + def persist(state): + nonlocal creating + save(args.state, state, create=creating) + creating = False + + task = client.tasks.prepare( + channel_id=args.channel or "company", + body="Prepare an account brief for " + json.dumps(args.account) + ". " + "Use CRM data available in this workspace. Include the account summary, " + "open opportunities, risks and source references. State which data is missing. " + "Do not update records or send messages." + + (FORMAT_INSTRUCTION if args.structured else ""), + idempotency_key=args.trigger, + on_checkpoint=persist, + ) + task.submit() + else: + task = client.tasks.resume( + json.loads(args.state.read_text()), + on_checkpoint=lambda state: save(args.state, state), + ) + if args.action == "replay": + task.replay() + elif args.action in ("approve", "deny"): + outcome = task.result() + event = outcome.event + if ( + outcome.status != "waiting" + or event is None + or event.request_type != pb.OPERATING_THREAD_REQUEST_TYPE_APPROVAL + or event.request_id != args.request + ): + print( + json.dumps( + dict( + status="needs_attention", + reason="approval_request_not_current", + ) + ) + ) + return 2 + client.controls.respond( + channel_id=task.checkpoint()["channelId"], + turn_id=outcome.turn_id, + response=pb.OperatingThreadResponse( + request_id=event.request_id, + call_id=event.request_call_id, + request_type=event.request_type, + action=pb.OPERATING_THREAD_RESPONSE_ACTION_APPROVE + if args.action == "approve" + else pb.OPERATING_THREAD_RESPONSE_ACTION_DENY, + ), + idempotency_key=args.decision_key, + ) + print( + json.dumps( + dict( + status="decision_submitted", + turn_id=outcome.turn_id, + next_action="resume the checkpoint to observe the owner outcome", + ) + ) + ) + return 0 + else: + + def progress(event): + if args.progress: + print( + json.dumps( + dict( + event_id=event.event_id, + turn_id=event.turn_id, + kind=event.kind, + ) + ), + file=sys.stderr, + flush=True, + ) + + outcome = task.wait(timeout=args.timeout, on_event=progress) + structured = FORMAT_INSTRUCTION in task.checkpoint()["body"] + brief = None + if outcome.status == "completed" and structured: + try: + brief = outcome.parse(parse_account_brief) + expected, _ = json.JSONDecoder().raw_decode( + task.checkpoint()["body"][ + len("Prepare an account brief for ") : + ] + ) + if brief["accountName"] != expected: + raise ValueError("Account mismatch") + except (ValueError, TypeError): + print( + json.dumps( + dict( + status="invalid_result", + remote_status="completed", + turn_id=outcome.turn_id, + next_action="inspect the answer; do not resubmit this request", + ) + ) + ) + return 2 + actions = [ + dict( + id=item.id, + owner_service=item.owner_service, + object_id=item.object_id, + kind=item.kind, + lifecycle_state=item.lifecycle_state, + evidence_refs=[ + dict(resource_type=ref.resource_type, id=ref.id) + for ref in item.evidence_refs + ], + ) + for item in outcome.receipts + ] + attention = any( + item.lifecycle_state + not in ( + pb.RECEIPT_LIFECYCLE_STATE_SUCCEEDED, + pb.RECEIPT_LIFECYCLE_STATE_VERIFIED, + ) + for item in outcome.receipts + ) + print( + json.dumps( + dict( + status=outcome.status, + turn_id=outcome.turn_id, + reason=outcome.reason, + body=outcome.body if not structured else None, + brief=brief, + receipt_ids=[item.id for item in outcome.receipts], + actions=actions, + action_status="not_reported" + if not actions + else "requires_attention" + if attention + else "owner_reported_success", + request_id=outcome.event.request_id + if outcome.event + else None, + request_type=outcome.event.request_type + if outcome.event + else None, + error_code=outcome.turn.error_code + if outcome.turn + else None, + ) + ) + ) + return 0 if outcome.status == "completed" and not attention else 2 + print( + json.dumps( + dict( + status="accepted", + turn_id=task.checkpoint()["turnId"], + next_action="resume this checkpoint to retrieve the account brief", + ) + ) + ) + return 0 + except DeixicError as error: + print( + json.dumps( + dict( + status="error", + kind=error.kind, + code=error.code, + request_id=error.request_id, + ) + ) + ) + return 1 + except (ValueError, OSError) as error: + # Only our missing-configuration diagnostic is safe to print verbatim. + message = ( + str(error) + if str(error).startswith("Missing configuration:") + else "Check configuration and checkpoint storage" + ) + print( + json.dumps(dict(status="error", kind="configuration", next_action=message)) + ) + return 1 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/src/deixic/examples/account_brief_result.py b/src/deixic/examples/account_brief_result.py new file mode 100644 index 0000000..b5246e8 --- /dev/null +++ b/src/deixic/examples/account_brief_result.py @@ -0,0 +1,89 @@ +"""Application-owned account-brief format; validation grants no source authority.""" + +from __future__ import annotations + +import json + +VERSION = "deixic.account-brief.v1" +FORMAT_INSTRUCTION = ( + ' Return only JSON with schemaVersion "deixic.account-brief.v1", accountName ' + "(the requested name), summary (null or {text, sourceIds}), opportunities " + "([{name, stage, sourceIds}]), risks ([{description, sourceIds}]), sources " + "([{id, system, resourceId}]), and missingData ([strings]). No extra fields " + "or markdown. Every factual item must reference at least one sources.id. " + "Use null summary and empty lists when facts are unavailable, explaining " + "the missing data. Never invent records, references or opportunities." +) + + +def parse_account_brief(body: str) -> dict: + def pairs(items): + result = {} + for key, value in items: + if key in result: + raise ValueError("Duplicate account-brief field") + result[key] = value + return result + + brief = json.loads(body, object_pairs_hook=pairs) + + def fields(value, names): + if not isinstance(value, dict) or set(value) != set(names): + raise ValueError("Invalid account-brief fields") + + def text(value): + if not isinstance(value, str) or not value.strip(): + raise ValueError("Invalid account-brief text") + + def items(value): + if not isinstance(value, list) or len(value) > 100: + raise ValueError("Invalid account-brief list") + return value + + fields( + brief, + ( + "schemaVersion", + "accountName", + "summary", + "opportunities", + "risks", + "sources", + "missingData", + ), + ) + if brief["schemaVersion"] != VERSION: + raise ValueError("Unsupported account-brief version") + text(brief["accountName"]) + ids = set() + for source in items(brief["sources"]): + fields(source, ("id", "system", "resourceId")) + for value in source.values(): + text(value) + if source["id"] in ids: + raise ValueError("Duplicate account-brief source") + ids.add(source["id"]) + + def fact(value, names): + fields(value, (*names, "sourceIds")) + for name in names: + text(value[name]) + refs = items(value["sourceIds"]) + if ( + not refs + or any(not isinstance(ref, str) or ref not in ids for ref in refs) + or len(set(refs)) != len(refs) + ): + raise ValueError("Unlinked account-brief fact") + + if brief["summary"] is not None: + fact(brief["summary"], ("text",)) + for item in items(brief["opportunities"]): + fact(item, ("name", "stage")) + for item in items(brief["risks"]): + fact(item, ("description",)) + for value in items(brief["missingData"]): + text(value) + if brief["summary"] is None and not brief["missingData"]: + raise ValueError("Unavailable summary must explain missing data") + return brief diff --git a/src/deixic/examples/task_result.py b/src/deixic/examples/task_result.py new file mode 100644 index 0000000..f7313c9 --- /dev/null +++ b/src/deixic/examples/task_result.py @@ -0,0 +1,195 @@ +"""Submit once, save recovery coordinates, and fetch the accepted turn's result.""" + +from __future__ import annotations + +import argparse +import json +import os +import tempfile +import uuid +from pathlib import Path +from typing import Any + +from console.v1 import console_pb2 as pb +from deixic import Deixic, DeixicError + + +def save(path: Path, state: dict[str, Any], *, create: bool = False) -> None: + # The checkpoint contains the request body, but never a credential. + descriptor, temporary = tempfile.mkstemp(dir=path.parent, prefix=path.name + ".") + try: + with os.fdopen(descriptor, "w") as output: + json.dump(state, output) + output.flush() + os.fsync(output.fileno()) + if create: + os.link(temporary, path) # Atomic and exclusive: partial initial files are never visible. + else: + os.replace(temporary, path) + directory = os.open(path.parent, os.O_RDONLY) + try: + os.fsync(directory) + finally: + os.close(directory) + finally: + if os.path.exists(temporary): + os.unlink(temporary) + + +def prepare(path: Path, *, organization_id: str, workspace_id: str, + base_url: str, channel_id: str, body: str) -> dict[str, Any]: + state = dict(organization_id=organization_id, workspace_id=workspace_id, + base_url=base_url.rstrip("/"), channel_id=channel_id, body=body, + idempotency_key=str(uuid.uuid4()), turn_id="", cursor=0, + turn_state=pb.OPERATING_TURN_STATE_UNSPECIFIED) + save(path, state, create=True) + return state + + +def load(path: Path, *, organization_id: str, workspace_id: str, + base_url: str) -> dict[str, Any]: + state = json.loads(path.read_text()) + if (state["organization_id"], state["workspace_id"], state["base_url"]) != ( + organization_id, workspace_id, base_url.rstrip("/"), + ): + raise ValueError("Checkpoint belongs to a different tenant or Platform URL") + return state + + +def submit(client: Deixic, path: Path, state: dict[str, Any]) -> None: + if state["turn_id"]: + raise ValueError("This checkpoint already has an accepted turn; use resume") + accepted = client.messages.send(channel_id=state["channel_id"], body=state["body"], + idempotency_key=state["idempotency_key"]) + if not accepted.accepted_turn.turn_id: + raise ValueError("Submission omitted the accepted turn identity") + state.update(turn_id=accepted.accepted_turn.turn_id, cursor=accepted.replay_cursor, + turn_state=accepted.accepted_turn.state) + save(path, state) + + +def result(client: Deixic, state: dict[str, Any]) -> dict[str, Any] | None: + page_token = "" + turn = None + messages = {} + seen_tokens = set() + while True: + thread = client.threads.get(channel_id=state["channel_id"], limit=200, + page_token=page_token) + turn = next((item for item in thread.turns if item.turn_id == state["turn_id"]), turn) + messages.update({message.id: message for message in thread.messages}) + if not thread.next_page_token: + break + if thread.next_page_token in seen_tokens: + raise ValueError("Thread pagination repeated a page token") + page_token = thread.next_page_token + seen_tokens.add(page_token) + if turn is None: + return None + state["turn_state"] = turn.state + if turn.state in (pb.OPERATING_TURN_STATE_FAILED, pb.OPERATING_TURN_STATE_INTERRUPTED): + return dict(status="failed" if turn.state == pb.OPERATING_TURN_STATE_FAILED else "interrupted", + turn_id=turn.turn_id, error_code=turn.error_code) + if turn.state != pb.OPERATING_TURN_STATE_COMPLETED: + return None + message = messages.get(turn.assistant_message_id) + if message is None or message.role != "assistant" or message.channel_id != state["channel_id"]: + raise ValueError("Completed turn omitted its linked final assistant message") + receipts = [] + for receipt_id in message.receipt_ids: + receipt = client.receipts.get(channel_id=state["channel_id"], receipt_id=receipt_id).receipt + if receipt.id != receipt_id: + raise ValueError("Receipt lookup returned a different identity") + receipts.append(receipt.id) + return dict(status="completed", turn_id=turn.turn_id, message_id=message.id, + body=message.body, receipt_ids=receipts) + + +def apply_page(path: Path, state: dict[str, Any], page: Any) -> None: + if page.reset_required: + # Replace the old projection; retained events cannot reconstruct it. + turn = next((item for item in page.snapshot_turns if item.turn_id == state["turn_id"]), None) + state["turn_state"] = turn.state if turn else pb.OPERATING_TURN_STATE_UNSPECIFIED + for event in page.events: + if event.turn_id != state["turn_id"]: + continue + terminal = { + pb.OPERATING_THREAD_EVENT_KIND_TURN_COMPLETED: pb.OPERATING_TURN_STATE_COMPLETED, + pb.OPERATING_THREAD_EVENT_KIND_TURN_FAILED: pb.OPERATING_TURN_STATE_FAILED, + pb.OPERATING_THREAD_EVENT_KIND_TURN_INTERRUPTED: pb.OPERATING_TURN_STATE_INTERRUPTED, + }.get(event.kind) + if terminal is not None: + state["turn_state"] = terminal + state["cursor"] = page.next_cursor + save(path, state) + + +def resume(client: Deixic, path: Path, state: dict[str, Any]) -> dict[str, Any]: + if not state["turn_id"]: + return dict(status="unacknowledged", action="replay the saved request explicitly") + outcome = result(client, state) + save(path, state) + if outcome is not None: + return outcome + while True: + previous_cursor = state["cursor"] + page = client.events.list(channel_id=state["channel_id"], after_cursor=previous_cursor) + apply_page(path, state, page) + outcome = result(client, state) + save(path, state) + if outcome is not None: + return outcome + if not page.has_more: + break + if state["cursor"] == previous_cursor: + raise ValueError("Event pagination did not advance its cursor") + stream = client.events.watch(channel_id=state["channel_id"], after_cursor=state["cursor"]) + try: + for page in stream: + apply_page(path, state, page) + outcome = result(client, state) + save(path, state) + if outcome is not None: + return outcome + finally: + stream.close() + return dict(status="unfinished", reason="watch_eof", turn_id=state["turn_id"], + cursor=state["cursor"]) + + +def main() -> int: + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("action", choices=("start", "replay", "resume")) + parser.add_argument("state", type=Path) + parser.add_argument("--channel", default="company") + parser.add_argument("--body") + args = parser.parse_args() + organization = os.environ["DEIXIC_ORGANIZATION_ID"] + workspace = os.environ["DEIXIC_WORKSPACE_ID"] + base_url = os.environ.get("DEIXIC_BASE_URL", "https://app.deixic.com") + client = Deixic(api_key=os.environ["DEIXIC_API_KEY"], organization_id=organization, + workspace_id=workspace, base_url=base_url) + if args.action == "start": + if not args.body: + parser.error("start requires --body") + state = prepare(args.state, organization_id=organization, workspace_id=workspace, + base_url=base_url, channel_id=args.channel, body=args.body) + else: + if args.body is not None: + parser.error("replay and resume use the saved request; omit --body") + state = load(args.state, organization_id=organization, workspace_id=workspace, + base_url=base_url) + try: + if args.action in ("start", "replay"): + submit(client, args.state, state) + outcome = resume(client, args.state, state) + except DeixicError as error: + # Request bodies and bearer credentials do not belong in diagnostics. + print(json.dumps(dict(status="error", kind=error.kind, code=error.code))) + return 1 + print(json.dumps(outcome)) + return 0 if outcome["status"] == "completed" else 2 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/src/deixic/examples/verify_test_journey.py b/src/deixic/examples/verify_test_journey.py new file mode 100644 index 0000000..398104c --- /dev/null +++ b/src/deixic/examples/verify_test_journey.py @@ -0,0 +1,108 @@ +"""Two-process Identity/Platform acceptance probe for an explicitly supplied test tenant.""" + +from __future__ import annotations + +import argparse +import json +import os +import uuid +from pathlib import Path +from urllib.parse import urlsplit + +from deixic import Deixic, DeixicError +from deixic.transport import RequestsTransport + +from . import task_result + + +REQUIRED = ( + "DEIXIC_API_KEY", "DEIXIC_ORGANIZATION_ID", "DEIXIC_WORKSPACE_ID", + "DEIXIC_BASE_URL", "DEIXIC_IDENTITY_API_KEY_VALIDATE_URL", "DEIXIC_TEST_CHANNEL_ID", +) + + +def configuration() -> dict[str, str]: + missing = [name for name in REQUIRED if not os.environ.get(name, "").strip()] + if missing: + raise ValueError("Missing test-tenant configuration: " + ", ".join(missing)) + values = {name: os.environ[name].strip() for name in REQUIRED} + for name in ("DEIXIC_BASE_URL", "DEIXIC_IDENTITY_API_KEY_VALIDATE_URL"): + parsed = urlsplit(values[name]) + if (parsed.scheme not in ("https", "http") or not parsed.netloc + or parsed.username or parsed.password or parsed.query or parsed.fragment + or (parsed.scheme == "http" and parsed.hostname not in ("127.0.0.1", "localhost", "::1"))): + raise ValueError(name + " must use HTTPS or a loopback HTTP endpoint") + return values + + +def validate_identity(values: dict[str, str], transport=None) -> str: + # Introspect only the supplied key. Identity owns validity, grants, and org scope. + response = (transport or RequestsTransport()).send( + "POST", values["DEIXIC_IDENTITY_API_KEY_VALIDATE_URL"], + headers={"Authorization": "Bearer " + values["DEIXIC_API_KEY"], + "Content-Type": "application/json"}, + body=json.dumps({"key": values["DEIXIC_API_KEY"]}).encode(), timeout=20, + ) + try: + if response.status_code != 200: + raise ValueError("Identity key validation failed") + document = response.json() + key = document.get("api_key", {}) + scopes = set(key.get("scopes", [])) + if (document.get("active") is not True + or key.get("organization_id") != values["DEIXIC_ORGANIZATION_ID"] + or not key.get("id") + or not ({"deixic:read", "console:read"} & scopes) + or not ({"deixic:write", "console:write"} & scopes)): + raise ValueError("Identity did not validate the required test-tenant key grants") + return key["id"] + finally: + response.close() + + +def main() -> int: + parser = argparse.ArgumentParser(description=__doc__) + parser.add_argument("phase", choices=("submit", "resume")) + parser.add_argument("state", type=Path) + args = parser.parse_args() + try: + values = configuration() + key_id = validate_identity(values) + coordinates = dict(organization_id=values["DEIXIC_ORGANIZATION_ID"], + workspace_id=values["DEIXIC_WORKSPACE_ID"], + base_url=values["DEIXIC_BASE_URL"]) + client = Deixic(api_key=values["DEIXIC_API_KEY"], **coordinates) + if args.phase == "submit": + marker = "SDK-journey-" + str(uuid.uuid4()) + state = task_result.prepare(args.state, **coordinates, + channel_id=values["DEIXIC_TEST_CHANNEL_ID"], + body="Reply with exactly this text and no other content: " + marker) + state["expected_text"] = marker + state["identity_key_id"] = key_id + task_result.save(args.state, state) + task_result.submit(client, args.state, state) + # Process one exits after acceptance; it does not watch or claim success. + print(json.dumps(dict(status="accepted", turn_id=state["turn_id"]))) + return 0 + state = task_result.load(args.state, **coordinates) + if state.get("identity_key_id") != key_id: + raise ValueError("The recovery process must use the same Identity key") + outcome = task_result.resume(client, args.state, state) + if outcome["status"] != "completed": + print(json.dumps({key: value for key, value in outcome.items() if key != "body"})) + return 2 + if outcome["body"].strip() != state["expected_text"]: + raise ValueError("Final owner-linked message did not match this probe's unique request") + print(json.dumps(dict(status="completed", turn_id=outcome["turn_id"], + message_id=outcome["message_id"], receipt_ids=outcome["receipt_ids"], + identity_key_id=key_id, restarted_client=True))) + return 0 + except (ValueError, DeixicError) as error: + # Do not include owner payloads, tokens, prompts, or generated bodies in receipts. + print(json.dumps(dict(status="error", kind=error.kind if isinstance(error, DeixicError) + else "validation"))) + return 1 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/src/deixic/py.typed b/src/deixic/py.typed new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/src/deixic/py.typed @@ -0,0 +1 @@ + diff --git a/src/deixic/tasks.py b/src/deixic/tasks.py new file mode 100644 index 0000000..5ddfffa --- /dev/null +++ b/src/deixic/tasks.py @@ -0,0 +1,660 @@ +"""Recoverable task handles over Platform-owned threads, events, and receipts.""" + +from __future__ import annotations + +import math +import random +import time +from collections.abc import Callable, Mapping +from dataclasses import dataclass +from typing import TYPE_CHECKING, Any, Literal, TypeVar, TypedDict, cast + +from console.v1 import console_pb2 as pb +from google.protobuf.message import Message + +from .errors import DeixicError, validation_error + +if TYPE_CHECKING: + from .client import Deixic + +T = TypeVar("T") +MessageT = TypeVar("MessageT", bound=Message) +MAX_CURSOR = 2**63 - 1 + + +class TaskCheckpoint(TypedDict): + schema: Literal["deixic.task.v1"] + organizationId: str + workspaceId: str + baseUrl: str + channelId: str + body: str + idempotencyKey: str + projectResourceId: str + submission: Literal["prepared", "unacknowledged", "accepted"] + turnId: str + sequence: str + cursor: str + + +@dataclass(frozen=True) +class TaskResult: + status: Literal[ + "prepared", + "unacknowledged", + "unfinished", + "responded", + "waiting", + "completed", + "failed", + "interrupted", + ] + turn_id: str = "" + reason: str = "" + body: str | None = None + message: pb.OperatingMessage | None = None + receipts: tuple[pb.OperatingReceipt, ...] = () + turn: pb.OperatingThreadTurn | None = None + event: pb.OperatingThreadEvent | None = None + error: DeixicError | None = None + + def parse(self, parser: Callable[[str], T]) -> T: + """Validate/convert a completed answer with the application's parser.""" + if self.status != "completed" or self.body is None: + raise validation_error("Only a completed task has a final answer to parse") + return parser(self.body) + + +@dataclass(frozen=True) +class SetupCheck: + status: Literal["accessible", "needs_attention", "error"] + channel_id: str + capabilities: tuple[pb.OperatingCapabilityState, ...] = () + next_action: str = "" + error: DeixicError | None = None + model_selection: pb.OperatingModelSelection | None = None + default_model: pb.InferenceProviderTarget | None = None + selected_model: pb.InferenceProviderTarget | None = None + # Read access does not prove mutation grants or connector execution. + write_access: Literal["not_checked"] = "not_checked" + + +class TasksClient: + def __init__(self, client: Deixic) -> None: + self._client = client + + def prepare( + self, + *, + channel_id: str, + body: str, + idempotency_key: str, + project_resource_id: str = "", + on_checkpoint: Callable[[TaskCheckpoint], None] | None = None, + ) -> Task: + state: TaskCheckpoint = dict( + schema="deixic.task.v1", + organizationId=self._client.organization_id, + workspaceId=self._client.workspace_id, + baseUrl=self._client.base_url, + channelId=_identity(channel_id, "channel_id"), + body=_body(body), + idempotencyKey=_identity(idempotency_key, "idempotency_key"), + projectResourceId=_identity(project_resource_id, "project_resource_id") + if project_resource_id != "" + else "", + submission="prepared", + turnId="", + sequence="0", + cursor="0", + ) + task = Task(self._client, state, on_checkpoint) + task._save() + return task + + def start( + self, + *, + channel_id: str, + body: str, + idempotency_key: str, + project_resource_id: str = "", + on_checkpoint: Callable[[TaskCheckpoint], None] | None = None, + ) -> Task: + """Prepare and submit once. Use on_checkpoint for restart recovery.""" + return self.prepare( + channel_id=channel_id, + body=body, + idempotency_key=idempotency_key, + project_resource_id=project_resource_id, + on_checkpoint=on_checkpoint, + ).submit() + + def resume( + self, + checkpoint: Mapping[str, Any], + *, + on_checkpoint: Callable[[TaskCheckpoint], None] | None = None, + ) -> Task: + # A checkpoint supplies coordinates, never authorization or completion. + keys = TaskCheckpoint.__required_keys__ + if not isinstance(checkpoint, Mapping) or set(checkpoint) != keys: + raise validation_error("Invalid task checkpoint fields") + state = dict(checkpoint) + if state["schema"] != "deixic.task.v1": + raise validation_error("Unsupported task checkpoint schema") + if (state["organizationId"], state["workspaceId"], state["baseUrl"]) != ( + self._client.organization_id, + self._client.workspace_id, + self._client.base_url, + ): + raise validation_error( + "Checkpoint belongs to a different tenant or Platform URL" + ) + for name in ("channelId", "idempotencyKey"): + _identity(state[name], name) + _body(state["body"]) + if state["projectResourceId"]: + _identity(state["projectResourceId"], "projectResourceId") + elif state["projectResourceId"] != "": + raise validation_error("Invalid projectResourceId") + sequence, cursor = _decimal(state["sequence"]), _decimal(state["cursor"]) + if state["submission"] == "accepted": + _identity(state["turnId"], "turnId") + if sequence == 0: + raise validation_error( + "Accepted checkpoint requires a positive sequence" + ) + elif state["submission"] not in ("prepared", "unacknowledged") or ( + state["turnId"] != "" or sequence != 0 or cursor != 0 + ): + raise validation_error("Invalid submission coordinates") + return Task(self._client, cast(TaskCheckpoint, state), on_checkpoint) + + def check_setup(self, *, channel_id: str) -> SetupCheck: + channel_id = _identity(channel_id, "channel_id") + try: + thread = self._client.threads.get(channel_id=channel_id, limit=1) + if thread.channel.id != channel_id: + raise _protocol("Setup lookup omitted or changed the channel identity") + capabilities = tuple(_copy(item) for item in thread.capabilities) + if thread.channel.HasField("capability_state"): + capabilities += (_copy(thread.channel.capability_state),) + missing = any( + item.missing_requirements or item.missing_requirement_states + for item in capabilities + ) + model = ( + _copy(thread.default_model) + if thread.HasField("default_model") + else None + ) + selection = ( + _copy(thread.model_selection) + if thread.HasField("model_selection") + else None + ) + selected = model + if selection is not None and (selection.provider or selection.model): + selected = next( + ( + _copy(item) + for item in thread.available_models + if (item.provider, item.model) + == (selection.provider, selection.model) + ), + None, + ) + unavailable_model = selected is not None and not selected.ready + return SetupCheck( + "needs_attention" if missing or unavailable_model else "accessible", + channel_id, + capabilities, + "Resolve the reported workspace prerequisites" + if missing + else "Check the reported model availability in workspace settings" + if unavailable_model + else "Submit a task to check execution and write access", + model_selection=selection, + default_model=model, + selected_model=selected, + ) + except DeixicError as error: + action = { + "authentication": "Replace or refresh the expired or invalid credential", + "authorization": "Check the credential's organization and workspace read grants", + "not_found": "Check the channel ID in this workspace", + }.get( + error.kind, + "Check API connectivity and share the request ID with support", + ) + return SetupCheck("error", channel_id, next_action=action, error=error) + + +class Task: + def __init__( + self, + client: Deixic, + state: TaskCheckpoint, + on_checkpoint: Callable[[TaskCheckpoint], None] | None, + ) -> None: + if on_checkpoint is not None and not callable(on_checkpoint): + raise validation_error("on_checkpoint must be callable") + self._client = client + self._state = cast(TaskCheckpoint, dict(state)) + self._on_checkpoint = on_checkpoint + self._event: pb.OperatingThreadEvent | None = None + self._submitting = False + self._observing = False + + def checkpoint(self) -> TaskCheckpoint: + """JSON-safe coordinates and original request; excludes credentials.""" + return cast(TaskCheckpoint, dict(self._state)) + + def _save(self) -> None: + if self._on_checkpoint: + self._on_checkpoint(self.checkpoint()) + + def submit(self) -> Task: + return self._submit("prepared") + + def replay(self) -> Task: + """Explicitly replay only a request whose acceptance was not received.""" + return self._submit("unacknowledged") + + def _submit(self, required: str) -> Task: + if self._submitting or self._state["submission"] != required: + raise validation_error( + "Submission already attempted; resume or explicitly replay an unacknowledged request" + ) + self._submitting = True + try: + self._state["submission"] = "unacknowledged" + self._save() # A storage failure prevents the network mutation. + accepted = self._client.messages.send( + channel_id=self._state["channelId"], + body=self._state["body"], + idempotency_key=self._state["idempotencyKey"], + project_resource_id=self._state["projectResourceId"] or None, + ) + turn = accepted.accepted_turn + if ( + not turn.turn_id.strip() + or turn.turn_id != turn.turn_id.strip() + or turn.sequence <= 0 + or accepted.replay_cursor < 0 + ): + raise _protocol("Submission omitted valid accepted-turn coordinates") + self._state.update( + submission="accepted", + turnId=turn.turn_id, + sequence=str(turn.sequence), + cursor=str(accepted.replay_cursor), + ) + self._save() + return self + finally: + self._submitting = False + + def result(self, *, max_pages: int = 10) -> TaskResult: + return self._result(_pages(max_pages), None) + + def _result(self, max_pages: int, deadline: float | None) -> TaskResult: + if self._state["submission"] != "accepted": + return TaskResult( + self._state["submission"], + reason="submit_required" + if self._state["submission"] == "prepared" + else "explicit_replay_required", + ) + turn_id, sequence = self._state["turnId"], int(self._state["sequence"]) + turn = None + messages = {} + page_token = "" + seen = set() + for _ in range(max_pages): + page = self._client.threads.get( + channel_id=self._state["channelId"], + limit=200, + page_token=page_token, + timeout=_remaining(deadline), + ) + if page.channel.id and page.channel.id != self._state["channelId"]: + raise _protocol("Thread lookup changed the channel identity") + candidate = next( + (item for item in page.turns if item.turn_id == turn_id), None + ) + if candidate is not None: + if candidate.sequence != sequence: + raise _protocol("Thread lookup changed the accepted turn sequence") + if turn is None: + turn = _copy(candidate) + for item in page.messages: + messages.setdefault(item.id, item) + if turn is not None and ( + turn.state != pb.OPERATING_TURN_STATE_COMPLETED + or not turn.assistant_message_id + or turn.assistant_message_id in messages + ): + break + if not page.next_page_token: + break + if page.next_page_token in seen: + raise _protocol("Thread pagination repeated a page token") + seen.add(page.next_page_token) + page_token = page.next_page_token + else: + return TaskResult("unfinished", turn_id, "result_page_limit") + if turn is None: + return TaskResult("unfinished", turn_id, "turn_not_visible") + status = { + pb.OPERATING_TURN_STATE_COMPLETED: "completed", + pb.OPERATING_TURN_STATE_RESPONDED: "responded", + pb.OPERATING_TURN_STATE_FAILED: "failed", + pb.OPERATING_TURN_STATE_INTERRUPTED: "interrupted", + pb.OPERATING_TURN_STATE_WAITING: "waiting", + }.get(turn.state, "unfinished") + event = _copy(self._event) if self._event else None + if status == "waiting": + event = self._waiting_request(turn, max_pages, deadline) + return TaskResult( + "waiting", + turn_id, + reason="" if event else "request_not_visible", + turn=turn, + event=event, + ) + if status != "completed": + return TaskResult(status, turn_id, turn=turn, event=event) + message = messages.get(turn.assistant_message_id) + if ( + message is None + or message.role != "assistant" + or message.channel_id != self._state["channelId"] + ): + raise _protocol("Completed turn omitted its linked final assistant message") + receipts = [] + for receipt_id in dict.fromkeys(message.receipt_ids): + receipt = self._client.receipts.get( + channel_id=self._state["channelId"], + receipt_id=receipt_id, + timeout=_remaining(deadline), + ).receipt + if receipt.id != receipt_id: + raise _protocol("Receipt lookup changed the receipt identity") + receipts.append(_copy(receipt)) + return TaskResult( + "completed", + turn_id, + body=message.body, + message=_copy(message), + receipts=tuple(receipts), + turn=turn, + event=event, + ) + + def _waiting_request( + self, turn: pb.OperatingThreadTurn, max_pages: int, deadline: float | None + ) -> pb.OperatingThreadEvent | None: + # Re-read request identity from owner history, including after restart. + # A saved cursor or locally cached event cannot authorize a response. + cursor = max(0, turn.first_cursor - 1) + request = None + for _ in range(max_pages): + page = self._client.events.list( + channel_id=self._state["channelId"], + after_cursor=cursor, + timeout=_remaining(deadline), + ) + if page.reset_required: + return None + _validate_page(page, cursor) + for event in sorted(page.events, key=lambda item: item.cursor): + if ( + event.turn_id == turn.turn_id + and event.cursor > cursor + and event.request_id + ): + request = _copy(event) + cursor = page.next_cursor + if not page.has_more: + expected_type = { + pb.OPERATING_THREAD_WAITING_REASON_APPROVAL: pb.OPERATING_THREAD_REQUEST_TYPE_APPROVAL, + pb.OPERATING_THREAD_WAITING_REASON_USER_INPUT: pb.OPERATING_THREAD_REQUEST_TYPE_USER_INPUT, + pb.OPERATING_THREAD_WAITING_REASON_CLIENT_TOOL: pb.OPERATING_THREAD_REQUEST_TYPE_CLIENT_TOOL, + pb.OPERATING_THREAD_WAITING_REASON_EXTERNAL_RETRY: pb.OPERATING_THREAD_REQUEST_TYPE_EXTERNAL_RETRY, + }.get(turn.waiting_reason) + return ( + request + if request and request.request_type == expected_type + else None + ) + return None + + def _backfill( + self, + max_pages: int, + deadline: float, + on_event: Callable[[pb.OperatingThreadEvent], None] | None, + ) -> bool: + for _ in range(max_pages): + cursor = int(self._state["cursor"]) + page = self._client.events.list( + channel_id=self._state["channelId"], + after_cursor=cursor, + timeout=_remaining(deadline), + ) + if page.reset_required: + if ( + not page.HasField("thread_execution") + or page.thread_execution.replay_cursor < cursor + ): + raise _protocol( + "Retention reset omitted a valid owner execution cursor" + ) + self._event = None + self._state["cursor"] = str(page.thread_execution.replay_cursor) + _application_call(self._save) + return ( + True # Re-fetch current owner state; reset events are not history. + ) + _validate_page(page, cursor) + seen = set() + for event in sorted(page.events, key=lambda item: item.cursor): + if ( + event.turn_id != self._state["turnId"] + or event.cursor <= cursor + or event.cursor in seen + ): + continue + seen.add(event.cursor) + if on_event: + _application_call( + on_event, _copy(event) + ) # Failed callbacks leave the page unconsumed. + self._event = _copy(event) + self._state["cursor"] = str(page.next_cursor) + _application_call(self._save) + if not page.has_more: + return True + return False + + def wait( + self, + *, + timeout: float = 60, + poll_interval: float = 1, + max_pages: int = 10, + max_reconnect_attempts: int = 3, + on_event: Callable[[pb.OperatingThreadEvent], None] | None = None, + cancelled: Callable[[], bool] | None = None, + ) -> TaskResult: + """Bounded durable polling. Stopping observation never interrupts work.""" + _positive(timeout, "timeout") + _positive(poll_interval, "poll_interval") + _pages(max_pages) + if on_event is not None and not callable(on_event): + raise validation_error("on_event must be callable") + if cancelled is not None and not callable(cancelled): + raise validation_error("cancelled must be callable") + if ( + not isinstance(max_reconnect_attempts, int) + or isinstance(max_reconnect_attempts, bool) + or not 0 <= max_reconnect_attempts <= 100 + ): + raise validation_error("max_reconnect_attempts must be between 0 and 100") + if self._observing: + raise validation_error("This task already has an active observer") + if self._state["submission"] != "accepted": + return self.result() + deadline = time.monotonic() + timeout + reconnects = 0 + self._observing = True + try: + while True: + if cancelled and cancelled(): + return TaskResult("unfinished", self._state["turnId"], "cancelled") + try: + _remaining(deadline) + caught_up = self._backfill(max_pages, deadline, on_event) + if cancelled and _application_call(cancelled): + return TaskResult( + "unfinished", self._state["turnId"], "cancelled" + ) + outcome = self._result(max_pages, deadline) + if cancelled and _application_call(cancelled): + return TaskResult( + "unfinished", self._state["turnId"], "cancelled" + ) + _remaining(deadline) + if outcome.status not in ("unfinished", "responded"): + return outcome + if not caught_up: + return TaskResult( + "unfinished", self._state["turnId"], "backfill_limit" + ) + reconnects = 0 + except _DeadlineReached: + return TaskResult("unfinished", self._state["turnId"], "deadline") + except DeixicError as error: + if error.kind not in ("transport", "unavailable"): + raise + if time.monotonic() >= deadline: + return TaskResult( + "unfinished", self._state["turnId"], "deadline", error=error + ) + if reconnects >= max_reconnect_attempts: + return TaskResult( + "unfinished", + self._state["turnId"], + "observation_error", + error=error, + ) + reconnects += 1 + delay = min(poll_interval * 2**reconnects, 5) * random.uniform(0.8, 1.2) + # Short sleeps make local cancellation responsive without a background worker. + until = min(deadline, time.monotonic() + delay) + while time.monotonic() < until: + if cancelled and cancelled(): + return TaskResult( + "unfinished", self._state["turnId"], "cancelled" + ) + time.sleep(min(0.1, max(0, until - time.monotonic()))) + except _ApplicationCallbackError as error: + raise error.original from error + finally: + self._observing = False + + +class _DeadlineReached(Exception): + pass + + +class _ApplicationCallbackError(Exception): + def __init__(self, original: Exception) -> None: + self.original = original + + +def _application_call(callback: Callable[..., T], *args: Any) -> T: + try: + return callback(*args) + except Exception as error: + raise _ApplicationCallbackError(error) from error + + +def _remaining(deadline: float | None) -> float | None: + if deadline is None: + return None + remaining = deadline - time.monotonic() + if remaining <= 0: + raise _DeadlineReached() + return remaining + + +def _identity(value: str, name: str) -> str: + if not isinstance(value, str) or not value.strip() or value != value.strip(): + raise validation_error( + f"{name} must be a non-empty string without surrounding whitespace" + ) + return value + + +def _body(value: str) -> str: + if not isinstance(value, str) or not value.strip() or len(value) > 20_000: + raise validation_error("body must contain between 1 and 20000 characters") + return value + + +def _decimal(value: str) -> int: + if ( + not isinstance(value, str) + or not 1 <= len(value) <= 19 + or not value.isascii() + or not value.isdecimal() + or str(int(value)) != value + or int(value) > MAX_CURSOR + ): + raise validation_error( + "Checkpoint cursor and sequence must be canonical int64 decimal strings" + ) + return int(value) + + +def _pages(value: int) -> int: + if not isinstance(value, int) or isinstance(value, bool) or not 1 <= value <= 50: + raise validation_error("max_pages must be between 1 and 50") + return value + + +def _positive(value: float, name: str) -> None: + if ( + isinstance(value, bool) + or not isinstance(value, (int, float)) + or not math.isfinite(value) + or value <= 0 + ): + raise validation_error(f"{name} must be a positive finite number") + + +def _copy(message: MessageT) -> MessageT: + result = type(message)() + result.CopyFrom(message) + return result + + +def _protocol(message: str) -> DeixicError: + return DeixicError(message, kind="protocol") + + +def _validate_page(page: pb.ListOperatingThreadEventsResponse, cursor: int) -> None: + expected = max([cursor] + [event.cursor for event in page.events]) + if page.next_cursor != expected or (page.has_more and expected <= cursor): + raise _protocol("Event pagination returned an invalid watermark") + records = {} + for event in page.events: + if event.cursor <= 0: + raise _protocol("Event cursor must be positive") + encoded = event.SerializeToString(deterministic=True) + if event.cursor in records and records[event.cursor] != encoded: + raise _protocol("Different events reused the same cursor") + records[event.cursor] = encoded diff --git a/src/deixic/transport.py b/src/deixic/transport.py new file mode 100644 index 0000000..097589c --- /dev/null +++ b/src/deixic/transport.py @@ -0,0 +1,65 @@ +from __future__ import annotations + +from collections.abc import Iterator, Mapping +from typing import Any, Protocol + + +class Response(Protocol): + status_code: int + headers: Mapping[str, str] + content: bytes + + def json(self) -> Any: ... + + def iter_content(self, chunk_size: int | None = None) -> Iterator[bytes]: ... + + def close(self) -> None: ... + + +class Transport(Protocol): + def send( + self, + method: str, + url: str, + *, + headers: Mapping[str, str], + body: bytes, + timeout: float, + stream: bool = False, + ) -> Response: ... + + +class RequestsTransport: + def __init__(self) -> None: + import requests + + self._session = requests.Session() + # A truthy explicit auth handler prevents requests from replacing the + # bearer with .netrc credentials. Keep trust_env enabled so enterprise + # proxy and CA-bundle settings continue to work. + self._session.auth = _PreserveAuthorizationHeader() + + def send( + self, + method: str, + url: str, + *, + headers: Mapping[str, str], + body: bytes, + timeout: float, + stream: bool = False, + ) -> Response: + return self._session.request( + method, + url, + headers=dict(headers), + data=body, + timeout=timeout, + stream=stream, + allow_redirects=False, + ) + + +class _PreserveAuthorizationHeader: + def __call__(self, request: Any) -> Any: + return request diff --git a/src/evalops_platform/v1/platform_pb2.py b/src/evalops_platform/v1/platform_pb2.py new file mode 100644 index 0000000..eed0998 --- /dev/null +++ b/src/evalops_platform/v1/platform_pb2.py @@ -0,0 +1,541 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: platform/v1/platform.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'platform/v1/platform.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 +from common.v1 import authz_pb2 as common_dot_v1_dot_authz__pb2 +from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1aplatform/v1/platform.proto\x12\x0bplatform.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x15\x63ommon/v1/authz.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xa6\x01\n\x0bTenantScope\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x17\n\x07team_id\x18\x03 \x01(\tR\x06teamId\x12 \n\x0b\x65nvironment\x18\x04 \x01(\tR\x0b\x65nvironment\"\x94\x01\n\tPrincipal\x12*\n\x0cprincipal_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bprincipalId\x12\x38\n\x04kind\x18\x02 \x01(\x0e\x32\x1a.platform.v1.PrincipalKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12!\n\x0c\x64isplay_name\x18\x03 \x01(\tR\x0b\x64isplayName\"d\n\x05\x41\x63tor\x12<\n\tprincipal\x18\x01 \x01(\x0b\x32\x16.platform.v1.PrincipalB\x06\xbaH\x03\xc8\x01\x01R\tprincipal\x12\x1d\n\nsession_id\x18\x02 \x01(\tR\tsessionId\"Y\n\tPolicyRef\x12$\n\tpolicy_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08policyId\x12&\n\nversion_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tversionId\"\xef\x01\n\x06Policy\x12$\n\tpolicy_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08policyId\x12\x36\n\x05scope\x18\x02 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12\x35\n\x04kind\x18\x03 \x01(\x0e\x32\x17.platform.v1.PolicyKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12\x1b\n\x04name\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x33\n\x11\x61\x63tive_version_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0f\x61\x63tiveVersionId\"\xfd\x01\n\rPolicyVersion\x12&\n\nversion_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tversionId\x12$\n\tpolicy_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08policyId\x12\x37\n\x13\x61rtifact_version_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x11\x61rtifactVersionId\x12=\n\ncreated_by\x18\x04 \x01(\x0b\x32\x16.platform.v1.PrincipalB\x06\xbaH\x03\xc8\x01\x01R\tcreatedBy\x12&\n\nlineage_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\"\xdc\x02\n\x11\x41uthorityDecision\x12(\n\x0b\x64\x65\x63ision_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\ndecisionId\x12@\n\x04kind\x18\x02 \x01(\x0e\x32\".platform.v1.AuthorityDecisionKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12\x37\n\x0bpolicy_refs\x18\x03 \x03(\x0b\x32\x16.platform.v1.PolicyRefR\npolicyRefs\x12\x18\n\x07reasons\x18\x04 \x03(\tR\x07reasons\x12.\n\x13\x61pproval_request_id\x18\x05 \x01(\tR\x11\x61pprovalRequestId\x12\x19\n\x08grant_id\x18\x06 \x01(\tR\x07grantId\x12=\n\x0c\x65valuated_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0b\x65valuatedAt\"\xaf\x03\n\x10OperationContext\x12\x36\n\x05scope\x18\x01 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12\x30\n\x05\x61\x63tor\x18\x02 \x01(\x0b\x32\x12.platform.v1.ActorB\x06\xbaH\x03\xc8\x01\x01R\x05\x61\x63tor\x12\x44\n\tauthority\x18\x03 \x01(\x0b\x32\x1e.platform.v1.AuthorityDecisionB\x06\xbaH\x03\xc8\x01\x01R\tauthority\x12\x30\n\x0fidempotency_key\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12&\n\nlineage_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12&\n\nrequest_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\trequestId\x12\x34\n\x03now\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\x03now\x12\x33\n\x08\x65vidence\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructR\x08\x65vidence\"\xb0\x04\n\x0fOperationRecord\x12*\n\x0coperation_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0boperationId\x12\x36\n\x05scope\x18\x02 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12\x30\n\x05\x61\x63tor\x18\x03 \x01(\x0b\x32\x12.platform.v1.ActorB\x06\xbaH\x03\xc8\x01\x01R\x05\x61\x63tor\x12\x44\n\tauthority\x18\x04 \x01(\x0b\x32\x1e.platform.v1.AuthorityDecisionB\x06\xbaH\x03\xc8\x01\x01R\tauthority\x12\x30\n\x0fidempotency_key\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12&\n\nlineage_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12&\n\nrequest_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\trequestId\x12\x43\n\x0brecorded_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\nrecordedAt\x12.\n\x0eoperation_type\x18\t \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\roperationType\x12&\n\nowner_type\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\townerType\x12\"\n\x08owner_id\x18\x0b \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07ownerId\"\xa8\x01\n\x0e\x45valAssignment\x12$\n\tcohort_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08\x63ohortId\x12*\n\x0c\x63\x61ndidate_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x63\x61ndidateId\x12\x1f\n\x0b\x62\x61seline_id\x18\x03 \x01(\tR\nbaselineId\x12#\n\rassignment_id\x18\x04 \x01(\tR\x0c\x61ssignmentId\"\x82\x02\n\x0bNewWorkItem\x12\x33\n\x04kind\x18\x01 \x01(\x0e\x32\x15.platform.v1.WorkKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12\x1d\n\x05title\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05title\x12$\n\x0eparent_work_id\x18\x03 \x01(\tR\x0cparentWorkId\x12\x33\n\x08metadata\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12\x44\n\x0f\x65val_assignment\x18\x05 \x01(\x0b\x32\x1b.platform.v1.EvalAssignmentR\x0e\x65valAssignment\"\xf8\x03\n\x08WorkItem\x12 \n\x07work_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06workId\x12\x36\n\x05scope\x18\x02 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12\x33\n\x04kind\x18\x03 \x01(\x0e\x32\x15.platform.v1.WorkKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12\x36\n\x05state\x18\x04 \x01(\x0e\x32\x16.platform.v1.WorkStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\x1d\n\x05title\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05title\x12$\n\x0eparent_work_id\x18\x06 \x01(\tR\x0cparentWorkId\x12=\n\ncreated_by\x18\x07 \x01(\x0b\x32\x16.platform.v1.PrincipalB\x06\xbaH\x03\xc8\x01\x01R\tcreatedBy\x12&\n\nlineage_id\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12\x33\n\x08metadata\x18\t \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12\x44\n\x0f\x65val_assignment\x18\n \x01(\x0b\x32\x1b.platform.v1.EvalAssignmentR\x0e\x65valAssignment\"\xb2\x01\n\x0bResourceRef\x12(\n\x0bresource_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nresourceId\x12\x37\n\x04kind\x18\x02 \x01(\x0e\x32\x19.platform.v1.ResourceKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12\x1d\n\nversion_id\x18\x03 \x01(\tR\tversionId\x12!\n\x07version\x18\x04 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x07version\"\x86\x01\n\tRecordRef\x12\x37\n\x04kind\x18\x01 \x01(\x0e\x32\x17.platform.v1.RecordKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04kind\x12$\n\trecord_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08recordId\x12\x1a\n\x08revision\x18\x03 \x01(\tR\x08revision\"\xdf\x06\n\x0c\x41\x63tionIntent\x12\x31\n\x10\x61\x63tion_intent_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0e\x61\x63tionIntentId\x12\x36\n\x05scope\x18\x02 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12?\n\x0bproposed_by\x18\x03 \x01(\x0b\x32\x16.platform.v1.PrincipalB\x06\xbaH\x03\xc8\x01\x01R\nproposedBy\x12(\n\x0b\x61\x63tion_type\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nactionType\x12\x41\n\x0ftarget_resource\x18\x05 \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x0etargetResource\x12*\n\x0cinput_digest\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0binputDigest\x12<\n\trisk_tier\x18\x07 \x01(\x0e\x32\x15.platform.v1.RiskTierB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08riskTier\x12U\n\x12\x61uthority_decision\x18\x08 \x01(\x0b\x32\x1e.platform.v1.AuthorityDecisionB\x06\xbaH\x03\xc8\x01\x01R\x11\x61uthorityDecision\x12K\n\x0e\x61pproval_state\x18\t \x01(\x0e\x32\x1a.platform.v1.ApprovalStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\rapprovalState\x12T\n\x0f\x65xecution_state\x18\n \x01(\x0e\x32!.platform.v1.ActionExecutionStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0e\x65xecutionState\x12&\n\nlineage_id\x18\x0b \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12\x33\n\x08\x65vidence\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructR\x08\x65vidence\x12/\n\x06result\x18\r \x01(\x0b\x32\x17.google.protobuf.StructR\x06result\x12\x44\n\x0f\x65val_assignment\x18\x0e \x01(\x0b\x32\x1b.platform.v1.EvalAssignmentR\x0e\x65valAssignment\"\xca\x02\n\x12NewArtifactVersion\x12(\n\x0b\x61rtifact_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nartifactId\x12\x37\n\x04kind\x18\x02 \x01(\x0e\x32\x19.platform.v1.ArtifactKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12\x1d\n\x05label\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05label\x12(\n\x0b\x63ontent_ref\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\ncontentRef\x12\x16\n\x06labels\x18\x05 \x03(\tR\x06labels\x12\x33\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12;\n\x0cresource_ref\x18\x07 \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x0bresourceRef\"\xfb\x02\n\x08\x41rtifact\x12(\n\x0b\x61rtifact_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nartifactId\x12\x36\n\x05scope\x18\x02 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12\x37\n\x04kind\x18\x03 \x01(\x0e\x32\x19.platform.v1.ArtifactKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12:\n\x05state\x18\x04 \x01(\x0e\x32\x1a.platform.v1.ArtifactStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\x33\n\x11latest_version_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0flatestVersionId\x12&\n\nlineage_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12;\n\x0cresource_ref\x18\x07 \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x0bresourceRef\"\xae\x03\n\x0f\x41rtifactVersion\x12\x37\n\x13\x61rtifact_version_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x11\x61rtifactVersionId\x12(\n\x0b\x61rtifact_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nartifactId\x12\x1d\n\x05label\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05label\x12(\n\x0b\x63ontent_ref\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\ncontentRef\x12=\n\ncreated_by\x18\x05 \x01(\x0b\x32\x16.platform.v1.PrincipalB\x06\xbaH\x03\xc8\x01\x01R\tcreatedBy\x12&\n\nlineage_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12\x16\n\x06labels\x18\x07 \x03(\tR\x06labels\x12\x33\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12;\n\x0cresource_ref\x18\t \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x0bresourceRef\"\xae\x02\n\x0e\x45videnceRecord\x12(\n\x0b\x65vidence_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nevidenceId\x12\x36\n\x05scope\x18\x02 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12\x37\n\x04kind\x18\x03 \x01(\x0e\x32\x19.platform.v1.EvidenceKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12&\n\nsubject_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsubjectId\x12&\n\nlineage_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12\x31\n\x07payload\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructR\x07payload\"\x84\x04\n\x05Score\x12\"\n\x08score_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07scoreId\x12\x36\n\x05scope\x18\x02 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12&\n\nsubject_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsubjectId\x12%\n\tcriterion\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tcriterion\x12\x14\n\x05value\x18\x05 \x01(\x01R\x05value\x12\x1f\n\x06scorer\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06scorer\x12\x16\n\x06target\x18\x07 \x01(\tR\x06target\x12\x44\n\x0f\x65val_assignment\x18\x08 \x01(\x0b\x32\x1b.platform.v1.EvalAssignmentR\x0e\x65valAssignment\x12\x1f\n\x0b\x65vidence_id\x18\t \x01(\tR\nevidenceId\x12&\n\nlineage_id\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12?\n\tscored_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\x08scoredAt\x12\x31\n\x07payload\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructR\x07payload\"\xec\x04\n\x0eRecommendation\x12\x34\n\x11recommendation_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x10recommendationId\x12\x36\n\x05scope\x18\x02 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12=\n\x04kind\x18\x03 \x01(\x0e\x32\x1f.platform.v1.RecommendationKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12@\n\x05state\x18\x04 \x01(\x0e\x32 .platform.v1.RecommendationStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12&\n\nsubject_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsubjectId\x12(\n\x0b\x61\x63tion_type\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nactionType\x12\x44\n\x0f\x65val_assignment\x18\x07 \x01(\x0b\x32\x1b.platform.v1.EvalAssignmentR\x0e\x65valAssignment\x12\x19\n\x08score_id\x18\x08 \x01(\tR\x07scoreId\x12(\n\x10\x61\x63tion_intent_id\x18\t \x01(\tR\x0e\x61\x63tionIntentId\x12&\n\nlineage_id\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12\x35\n\trationale\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructR\trationale\x12/\n\x06result\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructR\x06result\"\xe4\x02\n\x0b\x44omainEvent\x12\"\n\x08\x65vent_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07\x65ventId\x12*\n\x0coperation_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0boperationId\x12\x36\n\x05scope\x18\x03 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12&\n\nowner_type\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\townerType\x12\"\n\x08owner_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07ownerId\x12&\n\nevent_type\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\teventType\x12&\n\nlineage_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12\x31\n\x07payload\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructR\x07payload\"\xa5\x02\n\rOutboxMessage\x12\x33\n\x11outbox_message_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0foutboxMessageId\x12*\n\x0coperation_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0boperationId\x12/\n\x0f\x64omain_event_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rdomainEventId\x12\x1d\n\x05topic\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05topic\x12;\n\x06status\x18\x05 \x01(\x0e\x32\x19.platform.v1.OutboxStatusB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06status\x12&\n\nlineage_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\"\x8f\x02\n\x10OperationReceipt\x12O\n\x10operation_record\x18\x01 \x01(\x0b\x32\x1c.platform.v1.OperationRecordB\x06\xbaH\x03\xc8\x01\x01R\x0foperationRecord\x12\x43\n\x0c\x64omain_event\x18\x02 \x01(\x0b\x32\x18.platform.v1.DomainEventB\x06\xbaH\x03\xc8\x01\x01R\x0b\x64omainEvent\x12I\n\x0eoutbox_message\x18\x03 \x01(\x0b\x32\x1a.platform.v1.OutboxMessageB\x06\xbaH\x03\xc8\x01\x01R\routboxMessage\x12\x1a\n\x08replayed\x18\x04 \x01(\x08R\x08replayed\"\x98\x06\n\x10UsageLedgerEntry\x12-\n\x0eusage_entry_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cusageEntryId\x12*\n\x0coperation_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0boperationId\x12\x36\n\x05scope\x18\x03 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12<\n\tprincipal\x18\x04 \x01(\x0b\x32\x16.platform.v1.PrincipalB\x06\xbaH\x03\xc8\x01\x01R\tprincipal\x12(\n\x10\x61\x63tion_intent_id\x18\x05 \x01(\tR\x0e\x61\x63tionIntentId\x12\x17\n\x07work_id\x18\x06 \x01(\tR\x06workId\x12.\n\x13\x61rtifact_version_id\x18\x07 \x01(\tR\x11\x61rtifactVersionId\x12\x19\n\x08trace_id\x18\x08 \x01(\tR\x07traceId\x12\x17\n\x07span_id\x18\t \x01(\tR\x06spanId\x12\x1a\n\x08provider\x18\n \x01(\tR\x08provider\x12\x34\n\x08resource\x18\x0b \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x08resource\x12G\n\x0bmetric_kind\x18\x0c \x01(\x0e\x32\x1c.platform.v1.UsageMetricKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\nmetricKind\x12\x32\n\x10quantity_decimal\x18\r \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0fquantityDecimal\x12\x1b\n\x04unit\x18\x0e \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04unit\x12\x43\n\x0bobserved_at\x18\x0f \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\nobservedAt\x12&\n\nlineage_id\x18\x10 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12\x33\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\"\xcf\x04\n\x10SpendLedgerEntry\x12-\n\x0espend_entry_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cspendEntryId\x12*\n\x0coperation_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0boperationId\x12\x36\n\x05scope\x18\x03 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12$\n\x0eusage_entry_id\x18\x04 \x01(\tR\x0cusageEntryId\x12(\n\x10\x61\x63tion_intent_id\x18\x05 \x01(\tR\x0e\x61\x63tionIntentId\x12#\n\ramount_micros\x18\x06 \x01(\x03R\x0c\x61mountMicros\x12$\n\x08\x63urrency\x18\x07 \x01(\tB\x08\xbaH\x05r\x03\x98\x01\x03R\x08\x63urrency\x12\x44\n\x12pricing_policy_ref\x18\x08 \x01(\x0b\x32\x16.platform.v1.PolicyRefR\x10pricingPolicyRef\x12\x43\n\x0bincurred_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\nincurredAt\x12&\n\nlineage_id\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12%\n\x0e\x61llocation_key\x18\x0b \x01(\tR\rallocationKey\x12\x33\n\x08metadata\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\"\xad\x04\n\x0f\x41ttributionEdge\x12\x37\n\x13\x61ttribution_edge_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x11\x61ttributionEdgeId\x12*\n\x0coperation_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0boperationId\x12\x36\n\x05scope\x18\x03 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12N\n\x0bsource_kind\x18\x04 \x01(\x0e\x32#.platform.v1.AttributionSubjectKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\nsourceKind\x12$\n\tsource_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08sourceId\x12N\n\x0btarget_kind\x18\x06 \x01(\x0e\x32#.platform.v1.AttributionSubjectKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\ntargetKind\x12$\n\ttarget_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08targetId\x12#\n\x08relation\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08relation\x12#\n\rweight_micros\x18\t \x01(\x03R\x0cweightMicros\x12&\n\nlineage_id\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12\x1f\n\x0b\x65vidence_id\x18\x0b \x01(\tR\nevidenceId\"M\n\x13GetBootstrapRequest\x12\x36\n\x05scope\x18\x01 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\"\x93\x01\n\x14GetBootstrapResponse\x12\x36\n\x05scope\x18\x01 \x01(\x0b\x32\x18.platform.v1.TenantScopeB\x06\xbaH\x03\xc8\x01\x01R\x05scope\x12\x43\n\x0c\x63\x61pabilities\x18\x02 \x03(\x0b\x32\x1f.platform.v1.PlatformCapabilityR\x0c\x63\x61pabilities\"\xce\x01\n\x12PlatformCapability\x12\x1b\n\x04name\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12?\n\x06status\x18\x02 \x01(\x0e\x32\x1d.platform.v1.CapabilityStatusB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x06status\x12\x16\n\x06reason\x18\x03 \x01(\tR\x06reason\x12\x42\n\x08\x66\x65\x61tures\x18\x04 \x03(\x0b\x32&.platform.v1.PlatformCapabilityFeatureR\x08\x66\x65\x61tures\"\x80\x01\n\x19PlatformCapabilityFeature\x12%\n\toperation\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\toperation\x12\x1f\n\x06method\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06method\x12\x1b\n\x04path\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04path\"\x8a\x01\n\x11\x43reateWorkRequest\x12?\n\x07\x63ontext\x18\x01 \x01(\x0b\x32\x1d.platform.v1.OperationContextB\x06\xbaH\x03\xc8\x01\x01R\x07\x63ontext\x12\x34\n\x04work\x18\x02 \x01(\x0b\x32\x18.platform.v1.NewWorkItemB\x06\xbaH\x03\xc8\x01\x01R\x04work\"\x88\x01\n\x12\x43reateWorkResponse\x12\x31\n\x04work\x18\x01 \x01(\x0b\x32\x15.platform.v1.WorkItemB\x06\xbaH\x03\xc8\x01\x01R\x04work\x12?\n\x07receipt\x18\x02 \x01(\x0b\x32\x1d.platform.v1.OperationReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xe3\x02\n\x14ProposeActionRequest\x12?\n\x07\x63ontext\x18\x01 \x01(\x0b\x32\x1d.platform.v1.OperationContextB\x06\xbaH\x03\xc8\x01\x01R\x07\x63ontext\x12(\n\x0b\x61\x63tion_type\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nactionType\x12\x41\n\x0ftarget_resource\x18\x03 \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x0etargetResource\x12*\n\x0cinput_digest\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0binputDigest\x12<\n\trisk_tier\x18\x05 \x01(\x0e\x32\x15.platform.v1.RiskTierB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08riskTier\x12\x33\n\x08\x65vidence\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructR\x08\x65vidence\"\xa0\x01\n\x15ProposeActionResponse\x12\x46\n\raction_intent\x18\x01 \x01(\x0b\x32\x19.platform.v1.ActionIntentB\x06\xbaH\x03\xc8\x01\x01R\x0c\x61\x63tionIntent\x12?\n\x07receipt\x18\x02 \x01(\x0b\x32\x1d.platform.v1.OperationReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\x9d\x01\n\x15\x43reateArtifactRequest\x12?\n\x07\x63ontext\x18\x01 \x01(\x0b\x32\x1d.platform.v1.OperationContextB\x06\xbaH\x03\xc8\x01\x01R\x07\x63ontext\x12\x43\n\x08\x61rtifact\x18\x02 \x01(\x0b\x32\x1f.platform.v1.NewArtifactVersionB\x06\xbaH\x03\xc8\x01\x01R\x08\x61rtifact\"\xd4\x01\n\x16\x43reateArtifactResponse\x12\x39\n\x08\x61rtifact\x18\x01 \x01(\x0b\x32\x15.platform.v1.ArtifactB\x06\xbaH\x03\xc8\x01\x01R\x08\x61rtifact\x12>\n\x07version\x18\x02 \x01(\x0b\x32\x1c.platform.v1.ArtifactVersionB\x06\xbaH\x03\xc8\x01\x01R\x07version\x12?\n\x07receipt\x18\x03 \x01(\x0b\x32\x1d.platform.v1.OperationReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xec\x01\n\x15RecordEvidenceRequest\x12?\n\x07\x63ontext\x18\x01 \x01(\x0b\x32\x1d.platform.v1.OperationContextB\x06\xbaH\x03\xc8\x01\x01R\x07\x63ontext\x12\x37\n\x04kind\x18\x02 \x01(\x0e\x32\x19.platform.v1.EvidenceKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12&\n\nsubject_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsubjectId\x12\x31\n\x07payload\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructR\x07payload\"\x9a\x01\n\x16RecordEvidenceResponse\x12?\n\x08\x65vidence\x18\x01 \x01(\x0b\x32\x1b.platform.v1.EvidenceRecordB\x06\xbaH\x03\xc8\x01\x01R\x08\x65vidence\x12?\n\x07receipt\x18\x02 \x01(\x0b\x32\x1d.platform.v1.OperationReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xec\x02\n\x12RecordScoreRequest\x12?\n\x07\x63ontext\x18\x01 \x01(\x0b\x32\x1d.platform.v1.OperationContextB\x06\xbaH\x03\xc8\x01\x01R\x07\x63ontext\x12&\n\nsubject_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsubjectId\x12%\n\tcriterion\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tcriterion\x12\x14\n\x05value\x18\x04 \x01(\x01R\x05value\x12\x1f\n\x06scorer\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06scorer\x12\x16\n\x06target\x18\x06 \x01(\tR\x06target\x12\x44\n\x0f\x65val_assignment\x18\x07 \x01(\x0b\x32\x1b.platform.v1.EvalAssignmentR\x0e\x65valAssignment\x12\x31\n\x07payload\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructR\x07payload\"\xc9\x01\n\x13RecordScoreResponse\x12\x30\n\x05score\x18\x01 \x01(\x0b\x32\x12.platform.v1.ScoreB\x06\xbaH\x03\xc8\x01\x01R\x05score\x12?\n\x08\x65vidence\x18\x02 \x01(\x0b\x32\x1b.platform.v1.EvidenceRecordB\x06\xbaH\x03\xc8\x01\x01R\x08\x65vidence\x12?\n\x07receipt\x18\x03 \x01(\x0b\x32\x1d.platform.v1.OperationReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt\"\xb3\x04\n\x1a\x41pplyRecommendationRequest\x12?\n\x07\x63ontext\x18\x01 \x01(\x0b\x32\x1d.platform.v1.OperationContextB\x06\xbaH\x03\xc8\x01\x01R\x07\x63ontext\x12=\n\x04kind\x18\x02 \x01(\x0e\x32\x1f.platform.v1.RecommendationKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12&\n\nsubject_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsubjectId\x12(\n\x0b\x61\x63tion_type\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nactionType\x12*\n\x0cinput_digest\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0binputDigest\x12<\n\trisk_tier\x18\x06 \x01(\x0e\x32\x15.platform.v1.RiskTierB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x08riskTier\x12\x41\n\x0ftarget_resource\x18\x07 \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x0etargetResource\x12\x44\n\x0f\x65val_assignment\x18\x08 \x01(\x0b\x32\x1b.platform.v1.EvalAssignmentR\x0e\x65valAssignment\x12\x19\n\x08score_id\x18\t \x01(\tR\x07scoreId\x12\x35\n\trationale\x18\n \x01(\x0b\x32\x17.google.protobuf.StructR\trationale\"\xf3\x01\n\x1b\x41pplyRecommendationResponse\x12K\n\x0erecommendation\x18\x01 \x01(\x0b\x32\x1b.platform.v1.RecommendationB\x06\xbaH\x03\xc8\x01\x01R\x0erecommendation\x12\x46\n\raction_intent\x18\x02 \x01(\x0b\x32\x19.platform.v1.ActionIntentB\x06\xbaH\x03\xc8\x01\x01R\x0c\x61\x63tionIntent\x12?\n\x07receipt\x18\x03 \x01(\x0b\x32\x1d.platform.v1.OperationReceiptB\x06\xbaH\x03\xc8\x01\x01R\x07receipt*\xbf\x01\n\rPrincipalKind\x12\x1e\n\x1aPRINCIPAL_KIND_UNSPECIFIED\x10\x00\x12\x18\n\x14PRINCIPAL_KIND_HUMAN\x10\x01\x12\"\n\x1ePRINCIPAL_KIND_SERVICE_ACCOUNT\x10\x02\x12\x18\n\x14PRINCIPAL_KIND_AGENT\x10\x03\x12\x19\n\x15PRINCIPAL_KIND_DEVICE\x10\x04\x12\x1b\n\x17PRINCIPAL_KIND_WORKLOAD\x10\x05*\xb5\x01\n\nPolicyKind\x12\x1b\n\x17POLICY_KIND_UNSPECIFIED\x10\x00\x12\x19\n\x15POLICY_KIND_AUTHORITY\x10\x01\x12\x1a\n\x16POLICY_KIND_CREDENTIAL\x10\x02\x12\x1f\n\x1bPOLICY_KIND_SOURCE_OF_TRUTH\x10\x03\x12\x19\n\x15POLICY_KIND_LIFECYCLE\x10\x04\x12\x17\n\x13POLICY_KIND_BILLING\x10\x05*\xbe\x02\n\x15\x41uthorityDecisionKind\x12\'\n#AUTHORITY_DECISION_KIND_UNSPECIFIED\x10\x00\x12!\n\x1d\x41UTHORITY_DECISION_KIND_ALLOW\x10\x01\x12 \n\x1c\x41UTHORITY_DECISION_KIND_DENY\x10\x02\x12,\n(AUTHORITY_DECISION_KIND_REQUIRE_APPROVAL\x10\x03\x12-\n)AUTHORITY_DECISION_KIND_APPROVAL_RESOLVED\x10\x04\x12)\n%AUTHORITY_DECISION_KIND_GRANT_EXPIRED\x10\x05\x12/\n+AUTHORITY_DECISION_KIND_DELEGATION_NARROWED\x10\x06*\xbf\x02\n\x08WorkKind\x12\x19\n\x15WORK_KIND_UNSPECIFIED\x10\x00\x12\x17\n\x13WORK_KIND_OBJECTIVE\x10\x01\x12\x16\n\x12WORK_KIND_WORKFLOW\x10\x02\x12\x17\n\x13WORK_KIND_AGENT_RUN\x10\x03\x12\x12\n\x0eWORK_KIND_STEP\x10\x04\x12\x12\n\x0eWORK_KIND_WAIT\x10\x05\x12\x13\n\x0fWORK_KIND_RETRY\x10\x06\x12\x1c\n\x18WORK_KIND_TOOL_EXECUTION\x10\x07\x12\x1c\n\x18WORK_KIND_RUNNER_SESSION\x10\x08\x12\x16\n\x12WORK_KIND_EVAL_RUN\x10\t\x12\x1e\n\x1aWORK_KIND_COMPUTER_MISSION\x10\n\x12\x1d\n\x19WORK_KIND_ARTIFACT_RENDER\x10\x0b*\xd2\x01\n\tWorkState\x12\x1a\n\x16WORK_STATE_UNSPECIFIED\x10\x00\x12\x17\n\x13WORK_STATE_PROPOSED\x10\x01\x12\x15\n\x11WORK_STATE_QUEUED\x10\x02\x12\x16\n\x12WORK_STATE_RUNNING\x10\x03\x12\x16\n\x12WORK_STATE_WAITING\x10\x04\x12\x18\n\x14WORK_STATE_SUCCEEDED\x10\x05\x12\x15\n\x11WORK_STATE_FAILED\x10\x06\x12\x18\n\x14WORK_STATE_CANCELLED\x10\x07*\xad\x03\n\x0cResourceKind\x12\x1d\n\x19RESOURCE_KIND_UNSPECIFIED\x10\x00\x12\x17\n\x13RESOURCE_KIND_AGENT\x10\x01\x12\x16\n\x12RESOURCE_KIND_TOOL\x10\x02\x12\x16\n\x12RESOURCE_KIND_REPO\x10\x03\x12\x19\n\x15RESOURCE_KIND_DATASET\x10\x04\x12\x1a\n\x16RESOURCE_KIND_DATABASE\x10\x05\x12\x1c\n\x18RESOURCE_KIND_CRM_OBJECT\x10\x06\x12\x1d\n\x19RESOURCE_KIND_MODEL_ROUTE\x10\x07\x12\x1a\n\x16RESOURCE_KIND_EXTERNAL\x10\x08\x12\x1c\n\x18RESOURCE_KIND_VFS_OBJECT\x10\t\x12$\n RESOURCE_KIND_VFS_OBJECT_VERSION\x10\n\x12\x1a\n\x16RESOURCE_KIND_ARTIFACT\x10\x0b\x12\"\n\x1eRESOURCE_KIND_ARTIFACT_VERSION\x10\x0c\x12!\n\x1dRESOURCE_KIND_GENERATED_ASSET\x10\r*\x8c\x03\n\nRecordKind\x12\x1b\n\x17RECORD_KIND_UNSPECIFIED\x10\x00\x12\x13\n\x0fRECORD_KIND_RUN\x10\x01\x12\x19\n\x15RECORD_KIND_MODEL_RUN\x10\x02\x12\x1e\n\x1aRECORD_KIND_TOOL_EXECUTION\x10\x03\x12\x1f\n\x1bRECORD_KIND_POLICY_DECISION\x10\x04\x12\x18\n\x14RECORD_KIND_APPROVAL\x10\x05\x12\x1a\n\x16RECORD_KIND_CREDENTIAL\x10\x06\x12\x19\n\x15RECORD_KIND_CONNECTOR\x10\x07\x12!\n\x1dRECORD_KIND_CONNECTOR_SESSION\x10\x08\x12\x18\n\x14RECORD_KIND_ARTIFACT\x10\t\x12\x15\n\x11RECORD_KIND_USAGE\x10\n\x12\x17\n\x13RECORD_KIND_RECEIPT\x10\x0b\x12\x18\n\x14RECORD_KIND_EVIDENCE\x10\x0c\x12\x18\n\x14RECORD_KIND_EVAL_RUN\x10\r*z\n\x08RiskTier\x12\x19\n\x15RISK_TIER_UNSPECIFIED\x10\x00\x12\x11\n\rRISK_TIER_LOW\x10\x01\x12\x14\n\x10RISK_TIER_MEDIUM\x10\x02\x12\x12\n\x0eRISK_TIER_HIGH\x10\x03\x12\x16\n\x12RISK_TIER_CRITICAL\x10\x04*\xc1\x01\n\rApprovalState\x12\x1e\n\x1a\x41PPROVAL_STATE_UNSPECIFIED\x10\x00\x12\x1f\n\x1b\x41PPROVAL_STATE_NOT_REQUIRED\x10\x01\x12\x1b\n\x17\x41PPROVAL_STATE_REQUIRED\x10\x02\x12\x1b\n\x17\x41PPROVAL_STATE_RESOLVED\x10\x03\x12\x19\n\x15\x41PPROVAL_STATE_DENIED\x10\x04\x12\x1a\n\x16\x41PPROVAL_STATE_EXPIRED\x10\x05*\xc1\x02\n\x14\x41\x63tionExecutionState\x12&\n\"ACTION_EXECUTION_STATE_UNSPECIFIED\x10\x00\x12#\n\x1f\x41\x43TION_EXECUTION_STATE_PROPOSED\x10\x01\x12#\n\x1f\x41\x43TION_EXECUTION_STATE_APPROVED\x10\x02\x12\"\n\x1e\x41\x43TION_EXECUTION_STATE_BLOCKED\x10\x03\x12$\n ACTION_EXECUTION_STATE_EXECUTING\x10\x04\x12$\n ACTION_EXECUTION_STATE_SUCCEEDED\x10\x05\x12!\n\x1d\x41\x43TION_EXECUTION_STATE_FAILED\x10\x06\x12$\n ACTION_EXECUTION_STATE_CANCELLED\x10\x07*\xb9\x02\n\x0c\x41rtifactKind\x12\x1d\n\x19\x41RTIFACT_KIND_UNSPECIFIED\x10\x00\x12\x18\n\x14\x41RTIFACT_KIND_PROMPT\x10\x01\x12\x17\n\x13\x41RTIFACT_KIND_SKILL\x10\x02\x12\x1e\n\x1a\x41RTIFACT_KIND_AGENT_CONFIG\x10\x03\x12\x1c\n\x18\x41RTIFACT_KIND_EVAL_SUITE\x10\x04\x12\x1a\n\x16\x41RTIFACT_KIND_SCENARIO\x10\x05\x12 \n\x1c\x41RTIFACT_KIND_GENERATED_FILE\x10\x06\x12\x1e\n\x1a\x41RTIFACT_KIND_CONTEXT_ITEM\x10\x07\x12\x1c\n\x18\x41RTIFACT_KIND_VFS_OBJECT\x10\x08\x12\x1d\n\x19\x41RTIFACT_KIND_MODEL_ROUTE\x10\t*\xa0\x01\n\rArtifactState\x12\x1e\n\x1a\x41RTIFACT_STATE_UNSPECIFIED\x10\x00\x12\x18\n\x14\x41RTIFACT_STATE_DRAFT\x10\x01\x12\x19\n\x15\x41RTIFACT_STATE_ACTIVE\x10\x02\x12\x1d\n\x19\x41RTIFACT_STATE_DEPRECATED\x10\x03\x12\x1b\n\x17\x41RTIFACT_STATE_ARCHIVED\x10\x04*\xf7\x01\n\x0c\x45videnceKind\x12\x1d\n\x19\x45VIDENCE_KIND_UNSPECIFIED\x10\x00\x12\x1d\n\x19\x45VIDENCE_KIND_AUDIT_EVENT\x10\x01\x12\x1c\n\x18\x45VIDENCE_KIND_TRACE_SPAN\x10\x02\x12\x17\n\x13\x45VIDENCE_KIND_USAGE\x10\x03\x12\x1d\n\x19\x45VIDENCE_KIND_ATTESTATION\x10\x04\x12\x1f\n\x1b\x45VIDENCE_KIND_REPLAY_BUNDLE\x10\x05\x12\x19\n\x15\x45VIDENCE_KIND_LINEAGE\x10\x06\x12\x17\n\x13\x45VIDENCE_KIND_SCORE\x10\x07*\xc6\x01\n\x12RecommendationKind\x12#\n\x1fRECOMMENDATION_KIND_UNSPECIFIED\x10\x00\x12)\n%RECOMMENDATION_KIND_PROMOTE_CANDIDATE\x10\x01\x12 \n\x1cRECOMMENDATION_KIND_ROLLBACK\x10\x02\x12 \n\x1cRECOMMENDATION_KIND_REWEIGHT\x10\x03\x12\x1c\n\x18RECOMMENDATION_KIND_HOLD\x10\x04*\xa3\x01\n\x13RecommendationState\x12$\n RECOMMENDATION_STATE_UNSPECIFIED\x10\x00\x12!\n\x1dRECOMMENDATION_STATE_PROPOSED\x10\x01\x12 \n\x1cRECOMMENDATION_STATE_APPLIED\x10\x02\x12!\n\x1dRECOMMENDATION_STATE_REJECTED\x10\x03*\x7f\n\x0cOutboxStatus\x12\x1d\n\x19OUTBOX_STATUS_UNSPECIFIED\x10\x00\x12\x19\n\x15OUTBOX_STATUS_PENDING\x10\x01\x12\x1b\n\x17OUTBOX_STATUS_PUBLISHED\x10\x02\x12\x18\n\x14OUTBOX_STATUS_FAILED\x10\x03*\xd6\x02\n\x0fUsageMetricKind\x12!\n\x1dUSAGE_METRIC_KIND_UNSPECIFIED\x10\x00\x12!\n\x1dUSAGE_METRIC_KIND_INPUT_TOKEN\x10\x01\x12\"\n\x1eUSAGE_METRIC_KIND_OUTPUT_TOKEN\x10\x02\x12(\n$USAGE_METRIC_KIND_CACHED_INPUT_TOKEN\x10\x03\x12\x1f\n\x1bUSAGE_METRIC_KIND_TOOL_CALL\x10\x04\x12#\n\x1fUSAGE_METRIC_KIND_RUNNER_SECOND\x10\x05\x12\'\n#USAGE_METRIC_KIND_STORAGE_BYTE_HOUR\x10\x06\x12\"\n\x1eUSAGE_METRIC_KIND_NETWORK_BYTE\x10\x07\x12\x1c\n\x18USAGE_METRIC_KIND_CUSTOM\x10\x08*\xe0\x03\n\x16\x41ttributionSubjectKind\x12(\n$ATTRIBUTION_SUBJECT_KIND_UNSPECIFIED\x10\x00\x12#\n\x1f\x41TTRIBUTION_SUBJECT_KIND_TENANT\x10\x01\x12&\n\"ATTRIBUTION_SUBJECT_KIND_PRINCIPAL\x10\x02\x12*\n&ATTRIBUTION_SUBJECT_KIND_ACTION_INTENT\x10\x03\x12&\n\"ATTRIBUTION_SUBJECT_KIND_WORK_ITEM\x10\x04\x12-\n)ATTRIBUTION_SUBJECT_KIND_ARTIFACT_VERSION\x10\x05\x12%\n!ATTRIBUTION_SUBJECT_KIND_RESOURCE\x10\x06\x12\'\n#ATTRIBUTION_SUBJECT_KIND_TRACE_SPAN\x10\x07\x12(\n$ATTRIBUTION_SUBJECT_KIND_USAGE_ENTRY\x10\x08\x12(\n$ATTRIBUTION_SUBJECT_KIND_SPEND_ENTRY\x10\t\x12(\n$ATTRIBUTION_SUBJECT_KIND_COST_CENTER\x10\n*y\n\x10\x43\x61pabilityStatus\x12!\n\x1d\x43\x41PABILITY_STATUS_UNSPECIFIED\x10\x00\x12\x1f\n\x1b\x43\x41PABILITY_STATUS_AVAILABLE\x10\x01\x12!\n\x1d\x43\x41PABILITY_STATUS_UNAVAILABLE\x10\x02\x32\xf7\x07\n\x0fPlatformService\x12\x80\x01\n\x0cGetBootstrap\x12 .platform.v1.GetBootstrapRequest\x1a!.platform.v1.GetBootstrapResponse\"+\xca\xf3\x18\rplatform:read\xd2\xf3\x18\x12scope.workspace_id\xd8\xf3\x18\x01\x12\x83\x01\n\nCreateWork\x12\x1e.platform.v1.CreateWorkRequest\x1a\x1f.platform.v1.CreateWorkResponse\"4\xca\xf3\x18\x0eplatform:write\xd2\xf3\x18\x1a\x63ontext.scope.workspace_id\xd8\xf3\x18\x02\x12\x8c\x01\n\rProposeAction\x12!.platform.v1.ProposeActionRequest\x1a\".platform.v1.ProposeActionResponse\"4\xca\xf3\x18\x0eplatform:write\xd2\xf3\x18\x1a\x63ontext.scope.workspace_id\xd8\xf3\x18\x03\x12\x8f\x01\n\x0e\x43reateArtifact\x12\".platform.v1.CreateArtifactRequest\x1a#.platform.v1.CreateArtifactResponse\"4\xca\xf3\x18\x0eplatform:write\xd2\xf3\x18\x1a\x63ontext.scope.workspace_id\xd8\xf3\x18\x02\x12\x8f\x01\n\x0eRecordEvidence\x12\".platform.v1.RecordEvidenceRequest\x1a#.platform.v1.RecordEvidenceResponse\"4\xca\xf3\x18\x0eplatform:write\xd2\xf3\x18\x1a\x63ontext.scope.workspace_id\xd8\xf3\x18\x02\x12\x86\x01\n\x0bRecordScore\x12\x1f.platform.v1.RecordScoreRequest\x1a .platform.v1.RecordScoreResponse\"4\xca\xf3\x18\x0eplatform:write\xd2\xf3\x18\x1a\x63ontext.scope.workspace_id\xd8\xf3\x18\x02\x12\x9e\x01\n\x13\x41pplyRecommendation\x12\'.platform.v1.ApplyRecommendationRequest\x1a(.platform.v1.ApplyRecommendationResponse\"4\xca\xf3\x18\x0eplatform:write\xd2\xf3\x18\x1a\x63ontext.scope.workspace_id\xd8\xf3\x18\x03\x42;Z9github.com/evalops/platform/gen/go/platform/v1;platformv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'platform.v1.platform_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z9github.com/evalops/platform/gen/go/platform/v1;platformv1' + _globals['_TENANTSCOPE'].fields_by_name['organization_id']._loaded_options = None + _globals['_TENANTSCOPE'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TENANTSCOPE'].fields_by_name['workspace_id']._loaded_options = None + _globals['_TENANTSCOPE'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRINCIPAL'].fields_by_name['principal_id']._loaded_options = None + _globals['_PRINCIPAL'].fields_by_name['principal_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PRINCIPAL'].fields_by_name['kind']._loaded_options = None + _globals['_PRINCIPAL'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_ACTOR'].fields_by_name['principal']._loaded_options = None + _globals['_ACTOR'].fields_by_name['principal']._serialized_options = b'\272H\003\310\001\001' + _globals['_POLICYREF'].fields_by_name['policy_id']._loaded_options = None + _globals['_POLICYREF'].fields_by_name['policy_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_POLICYREF'].fields_by_name['version_id']._loaded_options = None + _globals['_POLICYREF'].fields_by_name['version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_POLICY'].fields_by_name['policy_id']._loaded_options = None + _globals['_POLICY'].fields_by_name['policy_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_POLICY'].fields_by_name['scope']._loaded_options = None + _globals['_POLICY'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_POLICY'].fields_by_name['kind']._loaded_options = None + _globals['_POLICY'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_POLICY'].fields_by_name['name']._loaded_options = None + _globals['_POLICY'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_POLICY'].fields_by_name['active_version_id']._loaded_options = None + _globals['_POLICY'].fields_by_name['active_version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_POLICYVERSION'].fields_by_name['version_id']._loaded_options = None + _globals['_POLICYVERSION'].fields_by_name['version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_POLICYVERSION'].fields_by_name['policy_id']._loaded_options = None + _globals['_POLICYVERSION'].fields_by_name['policy_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_POLICYVERSION'].fields_by_name['artifact_version_id']._loaded_options = None + _globals['_POLICYVERSION'].fields_by_name['artifact_version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_POLICYVERSION'].fields_by_name['created_by']._loaded_options = None + _globals['_POLICYVERSION'].fields_by_name['created_by']._serialized_options = b'\272H\003\310\001\001' + _globals['_POLICYVERSION'].fields_by_name['lineage_id']._loaded_options = None + _globals['_POLICYVERSION'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_AUTHORITYDECISION'].fields_by_name['decision_id']._loaded_options = None + _globals['_AUTHORITYDECISION'].fields_by_name['decision_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_AUTHORITYDECISION'].fields_by_name['kind']._loaded_options = None + _globals['_AUTHORITYDECISION'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OPERATIONCONTEXT'].fields_by_name['scope']._loaded_options = None + _globals['_OPERATIONCONTEXT'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATIONCONTEXT'].fields_by_name['actor']._loaded_options = None + _globals['_OPERATIONCONTEXT'].fields_by_name['actor']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATIONCONTEXT'].fields_by_name['authority']._loaded_options = None + _globals['_OPERATIONCONTEXT'].fields_by_name['authority']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATIONCONTEXT'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_OPERATIONCONTEXT'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATIONCONTEXT'].fields_by_name['lineage_id']._loaded_options = None + _globals['_OPERATIONCONTEXT'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATIONCONTEXT'].fields_by_name['request_id']._loaded_options = None + _globals['_OPERATIONCONTEXT'].fields_by_name['request_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATIONCONTEXT'].fields_by_name['now']._loaded_options = None + _globals['_OPERATIONCONTEXT'].fields_by_name['now']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATIONRECORD'].fields_by_name['operation_id']._loaded_options = None + _globals['_OPERATIONRECORD'].fields_by_name['operation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATIONRECORD'].fields_by_name['scope']._loaded_options = None + _globals['_OPERATIONRECORD'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATIONRECORD'].fields_by_name['actor']._loaded_options = None + _globals['_OPERATIONRECORD'].fields_by_name['actor']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATIONRECORD'].fields_by_name['authority']._loaded_options = None + _globals['_OPERATIONRECORD'].fields_by_name['authority']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATIONRECORD'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_OPERATIONRECORD'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATIONRECORD'].fields_by_name['lineage_id']._loaded_options = None + _globals['_OPERATIONRECORD'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATIONRECORD'].fields_by_name['request_id']._loaded_options = None + _globals['_OPERATIONRECORD'].fields_by_name['request_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATIONRECORD'].fields_by_name['recorded_at']._loaded_options = None + _globals['_OPERATIONRECORD'].fields_by_name['recorded_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATIONRECORD'].fields_by_name['operation_type']._loaded_options = None + _globals['_OPERATIONRECORD'].fields_by_name['operation_type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATIONRECORD'].fields_by_name['owner_type']._loaded_options = None + _globals['_OPERATIONRECORD'].fields_by_name['owner_type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATIONRECORD'].fields_by_name['owner_id']._loaded_options = None + _globals['_OPERATIONRECORD'].fields_by_name['owner_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EVALASSIGNMENT'].fields_by_name['cohort_id']._loaded_options = None + _globals['_EVALASSIGNMENT'].fields_by_name['cohort_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EVALASSIGNMENT'].fields_by_name['candidate_id']._loaded_options = None + _globals['_EVALASSIGNMENT'].fields_by_name['candidate_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_NEWWORKITEM'].fields_by_name['kind']._loaded_options = None + _globals['_NEWWORKITEM'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_NEWWORKITEM'].fields_by_name['title']._loaded_options = None + _globals['_NEWWORKITEM'].fields_by_name['title']._serialized_options = b'\272H\004r\002\020\001' + _globals['_WORKITEM'].fields_by_name['work_id']._loaded_options = None + _globals['_WORKITEM'].fields_by_name['work_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_WORKITEM'].fields_by_name['scope']._loaded_options = None + _globals['_WORKITEM'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_WORKITEM'].fields_by_name['kind']._loaded_options = None + _globals['_WORKITEM'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_WORKITEM'].fields_by_name['state']._loaded_options = None + _globals['_WORKITEM'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_WORKITEM'].fields_by_name['title']._loaded_options = None + _globals['_WORKITEM'].fields_by_name['title']._serialized_options = b'\272H\004r\002\020\001' + _globals['_WORKITEM'].fields_by_name['created_by']._loaded_options = None + _globals['_WORKITEM'].fields_by_name['created_by']._serialized_options = b'\272H\003\310\001\001' + _globals['_WORKITEM'].fields_by_name['lineage_id']._loaded_options = None + _globals['_WORKITEM'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESOURCEREF'].fields_by_name['resource_id']._loaded_options = None + _globals['_RESOURCEREF'].fields_by_name['resource_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESOURCEREF'].fields_by_name['kind']._loaded_options = None + _globals['_RESOURCEREF'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_RESOURCEREF'].fields_by_name['version']._loaded_options = None + _globals['_RESOURCEREF'].fields_by_name['version']._serialized_options = b'\272H\004\032\002(\000' + _globals['_RECORDREF'].fields_by_name['kind']._loaded_options = None + _globals['_RECORDREF'].fields_by_name['kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_RECORDREF'].fields_by_name['record_id']._loaded_options = None + _globals['_RECORDREF'].fields_by_name['record_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ACTIONINTENT'].fields_by_name['action_intent_id']._loaded_options = None + _globals['_ACTIONINTENT'].fields_by_name['action_intent_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ACTIONINTENT'].fields_by_name['scope']._loaded_options = None + _globals['_ACTIONINTENT'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_ACTIONINTENT'].fields_by_name['proposed_by']._loaded_options = None + _globals['_ACTIONINTENT'].fields_by_name['proposed_by']._serialized_options = b'\272H\003\310\001\001' + _globals['_ACTIONINTENT'].fields_by_name['action_type']._loaded_options = None + _globals['_ACTIONINTENT'].fields_by_name['action_type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ACTIONINTENT'].fields_by_name['input_digest']._loaded_options = None + _globals['_ACTIONINTENT'].fields_by_name['input_digest']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ACTIONINTENT'].fields_by_name['risk_tier']._loaded_options = None + _globals['_ACTIONINTENT'].fields_by_name['risk_tier']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_ACTIONINTENT'].fields_by_name['authority_decision']._loaded_options = None + _globals['_ACTIONINTENT'].fields_by_name['authority_decision']._serialized_options = b'\272H\003\310\001\001' + _globals['_ACTIONINTENT'].fields_by_name['approval_state']._loaded_options = None + _globals['_ACTIONINTENT'].fields_by_name['approval_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_ACTIONINTENT'].fields_by_name['execution_state']._loaded_options = None + _globals['_ACTIONINTENT'].fields_by_name['execution_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_ACTIONINTENT'].fields_by_name['lineage_id']._loaded_options = None + _globals['_ACTIONINTENT'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_NEWARTIFACTVERSION'].fields_by_name['artifact_id']._loaded_options = None + _globals['_NEWARTIFACTVERSION'].fields_by_name['artifact_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_NEWARTIFACTVERSION'].fields_by_name['kind']._loaded_options = None + _globals['_NEWARTIFACTVERSION'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_NEWARTIFACTVERSION'].fields_by_name['label']._loaded_options = None + _globals['_NEWARTIFACTVERSION'].fields_by_name['label']._serialized_options = b'\272H\004r\002\020\001' + _globals['_NEWARTIFACTVERSION'].fields_by_name['content_ref']._loaded_options = None + _globals['_NEWARTIFACTVERSION'].fields_by_name['content_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ARTIFACT'].fields_by_name['artifact_id']._loaded_options = None + _globals['_ARTIFACT'].fields_by_name['artifact_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ARTIFACT'].fields_by_name['scope']._loaded_options = None + _globals['_ARTIFACT'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_ARTIFACT'].fields_by_name['kind']._loaded_options = None + _globals['_ARTIFACT'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_ARTIFACT'].fields_by_name['state']._loaded_options = None + _globals['_ARTIFACT'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_ARTIFACT'].fields_by_name['latest_version_id']._loaded_options = None + _globals['_ARTIFACT'].fields_by_name['latest_version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ARTIFACT'].fields_by_name['lineage_id']._loaded_options = None + _globals['_ARTIFACT'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ARTIFACTVERSION'].fields_by_name['artifact_version_id']._loaded_options = None + _globals['_ARTIFACTVERSION'].fields_by_name['artifact_version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ARTIFACTVERSION'].fields_by_name['artifact_id']._loaded_options = None + _globals['_ARTIFACTVERSION'].fields_by_name['artifact_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ARTIFACTVERSION'].fields_by_name['label']._loaded_options = None + _globals['_ARTIFACTVERSION'].fields_by_name['label']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ARTIFACTVERSION'].fields_by_name['content_ref']._loaded_options = None + _globals['_ARTIFACTVERSION'].fields_by_name['content_ref']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ARTIFACTVERSION'].fields_by_name['created_by']._loaded_options = None + _globals['_ARTIFACTVERSION'].fields_by_name['created_by']._serialized_options = b'\272H\003\310\001\001' + _globals['_ARTIFACTVERSION'].fields_by_name['lineage_id']._loaded_options = None + _globals['_ARTIFACTVERSION'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EVIDENCERECORD'].fields_by_name['evidence_id']._loaded_options = None + _globals['_EVIDENCERECORD'].fields_by_name['evidence_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EVIDENCERECORD'].fields_by_name['scope']._loaded_options = None + _globals['_EVIDENCERECORD'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_EVIDENCERECORD'].fields_by_name['kind']._loaded_options = None + _globals['_EVIDENCERECORD'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_EVIDENCERECORD'].fields_by_name['subject_id']._loaded_options = None + _globals['_EVIDENCERECORD'].fields_by_name['subject_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EVIDENCERECORD'].fields_by_name['lineage_id']._loaded_options = None + _globals['_EVIDENCERECORD'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SCORE'].fields_by_name['score_id']._loaded_options = None + _globals['_SCORE'].fields_by_name['score_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SCORE'].fields_by_name['scope']._loaded_options = None + _globals['_SCORE'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_SCORE'].fields_by_name['subject_id']._loaded_options = None + _globals['_SCORE'].fields_by_name['subject_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SCORE'].fields_by_name['criterion']._loaded_options = None + _globals['_SCORE'].fields_by_name['criterion']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SCORE'].fields_by_name['scorer']._loaded_options = None + _globals['_SCORE'].fields_by_name['scorer']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SCORE'].fields_by_name['lineage_id']._loaded_options = None + _globals['_SCORE'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SCORE'].fields_by_name['scored_at']._loaded_options = None + _globals['_SCORE'].fields_by_name['scored_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_RECOMMENDATION'].fields_by_name['recommendation_id']._loaded_options = None + _globals['_RECOMMENDATION'].fields_by_name['recommendation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RECOMMENDATION'].fields_by_name['scope']._loaded_options = None + _globals['_RECOMMENDATION'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_RECOMMENDATION'].fields_by_name['kind']._loaded_options = None + _globals['_RECOMMENDATION'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_RECOMMENDATION'].fields_by_name['state']._loaded_options = None + _globals['_RECOMMENDATION'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_RECOMMENDATION'].fields_by_name['subject_id']._loaded_options = None + _globals['_RECOMMENDATION'].fields_by_name['subject_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RECOMMENDATION'].fields_by_name['action_type']._loaded_options = None + _globals['_RECOMMENDATION'].fields_by_name['action_type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RECOMMENDATION'].fields_by_name['lineage_id']._loaded_options = None + _globals['_RECOMMENDATION'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DOMAINEVENT'].fields_by_name['event_id']._loaded_options = None + _globals['_DOMAINEVENT'].fields_by_name['event_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DOMAINEVENT'].fields_by_name['operation_id']._loaded_options = None + _globals['_DOMAINEVENT'].fields_by_name['operation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DOMAINEVENT'].fields_by_name['scope']._loaded_options = None + _globals['_DOMAINEVENT'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_DOMAINEVENT'].fields_by_name['owner_type']._loaded_options = None + _globals['_DOMAINEVENT'].fields_by_name['owner_type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DOMAINEVENT'].fields_by_name['owner_id']._loaded_options = None + _globals['_DOMAINEVENT'].fields_by_name['owner_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DOMAINEVENT'].fields_by_name['event_type']._loaded_options = None + _globals['_DOMAINEVENT'].fields_by_name['event_type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DOMAINEVENT'].fields_by_name['lineage_id']._loaded_options = None + _globals['_DOMAINEVENT'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OUTBOXMESSAGE'].fields_by_name['outbox_message_id']._loaded_options = None + _globals['_OUTBOXMESSAGE'].fields_by_name['outbox_message_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OUTBOXMESSAGE'].fields_by_name['operation_id']._loaded_options = None + _globals['_OUTBOXMESSAGE'].fields_by_name['operation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OUTBOXMESSAGE'].fields_by_name['domain_event_id']._loaded_options = None + _globals['_OUTBOXMESSAGE'].fields_by_name['domain_event_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OUTBOXMESSAGE'].fields_by_name['topic']._loaded_options = None + _globals['_OUTBOXMESSAGE'].fields_by_name['topic']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OUTBOXMESSAGE'].fields_by_name['status']._loaded_options = None + _globals['_OUTBOXMESSAGE'].fields_by_name['status']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_OUTBOXMESSAGE'].fields_by_name['lineage_id']._loaded_options = None + _globals['_OUTBOXMESSAGE'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_OPERATIONRECEIPT'].fields_by_name['operation_record']._loaded_options = None + _globals['_OPERATIONRECEIPT'].fields_by_name['operation_record']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATIONRECEIPT'].fields_by_name['domain_event']._loaded_options = None + _globals['_OPERATIONRECEIPT'].fields_by_name['domain_event']._serialized_options = b'\272H\003\310\001\001' + _globals['_OPERATIONRECEIPT'].fields_by_name['outbox_message']._loaded_options = None + _globals['_OPERATIONRECEIPT'].fields_by_name['outbox_message']._serialized_options = b'\272H\003\310\001\001' + _globals['_USAGELEDGERENTRY'].fields_by_name['usage_entry_id']._loaded_options = None + _globals['_USAGELEDGERENTRY'].fields_by_name['usage_entry_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_USAGELEDGERENTRY'].fields_by_name['operation_id']._loaded_options = None + _globals['_USAGELEDGERENTRY'].fields_by_name['operation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_USAGELEDGERENTRY'].fields_by_name['scope']._loaded_options = None + _globals['_USAGELEDGERENTRY'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_USAGELEDGERENTRY'].fields_by_name['principal']._loaded_options = None + _globals['_USAGELEDGERENTRY'].fields_by_name['principal']._serialized_options = b'\272H\003\310\001\001' + _globals['_USAGELEDGERENTRY'].fields_by_name['metric_kind']._loaded_options = None + _globals['_USAGELEDGERENTRY'].fields_by_name['metric_kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_USAGELEDGERENTRY'].fields_by_name['quantity_decimal']._loaded_options = None + _globals['_USAGELEDGERENTRY'].fields_by_name['quantity_decimal']._serialized_options = b'\272H\004r\002\020\001' + _globals['_USAGELEDGERENTRY'].fields_by_name['unit']._loaded_options = None + _globals['_USAGELEDGERENTRY'].fields_by_name['unit']._serialized_options = b'\272H\004r\002\020\001' + _globals['_USAGELEDGERENTRY'].fields_by_name['observed_at']._loaded_options = None + _globals['_USAGELEDGERENTRY'].fields_by_name['observed_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_USAGELEDGERENTRY'].fields_by_name['lineage_id']._loaded_options = None + _globals['_USAGELEDGERENTRY'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SPENDLEDGERENTRY'].fields_by_name['spend_entry_id']._loaded_options = None + _globals['_SPENDLEDGERENTRY'].fields_by_name['spend_entry_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SPENDLEDGERENTRY'].fields_by_name['operation_id']._loaded_options = None + _globals['_SPENDLEDGERENTRY'].fields_by_name['operation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SPENDLEDGERENTRY'].fields_by_name['scope']._loaded_options = None + _globals['_SPENDLEDGERENTRY'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_SPENDLEDGERENTRY'].fields_by_name['currency']._loaded_options = None + _globals['_SPENDLEDGERENTRY'].fields_by_name['currency']._serialized_options = b'\272H\005r\003\230\001\003' + _globals['_SPENDLEDGERENTRY'].fields_by_name['incurred_at']._loaded_options = None + _globals['_SPENDLEDGERENTRY'].fields_by_name['incurred_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_SPENDLEDGERENTRY'].fields_by_name['lineage_id']._loaded_options = None + _globals['_SPENDLEDGERENTRY'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ATTRIBUTIONEDGE'].fields_by_name['attribution_edge_id']._loaded_options = None + _globals['_ATTRIBUTIONEDGE'].fields_by_name['attribution_edge_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ATTRIBUTIONEDGE'].fields_by_name['operation_id']._loaded_options = None + _globals['_ATTRIBUTIONEDGE'].fields_by_name['operation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ATTRIBUTIONEDGE'].fields_by_name['scope']._loaded_options = None + _globals['_ATTRIBUTIONEDGE'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_ATTRIBUTIONEDGE'].fields_by_name['source_kind']._loaded_options = None + _globals['_ATTRIBUTIONEDGE'].fields_by_name['source_kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_ATTRIBUTIONEDGE'].fields_by_name['source_id']._loaded_options = None + _globals['_ATTRIBUTIONEDGE'].fields_by_name['source_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ATTRIBUTIONEDGE'].fields_by_name['target_kind']._loaded_options = None + _globals['_ATTRIBUTIONEDGE'].fields_by_name['target_kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_ATTRIBUTIONEDGE'].fields_by_name['target_id']._loaded_options = None + _globals['_ATTRIBUTIONEDGE'].fields_by_name['target_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ATTRIBUTIONEDGE'].fields_by_name['relation']._loaded_options = None + _globals['_ATTRIBUTIONEDGE'].fields_by_name['relation']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ATTRIBUTIONEDGE'].fields_by_name['lineage_id']._loaded_options = None + _globals['_ATTRIBUTIONEDGE'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETBOOTSTRAPREQUEST'].fields_by_name['scope']._loaded_options = None + _globals['_GETBOOTSTRAPREQUEST'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETBOOTSTRAPRESPONSE'].fields_by_name['scope']._loaded_options = None + _globals['_GETBOOTSTRAPRESPONSE'].fields_by_name['scope']._serialized_options = b'\272H\003\310\001\001' + _globals['_PLATFORMCAPABILITY'].fields_by_name['name']._loaded_options = None + _globals['_PLATFORMCAPABILITY'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PLATFORMCAPABILITY'].fields_by_name['status']._loaded_options = None + _globals['_PLATFORMCAPABILITY'].fields_by_name['status']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_PLATFORMCAPABILITYFEATURE'].fields_by_name['operation']._loaded_options = None + _globals['_PLATFORMCAPABILITYFEATURE'].fields_by_name['operation']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PLATFORMCAPABILITYFEATURE'].fields_by_name['method']._loaded_options = None + _globals['_PLATFORMCAPABILITYFEATURE'].fields_by_name['method']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PLATFORMCAPABILITYFEATURE'].fields_by_name['path']._loaded_options = None + _globals['_PLATFORMCAPABILITYFEATURE'].fields_by_name['path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATEWORKREQUEST'].fields_by_name['context']._loaded_options = None + _globals['_CREATEWORKREQUEST'].fields_by_name['context']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEWORKREQUEST'].fields_by_name['work']._loaded_options = None + _globals['_CREATEWORKREQUEST'].fields_by_name['work']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEWORKRESPONSE'].fields_by_name['work']._loaded_options = None + _globals['_CREATEWORKRESPONSE'].fields_by_name['work']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEWORKRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_CREATEWORKRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROPOSEACTIONREQUEST'].fields_by_name['context']._loaded_options = None + _globals['_PROPOSEACTIONREQUEST'].fields_by_name['context']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROPOSEACTIONREQUEST'].fields_by_name['action_type']._loaded_options = None + _globals['_PROPOSEACTIONREQUEST'].fields_by_name['action_type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROPOSEACTIONREQUEST'].fields_by_name['input_digest']._loaded_options = None + _globals['_PROPOSEACTIONREQUEST'].fields_by_name['input_digest']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PROPOSEACTIONREQUEST'].fields_by_name['risk_tier']._loaded_options = None + _globals['_PROPOSEACTIONREQUEST'].fields_by_name['risk_tier']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_PROPOSEACTIONRESPONSE'].fields_by_name['action_intent']._loaded_options = None + _globals['_PROPOSEACTIONRESPONSE'].fields_by_name['action_intent']._serialized_options = b'\272H\003\310\001\001' + _globals['_PROPOSEACTIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_PROPOSEACTIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEARTIFACTREQUEST'].fields_by_name['context']._loaded_options = None + _globals['_CREATEARTIFACTREQUEST'].fields_by_name['context']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEARTIFACTREQUEST'].fields_by_name['artifact']._loaded_options = None + _globals['_CREATEARTIFACTREQUEST'].fields_by_name['artifact']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEARTIFACTRESPONSE'].fields_by_name['artifact']._loaded_options = None + _globals['_CREATEARTIFACTRESPONSE'].fields_by_name['artifact']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEARTIFACTRESPONSE'].fields_by_name['version']._loaded_options = None + _globals['_CREATEARTIFACTRESPONSE'].fields_by_name['version']._serialized_options = b'\272H\003\310\001\001' + _globals['_CREATEARTIFACTRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_CREATEARTIFACTRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_RECORDEVIDENCEREQUEST'].fields_by_name['context']._loaded_options = None + _globals['_RECORDEVIDENCEREQUEST'].fields_by_name['context']._serialized_options = b'\272H\003\310\001\001' + _globals['_RECORDEVIDENCEREQUEST'].fields_by_name['kind']._loaded_options = None + _globals['_RECORDEVIDENCEREQUEST'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_RECORDEVIDENCEREQUEST'].fields_by_name['subject_id']._loaded_options = None + _globals['_RECORDEVIDENCEREQUEST'].fields_by_name['subject_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RECORDEVIDENCERESPONSE'].fields_by_name['evidence']._loaded_options = None + _globals['_RECORDEVIDENCERESPONSE'].fields_by_name['evidence']._serialized_options = b'\272H\003\310\001\001' + _globals['_RECORDEVIDENCERESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_RECORDEVIDENCERESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_RECORDSCOREREQUEST'].fields_by_name['context']._loaded_options = None + _globals['_RECORDSCOREREQUEST'].fields_by_name['context']._serialized_options = b'\272H\003\310\001\001' + _globals['_RECORDSCOREREQUEST'].fields_by_name['subject_id']._loaded_options = None + _globals['_RECORDSCOREREQUEST'].fields_by_name['subject_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RECORDSCOREREQUEST'].fields_by_name['criterion']._loaded_options = None + _globals['_RECORDSCOREREQUEST'].fields_by_name['criterion']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RECORDSCOREREQUEST'].fields_by_name['scorer']._loaded_options = None + _globals['_RECORDSCOREREQUEST'].fields_by_name['scorer']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RECORDSCORERESPONSE'].fields_by_name['score']._loaded_options = None + _globals['_RECORDSCORERESPONSE'].fields_by_name['score']._serialized_options = b'\272H\003\310\001\001' + _globals['_RECORDSCORERESPONSE'].fields_by_name['evidence']._loaded_options = None + _globals['_RECORDSCORERESPONSE'].fields_by_name['evidence']._serialized_options = b'\272H\003\310\001\001' + _globals['_RECORDSCORERESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_RECORDSCORERESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['context']._loaded_options = None + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['context']._serialized_options = b'\272H\003\310\001\001' + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['kind']._loaded_options = None + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['subject_id']._loaded_options = None + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['subject_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['action_type']._loaded_options = None + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['action_type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['input_digest']._loaded_options = None + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['input_digest']._serialized_options = b'\272H\004r\002\020\001' + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['risk_tier']._loaded_options = None + _globals['_APPLYRECOMMENDATIONREQUEST'].fields_by_name['risk_tier']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_APPLYRECOMMENDATIONRESPONSE'].fields_by_name['recommendation']._loaded_options = None + _globals['_APPLYRECOMMENDATIONRESPONSE'].fields_by_name['recommendation']._serialized_options = b'\272H\003\310\001\001' + _globals['_APPLYRECOMMENDATIONRESPONSE'].fields_by_name['action_intent']._loaded_options = None + _globals['_APPLYRECOMMENDATIONRESPONSE'].fields_by_name['action_intent']._serialized_options = b'\272H\003\310\001\001' + _globals['_APPLYRECOMMENDATIONRESPONSE'].fields_by_name['receipt']._loaded_options = None + _globals['_APPLYRECOMMENDATIONRESPONSE'].fields_by_name['receipt']._serialized_options = b'\272H\003\310\001\001' + _globals['_PLATFORMSERVICE'].methods_by_name['GetBootstrap']._loaded_options = None + _globals['_PLATFORMSERVICE'].methods_by_name['GetBootstrap']._serialized_options = b'\312\363\030\rplatform:read\322\363\030\022scope.workspace_id\330\363\030\001' + _globals['_PLATFORMSERVICE'].methods_by_name['CreateWork']._loaded_options = None + _globals['_PLATFORMSERVICE'].methods_by_name['CreateWork']._serialized_options = b'\312\363\030\016platform:write\322\363\030\032context.scope.workspace_id\330\363\030\002' + _globals['_PLATFORMSERVICE'].methods_by_name['ProposeAction']._loaded_options = None + _globals['_PLATFORMSERVICE'].methods_by_name['ProposeAction']._serialized_options = b'\312\363\030\016platform:write\322\363\030\032context.scope.workspace_id\330\363\030\003' + _globals['_PLATFORMSERVICE'].methods_by_name['CreateArtifact']._loaded_options = None + _globals['_PLATFORMSERVICE'].methods_by_name['CreateArtifact']._serialized_options = b'\312\363\030\016platform:write\322\363\030\032context.scope.workspace_id\330\363\030\002' + _globals['_PLATFORMSERVICE'].methods_by_name['RecordEvidence']._loaded_options = None + _globals['_PLATFORMSERVICE'].methods_by_name['RecordEvidence']._serialized_options = b'\312\363\030\016platform:write\322\363\030\032context.scope.workspace_id\330\363\030\002' + _globals['_PLATFORMSERVICE'].methods_by_name['RecordScore']._loaded_options = None + _globals['_PLATFORMSERVICE'].methods_by_name['RecordScore']._serialized_options = b'\312\363\030\016platform:write\322\363\030\032context.scope.workspace_id\330\363\030\002' + _globals['_PLATFORMSERVICE'].methods_by_name['ApplyRecommendation']._loaded_options = None + _globals['_PLATFORMSERVICE'].methods_by_name['ApplyRecommendation']._serialized_options = b'\312\363\030\016platform:write\322\363\030\032context.scope.workspace_id\330\363\030\003' + _globals['_PRINCIPALKIND']._serialized_start=13638 + _globals['_PRINCIPALKIND']._serialized_end=13829 + _globals['_POLICYKIND']._serialized_start=13832 + _globals['_POLICYKIND']._serialized_end=14013 + _globals['_AUTHORITYDECISIONKIND']._serialized_start=14016 + _globals['_AUTHORITYDECISIONKIND']._serialized_end=14334 + _globals['_WORKKIND']._serialized_start=14337 + _globals['_WORKKIND']._serialized_end=14656 + _globals['_WORKSTATE']._serialized_start=14659 + _globals['_WORKSTATE']._serialized_end=14869 + _globals['_RESOURCEKIND']._serialized_start=14872 + _globals['_RESOURCEKIND']._serialized_end=15301 + _globals['_RECORDKIND']._serialized_start=15304 + _globals['_RECORDKIND']._serialized_end=15700 + _globals['_RISKTIER']._serialized_start=15702 + _globals['_RISKTIER']._serialized_end=15824 + _globals['_APPROVALSTATE']._serialized_start=15827 + _globals['_APPROVALSTATE']._serialized_end=16020 + _globals['_ACTIONEXECUTIONSTATE']._serialized_start=16023 + _globals['_ACTIONEXECUTIONSTATE']._serialized_end=16344 + _globals['_ARTIFACTKIND']._serialized_start=16347 + _globals['_ARTIFACTKIND']._serialized_end=16660 + _globals['_ARTIFACTSTATE']._serialized_start=16663 + _globals['_ARTIFACTSTATE']._serialized_end=16823 + _globals['_EVIDENCEKIND']._serialized_start=16826 + _globals['_EVIDENCEKIND']._serialized_end=17073 + _globals['_RECOMMENDATIONKIND']._serialized_start=17076 + _globals['_RECOMMENDATIONKIND']._serialized_end=17274 + _globals['_RECOMMENDATIONSTATE']._serialized_start=17277 + _globals['_RECOMMENDATIONSTATE']._serialized_end=17440 + _globals['_OUTBOXSTATUS']._serialized_start=17442 + _globals['_OUTBOXSTATUS']._serialized_end=17569 + _globals['_USAGEMETRICKIND']._serialized_start=17572 + _globals['_USAGEMETRICKIND']._serialized_end=17914 + _globals['_ATTRIBUTIONSUBJECTKIND']._serialized_start=17917 + _globals['_ATTRIBUTIONSUBJECTKIND']._serialized_end=18397 + _globals['_CAPABILITYSTATUS']._serialized_start=18399 + _globals['_CAPABILITYSTATUS']._serialized_end=18520 + _globals['_TENANTSCOPE']._serialized_start=159 + _globals['_TENANTSCOPE']._serialized_end=325 + _globals['_PRINCIPAL']._serialized_start=328 + _globals['_PRINCIPAL']._serialized_end=476 + _globals['_ACTOR']._serialized_start=478 + _globals['_ACTOR']._serialized_end=578 + _globals['_POLICYREF']._serialized_start=580 + _globals['_POLICYREF']._serialized_end=669 + _globals['_POLICY']._serialized_start=672 + _globals['_POLICY']._serialized_end=911 + _globals['_POLICYVERSION']._serialized_start=914 + _globals['_POLICYVERSION']._serialized_end=1167 + _globals['_AUTHORITYDECISION']._serialized_start=1170 + _globals['_AUTHORITYDECISION']._serialized_end=1518 + _globals['_OPERATIONCONTEXT']._serialized_start=1521 + _globals['_OPERATIONCONTEXT']._serialized_end=1952 + _globals['_OPERATIONRECORD']._serialized_start=1955 + _globals['_OPERATIONRECORD']._serialized_end=2515 + _globals['_EVALASSIGNMENT']._serialized_start=2518 + _globals['_EVALASSIGNMENT']._serialized_end=2686 + _globals['_NEWWORKITEM']._serialized_start=2689 + _globals['_NEWWORKITEM']._serialized_end=2947 + _globals['_WORKITEM']._serialized_start=2950 + _globals['_WORKITEM']._serialized_end=3454 + _globals['_RESOURCEREF']._serialized_start=3457 + _globals['_RESOURCEREF']._serialized_end=3635 + _globals['_RECORDREF']._serialized_start=3638 + _globals['_RECORDREF']._serialized_end=3772 + _globals['_ACTIONINTENT']._serialized_start=3775 + _globals['_ACTIONINTENT']._serialized_end=4638 + _globals['_NEWARTIFACTVERSION']._serialized_start=4641 + _globals['_NEWARTIFACTVERSION']._serialized_end=4971 + _globals['_ARTIFACT']._serialized_start=4974 + _globals['_ARTIFACT']._serialized_end=5353 + _globals['_ARTIFACTVERSION']._serialized_start=5356 + _globals['_ARTIFACTVERSION']._serialized_end=5786 + _globals['_EVIDENCERECORD']._serialized_start=5789 + _globals['_EVIDENCERECORD']._serialized_end=6091 + _globals['_SCORE']._serialized_start=6094 + _globals['_SCORE']._serialized_end=6610 + _globals['_RECOMMENDATION']._serialized_start=6613 + _globals['_RECOMMENDATION']._serialized_end=7233 + _globals['_DOMAINEVENT']._serialized_start=7236 + _globals['_DOMAINEVENT']._serialized_end=7592 + _globals['_OUTBOXMESSAGE']._serialized_start=7595 + _globals['_OUTBOXMESSAGE']._serialized_end=7888 + _globals['_OPERATIONRECEIPT']._serialized_start=7891 + _globals['_OPERATIONRECEIPT']._serialized_end=8162 + _globals['_USAGELEDGERENTRY']._serialized_start=8165 + _globals['_USAGELEDGERENTRY']._serialized_end=8957 + _globals['_SPENDLEDGERENTRY']._serialized_start=8960 + _globals['_SPENDLEDGERENTRY']._serialized_end=9551 + _globals['_ATTRIBUTIONEDGE']._serialized_start=9554 + _globals['_ATTRIBUTIONEDGE']._serialized_end=10111 + _globals['_GETBOOTSTRAPREQUEST']._serialized_start=10113 + _globals['_GETBOOTSTRAPREQUEST']._serialized_end=10190 + _globals['_GETBOOTSTRAPRESPONSE']._serialized_start=10193 + _globals['_GETBOOTSTRAPRESPONSE']._serialized_end=10340 + _globals['_PLATFORMCAPABILITY']._serialized_start=10343 + _globals['_PLATFORMCAPABILITY']._serialized_end=10549 + _globals['_PLATFORMCAPABILITYFEATURE']._serialized_start=10552 + _globals['_PLATFORMCAPABILITYFEATURE']._serialized_end=10680 + _globals['_CREATEWORKREQUEST']._serialized_start=10683 + _globals['_CREATEWORKREQUEST']._serialized_end=10821 + _globals['_CREATEWORKRESPONSE']._serialized_start=10824 + _globals['_CREATEWORKRESPONSE']._serialized_end=10960 + _globals['_PROPOSEACTIONREQUEST']._serialized_start=10963 + _globals['_PROPOSEACTIONREQUEST']._serialized_end=11318 + _globals['_PROPOSEACTIONRESPONSE']._serialized_start=11321 + _globals['_PROPOSEACTIONRESPONSE']._serialized_end=11481 + _globals['_CREATEARTIFACTREQUEST']._serialized_start=11484 + _globals['_CREATEARTIFACTREQUEST']._serialized_end=11641 + _globals['_CREATEARTIFACTRESPONSE']._serialized_start=11644 + _globals['_CREATEARTIFACTRESPONSE']._serialized_end=11856 + _globals['_RECORDEVIDENCEREQUEST']._serialized_start=11859 + _globals['_RECORDEVIDENCEREQUEST']._serialized_end=12095 + _globals['_RECORDEVIDENCERESPONSE']._serialized_start=12098 + _globals['_RECORDEVIDENCERESPONSE']._serialized_end=12252 + _globals['_RECORDSCOREREQUEST']._serialized_start=12255 + _globals['_RECORDSCOREREQUEST']._serialized_end=12619 + _globals['_RECORDSCORERESPONSE']._serialized_start=12622 + _globals['_RECORDSCORERESPONSE']._serialized_end=12823 + _globals['_APPLYRECOMMENDATIONREQUEST']._serialized_start=12826 + _globals['_APPLYRECOMMENDATIONREQUEST']._serialized_end=13389 + _globals['_APPLYRECOMMENDATIONRESPONSE']._serialized_start=13392 + _globals['_APPLYRECOMMENDATIONRESPONSE']._serialized_end=13635 + _globals['_PLATFORMSERVICE']._serialized_start=18523 + _globals['_PLATFORMSERVICE']._serialized_end=19538 +# @@protoc_insertion_point(module_scope) diff --git a/src/google/api/annotations_pb2.py b/src/google/api/annotations_pb2.py new file mode 100644 index 0000000..4b095d6 --- /dev/null +++ b/src/google/api/annotations_pb2.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: google/api/annotations.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'google/api/annotations.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from google.api import http_pb2 as google_dot_api_dot_http__pb2 +from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1cgoogle/api/annotations.proto\x12\ngoogle.api\x1a\x15google/api/http.proto\x1a google/protobuf/descriptor.proto:K\n\x04http\x12\x1e.google.protobuf.MethodOptions\x18\xb0\xca\xbc\" \x01(\x0b\x32\x14.google.api.HttpRuleR\x04httpBn\n\x0e\x63om.google.apiB\x10\x41nnotationsProtoP\x01ZAgoogle.golang.org/genproto/googleapis/api/annotations;annotations\xa2\x02\x04GAPIb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'google.api.annotations_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n\016com.google.apiB\020AnnotationsProtoP\001ZAgoogle.golang.org/genproto/googleapis/api/annotations;annotations\242\002\004GAPI' +# @@protoc_insertion_point(module_scope) diff --git a/src/google/api/http_pb2.py b/src/google/api/http_pb2.py new file mode 100644 index 0000000..e06b88d --- /dev/null +++ b/src/google/api/http_pb2.py @@ -0,0 +1,41 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: google/api/http.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'google/api/http.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15google/api/http.proto\x12\ngoogle.api\"y\n\x04Http\x12*\n\x05rules\x18\x01 \x03(\x0b\x32\x14.google.api.HttpRuleR\x05rules\x12\x45\n\x1f\x66ully_decode_reserved_expansion\x18\x02 \x01(\x08R\x1c\x66ullyDecodeReservedExpansion\"\xda\x02\n\x08HttpRule\x12\x1a\n\x08selector\x18\x01 \x01(\tR\x08selector\x12\x12\n\x03get\x18\x02 \x01(\tH\x00R\x03get\x12\x12\n\x03put\x18\x03 \x01(\tH\x00R\x03put\x12\x14\n\x04post\x18\x04 \x01(\tH\x00R\x04post\x12\x18\n\x06\x64\x65lete\x18\x05 \x01(\tH\x00R\x06\x64\x65lete\x12\x16\n\x05patch\x18\x06 \x01(\tH\x00R\x05patch\x12\x37\n\x06\x63ustom\x18\x08 \x01(\x0b\x32\x1d.google.api.CustomHttpPatternH\x00R\x06\x63ustom\x12\x12\n\x04\x62ody\x18\x07 \x01(\tR\x04\x62ody\x12#\n\rresponse_body\x18\x0c \x01(\tR\x0cresponseBody\x12\x45\n\x13\x61\x64\x64itional_bindings\x18\x0b \x03(\x0b\x32\x14.google.api.HttpRuleR\x12\x61\x64\x64itionalBindingsB\t\n\x07pattern\";\n\x11\x43ustomHttpPattern\x12\x12\n\x04kind\x18\x01 \x01(\tR\x04kind\x12\x12\n\x04path\x18\x02 \x01(\tR\x04pathBg\n\x0e\x63om.google.apiB\tHttpProtoP\x01ZAgoogle.golang.org/genproto/googleapis/api/annotations;annotations\xa2\x02\x04GAPIb\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'google.api.http_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'\n\016com.google.apiB\tHttpProtoP\001ZAgoogle.golang.org/genproto/googleapis/api/annotations;annotations\242\002\004GAPI' + _globals['_HTTP']._serialized_start=37 + _globals['_HTTP']._serialized_end=158 + _globals['_HTTPRULE']._serialized_start=161 + _globals['_HTTPRULE']._serialized_end=507 + _globals['_CUSTOMHTTPPATTERN']._serialized_start=509 + _globals['_CUSTOMHTTPPATTERN']._serialized_end=568 +# @@protoc_insertion_point(module_scope) diff --git a/src/memory/v1/memory_pb2.py b/src/memory/v1/memory_pb2.py new file mode 100644 index 0000000..0d18183 --- /dev/null +++ b/src/memory/v1/memory_pb2.py @@ -0,0 +1,223 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: memory/v1/memory.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'memory/v1/memory.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 +from common.v1 import authz_pb2 as common_dot_v1_dot_authz__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from evalops_platform.v1 import platform_pb2 as platform_dot_v1_dot_platform__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16memory/v1/memory.proto\x12\tmemory.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x15\x63ommon/v1/authz.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1aplatform/v1/platform.proto\"\x8d\x02\n\x0fSourceReference\x12\x10\n\x03uri\x18\x01 \x01(\tR\x03uri\x12\x14\n\x05title\x18\x02 \x01(\tR\x05title\x12\x12\n\x04type\x18\x03 \x01(\tR\x04type\x12\x44\n\x08metadata\x18\x04 \x03(\x0b\x32(.memory.v1.SourceReference.MetadataEntryR\x08metadata\x12;\n\x0cresource_ref\x18\x05 \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x0bresourceRef\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xcc\x08\n\x06Memory\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12&\n\x05scope\x18\x02 \x01(\x0e\x32\x10.memory.v1.ScopeR\x05scope\x12\x18\n\x07\x63ontent\x18\x03 \x01(\tR\x07\x63ontent\x12\x12\n\x04type\x18\x04 \x01(\tR\x04type\x12\x16\n\x06source\x18\x05 \x01(\tR\x06source\x12\x1e\n\nconfidence\x18\x06 \x01(\x02R\nconfidence\x12\x16\n\x06pinned\x18\x07 \x01(\x08R\x06pinned\x12 \n\tembedding\x18\x08 \x03(\x02\x42\x02\x10\x01R\tembedding\x12!\n\x0cworkspace_id\x18\t \x01(\tR\x0bworkspaceId\x12\x17\n\x07user_id\x18\n \x01(\tR\x06userId\x12\x1d\n\nproject_id\x18\x0b \x01(\tR\tprojectId\x12\x17\n\x07team_id\x18\x0c \x01(\tR\x06teamId\x12\x1e\n\nrepository\x18\r \x01(\tR\nrepository\x12\x14\n\x05\x61gent\x18\x0e \x01(\tR\x05\x61gent\x12\x1b\n\tis_policy\x18\x0f \x01(\x08R\x08isPolicy\x12\x39\n\ncreated_at\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x12\n\x04tags\x18\x12 \x03(\tR\x04tags\x12\x19\n\x08\x61gent_id\x18\x13 \x01(\tR\x07\x61gentId\x12G\n\x11source_references\x18\x14 \x03(\x0b\x32\x1a.memory.v1.SourceReferenceR\x10sourceReferences\x12\x39\n\nexpires_at\x18\x15 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x30\n\x14supersedes_memory_id\x18\x16 \x01(\tR\x12supersedesMemoryId\x12\x35\n\x17superseded_by_memory_id\x18\x17 \x01(\tR\x14supersededByMemoryId\x12\x42\n\rreview_status\x18\x18 \x01(\x0e\x32\x1d.memory.v1.MemoryReviewStatusR\x0creviewStatus\x12\x1f\n\x0bproposed_by\x18\x19 \x01(\tR\nproposedBy\x12\'\n\x0fproposal_reason\x18\x1a \x01(\tR\x0eproposalReason\x12\x1d\n\nentity_ids\x18\x1b \x03(\tR\tentityIds\x12\x1a\n\x08revision\x18\x1c \x01(\x03R\x08revision\x12H\n\x0flifecycle_state\x18\x1d \x01(\x0e\x32\x1f.memory.v1.MemoryLifecycleStateR\x0elifecycleState\"\xf3\x03\n\x14MemoryLifecycleEvent\x12\x19\n\x08\x65vent_id\x18\x01 \x01(\tR\x07\x65ventId\x12\x1b\n\tmemory_id\x18\x02 \x01(\tR\x08memoryId\x12\x1a\n\x08revision\x18\x03 \x01(\x03R\x08revision\x12\x42\n\nevent_type\x18\x04 \x01(\x0e\x32#.memory.v1.MemoryLifecycleEventTypeR\teventType\x12\x36\n\x17previous_content_digest\x18\x05 \x01(\tR\x15previousContentDigest\x12%\n\x0e\x63ontent_digest\x18\x06 \x01(\tR\rcontentDigest\x12\x19\n\x08\x61\x63tor_id\x18\x07 \x01(\tR\x07\x61\x63torId\x12\x1d\n\npolicy_ref\x18\x08 \x01(\tR\tpolicyRef\x12%\n\x0eprovenance_ref\x18\t \x01(\tR\rprovenanceRef\x12\x1d\n\nuse_reason\x18\n \x01(\tR\tuseReason\x12\'\n\x0fidempotency_key\x18\x0b \x01(\tR\x0eidempotencyKey\x12;\n\x0brecorded_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nrecordedAt\"\xc3\x03\n\x12MemoryRelationship\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12(\n\x10source_memory_id\x18\x02 \x01(\tR\x0esourceMemoryId\x12(\n\x10target_memory_id\x18\x03 \x01(\tR\x0etargetMemoryId\x12\x12\n\x04type\x18\x04 \x01(\tR\x04type\x12\x1e\n\nconfidence\x18\x05 \x01(\x02R\nconfidence\x12\x39\n\nvalid_from\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tvalidFrom\x12;\n\x0bvalid_until\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nvalidUntil\x12\x39\n\ncreated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\'\n\x0forganization_id\x18\n \x01(\tR\x0eorganizationId\"\x96\x06\n\x0cStoreRequest\x12\x30\n\x05scope\x18\x01 \x01(\x0e\x32\x10.memory.v1.ScopeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05scope\x12!\n\x07\x63ontent\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07\x63ontent\x12\x1b\n\x04type\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04type\x12\x16\n\x06source\x18\x04 \x01(\tR\x06source\x12\x1e\n\nconfidence\x18\x05 \x01(\x02R\nconfidence\x12\x1d\n\nproject_id\x18\x06 \x01(\tR\tprojectId\x12\x17\n\x07team_id\x18\x07 \x01(\tR\x06teamId\x12\x1e\n\nrepository\x18\x08 \x01(\tR\nrepository\x12\x14\n\x05\x61gent\x18\t \x01(\tR\x05\x61gent\x12\x1b\n\tis_policy\x18\n \x01(\x08R\x08isPolicy\x12\x12\n\x04tags\x18\x0b \x03(\tR\x04tags\x12\x0e\n\x02id\x18\x0c \x01(\tR\x02id\x12\x19\n\x08\x61gent_id\x18\r \x01(\tR\x07\x61gentId\x12\x17\n\x07user_id\x18\x0e \x01(\tR\x06userId\x12\x16\n\x06pinned\x18\x0f \x01(\x08R\x06pinned\x12G\n\x11source_references\x18\x10 \x03(\x0b\x32\x1a.memory.v1.SourceReferenceR\x10sourceReferences\x12\x39\n\nexpires_at\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x30\n\x14supersedes_memory_id\x18\x12 \x01(\tR\x12supersedesMemoryId\x12\x42\n\rreview_status\x18\x13 \x01(\x0e\x32\x1d.memory.v1.MemoryReviewStatusR\x0creviewStatus\x12\x1f\n\x0bproposed_by\x18\x14 \x01(\tR\nproposedBy\x12\'\n\x0fproposal_reason\x18\x15 \x01(\tR\x0eproposalReason\x12\x1d\n\nentity_ids\x18\x16 \x03(\tR\tentityIds\":\n\rStoreResponse\x12)\n\x06memory\x18\x01 \x01(\x0b\x32\x11.memory.v1.MemoryR\x06memory\"~\n\x11StoreBatchRequest\x12=\n\x08memories\x18\x01 \x03(\x0b\x32\x17.memory.v1.StoreRequestB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x08memories\x12*\n\x11\x63ontinue_on_error\x18\x02 \x01(\x08R\x0f\x63ontinueOnError\"K\n\x12StoreBatchResponse\x12\x35\n\x07results\x18\x01 \x03(\x0b\x32\x1b.memory.v1.StoreBatchResultR\x07results\"i\n\x10StoreBatchResult\x12\x14\n\x05index\x18\x01 \x01(\x05R\x05index\x12)\n\x06memory\x18\x02 \x01(\x0b\x32\x11.memory.v1.MemoryR\x06memory\x12\x14\n\x05\x65rror\x18\x03 \x01(\tR\x05\x65rror\"\xcd\x04\n\rRecallRequest\x12\x14\n\x05query\x18\x01 \x01(\tR\x05query\x12\x30\n\x05scope\x18\x02 \x01(\x0e\x32\x10.memory.v1.ScopeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05scope\x12\x1c\n\x05top_k\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x04topK\x12%\n\x0emin_similarity\x18\x04 \x01(\x02R\rminSimilarity\x12\x1d\n\nproject_id\x18\x05 \x01(\tR\tprojectId\x12\x17\n\x07team_id\x18\x06 \x01(\tR\x06teamId\x12\x1e\n\nrepository\x18\x07 \x01(\tR\nrepository\x12\x14\n\x05\x61gent\x18\x08 \x01(\tR\x05\x61gent\x12\x12\n\x04type\x18\t \x01(\tR\x04type\x12\x19\n\x08\x61gent_id\x18\n \x01(\tR\x07\x61gentId\x12\x17\n\x07user_id\x18\x0b \x01(\tR\x06userId\x12\x42\n\rreview_status\x18\x0c \x01(\x0e\x32\x1d.memory.v1.MemoryReviewStatusR\x0creviewStatus\x12\x1d\n\nentity_ids\x18\r \x03(\tR\tentityIds\x12\x36\n\x12relationship_depth\x18\x0e \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x11relationshipDepth\x12-\n\x12relationship_types\x18\x0f \x03(\tR\x11relationshipTypes\x12/\n\x05\x61s_of\x18\x10 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x04\x61sOf\"\xee\x02\n\x16RecallKnowledgeRequest\x12\x1e\n\nconditions\x18\x01 \x03(\tR\nconditions\x12\x30\n\x05scope\x18\x02 \x01(\x0e\x32\x10.memory.v1.ScopeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05scope\x12\x1c\n\x05top_k\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x04topK\x12\x1d\n\nproject_id\x18\x04 \x01(\tR\tprojectId\x12\x17\n\x07team_id\x18\x05 \x01(\tR\x06teamId\x12\x1e\n\nrepository\x18\x06 \x01(\tR\nrepository\x12\x14\n\x05\x61gent\x18\x07 \x01(\tR\x05\x61gent\x12\x19\n\x08\x61gent_id\x18\x08 \x01(\tR\x07\x61gentId\x12\x17\n\x07user_id\x18\t \x01(\tR\x06userId\x12\x42\n\rreview_status\x18\n \x01(\x0e\x32\x1d.memory.v1.MemoryReviewStatusR\x0creviewStatus\"+\n\x10GetMemoryRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\">\n\x11GetMemoryResponse\x12)\n\x06memory\x18\x01 \x01(\x0b\x32\x11.memory.v1.MemoryR\x06memory\"/\n\x14\x45xplainMemoryRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\"P\n\x15\x45xplainMemoryResponse\x12\x37\n\x06\x65vents\x18\x01 \x03(\x0b\x32\x1f.memory.v1.MemoryLifecycleEventR\x06\x65vents\"C\n\x0eRecallResponse\x12\x31\n\x07results\x18\x01 \x03(\x0b\x32\x17.memory.v1.RecallResultR\x07results\"L\n\x17RecallKnowledgeResponse\x12\x31\n\x07results\x18\x01 \x03(\x0b\x32\x17.memory.v1.RecallResultR\x07results\"\xcc\x03\n\x16\x43lusterMemoriesRequest\x12\x30\n\x05scope\x18\x01 \x01(\x0e\x32\x10.memory.v1.ScopeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05scope\x12\x1d\n\nproject_id\x18\x02 \x01(\tR\tprojectId\x12\x17\n\x07team_id\x18\x03 \x01(\tR\x06teamId\x12\x1e\n\nrepository\x18\x04 \x01(\tR\nrepository\x12\x14\n\x05\x61gent\x18\x05 \x01(\tR\x05\x61gent\x12\x12\n\x04type\x18\x06 \x01(\tR\x04type\x12\x19\n\x08\x61gent_id\x18\x07 \x01(\tR\x07\x61gentId\x12\x17\n\x07user_id\x18\x08 \x01(\tR\x06userId\x12\x42\n\rreview_status\x18\t \x01(\x0e\x32\x1d.memory.v1.MemoryReviewStatusR\x0creviewStatus\x12*\n\x0cmax_clusters\x18\n \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0bmaxClusters\x12\x33\n\x11limit_per_cluster\x18\x0b \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0flimitPerCluster\x12%\n\x0emin_similarity\x18\x0c \x01(\x02R\rminSimilarity\"O\n\x17\x43lusterMemoriesResponse\x12\x34\n\x08\x63lusters\x18\x01 \x03(\x0b\x32\x18.memory.v1.MemoryClusterR\x08\x63lusters\"\xa8\x01\n\rMemoryCluster\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x14\n\x05topic\x18\x02 \x01(\tR\x05topic\x12\x31\n\x07results\x18\x03 \x03(\x0b\x32\x17.memory.v1.RecallResultR\x07results\x12\x1e\n\x08\x63\x65ntroid\x18\x04 \x03(\x02\x42\x02\x10\x01R\x08\x63\x65ntroid\x12\x1e\n\nsimilarity\x18\x05 \x01(\x02R\nsimilarity\"\xcc\x01\n\x0cRecallResult\x12)\n\x06memory\x18\x01 \x01(\x0b\x32\x11.memory.v1.MemoryR\x06memory\x12\x1e\n\nsimilarity\x18\x02 \x01(\x02R\nsimilarity\x12%\n\x0egraph_distance\x18\x03 \x01(\x05R\rgraphDistance\x12J\n\x11relationship_path\x18\x04 \x03(\x0b\x32\x1d.memory.v1.MemoryRelationshipR\x10relationshipPath\"\x82\x06\n\rUpdateRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x18\n\x07\x63ontent\x18\x02 \x01(\tR\x07\x63ontent\x12\x12\n\x04type\x18\x03 \x01(\tR\x04type\x12\x1e\n\nconfidence\x18\x04 \x01(\x02R\nconfidence\x12\x12\n\x04tags\x18\x05 \x03(\tR\x04tags\x12\x16\n\x06source\x18\x06 \x01(\tR\x06source\x12\x16\n\x06pinned\x18\x07 \x01(\x08R\x06pinned\x12\x1b\n\tis_policy\x18\x08 \x01(\x08R\x08isPolicy\x12G\n\x11source_references\x18\t \x03(\x0b\x32\x1a.memory.v1.SourceReferenceR\x10sourceReferences\x12\x39\n\nexpires_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x42\n\rreview_status\x18\x0b \x01(\x0e\x32\x1d.memory.v1.MemoryReviewStatusR\x0creviewStatus\x12\x1f\n\x0bproposed_by\x18\x0c \x01(\tR\nproposedBy\x12\'\n\x0fproposal_reason\x18\r \x01(\tR\x0eproposalReason\x12\x1d\n\nentity_ids\x18\x0e \x03(\tR\tentityIds\x12\x39\n\x11\x65xpected_revision\x18\x0f \x01(\x03\x42\x07\xbaH\x04\"\x02(\x01H\x00R\x10\x65xpectedRevision\x88\x01\x01\x12\'\n\x0fidempotency_key\x18\x10 \x01(\tR\x0eidempotencyKey\x12\x19\n\x08\x61\x63tor_id\x18\x11 \x01(\tR\x07\x61\x63torId\x12\x1d\n\npolicy_ref\x18\x12 \x01(\tR\tpolicyRef\x12%\n\x0eprovenance_ref\x18\x13 \x01(\tR\rprovenanceRef\x12\x1d\n\nuse_reason\x18\x14 \x01(\tR\tuseReasonB\x14\n\x12_expected_revision\";\n\x0eUpdateResponse\x12)\n\x06memory\x18\x01 \x01(\x0b\x32\x11.memory.v1.MemoryR\x06memory\"\xa2\x02\n\rDeleteRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x39\n\x11\x65xpected_revision\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x01H\x00R\x10\x65xpectedRevision\x88\x01\x01\x12\'\n\x0fidempotency_key\x18\x03 \x01(\tR\x0eidempotencyKey\x12\x19\n\x08\x61\x63tor_id\x18\x04 \x01(\tR\x07\x61\x63torId\x12\x1d\n\npolicy_ref\x18\x05 \x01(\tR\tpolicyRef\x12%\n\x0eprovenance_ref\x18\x06 \x01(\tR\rprovenanceRef\x12\x1d\n\nuse_reason\x18\x07 \x01(\tR\tuseReasonB\x14\n\x12_expected_revision\"\x10\n\x0e\x44\x65leteResponse\"\xd5\x03\n\x0bListRequest\x12\x30\n\x05scope\x18\x01 \x01(\x0e\x32\x10.memory.v1.ScopeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05scope\x12\x1d\n\nproject_id\x18\x02 \x01(\tR\tprojectId\x12\x17\n\x07team_id\x18\x03 \x01(\tR\x06teamId\x12\x1e\n\nrepository\x18\x04 \x01(\tR\nrepository\x12\x14\n\x05\x61gent\x18\x05 \x01(\tR\x05\x61gent\x12\x1d\n\x05limit\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05limit\x12\x1f\n\x06offset\x18\x07 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\x12\x12\n\x04type\x18\x08 \x01(\tR\x04type\x12\x19\n\x08\x61gent_id\x18\t \x01(\tR\x07\x61gentId\x12\x17\n\x07user_id\x18\n \x01(\tR\x06userId\x12\x42\n\rreview_status\x18\x0b \x01(\x0e\x32\x1d.memory.v1.MemoryReviewStatusR\x0creviewStatus\x12\x1d\n\nentity_ids\x18\x0c \x03(\tR\tentityIds\x12\x16\n\x06source\x18\r \x01(\tR\x06source\x12#\n\rsource_prefix\x18\x0e \x01(\tR\x0csourcePrefix\"\xc0\x02\n\x13LinkMemoriesRequest\x12\x31\n\x10source_memory_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0esourceMemoryId\x12\x31\n\x10target_memory_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0etargetMemoryId\x12\x1b\n\x04type\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04type\x12\x1e\n\nconfidence\x18\x04 \x01(\x02R\nconfidence\x12\x39\n\nvalid_from\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tvalidFrom\x12;\n\x0bvalid_until\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nvalidUntil\x12\x0e\n\x02id\x18\x07 \x01(\tR\x02id\"Y\n\x14LinkMemoriesResponse\x12\x41\n\x0crelationship\x18\x01 \x01(\x0b\x32\x1d.memory.v1.MemoryRelationshipR\x0crelationship\"\x98\x02\n\x1eListMemoryRelationshipsRequest\x12\x1b\n\tmemory_id\x18\x01 \x01(\tR\x08memoryId\x12(\n\x10source_memory_id\x18\x02 \x01(\tR\x0esourceMemoryId\x12(\n\x10target_memory_id\x18\x03 \x01(\tR\x0etargetMemoryId\x12\x14\n\x05types\x18\x04 \x03(\tR\x05types\x12/\n\x05\x61s_of\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x04\x61sOf\x12\x1d\n\x05limit\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05limit\x12\x1f\n\x06offset\x18\x07 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"\x97\x01\n\x1fListMemoryRelationshipsResponse\x12\x43\n\rrelationships\x18\x01 \x03(\x0b\x32\x1d.memory.v1.MemoryRelationshipR\rrelationships\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\":\n\x1f\x44\x65leteMemoryRelationshipRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\"\"\n DeleteMemoryRelationshipResponse\"\xf2\x02\n\x18GetOperatingRulesRequest\x12\x30\n\x05scope\x18\x01 \x01(\x0e\x32\x10.memory.v1.ScopeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05scope\x12\x1d\n\nproject_id\x18\x02 \x01(\tR\tprojectId\x12\x17\n\x07team_id\x18\x03 \x01(\tR\x06teamId\x12\x1e\n\nrepository\x18\x04 \x01(\tR\nrepository\x12\x14\n\x05\x61gent\x18\x05 \x01(\tR\x05\x61gent\x12\x1d\n\x05limit\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05limit\x12\x1f\n\x06offset\x18\x07 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\x12\x19\n\x08\x61gent_id\x18\x08 \x01(\tR\x07\x61gentId\x12\x17\n\x07user_id\x18\t \x01(\tR\x06userId\x12\x42\n\rreview_status\x18\n \x01(\x0e\x32\x1d.memory.v1.MemoryReviewStatusR\x0creviewStatus\"n\n\x0cListResponse\x12-\n\x08memories\x18\x01 \x03(\x0b\x32\x11.memory.v1.MemoryR\x08memories\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"{\n\x19GetOperatingRulesResponse\x12-\n\x08memories\x18\x01 \x03(\x0b\x32\x11.memory.v1.MemoryR\x08memories\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"\x9e\x01\n\x12\x43onsolidateRequest\x12\x30\n\x05scope\x18\x01 \x01(\x0e\x32\x10.memory.v1.ScopeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05scope\x12\x1d\n\nproject_id\x18\x02 \x01(\tR\tprojectId\x12\x12\n\x04type\x18\x03 \x01(\tR\x04type\x12#\n\rsource_prefix\x18\x04 \x01(\tR\x0csourcePrefix\"E\n\x13\x43onsolidateResponse\x12\x16\n\x06merged\x18\x01 \x01(\x05R\x06merged\x12\x16\n\x06pruned\x18\x02 \x01(\x05R\x06pruned*z\n\x05Scope\x12\x15\n\x11SCOPE_UNSPECIFIED\x10\x00\x12\x0e\n\nSCOPE_USER\x10\x01\x12\x0e\n\nSCOPE_TEAM\x10\x02\x12\x16\n\x12SCOPE_ORGANIZATION\x10\x03\x12\x0f\n\x0bSCOPE_AGENT\x10\x04\x12\x11\n\rSCOPE_PROJECT\x10\x05*\xa3\x01\n\x12MemoryReviewStatus\x12$\n MEMORY_REVIEW_STATUS_UNSPECIFIED\x10\x00\x12!\n\x1dMEMORY_REVIEW_STATUS_APPROVED\x10\x01\x12!\n\x1dMEMORY_REVIEW_STATUS_PROPOSED\x10\x02\x12!\n\x1dMEMORY_REVIEW_STATUS_REJECTED\x10\x03*\x87\x01\n\x14MemoryLifecycleState\x12&\n\"MEMORY_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12!\n\x1dMEMORY_LIFECYCLE_STATE_ACTIVE\x10\x01\x12$\n MEMORY_LIFECYCLE_STATE_FORGOTTEN\x10\x02*\xf0\x01\n\x18MemoryLifecycleEventType\x12+\n\'MEMORY_LIFECYCLE_EVENT_TYPE_UNSPECIFIED\x10\x00\x12\'\n#MEMORY_LIFECYCLE_EVENT_TYPE_CREATED\x10\x01\x12)\n%MEMORY_LIFECYCLE_EVENT_TYPE_CORRECTED\x10\x02\x12)\n%MEMORY_LIFECYCLE_EVENT_TYPE_FORGOTTEN\x10\x03\x12(\n$MEMORY_LIFECYCLE_EVENT_TYPE_REVIEWED\x10\x04\x32\xa4\x0c\n\rMemoryService\x12R\n\x05Store\x12\x17.memory.v1.StoreRequest\x1a\x18.memory.v1.StoreResponse\"\x16\xca\xf3\x18\x0ememories:write\xd8\xf3\x18\x02\x12\x61\n\nStoreBatch\x12\x1c.memory.v1.StoreBatchRequest\x1a\x1d.memory.v1.StoreBatchResponse\"\x16\xca\xf3\x18\x0ememories:write\xd8\xf3\x18\x02\x12T\n\x06Recall\x12\x18.memory.v1.RecallRequest\x1a\x19.memory.v1.RecallResponse\"\x15\xca\xf3\x18\rmemories:read\xd8\xf3\x18\x01\x12o\n\x0fRecallKnowledge\x12!.memory.v1.RecallKnowledgeRequest\x1a\".memory.v1.RecallKnowledgeResponse\"\x15\xca\xf3\x18\rmemories:read\xd8\xf3\x18\x01\x12]\n\tGetMemory\x12\x1b.memory.v1.GetMemoryRequest\x1a\x1c.memory.v1.GetMemoryResponse\"\x15\xca\xf3\x18\rmemories:read\xd8\xf3\x18\x01\x12i\n\rExplainMemory\x12\x1f.memory.v1.ExplainMemoryRequest\x1a .memory.v1.ExplainMemoryResponse\"\x15\xca\xf3\x18\rmemories:read\xd8\xf3\x18\x01\x12o\n\x0f\x43lusterMemories\x12!.memory.v1.ClusterMemoriesRequest\x1a\".memory.v1.ClusterMemoriesResponse\"\x15\xca\xf3\x18\rmemories:read\xd8\xf3\x18\x01\x12U\n\x06Update\x12\x18.memory.v1.UpdateRequest\x1a\x19.memory.v1.UpdateResponse\"\x16\xca\xf3\x18\x0ememories:write\xd8\xf3\x18\x02\x12U\n\x06\x44\x65lete\x12\x18.memory.v1.DeleteRequest\x1a\x19.memory.v1.DeleteResponse\"\x16\xca\xf3\x18\x0ememories:write\xd8\xf3\x18\x03\x12N\n\x04List\x12\x16.memory.v1.ListRequest\x1a\x17.memory.v1.ListResponse\"\x15\xca\xf3\x18\rmemories:read\xd8\xf3\x18\x01\x12g\n\x0cLinkMemories\x12\x1e.memory.v1.LinkMemoriesRequest\x1a\x1f.memory.v1.LinkMemoriesResponse\"\x16\xca\xf3\x18\x0ememories:write\xd8\xf3\x18\x02\x12\x87\x01\n\x17ListMemoryRelationships\x12).memory.v1.ListMemoryRelationshipsRequest\x1a*.memory.v1.ListMemoryRelationshipsResponse\"\x15\xca\xf3\x18\rmemories:read\xd8\xf3\x18\x01\x12\x8b\x01\n\x18\x44\x65leteMemoryRelationship\x12*.memory.v1.DeleteMemoryRelationshipRequest\x1a+.memory.v1.DeleteMemoryRelationshipResponse\"\x16\xca\xf3\x18\x0ememories:write\xd8\xf3\x18\x03\x12u\n\x11GetOperatingRules\x12#.memory.v1.GetOperatingRulesRequest\x1a$.memory.v1.GetOperatingRulesResponse\"\x15\xca\xf3\x18\rmemories:read\xd8\xf3\x18\x01\x12\x64\n\x0b\x43onsolidate\x12\x1d.memory.v1.ConsolidateRequest\x1a\x1e.memory.v1.ConsolidateResponse\"\x16\xca\xf3\x18\x0ememories:write\xd8\xf3\x18\x02\x42\x37Z5github.com/evalops/platform/gen/go/memory/v1;memoryv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'memory.v1.memory_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z5github.com/evalops/platform/gen/go/memory/v1;memoryv1' + _globals['_SOURCEREFERENCE_METADATAENTRY']._loaded_options = None + _globals['_SOURCEREFERENCE_METADATAENTRY']._serialized_options = b'8\001' + _globals['_MEMORY'].fields_by_name['embedding']._loaded_options = None + _globals['_MEMORY'].fields_by_name['embedding']._serialized_options = b'\020\001' + _globals['_STOREREQUEST'].fields_by_name['scope']._loaded_options = None + _globals['_STOREREQUEST'].fields_by_name['scope']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_STOREREQUEST'].fields_by_name['content']._loaded_options = None + _globals['_STOREREQUEST'].fields_by_name['content']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STOREREQUEST'].fields_by_name['type']._loaded_options = None + _globals['_STOREREQUEST'].fields_by_name['type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STOREBATCHREQUEST'].fields_by_name['memories']._loaded_options = None + _globals['_STOREBATCHREQUEST'].fields_by_name['memories']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_RECALLREQUEST'].fields_by_name['scope']._loaded_options = None + _globals['_RECALLREQUEST'].fields_by_name['scope']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_RECALLREQUEST'].fields_by_name['top_k']._loaded_options = None + _globals['_RECALLREQUEST'].fields_by_name['top_k']._serialized_options = b'\272H\004\032\002(\000' + _globals['_RECALLREQUEST'].fields_by_name['relationship_depth']._loaded_options = None + _globals['_RECALLREQUEST'].fields_by_name['relationship_depth']._serialized_options = b'\272H\004\032\002(\000' + _globals['_RECALLKNOWLEDGEREQUEST'].fields_by_name['scope']._loaded_options = None + _globals['_RECALLKNOWLEDGEREQUEST'].fields_by_name['scope']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_RECALLKNOWLEDGEREQUEST'].fields_by_name['top_k']._loaded_options = None + _globals['_RECALLKNOWLEDGEREQUEST'].fields_by_name['top_k']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETMEMORYREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_GETMEMORYREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXPLAINMEMORYREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_EXPLAINMEMORYREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CLUSTERMEMORIESREQUEST'].fields_by_name['scope']._loaded_options = None + _globals['_CLUSTERMEMORIESREQUEST'].fields_by_name['scope']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_CLUSTERMEMORIESREQUEST'].fields_by_name['max_clusters']._loaded_options = None + _globals['_CLUSTERMEMORIESREQUEST'].fields_by_name['max_clusters']._serialized_options = b'\272H\004\032\002(\000' + _globals['_CLUSTERMEMORIESREQUEST'].fields_by_name['limit_per_cluster']._loaded_options = None + _globals['_CLUSTERMEMORIESREQUEST'].fields_by_name['limit_per_cluster']._serialized_options = b'\272H\004\032\002(\000' + _globals['_MEMORYCLUSTER'].fields_by_name['centroid']._loaded_options = None + _globals['_MEMORYCLUSTER'].fields_by_name['centroid']._serialized_options = b'\020\001' + _globals['_UPDATEREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_UPDATEREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPDATEREQUEST'].fields_by_name['expected_revision']._loaded_options = None + _globals['_UPDATEREQUEST'].fields_by_name['expected_revision']._serialized_options = b'\272H\004\"\002(\001' + _globals['_DELETEREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_DELETEREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DELETEREQUEST'].fields_by_name['expected_revision']._loaded_options = None + _globals['_DELETEREQUEST'].fields_by_name['expected_revision']._serialized_options = b'\272H\004\"\002(\001' + _globals['_LISTREQUEST'].fields_by_name['scope']._loaded_options = None + _globals['_LISTREQUEST'].fields_by_name['scope']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_LISTREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LINKMEMORIESREQUEST'].fields_by_name['source_memory_id']._loaded_options = None + _globals['_LINKMEMORIESREQUEST'].fields_by_name['source_memory_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LINKMEMORIESREQUEST'].fields_by_name['target_memory_id']._loaded_options = None + _globals['_LINKMEMORIESREQUEST'].fields_by_name['target_memory_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LINKMEMORIESREQUEST'].fields_by_name['type']._loaded_options = None + _globals['_LINKMEMORIESREQUEST'].fields_by_name['type']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTMEMORYRELATIONSHIPSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTMEMORYRELATIONSHIPSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTMEMORYRELATIONSHIPSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTMEMORYRELATIONSHIPSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_DELETEMEMORYRELATIONSHIPREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_DELETEMEMORYRELATIONSHIPREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETOPERATINGRULESREQUEST'].fields_by_name['scope']._loaded_options = None + _globals['_GETOPERATINGRULESREQUEST'].fields_by_name['scope']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_GETOPERATINGRULESREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_GETOPERATINGRULESREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETOPERATINGRULESREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_GETOPERATINGRULESREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_CONSOLIDATEREQUEST'].fields_by_name['scope']._loaded_options = None + _globals['_CONSOLIDATEREQUEST'].fields_by_name['scope']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_MEMORYSERVICE'].methods_by_name['Store']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['Store']._serialized_options = b'\312\363\030\016memories:write\330\363\030\002' + _globals['_MEMORYSERVICE'].methods_by_name['StoreBatch']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['StoreBatch']._serialized_options = b'\312\363\030\016memories:write\330\363\030\002' + _globals['_MEMORYSERVICE'].methods_by_name['Recall']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['Recall']._serialized_options = b'\312\363\030\rmemories:read\330\363\030\001' + _globals['_MEMORYSERVICE'].methods_by_name['RecallKnowledge']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['RecallKnowledge']._serialized_options = b'\312\363\030\rmemories:read\330\363\030\001' + _globals['_MEMORYSERVICE'].methods_by_name['GetMemory']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['GetMemory']._serialized_options = b'\312\363\030\rmemories:read\330\363\030\001' + _globals['_MEMORYSERVICE'].methods_by_name['ExplainMemory']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['ExplainMemory']._serialized_options = b'\312\363\030\rmemories:read\330\363\030\001' + _globals['_MEMORYSERVICE'].methods_by_name['ClusterMemories']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['ClusterMemories']._serialized_options = b'\312\363\030\rmemories:read\330\363\030\001' + _globals['_MEMORYSERVICE'].methods_by_name['Update']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['Update']._serialized_options = b'\312\363\030\016memories:write\330\363\030\002' + _globals['_MEMORYSERVICE'].methods_by_name['Delete']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['Delete']._serialized_options = b'\312\363\030\016memories:write\330\363\030\003' + _globals['_MEMORYSERVICE'].methods_by_name['List']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['List']._serialized_options = b'\312\363\030\rmemories:read\330\363\030\001' + _globals['_MEMORYSERVICE'].methods_by_name['LinkMemories']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['LinkMemories']._serialized_options = b'\312\363\030\016memories:write\330\363\030\002' + _globals['_MEMORYSERVICE'].methods_by_name['ListMemoryRelationships']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['ListMemoryRelationships']._serialized_options = b'\312\363\030\rmemories:read\330\363\030\001' + _globals['_MEMORYSERVICE'].methods_by_name['DeleteMemoryRelationship']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['DeleteMemoryRelationship']._serialized_options = b'\312\363\030\016memories:write\330\363\030\003' + _globals['_MEMORYSERVICE'].methods_by_name['GetOperatingRules']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['GetOperatingRules']._serialized_options = b'\312\363\030\rmemories:read\330\363\030\001' + _globals['_MEMORYSERVICE'].methods_by_name['Consolidate']._loaded_options = None + _globals['_MEMORYSERVICE'].methods_by_name['Consolidate']._serialized_options = b'\312\363\030\016memories:write\330\363\030\002' + _globals['_SCOPE']._serialized_start=9322 + _globals['_SCOPE']._serialized_end=9444 + _globals['_MEMORYREVIEWSTATUS']._serialized_start=9447 + _globals['_MEMORYREVIEWSTATUS']._serialized_end=9610 + _globals['_MEMORYLIFECYCLESTATE']._serialized_start=9613 + _globals['_MEMORYLIFECYCLESTATE']._serialized_end=9748 + _globals['_MEMORYLIFECYCLEEVENTTYPE']._serialized_start=9751 + _globals['_MEMORYLIFECYCLEEVENTTYPE']._serialized_end=9991 + _globals['_SOURCEREFERENCE']._serialized_start=151 + _globals['_SOURCEREFERENCE']._serialized_end=420 + _globals['_SOURCEREFERENCE_METADATAENTRY']._serialized_start=361 + _globals['_SOURCEREFERENCE_METADATAENTRY']._serialized_end=420 + _globals['_MEMORY']._serialized_start=423 + _globals['_MEMORY']._serialized_end=1523 + _globals['_MEMORYLIFECYCLEEVENT']._serialized_start=1526 + _globals['_MEMORYLIFECYCLEEVENT']._serialized_end=2025 + _globals['_MEMORYRELATIONSHIP']._serialized_start=2028 + _globals['_MEMORYRELATIONSHIP']._serialized_end=2479 + _globals['_STOREREQUEST']._serialized_start=2482 + _globals['_STOREREQUEST']._serialized_end=3272 + _globals['_STORERESPONSE']._serialized_start=3274 + _globals['_STORERESPONSE']._serialized_end=3332 + _globals['_STOREBATCHREQUEST']._serialized_start=3334 + _globals['_STOREBATCHREQUEST']._serialized_end=3460 + _globals['_STOREBATCHRESPONSE']._serialized_start=3462 + _globals['_STOREBATCHRESPONSE']._serialized_end=3537 + _globals['_STOREBATCHRESULT']._serialized_start=3539 + _globals['_STOREBATCHRESULT']._serialized_end=3644 + _globals['_RECALLREQUEST']._serialized_start=3647 + _globals['_RECALLREQUEST']._serialized_end=4236 + _globals['_RECALLKNOWLEDGEREQUEST']._serialized_start=4239 + _globals['_RECALLKNOWLEDGEREQUEST']._serialized_end=4605 + _globals['_GETMEMORYREQUEST']._serialized_start=4607 + _globals['_GETMEMORYREQUEST']._serialized_end=4650 + _globals['_GETMEMORYRESPONSE']._serialized_start=4652 + _globals['_GETMEMORYRESPONSE']._serialized_end=4714 + _globals['_EXPLAINMEMORYREQUEST']._serialized_start=4716 + _globals['_EXPLAINMEMORYREQUEST']._serialized_end=4763 + _globals['_EXPLAINMEMORYRESPONSE']._serialized_start=4765 + _globals['_EXPLAINMEMORYRESPONSE']._serialized_end=4845 + _globals['_RECALLRESPONSE']._serialized_start=4847 + _globals['_RECALLRESPONSE']._serialized_end=4914 + _globals['_RECALLKNOWLEDGERESPONSE']._serialized_start=4916 + _globals['_RECALLKNOWLEDGERESPONSE']._serialized_end=4992 + _globals['_CLUSTERMEMORIESREQUEST']._serialized_start=4995 + _globals['_CLUSTERMEMORIESREQUEST']._serialized_end=5455 + _globals['_CLUSTERMEMORIESRESPONSE']._serialized_start=5457 + _globals['_CLUSTERMEMORIESRESPONSE']._serialized_end=5536 + _globals['_MEMORYCLUSTER']._serialized_start=5539 + _globals['_MEMORYCLUSTER']._serialized_end=5707 + _globals['_RECALLRESULT']._serialized_start=5710 + _globals['_RECALLRESULT']._serialized_end=5914 + _globals['_UPDATEREQUEST']._serialized_start=5917 + _globals['_UPDATEREQUEST']._serialized_end=6687 + _globals['_UPDATERESPONSE']._serialized_start=6689 + _globals['_UPDATERESPONSE']._serialized_end=6748 + _globals['_DELETEREQUEST']._serialized_start=6751 + _globals['_DELETEREQUEST']._serialized_end=7041 + _globals['_DELETERESPONSE']._serialized_start=7043 + _globals['_DELETERESPONSE']._serialized_end=7059 + _globals['_LISTREQUEST']._serialized_start=7062 + _globals['_LISTREQUEST']._serialized_end=7531 + _globals['_LINKMEMORIESREQUEST']._serialized_start=7534 + _globals['_LINKMEMORIESREQUEST']._serialized_end=7854 + _globals['_LINKMEMORIESRESPONSE']._serialized_start=7856 + _globals['_LINKMEMORIESRESPONSE']._serialized_end=7945 + _globals['_LISTMEMORYRELATIONSHIPSREQUEST']._serialized_start=7948 + _globals['_LISTMEMORYRELATIONSHIPSREQUEST']._serialized_end=8228 + _globals['_LISTMEMORYRELATIONSHIPSRESPONSE']._serialized_start=8231 + _globals['_LISTMEMORYRELATIONSHIPSRESPONSE']._serialized_end=8382 + _globals['_DELETEMEMORYRELATIONSHIPREQUEST']._serialized_start=8384 + _globals['_DELETEMEMORYRELATIONSHIPREQUEST']._serialized_end=8442 + _globals['_DELETEMEMORYRELATIONSHIPRESPONSE']._serialized_start=8444 + _globals['_DELETEMEMORYRELATIONSHIPRESPONSE']._serialized_end=8478 + _globals['_GETOPERATINGRULESREQUEST']._serialized_start=8481 + _globals['_GETOPERATINGRULESREQUEST']._serialized_end=8851 + _globals['_LISTRESPONSE']._serialized_start=8853 + _globals['_LISTRESPONSE']._serialized_end=8963 + _globals['_GETOPERATINGRULESRESPONSE']._serialized_start=8965 + _globals['_GETOPERATINGRULESRESPONSE']._serialized_end=9088 + _globals['_CONSOLIDATEREQUEST']._serialized_start=9091 + _globals['_CONSOLIDATEREQUEST']._serialized_end=9249 + _globals['_CONSOLIDATERESPONSE']._serialized_start=9251 + _globals['_CONSOLIDATERESPONSE']._serialized_end=9320 + _globals['_MEMORYSERVICE']._serialized_start=9994 + _globals['_MEMORYSERVICE']._serialized_end=11566 +# @@protoc_insertion_point(module_scope) diff --git a/src/meter/v1/meter_pb2.py b/src/meter/v1/meter_pb2.py new file mode 100644 index 0000000..4072c54 --- /dev/null +++ b/src/meter/v1/meter_pb2.py @@ -0,0 +1,598 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: meter/v1/meter.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'meter/v1/meter.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 +from common.v1 import authz_pb2 as common_dot_v1_dot_authz__pb2 +from common.v1 import classification_pb2 as common_dot_v1_dot_classification__pb2 +from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x14meter/v1/meter.proto\x12\x08meter.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x15\x63ommon/v1/authz.proto\x1a\x1e\x63ommon/v1/classification.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xd9\x04\n\x12RecordUsageRequest\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12\x19\n\x08\x61gent_id\x18\x02 \x01(\tR\x07\x61gentId\x12\x18\n\x07surface\x18\x03 \x01(\tR\x07surface\x12\x1d\n\nevent_type\x18\x04 \x01(\tR\teventType\x12\x14\n\x05model\x18\x05 \x01(\tR\x05model\x12\x1a\n\x08provider\x18\x06 \x01(\tR\x08provider\x12*\n\x0cinput_tokens\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0binputTokens\x12,\n\routput_tokens\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0coutputTokens\x12\x33\n\x11\x63\x61\x63he_read_tokens\x18\t \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0f\x63\x61\x63heReadTokens\x12\x35\n\x12\x63\x61\x63he_write_tokens\x18\n \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x10\x63\x61\x63heWriteTokens\x12\x34\n\x0etotal_cost_usd\x18\x0b \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x0ctotalCostUsd\x12\x1d\n\nrequest_id\x18\x0c \x01(\tR\trequestId\x12\x33\n\x08metadata\x18\r \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12+\n\x04\x64\x61ta\x18\x0e \x01(\x0b\x32\x17.google.protobuf.StructR\x04\x64\x61ta\x12\'\n\x0f\x63\x61ller_identity\x18\x0f \x01(\tR\x0e\x63\x61llerIdentity\"D\n\x13RecordUsageResponse\x12-\n\x06record\x18\x01 \x01(\x0b\x32\x15.meter.v1.UsageRecordR\x06record\"[\n\x17RecordUsageBatchRequest\x12@\n\x07records\x18\x01 \x03(\x0b\x32\x1c.meter.v1.RecordUsageRequestB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x07records\"K\n\x18RecordUsageBatchResponse\x12/\n\x07records\x18\x01 \x03(\x0b\x32\x15.meter.v1.UsageRecordR\x07records\"\x9d\x05\n\x06\x42udget\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12\x17\n\x07team_id\x18\x03 \x01(\tR\x06teamId\x12!\n\x0cworkspace_id\x18\x0f \x01(\tR\x0bworkspaceId\x12\x16\n\x06period\x18\x04 \x01(\tR\x06period\x12+\n\tlimit_usd\x18\x05 \x01(\x01\x42\x0e\xbaH\x0b\x12\t!\x00\x00\x00\x00\x00\x00\x00\x00R\x08limitUsd\x12.\n\x13\x61lert_threshold_pct\x18\x06 \x01(\x05R\x11\x61lertThresholdPct\x12\x34\n\x16warning_thresholds_pct\x18\x07 \x03(\x05R\x14warningThresholdsPct\x12\x19\n\x08hard_cap\x18\x08 \x01(\x08R\x07hardCap\x12*\n\x11\x63urrent_spend_usd\x18\t \x01(\x01R\x0f\x63urrentSpendUsd\x12\x37\n\x18last_alert_threshold_pct\x18\n \x01(\x05R\x15lastAlertThresholdPct\x12=\n\x0cperiod_start\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bperiodStart\x12>\n\rnext_reset_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bnextResetAt\x12\x39\n\ncreated_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"\xc3\x06\n\x0c\x42udgetStatus\x12\x1b\n\tbudget_id\x18\x01 \x01(\tR\x08\x62udgetId\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12\x17\n\x07team_id\x18\x03 \x01(\tR\x06teamId\x12!\n\x0cworkspace_id\x18\x13 \x01(\tR\x0bworkspaceId\x12\x16\n\x06period\x18\x04 \x01(\tR\x06period\x12\x1b\n\tlimit_usd\x18\x05 \x01(\x01R\x08limitUsd\x12*\n\x11\x63urrent_spend_usd\x18\x06 \x01(\x01R\x0f\x63urrentSpendUsd\x12#\n\rremaining_usd\x18\x07 \x01(\x01R\x0cremainingUsd\x12\x1b\n\tusage_pct\x18\x08 \x01(\x01R\x08usagePct\x12\'\n\x0f\x61lert_triggered\x18\t \x01(\x08R\x0e\x61lertTriggered\x12\x19\n\x08hard_cap\x18\n \x01(\x08R\x07hardCap\x12(\n\x10hard_cap_reached\x18\x0b \x01(\x08R\x0ehardCapReached\x12\x36\n\x17triggered_threshold_pct\x18\x0c \x01(\x05R\x15triggeredThresholdPct\x12\x34\n\x16warning_thresholds_pct\x18\r \x03(\x05R\x14warningThresholdsPct\x12\x37\n\x18last_alert_threshold_pct\x18\x0e \x01(\x05R\x15lastAlertThresholdPct\x12<\n\x1bspend_velocity_usd_per_hour\x18\x0f \x01(\x01R\x17spendVelocityUsdPerHour\x12<\n\x1a\x65stimated_exhaustion_hours\x18\x10 \x01(\x01R\x18\x65stimatedExhaustionHours\x12=\n\x0cperiod_start\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bperiodStart\x12>\n\rnext_reset_at\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bnextResetAt\"\x9c\x01\n\x19\x41\x64minMutationAuditContext\x12<\n\x17\x64\x65legated_actor_subject\x18\x01 \x01(\tB\x04\x80\xf4\x18\x02R\x15\x64\x65legatedActorSubject\x12\x1c\n\x06reason\x18\x02 \x01(\tB\x04\x80\xf4\x18\x04R\x06reason\x12#\n\nrequest_id\x18\x03 \x01(\tB\x04\x80\xf4\x18\x02R\trequestId\"\xa6\x01\n\x1eManagedInferenceBudgetSnapshot\x12\x16\n\x06period\x18\x01 \x01(\tR\x06period\x12\x1b\n\tlimit_usd\x18\x02 \x01(\x01R\x08limitUsd\x12\x34\n\x16warning_thresholds_pct\x18\x03 \x03(\x05R\x14warningThresholdsPct\x12\x19\n\x08hard_cap\x18\x04 \x01(\x08R\x07hardCap\"\xbf\x05\n\x1aManagedInferenceAdminEvent\x12\x19\n\x08\x65vent_id\x18\x01 \x01(\tR\x07\x65ventId\x12;\n\x0boccurred_at\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12)\n\ractor_subject\x18\x03 \x01(\tB\x04\x80\xf4\x18\x02R\x0c\x61\x63torSubject\x12<\n\x17\x64\x65legated_actor_subject\x18\x04 \x01(\tB\x04\x80\xf4\x18\x02R\x15\x64\x65legatedActorSubject\x12\x16\n\x06\x61\x63tion\x18\x05 \x01(\tR\x06\x61\x63tion\x12\x1f\n\x0bresource_id\x18\x06 \x01(\tR\nresourceId\x12\x1c\n\x06reason\x18\x07 \x01(\tB\x04\x80\xf4\x18\x04R\x06reason\x12\x18\n\x07outcome\x18\x08 \x01(\tR\x07outcome\x12M\n\rbefore_budget\x18\t \x01(\x0b\x32(.meter.v1.ManagedInferenceBudgetSnapshotR\x0c\x62\x65\x66oreBudget\x12K\n\x0c\x61\x66ter_budget\x18\n \x01(\x0b\x32(.meter.v1.ManagedInferenceBudgetSnapshotR\x0b\x61\x66terBudget\x12#\n\rcredit_micros\x18\x0b \x01(\x03R\x0c\x63reditMicros\x12\x1d\n\nprogram_id\x18\x0c \x01(\tR\tprogramId\x12$\n\nprovenance\x18\r \x01(\tB\x04\x80\xf4\x18\x04R\nprovenance\x12\x1d\n\nrequest_id\x18\x0e \x01(\tR\trequestId\x12\'\n\x0forganization_id\x18\x0f \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x10 \x01(\tR\x0bworkspaceId\"\xdb\x01\n&ListManagedInferenceAdminEventsRequest\x12\x34\n\x0forganization_id\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0eorganizationId\x12.\n\x0cworkspace_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0bworkspaceId\x12&\n\tpage_size\x18\x03 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18\x64(\x00R\x08pageSize\x12#\n\npage_token\x18\x04 \x01(\tB\x04\x80\xf4\x18\x02R\tpageToken\"\x8f\x01\n\'ListManagedInferenceAdminEventsResponse\x12<\n\x06\x65vents\x18\x01 \x03(\x0b\x32$.meter.v1.ManagedInferenceAdminEventR\x06\x65vents\x12&\n\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xfe\x02\n\x10SetBudgetRequest\x12H\n\raudit_context\x18\x08 \x01(\x0b\x32#.meter.v1.AdminMutationAuditContextR\x0c\x61uditContext\x12\x1b\n\tbudget_id\x18\x01 \x01(\tR\x08\x62udgetId\x12\x17\n\x07team_id\x18\x02 \x01(\tR\x06teamId\x12\x16\n\x06period\x18\x03 \x01(\tR\x06period\x12+\n\tlimit_usd\x18\x04 \x01(\x01\x42\x0e\xbaH\x0b\x12\t!\x00\x00\x00\x00\x00\x00\x00\x00R\x08limitUsd\x12\x34\n\x16warning_thresholds_pct\x18\x05 \x03(\x05R\x14warningThresholdsPct\x12\x19\n\x08hard_cap\x18\x06 \x01(\x08R\x07hardCap\x12!\n\x0cworkspace_id\x18\x07 \x01(\tR\x0bworkspaceId\x12\x31\n\x0fidempotency_key\x18\t \x01(\tB\x08\xbaH\x05r\x03\x18\x80\x02R\x0eidempotencyKey\"=\n\x11SetBudgetResponse\x12(\n\x06\x62udget\x18\x01 \x01(\x0b\x32\x10.meter.v1.BudgetR\x06\x62udget\"\xfa\x01\n\x12\x43heckBudgetRequest\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12<\n\x12\x65stimated_cost_usd\x18\x02 \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x10\x65stimatedCostUsd\x12!\n\x0cworkspace_id\x18\x03 \x01(\tR\x0bworkspaceId\x12\x1d\n\nrequest_id\x18\x04 \x01(\tR\trequestId\x12\x19\n\x08trace_id\x18\x05 \x01(\tR\x07traceId\x12\x14\n\x05model\x18\x06 \x01(\tR\x05model\x12\x1a\n\x08provider\x18\x07 \x01(\tR\x08provider\"\x88\x01\n\rBudgetWarning\x12\x1b\n\tbudget_id\x18\x01 \x01(\tR\x08\x62udgetId\x12#\n\rthreshold_pct\x18\x02 \x01(\x05R\x0cthresholdPct\x12\x1b\n\tusage_pct\x18\x03 \x01(\x01R\x08usagePct\x12\x18\n\x07message\x18\x04 \x01(\tR\x07message\"\xef\x01\n\x13\x43heckBudgetResponse\x12\x18\n\x07\x61llowed\x18\x01 \x01(\x08R\x07\x61llowed\x12#\n\rdenial_reason\x18\x02 \x01(\tR\x0c\x64\x65nialReason\x12\x30\n\x14remaining_budget_usd\x18\x03 \x01(\x01R\x12remainingBudgetUsd\x12\x32\n\x08statuses\x18\x04 \x03(\x0b\x32\x16.meter.v1.BudgetStatusR\x08statuses\x12\x33\n\x08warnings\x18\x05 \x03(\x0b\x32\x17.meter.v1.BudgetWarningR\x08warnings\"W\n\x19GetBudgetDashboardRequest\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\"\x89\x03\n\x0c\x42udgetDenial\x12\x1b\n\tbudget_id\x18\x01 \x01(\tR\x08\x62udgetId\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x03 \x01(\tR\x0bworkspaceId\x12\x17\n\x07team_id\x18\x04 \x01(\tR\x06teamId\x12\x37\n\tdenied_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x08\x64\x65niedAt\x12\x1d\n\nrequest_id\x18\x06 \x01(\tR\trequestId\x12\x19\n\x08trace_id\x18\x07 \x01(\tR\x07traceId\x12\x1d\n\namount_usd\x18\x08 \x01(\x01R\tamountUsd\x12\x14\n\x05model\x18\t \x01(\tR\x05model\x12\x1a\n\x08provider\x18\n \x01(\tR\x08provider\x12#\n\rdenial_reason\x18\x0b \x01(\tR\x0c\x64\x65nialReason\x12\x0e\n\x02id\x18\x0c \x01(\tR\x02id\"\xde\x04\n\x1aGetBudgetDashboardResponse\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12\x17\n\x07team_id\x18\x02 \x01(\tR\x06teamId\x12=\n\x0cgenerated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0bgeneratedAt\x12#\n\rtotal_budgets\x18\x04 \x01(\x05R\x0ctotalBudgets\x12&\n\x0ftotal_limit_usd\x18\x05 \x01(\x01R\rtotalLimitUsd\x12&\n\x0ftotal_spend_usd\x18\x06 \x01(\x01R\rtotalSpendUsd\x12.\n\x13total_remaining_usd\x18\x07 \x01(\x01R\x11totalRemainingUsd\x12\'\n\x0fwarning_budgets\x18\x08 \x01(\x05R\x0ewarningBudgets\x12(\n\x10hard_cap_budgets\x18\t \x01(\x05R\x0ehardCapBudgets\x12\x37\n\x18hard_cap_reached_budgets\x18\n \x01(\x05R\x15hardCapReachedBudgets\x12\x32\n\x08statuses\x18\x0b \x03(\x0b\x32\x16.meter.v1.BudgetStatusR\x08statuses\x12!\n\x0cworkspace_id\x18\x0c \x01(\tR\x0bworkspaceId\x12\x37\n\x0blast_denial\x18\r \x01(\x0b\x32\x16.meter.v1.BudgetDenialR\nlastDenial\"\x97\x02\n\x18ListBudgetDenialsRequest\x12\x1d\n\x07team_id\x18\x01 \x01(\tB\x04\x80\xf4\x18\x02R\x06teamId\x12\'\n\x0cworkspace_id\x18\x02 \x01(\tB\x04\x80\xf4\x18\x02R\x0bworkspaceId\x12\x39\n\nstart_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12 \n\x05limit\x18\x05 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xc8\x01(\x00R\x05limit\x12\x1f\n\x06offset\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"h\n\x19ListBudgetDenialsResponse\x12\x30\n\x07\x64\x65nials\x18\x01 \x03(\x0b\x32\x16.meter.v1.BudgetDenialR\x07\x64\x65nials\x12\x19\n\x08has_more\x18\x02 \x01(\x08R\x07hasMore\"\xcc\x05\n\x0bUsageRecord\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x38\n\ttimestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\ttimestamp\x12\'\n\x0forganization_id\x18\x03 \x01(\tR\x0eorganizationId\x12\x17\n\x07team_id\x18\x04 \x01(\tR\x06teamId\x12\x19\n\x08\x61gent_id\x18\x05 \x01(\tR\x07\x61gentId\x12\x18\n\x07surface\x18\x06 \x01(\tR\x07surface\x12\x1d\n\nevent_type\x18\x07 \x01(\tR\teventType\x12\x14\n\x05model\x18\x08 \x01(\tR\x05model\x12\x1a\n\x08provider\x18\t \x01(\tR\x08provider\x12!\n\x0cinput_tokens\x18\n \x01(\x03R\x0binputTokens\x12#\n\routput_tokens\x18\x0b \x01(\x03R\x0coutputTokens\x12*\n\x11\x63\x61\x63he_read_tokens\x18\x0c \x01(\x03R\x0f\x63\x61\x63heReadTokens\x12,\n\x12\x63\x61\x63he_write_tokens\x18\r \x01(\x03R\x10\x63\x61\x63heWriteTokens\x12$\n\x0etotal_cost_usd\x18\x0e \x01(\x01R\x0ctotalCostUsd\x12\x1d\n\nrequest_id\x18\x0f \x01(\tR\trequestId\x12+\n\x04\x64\x61ta\x18\x10 \x01(\x0b\x32\x17.google.protobuf.StructR\x04\x64\x61ta\x12\x33\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12\x39\n\ncreated_at\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\'\n\x0f\x63\x61ller_identity\x18\x13 \x01(\tR\x0e\x63\x61llerIdentity\"\xbe\x03\n\x11QueryUsageRequest\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12\x19\n\x08\x61gent_id\x18\x02 \x01(\tR\x07\x61gentId\x12\x1d\n\nevent_type\x18\x03 \x01(\tR\teventType\x12\x14\n\x05model\x18\x04 \x01(\tR\x05model\x12\x1a\n\x08provider\x18\x05 \x01(\tR\x08provider\x12!\n\x0cmetadata_key\x18\x06 \x01(\tR\x0bmetadataKey\x12%\n\x0emetadata_value\x18\x07 \x01(\tR\rmetadataValue\x12\x39\n\nstart_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12\x1e\n\x05limit\x18\n \x01(\x05\x42\x08\xbaH\x05\x1a\x03\x18\xc8\x01R\x05limit\x12\x1f\n\x06offset\x18\x0b \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\x12\'\n\x0f\x63\x61ller_identity\x18\x0c \x01(\tR\x0e\x63\x61llerIdentity\"v\n\x12QueryUsageResponse\x12/\n\x07records\x18\x01 \x03(\x0b\x32\x15.meter.v1.UsageRecordR\x07records\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"\x86\x04\n\x16GetUsageSummaryRequest\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12\x19\n\x08\x61gent_id\x18\x02 \x01(\tR\x07\x61gentId\x12\x33\n\x08group_by\x18\x03 \x01(\x0e\x32\x18.meter.v1.SummaryGroupByR\x07groupBy\x12,\n\x12group_metadata_key\x18\x04 \x01(\tR\x10groupMetadataKey\x12!\n\x0cmetadata_key\x18\x05 \x01(\tR\x0bmetadataKey\x12%\n\x0emetadata_value\x18\x06 \x01(\tR\rmetadataValue\x12\x39\n\nstart_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12\'\n\x0f\x63\x61ller_identity\x18\t \x01(\tR\x0e\x63\x61llerIdentity\x12\x1f\n\x0btime_bucket\x18\n \x01(\tR\ntimeBucket\x12\x1d\n\nevent_type\x18\x0b \x01(\tR\teventType\x12\x14\n\x05model\x18\x0c \x01(\tR\x05model\x12\x1a\n\x08provider\x18\r \x01(\tR\x08provider\"\xc3\x05\n\x0cUsageSummary\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12,\n\x12total_input_tokens\x18\x02 \x01(\x03R\x10totalInputTokens\x12.\n\x13total_output_tokens\x18\x03 \x01(\x03R\x11totalOutputTokens\x12\x35\n\x17total_cache_read_tokens\x18\x04 \x01(\x03R\x14totalCacheReadTokens\x12\x37\n\x18total_cache_write_tokens\x18\x05 \x01(\x03R\x15totalCacheWriteTokens\x12$\n\x0etotal_cost_usd\x18\x06 \x01(\x01R\x0ctotalCostUsd\x12!\n\x0crecord_count\x18\x07 \x01(\x03R\x0brecordCount\x12\x32\n\x15gateway_request_count\x18\x08 \x01(\x03R\x13gatewayRequestCount\x12<\n\x1aunattributed_request_count\x18\t \x01(\x03R\x18unattributedRequestCount\x12\x38\n\x18unattributed_token_count\x18\n \x01(\x03R\x16unattributedTokenCount\x12\x34\n\x16unpriced_request_count\x18\x0b \x01(\x03R\x14unpricedRequestCount\x12\x30\n\x14unpriced_token_count\x18\x0c \x01(\x03R\x12unpricedTokenCount\x12\'\n\x0f\x63ost_incomplete\x18\r \x01(\x08R\x0e\x63ostIncomplete\x12\x34\n\x14known_total_cost_usd\x18\x0e \x01(\x01H\x00R\x11knownTotalCostUsd\x88\x01\x01\x42\x17\n\x15_known_total_cost_usd\"K\n\x17GetUsageSummaryResponse\x12\x30\n\x07\x62uckets\x18\x01 \x03(\x0b\x32\x16.meter.v1.UsageSummaryR\x07\x62uckets\"\x8e\x02\n\x16GetMeterSummaryRequest\x12\x19\n\x08meter_id\x18\x01 \x01(\tR\x07meterId\x12\x17\n\x07team_id\x18\x02 \x01(\tR\x06teamId\x12\x19\n\x08\x61gent_id\x18\x03 \x01(\tR\x07\x61gentId\x12\x33\n\x08group_by\x18\x04 \x01(\x0e\x32\x18.meter.v1.SummaryGroupByR\x07groupBy\x12\x39\n\nstart_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\"_\n\x12MeterSummaryBucket\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\x01R\x05value\x12!\n\x0crecord_count\x18\x03 \x01(\x03R\x0brecordCount\"l\n\x17GetMeterSummaryResponse\x12\x19\n\x08meter_id\x18\x01 \x01(\tR\x07meterId\x12\x36\n\x07\x62uckets\x18\x02 \x03(\x0b\x32\x1c.meter.v1.MeterSummaryBucketR\x07\x62uckets\"\xcd\x02\n\x19GetAdoptionMetricsRequest\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12\x19\n\x08\x61gent_id\x18\x02 \x01(\tR\x07\x61gentId\x12\x1d\n\nevent_type\x18\x03 \x01(\tR\teventType\x12\x14\n\x05model\x18\x04 \x01(\tR\x05model\x12\x1a\n\x08provider\x18\x05 \x01(\tR\x08provider\x12\x18\n\x07surface\x18\x06 \x01(\tR\x07surface\x12\x39\n\nstart_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12\x1f\n\x0btime_bucket\x18\t \x01(\tR\ntimeBucket\"\xcf\x01\n\x12\x41\x64optionTimeBucket\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x39\n\nstart_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12!\n\x0c\x61\x63tive_users\x18\x03 \x01(\x03R\x0b\x61\x63tiveUsers\x12#\n\rrequest_count\x18\x04 \x01(\x03R\x0crequestCount\x12$\n\x0etotal_cost_usd\x18\x05 \x01(\x01R\x0ctotalCostUsd\"\x8c\x01\n\x0e\x41\x64optionCohort\x12\x16\n\x06\x63ohort\x18\x01 \x01(\tR\x06\x63ohort\x12\x14\n\x05users\x18\x02 \x01(\x03R\x05users\x12%\n\x0eretained_users\x18\x03 \x01(\x03R\rretainedUsers\x12%\n\x0eretention_rate\x18\x04 \x01(\x01R\rretentionRate\"A\n\x17\x41\x64optionFrequencyBucket\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05users\x18\x02 \x01(\x03R\x05users\"\x99\x01\n\x17\x41\x64optionDimensionBucket\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12!\n\x0c\x61\x63tive_users\x18\x02 \x01(\x03R\x0b\x61\x63tiveUsers\x12#\n\rrequest_count\x18\x03 \x01(\x03R\x0crequestCount\x12$\n\x0etotal_cost_usd\x18\x04 \x01(\x01R\x0ctotalCostUsd\"\xa3\x06\n\x1aGetAdoptionMetricsResponse\x12,\n\x12\x64\x61ily_active_users\x18\x01 \x01(\x03R\x10\x64\x61ilyActiveUsers\x12.\n\x13weekly_active_users\x18\x02 \x01(\x03R\x11weeklyActiveUsers\x12\x30\n\x14monthly_active_users\x18\x03 \x01(\x03R\x12monthlyActiveUsers\x12,\n\x12total_active_users\x18\x04 \x01(\x03R\x10totalActiveUsers\x12\x1f\n\x0btotal_teams\x18\x05 \x01(\x03R\ntotalTeams\x12#\n\rrequest_count\x18\x06 \x01(\x03R\x0crequestCount\x12$\n\x0etotal_cost_usd\x18\x07 \x01(\x01R\x0ctotalCostUsd\x12Q\n\x16\x61\x63tive_users_by_bucket\x18\x08 \x03(\x0b\x32\x1c.meter.v1.AdoptionTimeBucketR\x13\x61\x63tiveUsersByBucket\x12\x32\n\x07\x63ohorts\x18\t \x03(\x0b\x32\x18.meter.v1.AdoptionCohortR\x07\x63ohorts\x12X\n\x16\x66requency_distribution\x18\n \x03(\x0b\x32!.meter.v1.AdoptionFrequencyBucketR\x15\x66requencyDistribution\x12:\n\x07\x62y_team\x18\x0b \x03(\x0b\x32!.meter.v1.AdoptionDimensionBucketR\x06\x62yTeam\x12<\n\x08\x62y_model\x18\x0c \x03(\x0b\x32!.meter.v1.AdoptionDimensionBucketR\x07\x62yModel\x12\x42\n\x0b\x62y_provider\x18\r \x03(\x0b\x32!.meter.v1.AdoptionDimensionBucketR\nbyProvider\x12<\n\x08\x62y_agent\x18\x0e \x03(\x0b\x32!.meter.v1.AdoptionDimensionBucketR\x07\x62yAgent\"\xea\x02\n\x16ListActiveUsersRequest\x12\x17\n\x07team_id\x18\x01 \x01(\tR\x06teamId\x12\x19\n\x08\x61gent_id\x18\x02 \x01(\tR\x07\x61gentId\x12\x1d\n\nevent_type\x18\x03 \x01(\tR\teventType\x12\x14\n\x05model\x18\x04 \x01(\tR\x05model\x12\x1a\n\x08provider\x18\x05 \x01(\tR\x08provider\x12\x18\n\x07surface\x18\x06 \x01(\tR\x07surface\x12\x39\n\nstart_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12\x1e\n\x05limit\x18\t \x01(\x05\x42\x08\xbaH\x05\x1a\x03\x18\xc8\x01R\x05limit\x12\x1f\n\x06offset\x18\n \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"\xdb\x02\n\nActiveUser\x12\'\n\x0f\x63\x61ller_identity\x18\x01 \x01(\tR\x0e\x63\x61llerIdentity\x12\x17\n\x07team_id\x18\x02 \x01(\tR\x06teamId\x12\x39\n\nfirst_seen\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tfirstSeen\x12\x37\n\tlast_seen\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x08lastSeen\x12#\n\rrequest_count\x18\x05 \x01(\x03R\x0crequestCount\x12$\n\x0etotal_cost_usd\x18\x06 \x01(\x01R\x0ctotalCostUsd\x12\x16\n\x06models\x18\x07 \x03(\tR\x06models\x12\x1c\n\tproviders\x18\x08 \x03(\tR\tproviders\x12\x16\n\x06\x61gents\x18\t \x03(\tR\x06\x61gents\"v\n\x17ListActiveUsersResponse\x12*\n\x05users\x18\x01 \x03(\x0b\x32\x14.meter.v1.ActiveUserR\x05users\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"\xa8\x03\n\x10WideEventMetrics\x12*\n\x0cinput_tokens\x18\x01 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0binputTokens\x12,\n\routput_tokens\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0coutputTokens\x12\x33\n\x11\x63\x61\x63he_read_tokens\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0f\x63\x61\x63heReadTokens\x12\x35\n\x12\x63\x61\x63he_write_tokens\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x10\x63\x61\x63heWriteTokens\x12\x34\n\x0etotal_cost_usd\x18\x05 \x01(\x01\x42\x0e\xbaH\x0b\x12\t)\x00\x00\x00\x00\x00\x00\x00\x00R\x0ctotalCostUsd\x12(\n\x0b\x64uration_ms\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\ndurationMs\x12;\n\x16time_to_first_token_ms\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x12timeToFirstTokenMs\x12\x31\n\x10tool_calls_count\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0etoolCallsCount\"\xd6\x05\n\x13WideEventAttributes\x12\x1f\n\x08\x65vent_id\x18\x01 \x01(\tB\x04\x80\xf4\x18\x02R\x07\x65ventId\x12-\n\x0f\x63onversation_id\x18\x02 \x01(\tB\x04\x80\xf4\x18\x02R\x0e\x63onversationId\x12#\n\nmessage_id\x18\x03 \x01(\tB\x04\x80\xf4\x18\x02R\tmessageId\x12\'\n\x0cworkspace_id\x18\x04 \x01(\tB\x04\x80\xf4\x18\x02R\x0bworkspaceId\x12#\n\nsession_id\x18\x05 \x01(\tB\x04\x80\xf4\x18\x02R\tsessionId\x12/\n\x10\x65xecution_source\x18\x06 \x01(\tB\x04\x80\xf4\x18\x01R\x0f\x65xecutionSource\x12-\n\x0flifecycle_phase\x18\x07 \x01(\tB\x04\x80\xf4\x18\x01R\x0elifecyclePhase\x12\x1e\n\x07outcome\x18\x08 \x01(\tB\x04\x80\xf4\x18\x01R\x07outcome\x12#\n\nerror_type\x18\t \x01(\tB\x04\x80\xf4\x18\x01R\terrorType\x12\x1f\n\x08skill_id\x18\n \x01(\tB\x04\x80\xf4\x18\x02R\x07skillId\x12#\n\nskill_name\x18\x0b \x01(\tB\x04\x80\xf4\x18\x01R\tskillName\x12)\n\rfeedback_type\x18\x0c \x01(\tB\x04\x80\xf4\x18\x01R\x0c\x66\x65\x65\x64\x62\x61\x63kType\x12)\n\rgeneration_id\x18\r \x01(\tB\x04\x80\xf4\x18\x02R\x0cgenerationId\x12+\n\x0erequest_method\x18\x0e \x01(\tB\x04\x80\xf4\x18\x01R\rrequestMethod\x12\'\n\x0crequest_path\x18\x0f \x01(\tB\x04\x80\xf4\x18\x03R\x0brequestPath\x12\x30\n\x11\x63\x61ncelled_by_user\x18\x10 \x01(\x08\x42\x04\x80\xf4\x18\x01R\x0f\x63\x61ncelledByUser\x12\x33\n\x12response_truncated\x18\x11 \x01(\x08\x42\x04\x80\xf4\x18\x01R\x11responseTruncated\"\xde\x03\n\x16IngestWideEventRequest\x12\x38\n\ttimestamp\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\ttimestamp\x12\x1d\n\x07team_id\x18\x02 \x01(\tB\x04\x80\xf4\x18\x02R\x06teamId\x12\x1f\n\x08\x61gent_id\x18\x03 \x01(\tB\x04\x80\xf4\x18\x02R\x07\x61gentId\x12\x1e\n\x07surface\x18\x04 \x01(\tB\x04\x80\xf4\x18\x01R\x07surface\x12#\n\nevent_type\x18\x05 \x01(\tB\x04\x80\xf4\x18\x01R\teventType\x12\x1a\n\x05model\x18\x06 \x01(\tB\x04\x80\xf4\x18\x01R\x05model\x12 \n\x08provider\x18\x07 \x01(\tB\x04\x80\xf4\x18\x01R\x08provider\x12#\n\nrequest_id\x18\x08 \x01(\tB\x04\x80\xf4\x18\x02R\trequestId\x12\x39\n\x08metadata\x18\t \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x80\xf4\x18\x04R\x08metadata\x12\x31\n\x04\x64\x61ta\x18\n \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x80\xf4\x18\x04R\x04\x64\x61ta\x12\x34\n\x07metrics\x18\x0b \x01(\x0b\x32\x1a.meter.v1.WideEventMetricsR\x07metrics\"\xd1\x04\n\tWideEvent\x12\x14\n\x02id\x18\x01 \x01(\tB\x04\x80\xf4\x18\x02R\x02id\x12\x38\n\ttimestamp\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\ttimestamp\x12-\n\x0forganization_id\x18\x03 \x01(\tB\x04\x80\xf4\x18\x02R\x0eorganizationId\x12\x1d\n\x07team_id\x18\x04 \x01(\tB\x04\x80\xf4\x18\x02R\x06teamId\x12\x1f\n\x08\x61gent_id\x18\x05 \x01(\tB\x04\x80\xf4\x18\x02R\x07\x61gentId\x12\x1e\n\x07surface\x18\x06 \x01(\tB\x04\x80\xf4\x18\x01R\x07surface\x12#\n\nevent_type\x18\x07 \x01(\tB\x04\x80\xf4\x18\x01R\teventType\x12\x1a\n\x05model\x18\x08 \x01(\tB\x04\x80\xf4\x18\x01R\x05model\x12 \n\x08provider\x18\t \x01(\tB\x04\x80\xf4\x18\x01R\x08provider\x12#\n\nrequest_id\x18\n \x01(\tB\x04\x80\xf4\x18\x02R\trequestId\x12\x39\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x80\xf4\x18\x04R\x08metadata\x12\x31\n\x04\x64\x61ta\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructB\x04\x80\xf4\x18\x04R\x04\x64\x61ta\x12\x34\n\x07metrics\x18\r \x01(\x0b\x32\x1a.meter.v1.WideEventMetricsR\x07metrics\x12\x39\n\ncreated_at\x18\x0e \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\"\x9a\x01\n\x17IngestWideEventResponse\x12)\n\x05\x65vent\x18\x01 \x01(\x0b\x32\x13.meter.v1.WideEventR\x05\x65vent\x12\'\n\x0f\x62udget_exceeded\x18\x02 \x01(\x08R\x0e\x62udgetExceeded\x12+\n\x0e\x62udget_message\x18\x03 \x01(\tB\x04\x80\xf4\x18\x04R\rbudgetMessage\"c\n\x1bIngestWideEventBatchRequest\x12\x44\n\x06\x65vents\x18\x01 \x03(\x0b\x32 .meter.v1.IngestWideEventRequestB\n\xbaH\x07\x92\x01\x04\x08\x01\x10\x64R\x06\x65vents\"\xb8\x01\n\x1cIngestWideEventBatchResponse\x12\x42\n\x07results\x18\x01 \x03(\x0b\x32(.meter.v1.IngestWideEventBatchItemResultR\x07results\x12\'\n\x0f\x62udget_exceeded\x18\x02 \x01(\x08R\x0e\x62udgetExceeded\x12+\n\x0e\x62udget_message\x18\x03 \x01(\tB\x04\x80\xf4\x18\x04R\rbudgetMessage\"\xe1\x01\n\x1eIngestWideEventBatchItemResult\x12(\n\x0binput_index\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\ninputIndex\x12\x1c\n\tsucceeded\x18\x02 \x01(\x08R\tsucceeded\x12\x1f\n\x08\x65vent_id\x18\x03 \x01(\tB\x04\x80\xf4\x18\x02R\x07\x65ventId\x12\'\n\x0c\x66\x61ilure_code\x18\x04 \x01(\tB\x04\x80\xf4\x18\x01R\x0b\x66\x61ilureCode\x12-\n\x0f\x66\x61ilure_message\x18\x05 \x01(\tB\x04\x80\xf4\x18\x04R\x0e\x66\x61ilureMessage\"\xd1\x03\n\x16QueryWideEventsRequest\x12\x1d\n\x07team_id\x18\x01 \x01(\tB\x04\x80\xf4\x18\x02R\x06teamId\x12\x1f\n\x08\x61gent_id\x18\x02 \x01(\tB\x04\x80\xf4\x18\x02R\x07\x61gentId\x12\x1e\n\x07surface\x18\x03 \x01(\tB\x04\x80\xf4\x18\x01R\x07surface\x12#\n\nevent_type\x18\x04 \x01(\tB\x04\x80\xf4\x18\x01R\teventType\x12\x1a\n\x05model\x18\x05 \x01(\tB\x04\x80\xf4\x18\x01R\x05model\x12 \n\x08provider\x18\x06 \x01(\tB\x04\x80\xf4\x18\x01R\x08provider\x12\'\n\x0cmetadata_key\x18\x07 \x01(\tB\x04\x80\xf4\x18\x01R\x0bmetadataKey\x12+\n\x0emetadata_value\x18\x08 \x01(\tB\x04\x80\xf4\x18\x04R\rmetadataValue\x12\x39\n\nstart_time\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12\x14\n\x05limit\x18\x0b \x01(\x05R\x05limit\x12\x16\n\x06offset\x18\x0c \x01(\x05R\x06offset\"w\n\x17QueryWideEventsResponse\x12+\n\x06\x65vents\x18\x01 \x03(\x0b\x32\x13.meter.v1.WideEventR\x06\x65vents\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"\xba\x03\n\x18GetEventDashboardRequest\x12\x1d\n\x07team_id\x18\x01 \x01(\tB\x04\x80\xf4\x18\x02R\x06teamId\x12\x1f\n\x08\x61gent_id\x18\x02 \x01(\tB\x04\x80\xf4\x18\x02R\x07\x61gentId\x12\x1e\n\x07surface\x18\x03 \x01(\tB\x04\x80\xf4\x18\x01R\x07surface\x12#\n\nevent_type\x18\x04 \x01(\tB\x04\x80\xf4\x18\x01R\teventType\x12\x1a\n\x05model\x18\x05 \x01(\tB\x04\x80\xf4\x18\x01R\x05model\x12 \n\x08provider\x18\x06 \x01(\tB\x04\x80\xf4\x18\x01R\x08provider\x12\'\n\x0cmetadata_key\x18\x07 \x01(\tB\x04\x80\xf4\x18\x01R\x0bmetadataKey\x12+\n\x0emetadata_value\x18\x08 \x01(\tB\x04\x80\xf4\x18\x04R\rmetadataValue\x12\x39\n\nstart_time\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12\x13\n\x05top_n\x18\x0b \x01(\x05R\x04topN\"j\n\x14\x45ventDashboardBucket\x12\x16\n\x03key\x18\x01 \x01(\tB\x04\x80\xf4\x18\x01R\x03key\x12\x14\n\x05\x63ount\x18\x02 \x01(\x03R\x05\x63ount\x12$\n\x0etotal_cost_usd\x18\x03 \x01(\x01R\x0ctotalCostUsd\"\xb1\x04\n\x19GetEventDashboardResponse\x12!\n\x0ctotal_events\x18\x01 \x01(\x03R\x0btotalEvents\x12,\n\x12total_input_tokens\x18\x02 \x01(\x03R\x10totalInputTokens\x12.\n\x13total_output_tokens\x18\x03 \x01(\x03R\x11totalOutputTokens\x12\x35\n\x17total_cache_read_tokens\x18\x04 \x01(\x03R\x14totalCacheReadTokens\x12\x37\n\x18total_cache_write_tokens\x18\x05 \x01(\x03R\x15totalCacheWriteTokens\x12$\n\x0etotal_cost_usd\x18\x06 \x01(\x01R\x0ctotalCostUsd\x12\x42\n\rby_event_type\x18\x07 \x03(\x0b\x32\x1e.meter.v1.EventDashboardBucketR\x0b\x62yEventType\x12=\n\nby_surface\x18\x08 \x03(\x0b\x32\x1e.meter.v1.EventDashboardBucketR\tbySurface\x12\x39\n\x08\x62y_model\x18\t \x03(\x0b\x32\x1e.meter.v1.EventDashboardBucketR\x07\x62yModel\x12?\n\x0b\x62y_provider\x18\n \x03(\x0b\x32\x1e.meter.v1.EventDashboardBucketR\nbyProvider\"\x80\x05\n\x14PrepaidCreditBalance\x12\x36\n\x17\x64\x65velopment_credit_only\x18\x0c \x01(\x08R\x15\x64\x65velopmentCreditOnly\x12.\n\x0egranted_micros\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\rgrantedMicros\x12\x39\n\x14\x65xpired_grant_micros\x18\t \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x12\x65xpiredGrantMicros\x12\x35\n\x12grant_spent_micros\x18\n \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x10grantSpentMicros\x12;\n\x15grant_reserved_micros\x18\x0b \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x13grantReservedMicros\x12/\n\x13\x61\x64mission_suspended\x18\x07 \x01(\x08R\x12\x61\x64missionSuspended\x12\x30\n\x0freversed_micros\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0ereversedMicros\x12(\n\x0b\x64\x65\x62t_micros\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\ndebtMicros\x12\x32\n\x10purchased_micros\x18\x01 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0fpurchasedMicros\x12*\n\x0cspent_micros\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0bspentMicros\x12\x30\n\x0freserved_micros\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0ereservedMicros\x12\x32\n\x10\x61vailable_micros\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0f\x61vailableMicros\"u\n\x1eGetPrepaidCreditBalanceRequest\x12#\n\x06run_id\x18\x02 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x02\x80\xf4\x18\x02R\x05runId\x12.\n\x0cworkspace_id\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0bworkspaceId\"\x8c\x03\n\x1fGetPrepaidCreditBalanceResponse\x12\x38\n\x07\x62\x61lance\x18\x01 \x01(\x0b\x32\x1e.meter.v1.PrepaidCreditBalanceR\x07\x62\x61lance\x12M\n\x0ereconciliation\x18\x02 \x01(\x0b\x32%.meter.v1.PrepaidCreditReconciliationR\x0ereconciliation\x12<\n\x0brun_balance\x18\x03 \x01(\x0b\x32\x1b.meter.v1.PrepaidRunBalanceR\nrunBalance\x12\x66\n\x1a\x64\x65velopment_program_policy\x18\x04 \x01(\x0b\x32(.meter.v1.DevelopmentCreditProgramPolicyR\x18\x64\x65velopmentProgramPolicy\x12:\n\x16\x64\x65velopment_program_id\x18\x05 \x01(\tB\x04\x80\xf4\x18\x02R\x14\x64\x65velopmentProgramId\"\xb3\x02\n\x11PrepaidRunBalance\x12\x15\n\x06run_id\x18\x01 \x01(\tR\x05runId\x12.\n\x13settled_cost_micros\x18\x02 \x01(\x03R\x11settledCostMicros\x12\'\n\x0freserved_micros\x18\x03 \x01(\x03R\x0ereservedMicros\x12\x32\n\x15pending_request_count\x18\x04 \x01(\x03R\x13pendingRequestCount\x12\x32\n\x15settled_request_count\x18\x05 \x01(\x03R\x13settledRequestCount\x12\x46\n\x11oldest_pending_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0foldestPendingAt\"\xbd\x05\n\x1bPrepaidCreditReconciliation\x12:\n\x19granted_difference_micros\x18\n \x01(\x03R\x17grantedDifferenceMicros\x12L\n\x1einvalid_grant_allocation_count\x18\x0b \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x1binvalidGrantAllocationCount\x12\x1a\n\x08\x62\x61lanced\x18\x01 \x01(\x08R\x08\x62\x61lanced\x12>\n\x1bpurchased_difference_micros\x18\x02 \x01(\x03R\x19purchasedDifferenceMicros\x12<\n\x1areversed_difference_micros\x18\x03 \x01(\x03R\x18reversedDifferenceMicros\x12\x36\n\x17spent_difference_micros\x18\x04 \x01(\x03R\x15spentDifferenceMicros\x12<\n\x1areserved_difference_micros\x18\x05 \x01(\x03R\x18reservedDifferenceMicros\x12\x38\n\x18\x64ispute_count_difference\x18\x06 \x01(\x03R\x16\x64isputeCountDifference\x12\x43\n\x19pending_reservation_count\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x17pendingReservationCount\x12\x46\n\x11oldest_pending_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0foldestPendingAt\x12=\n\x16unfunded_payment_count\x18\t \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x14unfundedPaymentCount\"\xb8\x02\n\x1e\x44\x65velopmentCreditProgramPolicy\x12\x31\n\x10max_grant_micros\x18\x01 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0emaxGrantMicros\x12;\n\x15program_budget_micros\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x13programBudgetMicros\x12\x37\n\x13\x64\x61ily_budget_micros\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x11\x64\x61ilyBudgetMicros\x12\x39\n\x14max_lifetime_seconds\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x12maxLifetimeSeconds\x12\x32\n\x12\x61lert_recipient_id\x18\x05 \x01(\tB\x04\x80\xf4\x18\x02R\x10\x61lertRecipientId\"\xf4\x03\n\x1eGrantDevelopmentCreditsRequest\x12\x34\n\x0forganization_id\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0eorganizationId\x12.\n\x0cworkspace_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0bworkspaceId\x12*\n\nprogram_id\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tprogramId\x12&\n\x08grant_id\x18\x04 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x07grantId\x12,\n\rcredit_micros\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0c\x63reditMicros\x12\x41\n\nexpires_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\texpiresAt\x12#\n\x06reason\x18\x07 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x04R\x06reason\x12+\n\nprovenance\x18\x08 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x04R\nprovenance\x12U\n\x11\x65nrollment_policy\x18\t \x01(\x0b\x32(.meter.v1.DevelopmentCreditProgramPolicyR\x10\x65nrollmentPolicy\"\xad\x04\n\x16\x44\x65velopmentCreditGrant\x12-\n\x0forganization_id\x18\x01 \x01(\tB\x04\x80\xf4\x18\x02R\x0eorganizationId\x12\'\n\x0cworkspace_id\x18\x02 \x01(\tB\x04\x80\xf4\x18\x02R\x0bworkspaceId\x12#\n\nprogram_id\x18\x03 \x01(\tB\x04\x80\xf4\x18\x02R\tprogramId\x12\x1f\n\x08grant_id\x18\x04 \x01(\tB\x04\x80\xf4\x18\x02R\x07grantId\x12#\n\rcredit_micros\x18\x05 \x01(\x03R\x0c\x63reditMicros\x12\x39\n\nexpires_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x1c\n\x06reason\x18\x07 \x01(\tB\x04\x80\xf4\x18\x04R\x06reason\x12$\n\nprovenance\x18\x08 \x01(\tB\x04\x80\xf4\x18\x04R\nprovenance\x12)\n\ractor_subject\x18\t \x01(\tB\x04\x80\xf4\x18\x02R\x0c\x61\x63torSubject\x12\x39\n\ncreated_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x37\n\x13\x64\x61ily_budget_micros\x18\x0b \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x11\x64\x61ilyBudgetMicros\x12\x32\n\x12\x61lert_recipient_id\x18\x0c \x01(\tB\x04\x80\xf4\x18\x02R\x10\x61lertRecipientId\"Y\n\x1fGrantDevelopmentCreditsResponse\x12\x36\n\x05grant\x18\x01 \x01(\x0b\x32 .meter.v1.DevelopmentCreditGrantR\x05grant\"\xef\x01\n\x19\x46undPrepaidCreditsRequest\x12.\n\x0cworkspace_id\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0bworkspaceId\x12\x37\n\x11payment_intent_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0fpaymentIntentId\x12;\n\x13\x63heckout_session_id\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x11\x63heckoutSessionId\x12,\n\rcredit_micros\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0c\x63reditMicros\"V\n\x1a\x46undPrepaidCreditsResponse\x12\x38\n\x07\x62\x61lance\x18\x01 \x01(\x0b\x32\x1e.meter.v1.PrepaidCreditBalanceR\x07\x62\x61lance\"\xdc\x01\n\x1cReservePrepaidCreditsRequest\x12.\n\x0cworkspace_id\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0bworkspaceId\x12\x39\n\x12gateway_request_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x10gatewayRequestId\x12,\n\ramount_micros\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0c\x61mountMicros\x12#\n\x06run_id\x18\x04 \x01(\tB\x0c\xbaH\x05r\x03\x18\x80\x02\x80\xf4\x18\x02R\x05runId\"\x85\x01\n\x1dReservePrepaidCreditsResponse\x12\x30\n\x0freserved_micros\x18\x01 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0ereservedMicros\x12\x18\n\x07settled\x18\x02 \x01(\x08R\x07settled\x12\x18\n\x07\x63reated\x18\x03 \x01(\x08R\x07\x63reated\"\xbf\x01\n\x1bSettlePrepaidCreditsRequest\x12.\n\x0cworkspace_id\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0bworkspaceId\x12\x39\n\x12gateway_request_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x10gatewayRequestId\x12\x35\n\x12\x61\x63tual_cost_micros\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x10\x61\x63tualCostMicros\"U\n\x1cSettlePrepaidCreditsResponse\x12\x35\n\x12\x61\x63tual_cost_micros\x18\x01 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x10\x61\x63tualCostMicros\"\xf0\x02\n\x1cReversePrepaidCreditsRequest\x12=\n\x16original_credit_micros\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x14originalCreditMicros\x12;\n\x13\x63heckout_session_id\x18\x06 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x11\x63heckoutSessionId\x12.\n\x0cworkspace_id\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0bworkspaceId\x12\x37\n\x11payment_intent_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0fpaymentIntentId\x12,\n\x0breversal_id\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\nreversalId\x12=\n\x16reversed_credit_micros\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x14reversedCreditMicros\"Y\n\x1dReversePrepaidCreditsResponse\x12\x38\n\x07\x62\x61lance\x18\x01 \x01(\x0b\x32\x1e.meter.v1.PrepaidCreditBalanceR\x07\x62\x61lance\"\xaf\x03\n!ApplyPrepaidPaymentDisputeRequest\x12.\n\x0cworkspace_id\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0bworkspaceId\x12\x37\n\x11payment_intent_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0fpaymentIntentId\x12;\n\x13\x63heckout_session_id\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x11\x63heckoutSessionId\x12=\n\x16original_credit_micros\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x14originalCreditMicros\x12*\n\ndispute_id\x18\x05 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\tdisputeId\x12:\n\x05state\x18\x06 \x01(\x0e\x32$.meter.v1.PrepaidPaymentDisputeStateR\x05state\x12=\n\x16reversed_credit_micros\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x14reversedCreditMicros\"^\n\"ApplyPrepaidPaymentDisputeResponse\x12\x38\n\x07\x62\x61lance\x18\x01 \x01(\x0b\x32\x1e.meter.v1.PrepaidCreditBalanceR\x07\x62\x61lance\"\xd6\x02\n\x19\x41uthorizeWorkSpendRequest\x12.\n\x0cworkspace_id\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0bworkspaceId\x12.\n\x0c\x61uthority_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0b\x61uthorityId\x12$\n\x07work_id\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x06workId\x12\x33\n\x11max_charge_micros\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0fmaxChargeMicros\x12\x39\n\x12price_book_version\x18\x05 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x01R\x10priceBookVersion\x12\x43\n\x0bvalid_until\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xbaH\x03\xc8\x01\x01R\nvalidUntil\"E\n\x1a\x41uthorizeWorkSpendResponse\x12\'\n\x0c\x61uthority_id\x18\x01 \x01(\tB\x04\x80\xf4\x18\x02R\x0b\x61uthorityId\"\xe9\x02\n\x19ReserveWorkCreditsRequest\x12.\n\x0cworkspace_id\x18\x01 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0bworkspaceId\x12.\n\x0c\x61uthority_id\x18\x02 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x0b\x61uthorityId\x12$\n\x07work_id\x18\x03 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x06workId\x12\x39\n\x12price_book_version\x18\x04 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x01R\x10priceBookVersion\x12\x39\n\x12gateway_request_id\x18\x05 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x10gatewayRequestId\x12\"\n\x06run_id\x18\x06 \x01(\tB\x0b\xbaH\x04r\x02\x10\x01\x80\xf4\x18\x02R\x05runId\x12,\n\ramount_micros\x18\x07 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\x0c\x61mountMicros\"\x82\x01\n\x1aReserveWorkCreditsResponse\x12\x30\n\x0freserved_micros\x18\x01 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0ereservedMicros\x12\x18\n\x07settled\x18\x02 \x01(\x08R\x07settled\x12\x18\n\x07\x63reated\x18\x03 \x01(\x08R\x07\x63reated*\x9e\x02\n\x0eSummaryGroupBy\x12 \n\x1cSUMMARY_GROUP_BY_UNSPECIFIED\x10\x00\x12\x1a\n\x16SUMMARY_GROUP_BY_MODEL\x10\x01\x12\x1d\n\x19SUMMARY_GROUP_BY_PROVIDER\x10\x02\x12\x19\n\x15SUMMARY_GROUP_BY_TEAM\x10\x03\x12\x1a\n\x16SUMMARY_GROUP_BY_AGENT\x10\x04\x12\x1c\n\x18SUMMARY_GROUP_BY_SURFACE\x10\x05\x12\x1d\n\x19SUMMARY_GROUP_BY_METADATA\x10\x06\x12\x19\n\x15SUMMARY_GROUP_BY_USER\x10\x07\x12 \n\x1cSUMMARY_GROUP_BY_TIME_BUCKET\x10\x08*\xc2\x01\n\x1aPrepaidPaymentDisputeState\x12-\n)PREPAID_PAYMENT_DISPUTE_STATE_UNSPECIFIED\x10\x00\x12&\n\"PREPAID_PAYMENT_DISPUTE_STATE_OPEN\x10\x01\x12%\n!PREPAID_PAYMENT_DISPUTE_STATE_WON\x10\x02\x12&\n\"PREPAID_PAYMENT_DISPUTE_STATE_LOST\x10\x03\x32\xe9\x18\n\x0cMeterService\x12\x92\x01\n\x17GetPrepaidCreditBalance\x12(.meter.v1.GetPrepaidCreditBalanceRequest\x1a).meter.v1.GetPrepaidCreditBalanceResponse\"\"\xca\xf3\x18\nmeter:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12\xa7\x01\n\x17GrantDevelopmentCredits\x12(.meter.v1.GrantDevelopmentCreditsRequest\x1a).meter.v1.GrantDevelopmentCreditsResponse\"7\xca\xf3\x18\x1fmeter:credits:grant-development\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\x12\x8b\x01\n\x12\x46undPrepaidCredits\x12#.meter.v1.FundPrepaidCreditsRequest\x1a$.meter.v1.FundPrepaidCreditsResponse\"*\xca\xf3\x18\x12meter:credits:fund\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\x12\x97\x01\n\x15ReversePrepaidCredits\x12&.meter.v1.ReversePrepaidCreditsRequest\x1a\'.meter.v1.ReversePrepaidCreditsResponse\"-\xca\xf3\x18\x15meter:credits:reverse\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\x12\xa6\x01\n\x1a\x41pplyPrepaidPaymentDispute\x12+.meter.v1.ApplyPrepaidPaymentDisputeRequest\x1a,.meter.v1.ApplyPrepaidPaymentDisputeResponse\"-\xca\xf3\x18\x15meter:credits:reverse\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\x12\x97\x01\n\x15ReservePrepaidCredits\x12&.meter.v1.ReservePrepaidCreditsRequest\x1a\'.meter.v1.ReservePrepaidCreditsResponse\"-\xca\xf3\x18\x15meter:credits:reserve\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\x12\x8a\x01\n\x12\x41uthorizeWorkSpend\x12#.meter.v1.AuthorizeWorkSpendRequest\x1a$.meter.v1.AuthorizeWorkSpendResponse\")\xca\xf3\x18\x11\x62illing:authorize\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\x12\x8e\x01\n\x12ReserveWorkCredits\x12#.meter.v1.ReserveWorkCreditsRequest\x1a$.meter.v1.ReserveWorkCreditsResponse\"-\xca\xf3\x18\x15meter:credits:reserve\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\x12\x93\x01\n\x14SettlePrepaidCredits\x12%.meter.v1.SettlePrepaidCreditsRequest\x1a&.meter.v1.SettlePrepaidCreditsResponse\",\xca\xf3\x18\x14meter:credits:settle\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\x12_\n\x0bRecordUsage\x12\x1c.meter.v1.RecordUsageRequest\x1a\x1d.meter.v1.RecordUsageResponse\"\x13\xca\xf3\x18\x0bmeter:write\xd8\xf3\x18\x02\x12n\n\x10RecordUsageBatch\x12!.meter.v1.RecordUsageBatchRequest\x1a\".meter.v1.RecordUsageBatchResponse\"\x13\xca\xf3\x18\x0bmeter:write\xd8\xf3\x18\x02\x12\xaa\x01\n\x1fListManagedInferenceAdminEvents\x12\x30.meter.v1.ListManagedInferenceAdminEventsRequest\x1a\x31.meter.v1.ListManagedInferenceAdminEventsResponse\"\"\xca\xf3\x18\nmeter:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\x12Y\n\tSetBudget\x12\x1a.meter.v1.SetBudgetRequest\x1a\x1b.meter.v1.SetBudgetResponse\"\x13\xca\xf3\x18\x0bmeter:write\xd8\xf3\x18\x03\x12^\n\x0b\x43heckBudget\x12\x1c.meter.v1.CheckBudgetRequest\x1a\x1d.meter.v1.CheckBudgetResponse\"\x12\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\x12s\n\x12GetBudgetDashboard\x12#.meter.v1.GetBudgetDashboardRequest\x1a$.meter.v1.GetBudgetDashboardResponse\"\x12\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\x12p\n\x11ListBudgetDenials\x12\".meter.v1.ListBudgetDenialsRequest\x1a#.meter.v1.ListBudgetDenialsResponse\"\x12\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\x12[\n\nQueryUsage\x12\x1b.meter.v1.QueryUsageRequest\x1a\x1c.meter.v1.QueryUsageResponse\"\x12\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\x12j\n\x0fGetUsageSummary\x12 .meter.v1.GetUsageSummaryRequest\x1a!.meter.v1.GetUsageSummaryResponse\"\x12\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\x12j\n\x0fGetMeterSummary\x12 .meter.v1.GetMeterSummaryRequest\x1a!.meter.v1.GetMeterSummaryResponse\"\x12\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\x12s\n\x12GetAdoptionMetrics\x12#.meter.v1.GetAdoptionMetricsRequest\x1a$.meter.v1.GetAdoptionMetricsResponse\"\x12\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\x12j\n\x0fListActiveUsers\x12 .meter.v1.ListActiveUsersRequest\x1a!.meter.v1.ListActiveUsersResponse\"\x12\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\x12k\n\x0fIngestWideEvent\x12 .meter.v1.IngestWideEventRequest\x1a!.meter.v1.IngestWideEventResponse\"\x13\xca\xf3\x18\x0bmeter:write\xd8\xf3\x18\x02\x12z\n\x14IngestWideEventBatch\x12%.meter.v1.IngestWideEventBatchRequest\x1a&.meter.v1.IngestWideEventBatchResponse\"\x13\xca\xf3\x18\x0bmeter:write\xd8\xf3\x18\x02\x12j\n\x0fQueryWideEvents\x12 .meter.v1.QueryWideEventsRequest\x1a!.meter.v1.QueryWideEventsResponse\"\x12\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\x12p\n\x11GetEventDashboard\x12\".meter.v1.GetEventDashboardRequest\x1a#.meter.v1.GetEventDashboardResponse\"\x12\xca\xf3\x18\nmeter:read\xd8\xf3\x18\x01\x42\x35Z3github.com/evalops/platform/gen/go/meter/v1;meterv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'meter.v1.meter_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z3github.com/evalops/platform/gen/go/meter/v1;meterv1' + _globals['_RECORDUSAGEREQUEST'].fields_by_name['input_tokens']._loaded_options = None + _globals['_RECORDUSAGEREQUEST'].fields_by_name['input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_RECORDUSAGEREQUEST'].fields_by_name['output_tokens']._loaded_options = None + _globals['_RECORDUSAGEREQUEST'].fields_by_name['output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_RECORDUSAGEREQUEST'].fields_by_name['cache_read_tokens']._loaded_options = None + _globals['_RECORDUSAGEREQUEST'].fields_by_name['cache_read_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_RECORDUSAGEREQUEST'].fields_by_name['cache_write_tokens']._loaded_options = None + _globals['_RECORDUSAGEREQUEST'].fields_by_name['cache_write_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_RECORDUSAGEREQUEST'].fields_by_name['total_cost_usd']._loaded_options = None + _globals['_RECORDUSAGEREQUEST'].fields_by_name['total_cost_usd']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_RECORDUSAGEBATCHREQUEST'].fields_by_name['records']._loaded_options = None + _globals['_RECORDUSAGEBATCHREQUEST'].fields_by_name['records']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_BUDGET'].fields_by_name['limit_usd']._loaded_options = None + _globals['_BUDGET'].fields_by_name['limit_usd']._serialized_options = b'\272H\013\022\t!\000\000\000\000\000\000\000\000' + _globals['_ADMINMUTATIONAUDITCONTEXT'].fields_by_name['delegated_actor_subject']._loaded_options = None + _globals['_ADMINMUTATIONAUDITCONTEXT'].fields_by_name['delegated_actor_subject']._serialized_options = b'\200\364\030\002' + _globals['_ADMINMUTATIONAUDITCONTEXT'].fields_by_name['reason']._loaded_options = None + _globals['_ADMINMUTATIONAUDITCONTEXT'].fields_by_name['reason']._serialized_options = b'\200\364\030\004' + _globals['_ADMINMUTATIONAUDITCONTEXT'].fields_by_name['request_id']._loaded_options = None + _globals['_ADMINMUTATIONAUDITCONTEXT'].fields_by_name['request_id']._serialized_options = b'\200\364\030\002' + _globals['_MANAGEDINFERENCEADMINEVENT'].fields_by_name['actor_subject']._loaded_options = None + _globals['_MANAGEDINFERENCEADMINEVENT'].fields_by_name['actor_subject']._serialized_options = b'\200\364\030\002' + _globals['_MANAGEDINFERENCEADMINEVENT'].fields_by_name['delegated_actor_subject']._loaded_options = None + _globals['_MANAGEDINFERENCEADMINEVENT'].fields_by_name['delegated_actor_subject']._serialized_options = b'\200\364\030\002' + _globals['_MANAGEDINFERENCEADMINEVENT'].fields_by_name['reason']._loaded_options = None + _globals['_MANAGEDINFERENCEADMINEVENT'].fields_by_name['reason']._serialized_options = b'\200\364\030\004' + _globals['_MANAGEDINFERENCEADMINEVENT'].fields_by_name['provenance']._loaded_options = None + _globals['_MANAGEDINFERENCEADMINEVENT'].fields_by_name['provenance']._serialized_options = b'\200\364\030\004' + _globals['_LISTMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_LISTMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_LISTMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['page_size']._loaded_options = None + _globals['_LISTMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['page_size']._serialized_options = b'\272H\006\032\004\030d(\000' + _globals['_LISTMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['page_token']._loaded_options = None + _globals['_LISTMANAGEDINFERENCEADMINEVENTSREQUEST'].fields_by_name['page_token']._serialized_options = b'\200\364\030\002' + _globals['_SETBUDGETREQUEST'].fields_by_name['limit_usd']._loaded_options = None + _globals['_SETBUDGETREQUEST'].fields_by_name['limit_usd']._serialized_options = b'\272H\013\022\t!\000\000\000\000\000\000\000\000' + _globals['_SETBUDGETREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SETBUDGETREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\005r\003\030\200\002' + _globals['_CHECKBUDGETREQUEST'].fields_by_name['estimated_cost_usd']._loaded_options = None + _globals['_CHECKBUDGETREQUEST'].fields_by_name['estimated_cost_usd']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_LISTBUDGETDENIALSREQUEST'].fields_by_name['team_id']._loaded_options = None + _globals['_LISTBUDGETDENIALSREQUEST'].fields_by_name['team_id']._serialized_options = b'\200\364\030\002' + _globals['_LISTBUDGETDENIALSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTBUDGETDENIALSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\200\364\030\002' + _globals['_LISTBUDGETDENIALSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTBUDGETDENIALSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\310\001(\000' + _globals['_LISTBUDGETDENIALSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTBUDGETDENIALSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_QUERYUSAGEREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_QUERYUSAGEREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\005\032\003\030\310\001' + _globals['_QUERYUSAGEREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_QUERYUSAGEREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTACTIVEUSERSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTACTIVEUSERSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\005\032\003\030\310\001' + _globals['_LISTACTIVEUSERSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTACTIVEUSERSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_WIDEEVENTMETRICS'].fields_by_name['input_tokens']._loaded_options = None + _globals['_WIDEEVENTMETRICS'].fields_by_name['input_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_WIDEEVENTMETRICS'].fields_by_name['output_tokens']._loaded_options = None + _globals['_WIDEEVENTMETRICS'].fields_by_name['output_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_WIDEEVENTMETRICS'].fields_by_name['cache_read_tokens']._loaded_options = None + _globals['_WIDEEVENTMETRICS'].fields_by_name['cache_read_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_WIDEEVENTMETRICS'].fields_by_name['cache_write_tokens']._loaded_options = None + _globals['_WIDEEVENTMETRICS'].fields_by_name['cache_write_tokens']._serialized_options = b'\272H\004\"\002(\000' + _globals['_WIDEEVENTMETRICS'].fields_by_name['total_cost_usd']._loaded_options = None + _globals['_WIDEEVENTMETRICS'].fields_by_name['total_cost_usd']._serialized_options = b'\272H\013\022\t)\000\000\000\000\000\000\000\000' + _globals['_WIDEEVENTMETRICS'].fields_by_name['duration_ms']._loaded_options = None + _globals['_WIDEEVENTMETRICS'].fields_by_name['duration_ms']._serialized_options = b'\272H\004\"\002(\000' + _globals['_WIDEEVENTMETRICS'].fields_by_name['time_to_first_token_ms']._loaded_options = None + _globals['_WIDEEVENTMETRICS'].fields_by_name['time_to_first_token_ms']._serialized_options = b'\272H\004\"\002(\000' + _globals['_WIDEEVENTMETRICS'].fields_by_name['tool_calls_count']._loaded_options = None + _globals['_WIDEEVENTMETRICS'].fields_by_name['tool_calls_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['event_id']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['event_id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['conversation_id']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['conversation_id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['message_id']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['message_id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['workspace_id']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['workspace_id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['session_id']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['session_id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['execution_source']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['execution_source']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['lifecycle_phase']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['lifecycle_phase']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['outcome']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['outcome']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['error_type']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['error_type']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['skill_id']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['skill_id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['skill_name']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['skill_name']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['feedback_type']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['feedback_type']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['generation_id']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['generation_id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['request_method']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['request_method']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['request_path']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['request_path']._serialized_options = b'\200\364\030\003' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['cancelled_by_user']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['cancelled_by_user']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['response_truncated']._loaded_options = None + _globals['_WIDEEVENTATTRIBUTES'].fields_by_name['response_truncated']._serialized_options = b'\200\364\030\001' + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['team_id']._loaded_options = None + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['team_id']._serialized_options = b'\200\364\030\002' + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['agent_id']._loaded_options = None + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['agent_id']._serialized_options = b'\200\364\030\002' + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['surface']._loaded_options = None + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['surface']._serialized_options = b'\200\364\030\001' + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['event_type']._loaded_options = None + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['event_type']._serialized_options = b'\200\364\030\001' + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['model']._loaded_options = None + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['model']._serialized_options = b'\200\364\030\001' + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['provider']._loaded_options = None + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['provider']._serialized_options = b'\200\364\030\001' + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['request_id']._loaded_options = None + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['request_id']._serialized_options = b'\200\364\030\002' + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['metadata']._loaded_options = None + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['metadata']._serialized_options = b'\200\364\030\004' + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['data']._loaded_options = None + _globals['_INGESTWIDEEVENTREQUEST'].fields_by_name['data']._serialized_options = b'\200\364\030\004' + _globals['_WIDEEVENT'].fields_by_name['id']._loaded_options = None + _globals['_WIDEEVENT'].fields_by_name['id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENT'].fields_by_name['organization_id']._loaded_options = None + _globals['_WIDEEVENT'].fields_by_name['organization_id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENT'].fields_by_name['team_id']._loaded_options = None + _globals['_WIDEEVENT'].fields_by_name['team_id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENT'].fields_by_name['agent_id']._loaded_options = None + _globals['_WIDEEVENT'].fields_by_name['agent_id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENT'].fields_by_name['surface']._loaded_options = None + _globals['_WIDEEVENT'].fields_by_name['surface']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENT'].fields_by_name['event_type']._loaded_options = None + _globals['_WIDEEVENT'].fields_by_name['event_type']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENT'].fields_by_name['model']._loaded_options = None + _globals['_WIDEEVENT'].fields_by_name['model']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENT'].fields_by_name['provider']._loaded_options = None + _globals['_WIDEEVENT'].fields_by_name['provider']._serialized_options = b'\200\364\030\001' + _globals['_WIDEEVENT'].fields_by_name['request_id']._loaded_options = None + _globals['_WIDEEVENT'].fields_by_name['request_id']._serialized_options = b'\200\364\030\002' + _globals['_WIDEEVENT'].fields_by_name['metadata']._loaded_options = None + _globals['_WIDEEVENT'].fields_by_name['metadata']._serialized_options = b'\200\364\030\004' + _globals['_WIDEEVENT'].fields_by_name['data']._loaded_options = None + _globals['_WIDEEVENT'].fields_by_name['data']._serialized_options = b'\200\364\030\004' + _globals['_INGESTWIDEEVENTRESPONSE'].fields_by_name['budget_message']._loaded_options = None + _globals['_INGESTWIDEEVENTRESPONSE'].fields_by_name['budget_message']._serialized_options = b'\200\364\030\004' + _globals['_INGESTWIDEEVENTBATCHREQUEST'].fields_by_name['events']._loaded_options = None + _globals['_INGESTWIDEEVENTBATCHREQUEST'].fields_by_name['events']._serialized_options = b'\272H\007\222\001\004\010\001\020d' + _globals['_INGESTWIDEEVENTBATCHRESPONSE'].fields_by_name['budget_message']._loaded_options = None + _globals['_INGESTWIDEEVENTBATCHRESPONSE'].fields_by_name['budget_message']._serialized_options = b'\200\364\030\004' + _globals['_INGESTWIDEEVENTBATCHITEMRESULT'].fields_by_name['input_index']._loaded_options = None + _globals['_INGESTWIDEEVENTBATCHITEMRESULT'].fields_by_name['input_index']._serialized_options = b'\272H\004\032\002(\000' + _globals['_INGESTWIDEEVENTBATCHITEMRESULT'].fields_by_name['event_id']._loaded_options = None + _globals['_INGESTWIDEEVENTBATCHITEMRESULT'].fields_by_name['event_id']._serialized_options = b'\200\364\030\002' + _globals['_INGESTWIDEEVENTBATCHITEMRESULT'].fields_by_name['failure_code']._loaded_options = None + _globals['_INGESTWIDEEVENTBATCHITEMRESULT'].fields_by_name['failure_code']._serialized_options = b'\200\364\030\001' + _globals['_INGESTWIDEEVENTBATCHITEMRESULT'].fields_by_name['failure_message']._loaded_options = None + _globals['_INGESTWIDEEVENTBATCHITEMRESULT'].fields_by_name['failure_message']._serialized_options = b'\200\364\030\004' + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['team_id']._loaded_options = None + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['team_id']._serialized_options = b'\200\364\030\002' + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['agent_id']._loaded_options = None + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['agent_id']._serialized_options = b'\200\364\030\002' + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['surface']._loaded_options = None + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['surface']._serialized_options = b'\200\364\030\001' + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['event_type']._loaded_options = None + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['event_type']._serialized_options = b'\200\364\030\001' + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['model']._loaded_options = None + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['model']._serialized_options = b'\200\364\030\001' + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['provider']._loaded_options = None + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['provider']._serialized_options = b'\200\364\030\001' + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['metadata_key']._loaded_options = None + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['metadata_key']._serialized_options = b'\200\364\030\001' + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['metadata_value']._loaded_options = None + _globals['_QUERYWIDEEVENTSREQUEST'].fields_by_name['metadata_value']._serialized_options = b'\200\364\030\004' + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['team_id']._loaded_options = None + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['team_id']._serialized_options = b'\200\364\030\002' + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['agent_id']._loaded_options = None + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['agent_id']._serialized_options = b'\200\364\030\002' + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['surface']._loaded_options = None + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['surface']._serialized_options = b'\200\364\030\001' + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['event_type']._loaded_options = None + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['event_type']._serialized_options = b'\200\364\030\001' + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['model']._loaded_options = None + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['model']._serialized_options = b'\200\364\030\001' + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['provider']._loaded_options = None + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['provider']._serialized_options = b'\200\364\030\001' + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['metadata_key']._loaded_options = None + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['metadata_key']._serialized_options = b'\200\364\030\001' + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['metadata_value']._loaded_options = None + _globals['_GETEVENTDASHBOARDREQUEST'].fields_by_name['metadata_value']._serialized_options = b'\200\364\030\004' + _globals['_EVENTDASHBOARDBUCKET'].fields_by_name['key']._loaded_options = None + _globals['_EVENTDASHBOARDBUCKET'].fields_by_name['key']._serialized_options = b'\200\364\030\001' + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['granted_micros']._loaded_options = None + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['granted_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['expired_grant_micros']._loaded_options = None + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['expired_grant_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['grant_spent_micros']._loaded_options = None + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['grant_spent_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['grant_reserved_micros']._loaded_options = None + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['grant_reserved_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['reversed_micros']._loaded_options = None + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['reversed_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['debt_micros']._loaded_options = None + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['debt_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['purchased_micros']._loaded_options = None + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['purchased_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['spent_micros']._loaded_options = None + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['spent_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['reserved_micros']._loaded_options = None + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['reserved_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['available_micros']._loaded_options = None + _globals['_PREPAIDCREDITBALANCE'].fields_by_name['available_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_GETPREPAIDCREDITBALANCEREQUEST'].fields_by_name['run_id']._loaded_options = None + _globals['_GETPREPAIDCREDITBALANCEREQUEST'].fields_by_name['run_id']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\002' + _globals['_GETPREPAIDCREDITBALANCEREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETPREPAIDCREDITBALANCEREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_GETPREPAIDCREDITBALANCERESPONSE'].fields_by_name['development_program_id']._loaded_options = None + _globals['_GETPREPAIDCREDITBALANCERESPONSE'].fields_by_name['development_program_id']._serialized_options = b'\200\364\030\002' + _globals['_PREPAIDCREDITRECONCILIATION'].fields_by_name['invalid_grant_allocation_count']._loaded_options = None + _globals['_PREPAIDCREDITRECONCILIATION'].fields_by_name['invalid_grant_allocation_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PREPAIDCREDITRECONCILIATION'].fields_by_name['pending_reservation_count']._loaded_options = None + _globals['_PREPAIDCREDITRECONCILIATION'].fields_by_name['pending_reservation_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_PREPAIDCREDITRECONCILIATION'].fields_by_name['unfunded_payment_count']._loaded_options = None + _globals['_PREPAIDCREDITRECONCILIATION'].fields_by_name['unfunded_payment_count']._serialized_options = b'\272H\004\"\002(\000' + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY'].fields_by_name['max_grant_micros']._loaded_options = None + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY'].fields_by_name['max_grant_micros']._serialized_options = b'\272H\004\"\002 \000' + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY'].fields_by_name['program_budget_micros']._loaded_options = None + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY'].fields_by_name['program_budget_micros']._serialized_options = b'\272H\004\"\002 \000' + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY'].fields_by_name['daily_budget_micros']._loaded_options = None + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY'].fields_by_name['daily_budget_micros']._serialized_options = b'\272H\004\"\002 \000' + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY'].fields_by_name['max_lifetime_seconds']._loaded_options = None + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY'].fields_by_name['max_lifetime_seconds']._serialized_options = b'\272H\004\"\002 \000' + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY'].fields_by_name['alert_recipient_id']._loaded_options = None + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY'].fields_by_name['alert_recipient_id']._serialized_options = b'\200\364\030\002' + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['program_id']._loaded_options = None + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['program_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['grant_id']._loaded_options = None + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['grant_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['credit_micros']._loaded_options = None + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['credit_micros']._serialized_options = b'\272H\004\"\002 \000' + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['expires_at']._loaded_options = None + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['expires_at']._serialized_options = b'\272H\003\310\001\001' + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['reason']._serialized_options = b'\272H\004r\002\020\001\200\364\030\004' + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['provenance']._loaded_options = None + _globals['_GRANTDEVELOPMENTCREDITSREQUEST'].fields_by_name['provenance']._serialized_options = b'\272H\004r\002\020\001\200\364\030\004' + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['organization_id']._loaded_options = None + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['organization_id']._serialized_options = b'\200\364\030\002' + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['workspace_id']._loaded_options = None + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['workspace_id']._serialized_options = b'\200\364\030\002' + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['program_id']._loaded_options = None + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['program_id']._serialized_options = b'\200\364\030\002' + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['grant_id']._loaded_options = None + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['grant_id']._serialized_options = b'\200\364\030\002' + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['reason']._loaded_options = None + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['reason']._serialized_options = b'\200\364\030\004' + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['provenance']._loaded_options = None + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['provenance']._serialized_options = b'\200\364\030\004' + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['actor_subject']._loaded_options = None + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['actor_subject']._serialized_options = b'\200\364\030\002' + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['daily_budget_micros']._loaded_options = None + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['daily_budget_micros']._serialized_options = b'\272H\004\"\002 \000' + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['alert_recipient_id']._loaded_options = None + _globals['_DEVELOPMENTCREDITGRANT'].fields_by_name['alert_recipient_id']._serialized_options = b'\200\364\030\002' + _globals['_FUNDPREPAIDCREDITSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_FUNDPREPAIDCREDITSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_FUNDPREPAIDCREDITSREQUEST'].fields_by_name['payment_intent_id']._loaded_options = None + _globals['_FUNDPREPAIDCREDITSREQUEST'].fields_by_name['payment_intent_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_FUNDPREPAIDCREDITSREQUEST'].fields_by_name['checkout_session_id']._loaded_options = None + _globals['_FUNDPREPAIDCREDITSREQUEST'].fields_by_name['checkout_session_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_FUNDPREPAIDCREDITSREQUEST'].fields_by_name['credit_micros']._loaded_options = None + _globals['_FUNDPREPAIDCREDITSREQUEST'].fields_by_name['credit_micros']._serialized_options = b'\272H\004\"\002 \000' + _globals['_RESERVEPREPAIDCREDITSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_RESERVEPREPAIDCREDITSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESERVEPREPAIDCREDITSREQUEST'].fields_by_name['gateway_request_id']._loaded_options = None + _globals['_RESERVEPREPAIDCREDITSREQUEST'].fields_by_name['gateway_request_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESERVEPREPAIDCREDITSREQUEST'].fields_by_name['amount_micros']._loaded_options = None + _globals['_RESERVEPREPAIDCREDITSREQUEST'].fields_by_name['amount_micros']._serialized_options = b'\272H\004\"\002 \000' + _globals['_RESERVEPREPAIDCREDITSREQUEST'].fields_by_name['run_id']._loaded_options = None + _globals['_RESERVEPREPAIDCREDITSREQUEST'].fields_by_name['run_id']._serialized_options = b'\272H\005r\003\030\200\002\200\364\030\002' + _globals['_RESERVEPREPAIDCREDITSRESPONSE'].fields_by_name['reserved_micros']._loaded_options = None + _globals['_RESERVEPREPAIDCREDITSRESPONSE'].fields_by_name['reserved_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_SETTLEPREPAIDCREDITSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_SETTLEPREPAIDCREDITSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_SETTLEPREPAIDCREDITSREQUEST'].fields_by_name['gateway_request_id']._loaded_options = None + _globals['_SETTLEPREPAIDCREDITSREQUEST'].fields_by_name['gateway_request_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_SETTLEPREPAIDCREDITSREQUEST'].fields_by_name['actual_cost_micros']._loaded_options = None + _globals['_SETTLEPREPAIDCREDITSREQUEST'].fields_by_name['actual_cost_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_SETTLEPREPAIDCREDITSRESPONSE'].fields_by_name['actual_cost_micros']._loaded_options = None + _globals['_SETTLEPREPAIDCREDITSRESPONSE'].fields_by_name['actual_cost_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['original_credit_micros']._loaded_options = None + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['original_credit_micros']._serialized_options = b'\272H\004\"\002 \000' + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['checkout_session_id']._loaded_options = None + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['checkout_session_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['payment_intent_id']._loaded_options = None + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['payment_intent_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['reversal_id']._loaded_options = None + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['reversal_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['reversed_credit_micros']._loaded_options = None + _globals['_REVERSEPREPAIDCREDITSREQUEST'].fields_by_name['reversed_credit_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['payment_intent_id']._loaded_options = None + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['payment_intent_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['checkout_session_id']._loaded_options = None + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['checkout_session_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['original_credit_micros']._loaded_options = None + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['original_credit_micros']._serialized_options = b'\272H\004\"\002 \000' + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['dispute_id']._loaded_options = None + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['dispute_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['reversed_credit_micros']._loaded_options = None + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST'].fields_by_name['reversed_credit_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['authority_id']._loaded_options = None + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['authority_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['work_id']._loaded_options = None + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['work_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['max_charge_micros']._loaded_options = None + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['max_charge_micros']._serialized_options = b'\272H\004\"\002 \000' + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['price_book_version']._loaded_options = None + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['price_book_version']._serialized_options = b'\272H\004r\002\020\001\200\364\030\001' + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['valid_until']._loaded_options = None + _globals['_AUTHORIZEWORKSPENDREQUEST'].fields_by_name['valid_until']._serialized_options = b'\272H\003\310\001\001' + _globals['_AUTHORIZEWORKSPENDRESPONSE'].fields_by_name['authority_id']._loaded_options = None + _globals['_AUTHORIZEWORKSPENDRESPONSE'].fields_by_name['authority_id']._serialized_options = b'\200\364\030\002' + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['authority_id']._loaded_options = None + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['authority_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['work_id']._loaded_options = None + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['work_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['price_book_version']._loaded_options = None + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['price_book_version']._serialized_options = b'\272H\004r\002\020\001\200\364\030\001' + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['gateway_request_id']._loaded_options = None + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['gateway_request_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['run_id']._loaded_options = None + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['run_id']._serialized_options = b'\272H\004r\002\020\001\200\364\030\002' + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['amount_micros']._loaded_options = None + _globals['_RESERVEWORKCREDITSREQUEST'].fields_by_name['amount_micros']._serialized_options = b'\272H\004\"\002 \000' + _globals['_RESERVEWORKCREDITSRESPONSE'].fields_by_name['reserved_micros']._loaded_options = None + _globals['_RESERVEWORKCREDITSRESPONSE'].fields_by_name['reserved_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_METERSERVICE'].methods_by_name['GetPrepaidCreditBalance']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['GetPrepaidCreditBalance']._serialized_options = b'\312\363\030\nmeter:read\322\363\030\014workspace_id\330\363\030\001' + _globals['_METERSERVICE'].methods_by_name['GrantDevelopmentCredits']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['GrantDevelopmentCredits']._serialized_options = b'\312\363\030\037meter:credits:grant-development\322\363\030\014workspace_id\330\363\030\003' + _globals['_METERSERVICE'].methods_by_name['FundPrepaidCredits']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['FundPrepaidCredits']._serialized_options = b'\312\363\030\022meter:credits:fund\322\363\030\014workspace_id\330\363\030\003' + _globals['_METERSERVICE'].methods_by_name['ReversePrepaidCredits']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['ReversePrepaidCredits']._serialized_options = b'\312\363\030\025meter:credits:reverse\322\363\030\014workspace_id\330\363\030\003' + _globals['_METERSERVICE'].methods_by_name['ApplyPrepaidPaymentDispute']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['ApplyPrepaidPaymentDispute']._serialized_options = b'\312\363\030\025meter:credits:reverse\322\363\030\014workspace_id\330\363\030\003' + _globals['_METERSERVICE'].methods_by_name['ReservePrepaidCredits']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['ReservePrepaidCredits']._serialized_options = b'\312\363\030\025meter:credits:reserve\322\363\030\014workspace_id\330\363\030\003' + _globals['_METERSERVICE'].methods_by_name['AuthorizeWorkSpend']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['AuthorizeWorkSpend']._serialized_options = b'\312\363\030\021billing:authorize\322\363\030\014workspace_id\330\363\030\003' + _globals['_METERSERVICE'].methods_by_name['ReserveWorkCredits']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['ReserveWorkCredits']._serialized_options = b'\312\363\030\025meter:credits:reserve\322\363\030\014workspace_id\330\363\030\003' + _globals['_METERSERVICE'].methods_by_name['SettlePrepaidCredits']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['SettlePrepaidCredits']._serialized_options = b'\312\363\030\024meter:credits:settle\322\363\030\014workspace_id\330\363\030\003' + _globals['_METERSERVICE'].methods_by_name['RecordUsage']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['RecordUsage']._serialized_options = b'\312\363\030\013meter:write\330\363\030\002' + _globals['_METERSERVICE'].methods_by_name['RecordUsageBatch']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['RecordUsageBatch']._serialized_options = b'\312\363\030\013meter:write\330\363\030\002' + _globals['_METERSERVICE'].methods_by_name['ListManagedInferenceAdminEvents']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['ListManagedInferenceAdminEvents']._serialized_options = b'\312\363\030\nmeter:read\322\363\030\014workspace_id\330\363\030\001' + _globals['_METERSERVICE'].methods_by_name['SetBudget']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['SetBudget']._serialized_options = b'\312\363\030\013meter:write\330\363\030\003' + _globals['_METERSERVICE'].methods_by_name['CheckBudget']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['CheckBudget']._serialized_options = b'\312\363\030\nmeter:read\330\363\030\001' + _globals['_METERSERVICE'].methods_by_name['GetBudgetDashboard']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['GetBudgetDashboard']._serialized_options = b'\312\363\030\nmeter:read\330\363\030\001' + _globals['_METERSERVICE'].methods_by_name['ListBudgetDenials']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['ListBudgetDenials']._serialized_options = b'\312\363\030\nmeter:read\330\363\030\001' + _globals['_METERSERVICE'].methods_by_name['QueryUsage']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['QueryUsage']._serialized_options = b'\312\363\030\nmeter:read\330\363\030\001' + _globals['_METERSERVICE'].methods_by_name['GetUsageSummary']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['GetUsageSummary']._serialized_options = b'\312\363\030\nmeter:read\330\363\030\001' + _globals['_METERSERVICE'].methods_by_name['GetMeterSummary']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['GetMeterSummary']._serialized_options = b'\312\363\030\nmeter:read\330\363\030\001' + _globals['_METERSERVICE'].methods_by_name['GetAdoptionMetrics']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['GetAdoptionMetrics']._serialized_options = b'\312\363\030\nmeter:read\330\363\030\001' + _globals['_METERSERVICE'].methods_by_name['ListActiveUsers']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['ListActiveUsers']._serialized_options = b'\312\363\030\nmeter:read\330\363\030\001' + _globals['_METERSERVICE'].methods_by_name['IngestWideEvent']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['IngestWideEvent']._serialized_options = b'\312\363\030\013meter:write\330\363\030\002' + _globals['_METERSERVICE'].methods_by_name['IngestWideEventBatch']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['IngestWideEventBatch']._serialized_options = b'\312\363\030\013meter:write\330\363\030\002' + _globals['_METERSERVICE'].methods_by_name['QueryWideEvents']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['QueryWideEvents']._serialized_options = b'\312\363\030\nmeter:read\330\363\030\001' + _globals['_METERSERVICE'].methods_by_name['GetEventDashboard']._loaded_options = None + _globals['_METERSERVICE'].methods_by_name['GetEventDashboard']._serialized_options = b'\312\363\030\nmeter:read\330\363\030\001' + _globals['_SUMMARYGROUPBY']._serialized_start=23262 + _globals['_SUMMARYGROUPBY']._serialized_end=23548 + _globals['_PREPAIDPAYMENTDISPUTESTATE']._serialized_start=23551 + _globals['_PREPAIDPAYMENTDISPUTESTATE']._serialized_end=23745 + _globals['_RECORDUSAGEREQUEST']._serialized_start=182 + _globals['_RECORDUSAGEREQUEST']._serialized_end=783 + _globals['_RECORDUSAGERESPONSE']._serialized_start=785 + _globals['_RECORDUSAGERESPONSE']._serialized_end=853 + _globals['_RECORDUSAGEBATCHREQUEST']._serialized_start=855 + _globals['_RECORDUSAGEBATCHREQUEST']._serialized_end=946 + _globals['_RECORDUSAGEBATCHRESPONSE']._serialized_start=948 + _globals['_RECORDUSAGEBATCHRESPONSE']._serialized_end=1023 + _globals['_BUDGET']._serialized_start=1026 + _globals['_BUDGET']._serialized_end=1695 + _globals['_BUDGETSTATUS']._serialized_start=1698 + _globals['_BUDGETSTATUS']._serialized_end=2533 + _globals['_ADMINMUTATIONAUDITCONTEXT']._serialized_start=2536 + _globals['_ADMINMUTATIONAUDITCONTEXT']._serialized_end=2692 + _globals['_MANAGEDINFERENCEBUDGETSNAPSHOT']._serialized_start=2695 + _globals['_MANAGEDINFERENCEBUDGETSNAPSHOT']._serialized_end=2861 + _globals['_MANAGEDINFERENCEADMINEVENT']._serialized_start=2864 + _globals['_MANAGEDINFERENCEADMINEVENT']._serialized_end=3567 + _globals['_LISTMANAGEDINFERENCEADMINEVENTSREQUEST']._serialized_start=3570 + _globals['_LISTMANAGEDINFERENCEADMINEVENTSREQUEST']._serialized_end=3789 + _globals['_LISTMANAGEDINFERENCEADMINEVENTSRESPONSE']._serialized_start=3792 + _globals['_LISTMANAGEDINFERENCEADMINEVENTSRESPONSE']._serialized_end=3935 + _globals['_SETBUDGETREQUEST']._serialized_start=3938 + _globals['_SETBUDGETREQUEST']._serialized_end=4320 + _globals['_SETBUDGETRESPONSE']._serialized_start=4322 + _globals['_SETBUDGETRESPONSE']._serialized_end=4383 + _globals['_CHECKBUDGETREQUEST']._serialized_start=4386 + _globals['_CHECKBUDGETREQUEST']._serialized_end=4636 + _globals['_BUDGETWARNING']._serialized_start=4639 + _globals['_BUDGETWARNING']._serialized_end=4775 + _globals['_CHECKBUDGETRESPONSE']._serialized_start=4778 + _globals['_CHECKBUDGETRESPONSE']._serialized_end=5017 + _globals['_GETBUDGETDASHBOARDREQUEST']._serialized_start=5019 + _globals['_GETBUDGETDASHBOARDREQUEST']._serialized_end=5106 + _globals['_BUDGETDENIAL']._serialized_start=5109 + _globals['_BUDGETDENIAL']._serialized_end=5502 + _globals['_GETBUDGETDASHBOARDRESPONSE']._serialized_start=5505 + _globals['_GETBUDGETDASHBOARDRESPONSE']._serialized_end=6111 + _globals['_LISTBUDGETDENIALSREQUEST']._serialized_start=6114 + _globals['_LISTBUDGETDENIALSREQUEST']._serialized_end=6393 + _globals['_LISTBUDGETDENIALSRESPONSE']._serialized_start=6395 + _globals['_LISTBUDGETDENIALSRESPONSE']._serialized_end=6499 + _globals['_USAGERECORD']._serialized_start=6502 + _globals['_USAGERECORD']._serialized_end=7218 + _globals['_QUERYUSAGEREQUEST']._serialized_start=7221 + _globals['_QUERYUSAGEREQUEST']._serialized_end=7667 + _globals['_QUERYUSAGERESPONSE']._serialized_start=7669 + _globals['_QUERYUSAGERESPONSE']._serialized_end=7787 + _globals['_GETUSAGESUMMARYREQUEST']._serialized_start=7790 + _globals['_GETUSAGESUMMARYREQUEST']._serialized_end=8308 + _globals['_USAGESUMMARY']._serialized_start=8311 + _globals['_USAGESUMMARY']._serialized_end=9018 + _globals['_GETUSAGESUMMARYRESPONSE']._serialized_start=9020 + _globals['_GETUSAGESUMMARYRESPONSE']._serialized_end=9095 + _globals['_GETMETERSUMMARYREQUEST']._serialized_start=9098 + _globals['_GETMETERSUMMARYREQUEST']._serialized_end=9368 + _globals['_METERSUMMARYBUCKET']._serialized_start=9370 + _globals['_METERSUMMARYBUCKET']._serialized_end=9465 + _globals['_GETMETERSUMMARYRESPONSE']._serialized_start=9467 + _globals['_GETMETERSUMMARYRESPONSE']._serialized_end=9575 + _globals['_GETADOPTIONMETRICSREQUEST']._serialized_start=9578 + _globals['_GETADOPTIONMETRICSREQUEST']._serialized_end=9911 + _globals['_ADOPTIONTIMEBUCKET']._serialized_start=9914 + _globals['_ADOPTIONTIMEBUCKET']._serialized_end=10121 + _globals['_ADOPTIONCOHORT']._serialized_start=10124 + _globals['_ADOPTIONCOHORT']._serialized_end=10264 + _globals['_ADOPTIONFREQUENCYBUCKET']._serialized_start=10266 + _globals['_ADOPTIONFREQUENCYBUCKET']._serialized_end=10331 + _globals['_ADOPTIONDIMENSIONBUCKET']._serialized_start=10334 + _globals['_ADOPTIONDIMENSIONBUCKET']._serialized_end=10487 + _globals['_GETADOPTIONMETRICSRESPONSE']._serialized_start=10490 + _globals['_GETADOPTIONMETRICSRESPONSE']._serialized_end=11293 + _globals['_LISTACTIVEUSERSREQUEST']._serialized_start=11296 + _globals['_LISTACTIVEUSERSREQUEST']._serialized_end=11658 + _globals['_ACTIVEUSER']._serialized_start=11661 + _globals['_ACTIVEUSER']._serialized_end=12008 + _globals['_LISTACTIVEUSERSRESPONSE']._serialized_start=12010 + _globals['_LISTACTIVEUSERSRESPONSE']._serialized_end=12128 + _globals['_WIDEEVENTMETRICS']._serialized_start=12131 + _globals['_WIDEEVENTMETRICS']._serialized_end=12555 + _globals['_WIDEEVENTATTRIBUTES']._serialized_start=12558 + _globals['_WIDEEVENTATTRIBUTES']._serialized_end=13284 + _globals['_INGESTWIDEEVENTREQUEST']._serialized_start=13287 + _globals['_INGESTWIDEEVENTREQUEST']._serialized_end=13765 + _globals['_WIDEEVENT']._serialized_start=13768 + _globals['_WIDEEVENT']._serialized_end=14361 + _globals['_INGESTWIDEEVENTRESPONSE']._serialized_start=14364 + _globals['_INGESTWIDEEVENTRESPONSE']._serialized_end=14518 + _globals['_INGESTWIDEEVENTBATCHREQUEST']._serialized_start=14520 + _globals['_INGESTWIDEEVENTBATCHREQUEST']._serialized_end=14619 + _globals['_INGESTWIDEEVENTBATCHRESPONSE']._serialized_start=14622 + _globals['_INGESTWIDEEVENTBATCHRESPONSE']._serialized_end=14806 + _globals['_INGESTWIDEEVENTBATCHITEMRESULT']._serialized_start=14809 + _globals['_INGESTWIDEEVENTBATCHITEMRESULT']._serialized_end=15034 + _globals['_QUERYWIDEEVENTSREQUEST']._serialized_start=15037 + _globals['_QUERYWIDEEVENTSREQUEST']._serialized_end=15502 + _globals['_QUERYWIDEEVENTSRESPONSE']._serialized_start=15504 + _globals['_QUERYWIDEEVENTSRESPONSE']._serialized_end=15623 + _globals['_GETEVENTDASHBOARDREQUEST']._serialized_start=15626 + _globals['_GETEVENTDASHBOARDREQUEST']._serialized_end=16068 + _globals['_EVENTDASHBOARDBUCKET']._serialized_start=16070 + _globals['_EVENTDASHBOARDBUCKET']._serialized_end=16176 + _globals['_GETEVENTDASHBOARDRESPONSE']._serialized_start=16179 + _globals['_GETEVENTDASHBOARDRESPONSE']._serialized_end=16740 + _globals['_PREPAIDCREDITBALANCE']._serialized_start=16743 + _globals['_PREPAIDCREDITBALANCE']._serialized_end=17383 + _globals['_GETPREPAIDCREDITBALANCEREQUEST']._serialized_start=17385 + _globals['_GETPREPAIDCREDITBALANCEREQUEST']._serialized_end=17502 + _globals['_GETPREPAIDCREDITBALANCERESPONSE']._serialized_start=17505 + _globals['_GETPREPAIDCREDITBALANCERESPONSE']._serialized_end=17901 + _globals['_PREPAIDRUNBALANCE']._serialized_start=17904 + _globals['_PREPAIDRUNBALANCE']._serialized_end=18211 + _globals['_PREPAIDCREDITRECONCILIATION']._serialized_start=18214 + _globals['_PREPAIDCREDITRECONCILIATION']._serialized_end=18915 + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY']._serialized_start=18918 + _globals['_DEVELOPMENTCREDITPROGRAMPOLICY']._serialized_end=19230 + _globals['_GRANTDEVELOPMENTCREDITSREQUEST']._serialized_start=19233 + _globals['_GRANTDEVELOPMENTCREDITSREQUEST']._serialized_end=19733 + _globals['_DEVELOPMENTCREDITGRANT']._serialized_start=19736 + _globals['_DEVELOPMENTCREDITGRANT']._serialized_end=20293 + _globals['_GRANTDEVELOPMENTCREDITSRESPONSE']._serialized_start=20295 + _globals['_GRANTDEVELOPMENTCREDITSRESPONSE']._serialized_end=20384 + _globals['_FUNDPREPAIDCREDITSREQUEST']._serialized_start=20387 + _globals['_FUNDPREPAIDCREDITSREQUEST']._serialized_end=20626 + _globals['_FUNDPREPAIDCREDITSRESPONSE']._serialized_start=20628 + _globals['_FUNDPREPAIDCREDITSRESPONSE']._serialized_end=20714 + _globals['_RESERVEPREPAIDCREDITSREQUEST']._serialized_start=20717 + _globals['_RESERVEPREPAIDCREDITSREQUEST']._serialized_end=20937 + _globals['_RESERVEPREPAIDCREDITSRESPONSE']._serialized_start=20940 + _globals['_RESERVEPREPAIDCREDITSRESPONSE']._serialized_end=21073 + _globals['_SETTLEPREPAIDCREDITSREQUEST']._serialized_start=21076 + _globals['_SETTLEPREPAIDCREDITSREQUEST']._serialized_end=21267 + _globals['_SETTLEPREPAIDCREDITSRESPONSE']._serialized_start=21269 + _globals['_SETTLEPREPAIDCREDITSRESPONSE']._serialized_end=21354 + _globals['_REVERSEPREPAIDCREDITSREQUEST']._serialized_start=21357 + _globals['_REVERSEPREPAIDCREDITSREQUEST']._serialized_end=21725 + _globals['_REVERSEPREPAIDCREDITSRESPONSE']._serialized_start=21727 + _globals['_REVERSEPREPAIDCREDITSRESPONSE']._serialized_end=21816 + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST']._serialized_start=21819 + _globals['_APPLYPREPAIDPAYMENTDISPUTEREQUEST']._serialized_end=22250 + _globals['_APPLYPREPAIDPAYMENTDISPUTERESPONSE']._serialized_start=22252 + _globals['_APPLYPREPAIDPAYMENTDISPUTERESPONSE']._serialized_end=22346 + _globals['_AUTHORIZEWORKSPENDREQUEST']._serialized_start=22349 + _globals['_AUTHORIZEWORKSPENDREQUEST']._serialized_end=22691 + _globals['_AUTHORIZEWORKSPENDRESPONSE']._serialized_start=22693 + _globals['_AUTHORIZEWORKSPENDRESPONSE']._serialized_end=22762 + _globals['_RESERVEWORKCREDITSREQUEST']._serialized_start=22765 + _globals['_RESERVEWORKCREDITSREQUEST']._serialized_end=23126 + _globals['_RESERVEWORKCREDITSRESPONSE']._serialized_start=23129 + _globals['_RESERVEWORKCREDITSRESPONSE']._serialized_end=23259 + _globals['_METERSERVICE']._serialized_start=23748 + _globals['_METERSERVICE']._serialized_end=26925 +# @@protoc_insertion_point(module_scope) diff --git a/src/orbcontrol/v1/orb_control_pb2.py b/src/orbcontrol/v1/orb_control_pb2.py new file mode 100644 index 0000000..f87d51e --- /dev/null +++ b/src/orbcontrol/v1/orb_control_pb2.py @@ -0,0 +1,110 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: orbcontrol/v1/orb_control.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'orbcontrol/v1/orb_control.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 +from common.v1 import authz_pb2 as common_dot_v1_dot_authz__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1forbcontrol/v1/orb_control.proto\x12\rorbcontrol.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x15\x63ommon/v1/authz.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"K\n\nOrbCommand\x12=\n\x04kind\x18\x01 \x01(\x0e\x32\x1d.orbcontrol.v1.OrbCommandKindB\n\xbaH\x07\x82\x01\x04\x10\x01 \x00R\x04kind\"\x91\x03\n\x17SubmitOrbCommandRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12$\n\ttarget_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08targetId\x12\x30\n\x0fidempotency_key\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12&\n\nlineage_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tlineageId\x12*\n\x0coperation_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0boperationId\x12/\n\x13\x65xpected_generation\x18\x07 \x01(\x04R\x12\x65xpectedGeneration\x12;\n\x07\x63ommand\x18\x08 \x01(\x0b\x32\x19.orbcontrol.v1.OrbCommandB\x06\xbaH\x03\xc8\x01\x01R\x07\x63ommand\"\xfa\x02\n\x18SubmitOrbCommandResponse\x12M\n\nacceptance\x18\x01 \x01(\x0e\x32#.orbcontrol.v1.OrbCommandAcceptanceB\x08\xbaH\x05\x82\x01\x02\x10\x01R\nacceptance\x12\x1d\n\ncommand_id\x18\x02 \x01(\tR\tcommandId\x12!\n\x0coperation_id\x18\x03 \x01(\tR\x0boperationId\x12\'\n\x0fidempotency_key\x18\x04 \x01(\tR\x0eidempotencyKey\x12/\n\x13\x61\x63\x63\x65pted_generation\x18\x05 \x01(\x04R\x12\x61\x63\x63\x65ptedGeneration\x12+\n\x11observed_revision\x18\x06 \x01(\x04R\x10observedRevision\x12%\n\x0e\x65vent_sequence\x18\x07 \x01(\x04R\reventSequence\x12\x1f\n\x0breason_code\x18\x08 \x01(\tR\nreasonCode\"\xa0\x01\n\x1aGetOrbObservedStateRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12$\n\ttarget_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08targetId\"\xd2\x03\n\x10OrbObservedState\x12\x1b\n\ttarget_id\x18\x01 \x01(\tR\x08targetId\x12!\n\x0c\x64isplay_name\x18\x02 \x01(\tR\x0b\x64isplayName\x12K\n\tlifecycle\x18\x03 \x01(\x0e\x32#.orbcontrol.v1.OrbObservedLifecycleB\x08\xbaH\x05\x82\x01\x02\x10\x01R\tlifecycle\x12\x1e\n\ngeneration\x18\x04 \x01(\x04R\ngeneration\x12+\n\x11observed_revision\x18\x05 \x01(\x04R\x10observedRevision\x12.\n\x13last_event_sequence\x18\x06 \x01(\x04R\x11lastEventSequence\x12%\n\x0eresident_agent\x18\x07 \x01(\tR\rresidentAgent\x12 \n\x0bprovisioner\x18\x08 \x01(\tR\x0bprovisioner\x12.\n\x13\x61\x63tive_operation_id\x18\t \x01(\tR\x11\x61\x63tiveOperationId\x12;\n\x0bobserved_at\x18\n \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nobservedAt\"\\\n\x1bGetOrbObservedStateResponse\x12=\n\x05state\x18\x01 \x01(\x0b\x32\x1f.orbcontrol.v1.OrbObservedStateB\x06\xbaH\x03\xc8\x01\x01R\x05state\"\xcb\x03\n\x0fOrbControlEvent\x12\x1a\n\x08sequence\x18\x01 \x01(\x04R\x08sequence\x12\x19\n\x08\x65vent_id\x18\x02 \x01(\tR\x07\x65ventId\x12\x1b\n\ttarget_id\x18\x03 \x01(\tR\x08targetId\x12\x1e\n\ngeneration\x18\x04 \x01(\x04R\ngeneration\x12+\n\x11observed_revision\x18\x05 \x01(\x04R\x10observedRevision\x12@\n\x04kind\x18\x06 \x01(\x0e\x32\".orbcontrol.v1.OrbControlEventKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12\x35\n\x05state\x18\x07 \x01(\x0b\x32\x1f.orbcontrol.v1.OrbObservedStateR\x05state\x12!\n\x0coperation_id\x18\x08 \x01(\tR\x0boperationId\x12\x1d\n\ncommand_id\x18\t \x01(\tR\tcommandId\x12\x1f\n\x0breason_code\x18\n \x01(\tR\nreasonCode\x12;\n\x0boccurred_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\"\xbd\x01\n\x16StreamOrbEventsRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12%\n\x0e\x61\x66ter_sequence\x18\x03 \x01(\x04R\rafterSequence\x12\x1e\n\x05limit\x18\x04 \x01(\rB\x08\xbaH\x05*\x03\x18\xf4\x03R\x05limit\"\x9c\x01\n\x17StreamOrbEventsResponse\x12\x41\n\x06\x65vents\x18\x01 \x03(\x0b\x32\x1e.orbcontrol.v1.OrbControlEventB\t\xbaH\x06\x92\x01\x03\x10\xf4\x03R\x06\x65vents\x12#\n\rnext_sequence\x18\x02 \x01(\x04R\x0cnextSequence\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore*h\n\x0eOrbCommandKind\x12 \n\x1cORB_COMMAND_KIND_UNSPECIFIED\x10\x00\x12\x19\n\x15ORB_COMMAND_KIND_WAKE\x10\x01\x12\x19\n\x15ORB_COMMAND_KIND_STOP\x10\x02*\xc3\x02\n\x14OrbObservedLifecycle\x12&\n\"ORB_OBSERVED_LIFECYCLE_UNSPECIFIED\x10\x00\x12#\n\x1fORB_OBSERVED_LIFECYCLE_SLEEPING\x10\x01\x12!\n\x1dORB_OBSERVED_LIFECYCLE_WAKING\x10\x02\x12 \n\x1cORB_OBSERVED_LIFECYCLE_READY\x10\x03\x12\"\n\x1eORB_OBSERVED_LIFECYCLE_WORKING\x10\x04\x12*\n&ORB_OBSERVED_LIFECYCLE_WAITING_FOR_YOU\x10\x05\x12%\n!ORB_OBSERVED_LIFECYCLE_RECOVERING\x10\x06\x12\"\n\x1eORB_OBSERVED_LIFECYCLE_OFFLINE\x10\x07*\xad\x01\n\x14OrbCommandAcceptance\x12&\n\"ORB_COMMAND_ACCEPTANCE_UNSPECIFIED\x10\x00\x12#\n\x1fORB_COMMAND_ACCEPTANCE_ACCEPTED\x10\x01\x12#\n\x1fORB_COMMAND_ACCEPTANCE_REPLAYED\x10\x02\x12#\n\x1fORB_COMMAND_ACCEPTANCE_REJECTED\x10\x03*\x96\x02\n\x13OrbControlEventKind\x12&\n\"ORB_CONTROL_EVENT_KIND_UNSPECIFIED\x10\x00\x12#\n\x1fORB_CONTROL_EVENT_KIND_SNAPSHOT\x10\x01\x12+\n\'ORB_CONTROL_EVENT_KIND_COMMAND_ACCEPTED\x10\x02\x12,\n(ORB_CONTROL_EVENT_KIND_LIFECYCLE_CHANGED\x10\x03\x12,\n(ORB_CONTROL_EVENT_KIND_COMMAND_COMPLETED\x10\x04\x12)\n%ORB_CONTROL_EVENT_KIND_COMMAND_FAILED\x10\x05\x32\x8a\x04\n\x16OrbControlOwnerService\x12\xa1\x01\n\x10SubmitOrbCommand\x12&.orbcontrol.v1.SubmitOrbCommandRequest\x1a\'.orbcontrol.v1.SubmitOrbCommandResponse\"<\xca\xf3\x18\x11orb:control:owner\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\xaa\x01\n\x13GetOrbObservedState\x12).orbcontrol.v1.GetOrbObservedStateRequest\x1a*.orbcontrol.v1.GetOrbObservedStateResponse\"<\xca\xf3\x18\x11orb:control:owner\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\x9e\x01\n\x0fStreamOrbEvents\x12%.orbcontrol.v1.StreamOrbEventsRequest\x1a&.orbcontrol.v1.StreamOrbEventsResponse\"<\xca\xf3\x18\x11orb:control:owner\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_idB?Z=github.com/evalops/platform/gen/go/orbcontrol/v1;orbcontrolv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'orbcontrol.v1.orb_control_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z=github.com/evalops/platform/gen/go/orbcontrol/v1;orbcontrolv1' + _globals['_ORBCOMMAND'].fields_by_name['kind']._loaded_options = None + _globals['_ORBCOMMAND'].fields_by_name['kind']._serialized_options = b'\272H\007\202\001\004\020\001 \000' + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['target_id']._loaded_options = None + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['target_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['lineage_id']._loaded_options = None + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['lineage_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['operation_id']._loaded_options = None + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['operation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['command']._loaded_options = None + _globals['_SUBMITORBCOMMANDREQUEST'].fields_by_name['command']._serialized_options = b'\272H\003\310\001\001' + _globals['_SUBMITORBCOMMANDRESPONSE'].fields_by_name['acceptance']._loaded_options = None + _globals['_SUBMITORBCOMMANDRESPONSE'].fields_by_name['acceptance']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_GETORBOBSERVEDSTATEREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETORBOBSERVEDSTATEREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETORBOBSERVEDSTATEREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETORBOBSERVEDSTATEREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETORBOBSERVEDSTATEREQUEST'].fields_by_name['target_id']._loaded_options = None + _globals['_GETORBOBSERVEDSTATEREQUEST'].fields_by_name['target_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ORBOBSERVEDSTATE'].fields_by_name['lifecycle']._loaded_options = None + _globals['_ORBOBSERVEDSTATE'].fields_by_name['lifecycle']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_GETORBOBSERVEDSTATERESPONSE'].fields_by_name['state']._loaded_options = None + _globals['_GETORBOBSERVEDSTATERESPONSE'].fields_by_name['state']._serialized_options = b'\272H\003\310\001\001' + _globals['_ORBCONTROLEVENT'].fields_by_name['kind']._loaded_options = None + _globals['_ORBCONTROLEVENT'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_STREAMORBEVENTSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_STREAMORBEVENTSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STREAMORBEVENTSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_STREAMORBEVENTSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STREAMORBEVENTSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_STREAMORBEVENTSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\005*\003\030\364\003' + _globals['_STREAMORBEVENTSRESPONSE'].fields_by_name['events']._loaded_options = None + _globals['_STREAMORBEVENTSRESPONSE'].fields_by_name['events']._serialized_options = b'\272H\006\222\001\003\020\364\003' + _globals['_ORBCONTROLOWNERSERVICE'].methods_by_name['SubmitOrbCommand']._loaded_options = None + _globals['_ORBCONTROLOWNERSERVICE'].methods_by_name['SubmitOrbCommand']._serialized_options = b'\312\363\030\021orb:control:owner\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_ORBCONTROLOWNERSERVICE'].methods_by_name['GetOrbObservedState']._loaded_options = None + _globals['_ORBCONTROLOWNERSERVICE'].methods_by_name['GetOrbObservedState']._serialized_options = b'\312\363\030\021orb:control:owner\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_ORBCONTROLOWNERSERVICE'].methods_by_name['StreamOrbEvents']._loaded_options = None + _globals['_ORBCONTROLOWNERSERVICE'].methods_by_name['StreamOrbEvents']._serialized_options = b'\312\363\030\021orb:control:owner\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_ORBCOMMANDKIND']._serialized_start=2536 + _globals['_ORBCOMMANDKIND']._serialized_end=2640 + _globals['_ORBOBSERVEDLIFECYCLE']._serialized_start=2643 + _globals['_ORBOBSERVEDLIFECYCLE']._serialized_end=2966 + _globals['_ORBCOMMANDACCEPTANCE']._serialized_start=2969 + _globals['_ORBCOMMANDACCEPTANCE']._serialized_end=3142 + _globals['_ORBCONTROLEVENTKIND']._serialized_start=3145 + _globals['_ORBCONTROLEVENTKIND']._serialized_end=3423 + _globals['_ORBCOMMAND']._serialized_start=135 + _globals['_ORBCOMMAND']._serialized_end=210 + _globals['_SUBMITORBCOMMANDREQUEST']._serialized_start=213 + _globals['_SUBMITORBCOMMANDREQUEST']._serialized_end=614 + _globals['_SUBMITORBCOMMANDRESPONSE']._serialized_start=617 + _globals['_SUBMITORBCOMMANDRESPONSE']._serialized_end=995 + _globals['_GETORBOBSERVEDSTATEREQUEST']._serialized_start=998 + _globals['_GETORBOBSERVEDSTATEREQUEST']._serialized_end=1158 + _globals['_ORBOBSERVEDSTATE']._serialized_start=1161 + _globals['_ORBOBSERVEDSTATE']._serialized_end=1627 + _globals['_GETORBOBSERVEDSTATERESPONSE']._serialized_start=1629 + _globals['_GETORBOBSERVEDSTATERESPONSE']._serialized_end=1721 + _globals['_ORBCONTROLEVENT']._serialized_start=1724 + _globals['_ORBCONTROLEVENT']._serialized_end=2183 + _globals['_STREAMORBEVENTSREQUEST']._serialized_start=2186 + _globals['_STREAMORBEVENTSREQUEST']._serialized_end=2375 + _globals['_STREAMORBEVENTSRESPONSE']._serialized_start=2378 + _globals['_STREAMORBEVENTSRESPONSE']._serialized_end=2534 + _globals['_ORBCONTROLOWNERSERVICE']._serialized_start=3426 + _globals['_ORBCONTROLOWNERSERVICE']._serialized_end=3948 +# @@protoc_insertion_point(module_scope) diff --git a/src/remoterunner/v1/remoterunner_pb2.py b/src/remoterunner/v1/remoterunner_pb2.py new file mode 100644 index 0000000..9f823d2 --- /dev/null +++ b/src/remoterunner/v1/remoterunner_pb2.py @@ -0,0 +1,366 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: remoterunner/v1/remoterunner.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'remoterunner/v1/remoterunner.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 +from common.v1 import authz_pb2 as common_dot_v1_dot_authz__pb2 +from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 +from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"remoterunner/v1/remoterunner.proto\x12\x0fremoterunner.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x15\x63ommon/v1/authz.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xe8\x03\n\x19RunnerSessionOwnerBinding\x12&\n\nmission_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\x12-\n\x0eruntime_run_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cruntimeRunId\x12\x35\n\x12\x61uthority_grant_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x10\x61uthorityGrantId\x12\x32\n\x10\x63ontract_version\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0f\x63ontractVersion\x12.\n\x0erunner_profile\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rrunnerProfile\x12%\n\x0epolicy_version\x18\x06 \x01(\tR\rpolicyVersion\x12%\n\x0e\x64\x65\x63ision_route\x18\x07 \x01(\tR\rdecisionRoute\x12\x32\n\x15selected_candidate_id\x18\x08 \x01(\tR\x13selectedCandidateId\x12!\n\x0c\x64\x65\x63ision_ref\x18\t \x01(\tR\x0b\x64\x65\x63isionRef\x12\x34\n\x16\x64\x65\x63ision_digest_sha256\x18\n \x01(\tR\x14\x64\x65\x63isionDigestSha256\"\xc7\x02\n+AdoptRunnerSessionForComputerMissionRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12.\n\x0ereservation_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rreservationId\x12\x33\n\x11runner_session_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0frunnerSessionId\x12&\n\nmission_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tmissionId\x12-\n\x0eruntime_run_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0cruntimeRunId\"\xe5\x01\n,AdoptRunnerSessionForComputerMissionResponse\x12@\n\x07session\x18\x01 \x01(\x0b\x32\x1e.remoterunner.v1.RunnerSessionB\x06\xbaH\x03\xc8\x01\x01R\x07session\x12W\n\rowner_binding\x18\x02 \x01(\x0b\x32*.remoterunner.v1.RunnerSessionOwnerBindingB\x06\xbaH\x03\xc8\x01\x01R\x0cownerBinding\x12\x1a\n\x08replayed\x18\x03 \x01(\x08R\x08replayed\"\x88\x08\n\x1f\x45xecuteRunnerSessionStepRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12&\n\nsession_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsessionId\x12\x30\n\x0fidempotency_key\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12\x1c\n\x04\x61rgv\x18\x05 \x03(\tB\x08\xbaH\x05\x92\x01\x02\x10@R\x04\x61rgv\x12\x10\n\x03\x63wd\x18\x06 \x01(\tR\x03\x63wd\x12\x33\n\x0ftimeout_seconds\x18\x07 \x01(\rB\n\xbaH\x07*\x05\x18\x90\x1c(\x01R\x0etimeoutSeconds\x12T\n\rowner_binding\x18\x08 \x01(\x0b\x32*.remoterunner.v1.RunnerSessionOwnerBindingH\x00R\x0cownerBinding\x88\x01\x01\x12I\n\toperation\x18\t \x01(\x0e\x32+.remoterunner.v1.RunnerSessionStepOperationR\toperation\x12\x1f\n\x05stdin\x18\n \x01(\x0c\x42\t\xbaH\x06z\x04\x18\x80\x80@R\x05stdin\x12\x30\n\x14\x65xpected_snapshot_id\x18\x0b \x01(\tR\x12\x65xpectedSnapshotId\x12=\n\x1b\x65xpected_sandbox_session_id\x18\x0c \x01(\tR\x18\x65xpectedSandboxSessionId\x12.\n\x13\x65xpected_sandbox_id\x18\r \x01(\tR\x11\x65xpectedSandboxId\x12;\n\x1a\x65xpected_runner_session_id\x18\x0e \x01(\tR\x17\x65xpectedRunnerSessionId\x12\x34\n\x16\x65xpected_checkpoint_id\x18\x0f \x01(\tR\x14\x65xpectedCheckpointId\x12\x38\n\x18instruction_artifact_ref\x18\x10 \x01(\tR\x16instructionArtifactRef\x12:\n\x19instruction_digest_sha256\x18\x11 \x01(\tR\x17instructionDigestSha256\x12\x34\n\x16instruction_byte_count\x18\x12 \x01(\x04R\x14instructionByteCount\x12\x34\n\x16\x63laim_lease_generation\x18\x13 \x01(\x04R\x14\x63laimLeaseGenerationB\x10\n\x0e_owner_binding\"\xa5\x01\n\x13RunnerProviderProof\x12\x1a\n\x08provider\x18\x01 \x01(\tR\x08provider\x12#\n\rprovider_mode\x18\x02 \x01(\tR\x0cproviderMode\x12\x1b\n\tworker_id\x18\x03 \x01(\tR\x08workerId\x12\x30\n\x14runtime_image_digest\x18\x04 \x01(\tR\x12runtimeImageDigest\"\x9f\x03\n\x18RunnerSessionStepReceipt\x12\x1d\n\ncommand_id\x18\x01 \x01(\tR\tcommandId\x12\x1b\n\texit_code\x18\x02 \x01(\x05R\x08\x65xitCode\x12\x16\n\x06stdout\x18\x03 \x01(\tR\x06stdout\x12\x16\n\x06stderr\x18\x04 \x01(\tR\x06stderr\x12\x1a\n\x08replayed\x18\x05 \x01(\x08R\x08replayed\x12K\n\x0eprovider_proof\x18\x06 \x01(\x0b\x32$.remoterunner.v1.RunnerProviderProofR\rproviderProof\x12!\n\x0cstdin_sha256\x18\x07 \x01(\tR\x0bstdinSha256\x12-\n\x12output_unavailable\x18\x08 \x01(\x08R\x11outputUnavailable\x12\x30\n\x14output_digest_sha256\x18\t \x01(\tR\x12outputDigestSha256\x12*\n\x11output_byte_count\x18\n \x01(\x04R\x0foutputByteCount\"\x8b\x02\n ExecuteRunnerSessionStepResponse\x12\x43\n\x07receipt\x18\x01 \x01(\x0b\x32).remoterunner.v1.RunnerSessionStepReceiptR\x07receipt\x12\x39\n\x05\x65vent\x18\x02 \x01(\x0b\x32#.remoterunner.v1.RunnerSessionEventR\x05\x65vent\x12\x31\n\x0f\x61pex_mcp_output\x18\x03 \x01(\x0c\x42\t\xbaH\x06z\x04\x18\x80\x80@R\rapexMcpOutput\x12\x34\n\x10\x65phemeral_output\x18\x04 \x01(\x0c\x42\t\xbaH\x06z\x04\x18\x80\x80@R\x0f\x65phemeralOutput\"\xc6\x02\n$CreateRunnerSessionCheckpointRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12&\n\nsession_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsessionId\x12\x30\n\x0fidempotency_key\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12T\n\rowner_binding\x18\x05 \x01(\x0b\x32*.remoterunner.v1.RunnerSessionOwnerBindingH\x00R\x0cownerBinding\x88\x01\x01\x42\x10\n\x0e_owner_binding\"\x8d\x01\n\x1eRunnerSessionCheckpointReceipt\x12#\n\rcheckpoint_id\x18\x01 \x01(\tR\x0c\x63heckpointId\x12*\n\x11source_session_id\x18\x02 \x01(\tR\x0fsourceSessionId\x12\x1a\n\x08replayed\x18\x03 \x01(\x08R\x08replayed\"\xad\x01\n%CreateRunnerSessionCheckpointResponse\x12I\n\x07receipt\x18\x01 \x01(\x0b\x32/.remoterunner.v1.RunnerSessionCheckpointReceiptR\x07receipt\x12\x39\n\x05\x65vent\x18\x02 \x01(\x0b\x32#.remoterunner.v1.RunnerSessionEventR\x05\x65vent\"\xfe\x03\n\x18RunnerSessionRestoreSpec\x12\x37\n\x18source_runner_session_id\x18\x01 \x01(\tR\x15sourceRunnerSessionId\x12\x39\n\x19source_maestro_session_id\x18\x02 \x01(\tR\x16sourceMaestroSessionId\x12\x32\n\x15snapshot_artifact_uri\x18\x03 \x01(\tR\x13snapshotArtifactUri\x12\x34\n\x16snapshot_manifest_path\x18\x04 \x01(\tR\x14snapshotManifestPath\x12K\n\"snapshot_manifest_protocol_version\x18\x05 \x01(\tR\x1fsnapshotManifestProtocolVersion\x12\'\n\x0f\x61rtifact_digest\x18\x06 \x01(\tR\x0e\x61rtifactDigest\x12Y\n\x0e\x66\x61ilure_policy\x18\x07 \x01(\x0e\x32\x32.remoterunner.v1.RunnerSessionRestoreFailurePolicyR\rfailurePolicy\x12\x33\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\"\xcd\x02\n\x1aRunnerSessionRestoreStatus\x12@\n\x05state\x18\x01 \x01(\x0e\x32*.remoterunner.v1.RunnerSessionRestoreStateR\x05state\x12.\n\x13local_manifest_path\x18\x02 \x01(\tR\x11localManifestPath\x12\x32\n\x15hydrated_artifact_uri\x18\x03 \x01(\tR\x13hydratedArtifactUri\x12%\n\x0e\x66\x61ilure_reason\x18\x04 \x01(\tR\rfailureReason\x12\'\n\x0f\x66\x61ilure_message\x18\x05 \x01(\tR\x0e\x66\x61ilureMessage\x12\x39\n\nupdated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\"\xc3\r\n\rRunnerSession\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x03 \x01(\tR\x0bworkspaceId\x12\x17\n\x07user_id\x18\x04 \x01(\tR\x06userId\x12 \n\x0c\x61gent_run_id\x18\x05 \x01(\tR\nagentRunId\x12,\n\x12maestro_session_id\x18\x06 \x01(\tR\x10maestroSessionId\x12\x39\n\x05state\x18\x07 \x01(\x0e\x32#.remoterunner.v1.RunnerSessionStateR\x05state\x12%\n\x0erunner_profile\x18\x08 \x01(\tR\rrunnerProfile\x12!\n\x0crunner_image\x18\t \x01(\tR\x0brunnerImage\x12)\n\x10workspace_source\x18\n \x01(\tR\x0fworkspaceSource\x12\x19\n\x08repo_url\x18\x0b \x01(\tR\x07repoUrl\x12\x16\n\x06\x62ranch\x18\x0c \x01(\tR\x06\x62ranch\x12\x14\n\x05model\x18\r \x01(\tR\x05model\x12*\n\x11owner_instance_id\x18\x0e \x01(\tR\x0fownerInstanceId\x12\x30\n\x14runner_pod_namespace\x18\x0f \x01(\tR\x12runnerPodNamespace\x12&\n\x0frunner_pod_name\x18\x10 \x01(\tR\rrunnerPodName\x12.\n\x13runner_service_name\x18\x11 \x01(\tR\x11runnerServiceName\x12\x39\n\ncreated_at\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nstarted_at\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartedAt\x12\x39\n\nexpires_at\x18\x14 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x42\n\x0fidle_expires_at\x18\x15 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\ridleExpiresAt\x12\x39\n\nstopped_at\x18\x16 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstoppedAt\x12\x1f\n\x0bstop_reason\x18\x17 \x01(\tR\nstopReason\x12\x46\n\x11last_heartbeat_at\x18\x18 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0flastHeartbeatAt\x12.\n\x13used_runner_seconds\x18\x19 \x01(\x03R\x11usedRunnerSeconds\x12*\n\x11used_idle_seconds\x18\x1a \x01(\x03R\x0fusedIdleSeconds\x12\x32\n\x15\x65stimated_cost_micros\x18\x1b \x01(\x03R\x13\x65stimatedCostMicros\x12\x33\n\x08metadata\x18\x1c \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12\x36\n\x17reserved_runner_seconds\x18\x1d \x01(\x03R\x15reservedRunnerSeconds\x12\x30\n\x14reserved_cost_micros\x18\x1e \x01(\x03R\x12reservedCostMicros\x12I\n\x10resolved_profile\x18\x1f \x01(\x0b\x32\x1e.remoterunner.v1.RunnerProfileR\x0fresolvedProfile\x12\x43\n\x07restore\x18 \x01(\x0b\x32).remoterunner.v1.RunnerSessionRestoreSpecR\x07restore\x12R\n\x0erestore_status\x18! \x01(\x0b\x32+.remoterunner.v1.RunnerSessionRestoreStatusR\rrestoreStatus\x12\x62\n\x14\x61pex_authority_state\x18\" \x01(\x0e\x32\x30.remoterunner.v1.RunnerSessionApexAuthorityStateR\x12\x61pexAuthorityState\x12.\n\x13\x61pex_reservation_id\x18# \x01(\tR\x11\x61pexReservationId\"\xee\x01\n\x12RunnerSessionEvent\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1d\n\nsession_id\x18\x02 \x01(\tR\tsessionId\x12\x1a\n\x08sequence\x18\x03 \x01(\x03R\x08sequence\x12\x1d\n\nevent_type\x18\x04 \x01(\tR\teventType\x12;\n\x0boccurred_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12\x31\n\x07payload\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructR\x07payload\"\xcb\x02\n\x11RunnerAttachToken\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1d\n\nsession_id\x18\x02 \x01(\tR\tsessionId\x12\x1d\n\nsubject_id\x18\x03 \x01(\tR\tsubjectId\x12\x37\n\x05roles\x18\x04 \x03(\x0e\x32!.remoterunner.v1.RunnerAttachRoleR\x05roles\x12\x39\n\ncreated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nexpires_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x39\n\nrevoked_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\trevokedAt\"\x9a\n\n\rRunnerRestore\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x03 \x01(\tR\x0bworkspaceId\x12*\n\x11source_session_id\x18\x04 \x01(\tR\x0fsourceSessionId\x12*\n\x11target_session_id\x18\x05 \x01(\tR\x0ftargetSessionId\x12,\n\x12maestro_session_id\x18\x06 \x01(\tR\x10maestroSessionId\x12\x39\n\x05state\x18\x07 \x01(\x0e\x32#.remoterunner.v1.RunnerRestoreStateR\x05state\x12!\n\x0c\x61rtifact_ref\x18\x08 \x01(\tR\x0b\x61rtifactRef\x12#\n\rmanifest_path\x18\t \x01(\tR\x0cmanifestPath\x12%\n\x0erunner_profile\x18\n \x01(\tR\rrunnerProfile\x12!\n\x0crunner_image\x18\x0b \x01(\tR\x0brunnerImage\x12)\n\x10workspace_source\x18\x0c \x01(\tR\x0fworkspaceSource\x12\x19\n\x08repo_url\x18\r \x01(\tR\x07repoUrl\x12\x16\n\x06\x62ranch\x18\x0e \x01(\tR\x06\x62ranch\x12\x14\n\x05model\x18\x0f \x01(\tR\x05model\x12\x1f\n\x0bttl_minutes\x18\x10 \x01(\x05R\nttlMinutes\x12(\n\x10idle_ttl_minutes\x18\x11 \x01(\x05R\x0eidleTtlMinutes\x12*\n\x11owner_instance_id\x18\x12 \x01(\tR\x0fownerInstanceId\x12L\n\x0c\x66\x61ilure_code\x18\x13 \x01(\x0e\x32).remoterunner.v1.RunnerRestoreFailureCodeR\x0b\x66\x61ilureCode\x12\'\n\x0f\x66\x61ilure_message\x18\x14 \x01(\tR\x0e\x66\x61ilureMessage\x12=\n\x0crequested_at\x18\x15 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0brequestedAt\x12;\n\x0bhydrated_at\x18\x16 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nhydratedAt\x12J\n\x13provider_started_at\x18\x17 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x11providerStartedAt\x12\x46\n\x11identity_ready_at\x18\x18 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0fidentityReadyAt\x12?\n\rattachable_at\x18\x19 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0c\x61ttachableAt\x12\x37\n\tfailed_at\x18\x1a \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x08\x66\x61iledAt\x12\x39\n\nexpires_at\x18\x1b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x33\n\x08metadata\x18\x1c \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\"\xad\x05\n\x13RunnerAccountPolicy\x12?\n\x17max_concurrent_sessions\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x15maxConcurrentSessions\x12>\n\x17max_session_ttl_minutes\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x14maxSessionTtlMinutes\x12\x38\n\x14max_idle_ttl_minutes\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x11maxIdleTtlMinutes\x12=\n\x16monthly_runner_minutes\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x14monthlyRunnerMinutes\x12@\n\x18monthly_spend_cap_micros\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x15monthlySpendCapMicros\x12\x42\n\x19runner_minute_cost_micros\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x16runnerMinuteCostMicros\x12\x36\n\x17\x61llowed_runner_profiles\x18\x07 \x03(\tR\x15\x61llowedRunnerProfiles\x12%\n\x0e\x61llowed_models\x18\x08 \x03(\tR\rallowedModels\x12:\n\x19\x61llowed_workspace_sources\x18\t \x03(\tR\x17\x61llowedWorkspaceSources\x12\x36\n\x17operator_override_scope\x18\n \x01(\tR\x15operatorOverrideScope\x12\x43\n\x1eworkspace_scoped_usage_budgets\x18\x0b \x01(\x08R\x1bworkspaceScopedUsageBudgets\"\xb3\x02\n\x19RunnerAccountPolicyRecord\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12<\n\x06policy\x18\x03 \x01(\x0b\x32$.remoterunner.v1.RunnerAccountPolicyR\x06policy\x12\x39\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x16\n\x06source\x18\x06 \x01(\tR\x06source\"\xd2\x04\n\rRunnerProfile\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12!\n\x0c\x64isplay_name\x18\x02 \x01(\tR\x0b\x64isplayName\x12\x18\n\x07\x65nabled\x18\x03 \x01(\x08R\x07\x65nabled\x12.\n\x13\x64\x65\x66\x61ult_ttl_minutes\x18\x04 \x01(\x05R\x11\x64\x65\x66\x61ultTtlMinutes\x12&\n\x0fmax_ttl_minutes\x18\x05 \x01(\x05R\rmaxTtlMinutes\x12\x37\n\x18\x64\x65\x66\x61ult_idle_ttl_minutes\x18\x06 \x01(\x05R\x15\x64\x65\x66\x61ultIdleTtlMinutes\x12/\n\x14max_idle_ttl_minutes\x18\x07 \x01(\x05R\x11maxIdleTtlMinutes\x12\'\n\x0fisolation_level\x18\x08 \x01(\tR\x0eisolationLevel\x12\"\n\x0cinterruption\x18\t \x01(\tR\x0cinterruption\x12\x33\n\x15workspace_persistence\x18\n \x01(\tR\x14workspacePersistence\x12\x1d\n\ncost_class\x18\x0b \x01(\tR\tcostClass\x12<\n\x1ametering_multiplier_micros\x18\x0c \x01(\x03R\x18meteringMultiplierMicros\x12\"\n\x0c\x65xperimental\x18\r \x01(\x08R\x0c\x65xperimental\x12/\n\x13production_eligible\x18\x0e \x01(\x08R\x12productionEligible\"\xc7\x01\n\x19RunnerProfileAvailability\x12\x38\n\x07profile\x18\x01 \x01(\x0b\x32\x1e.remoterunner.v1.RunnerProfileR\x07profile\x12\x1c\n\tavailable\x18\x02 \x01(\x08R\tavailable\x12-\n\x12unavailable_reason\x18\x03 \x01(\tR\x11unavailableReason\x12#\n\rpolicy_source\x18\x04 \x01(\tR\x0cpolicySource\"\xaa\x01\n\x19ListRunnerProfilesRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12/\n\x13include_unavailable\x18\x03 \x01(\x08R\x12includeUnavailable\"d\n\x1aListRunnerProfilesResponse\x12\x46\n\x08profiles\x18\x01 \x03(\x0b\x32*.remoterunner.v1.RunnerProfileAvailabilityR\x08profiles\"\x8e\t\n\x18WorkspaceHydrationClaims\x12%\n\x0eschema_version\x18\x01 \x01(\rR\rschemaVersion\x12\x1f\n\x0b\x65nvelope_id\x18\x02 \x01(\tR\nenvelopeId\x12\'\n\x0forganization_id\x18\x03 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x04 \x01(\tR\x0bworkspaceId\x12.\n\x13source_workspace_id\x18\x05 \x01(\tR\x11sourceWorkspaceId\x12\x38\n\x18source_workspace_version\x18\x06 \x01(\tR\x16sourceWorkspaceVersion\x12,\n\x12source_revision_id\x18\x07 \x01(\tR\x10sourceRevisionId\x12\x32\n\x15immutable_snapshot_id\x18\x08 \x01(\tR\x13immutableSnapshotId\x12:\n\x19immutable_snapshot_digest\x18\t \x01(\tR\x17immutableSnapshotDigest\x12;\n\x1aworkspace_skill_set_digest\x18\n \x01(\tR\x17workspaceSkillSetDigest\x12\x32\n\x15\x63\x61pability_set_digest\x18\x0b \x01(\tR\x13\x63\x61pabilitySetDigest\x12*\n\x11runner_session_id\x18\x0c \x01(\tR\x0frunnerSessionId\x12,\n\x12maestro_session_id\x18\r \x01(\tR\x10maestroSessionId\x12-\n\x12runtime_generation\x18\x0e \x01(\x04R\x11runtimeGeneration\x12\x33\n\x15\x61\x63tivation_generation\x18\x0f \x01(\x04R\x14\x61\x63tivationGeneration\x12\x1a\n\x08\x61udience\x18\x10 \x01(\tR\x08\x61udience\x12 \n\x0cissued_at_ms\x18\x11 \x01(\x03R\nissuedAtMs\x12\"\n\rnot_before_ms\x18\x12 \x01(\x03R\x0bnotBeforeMs\x12\"\n\rexpires_at_ms\x18\x13 \x01(\x03R\x0b\x65xpiresAtMs\x12!\n\x0creplay_nonce\x18\x14 \x01(\tR\x0breplayNonce\x12:\n\x19\x65xtraction_policy_version\x18\x15 \x01(\tR\x17\x65xtractionPolicyVersion\x12%\n\x0epolicy_version\x18\x16 \x01(\tR\rpolicyVersion\x12!\n\x0c\x61rtifact_ref\x18\x17 \x01(\tR\x0b\x61rtifactRef\x12\'\n\x0fsigner_identity\x18\x18 \x01(\tR\x0esignerIdentity\x12\x15\n\x06key_id\x18\x19 \x01(\tR\x05keyId\x12\x1b\n\tmax_files\x18\x1a \x01(\x04R\x08maxFiles\x12\x1b\n\tmax_bytes\x18\x1b \x01(\x04R\x08maxBytes\"\x8e\x01\n\x1aWorkspaceHydrationEnvelope\x12I\n\x06\x63laims\x18\x01 \x01(\x0b\x32).remoterunner.v1.WorkspaceHydrationClaimsB\x06\xbaH\x03\xc8\x01\x01R\x06\x63laims\x12%\n\tsignature\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsignature\"\xe8\x07\n\x1a\x43reateRunnerSessionRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x17\n\x07user_id\x18\x03 \x01(\tR\x06userId\x12\x30\n\x0fidempotency_key\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12.\n\x0erunner_profile\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rrunnerProfile\x12!\n\x0crunner_image\x18\x06 \x01(\tR\x0brunnerImage\x12)\n\x10workspace_source\x18\x07 \x01(\tR\x0fworkspaceSource\x12\x19\n\x08repo_url\x18\x08 \x01(\tR\x07repoUrl\x12\x16\n\x06\x62ranch\x18\t \x01(\tR\x06\x62ranch\x12\x14\n\x05model\x18\n \x01(\tR\x05model\x12+\n\x0bttl_minutes\x18\x0b \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xa0\x0b(\x01R\nttlMinutes\x12\x34\n\x10idle_ttl_minutes\x18\x0c \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xa0\x0b(\x00R\x0eidleTtlMinutes\x12\x33\n\x08metadata\x18\r \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12\x43\n\x07restore\x18\x0e \x01(\x0b\x32).remoterunner.v1.RunnerSessionRestoreSpecR\x07restore\x12 \n\x0c\x61gent_run_id\x18\x0f \x01(\tR\nagentRunId\x12,\n\x12maestro_session_id\x18\x10 \x01(\tR\x10maestroSessionId\x12.\n\x13\x61pex_reservation_id\x18\x11 \x01(\tR\x11\x61pexReservationId\x12*\n\x11runner_session_id\x18\x12 \x01(\tR\x0frunnerSessionId\x12-\n\x12runtime_generation\x18\x13 \x01(\x04R\x11runtimeGeneration\x12\x33\n\x15\x61\x63tivation_generation\x18\x14 \x01(\x04R\x14\x61\x63tivationGeneration\x12m\n\x1cworkspace_hydration_envelope\x18\x15 \x01(\x0b\x32+.remoterunner.v1.WorkspaceHydrationEnvelopeR\x1aworkspaceHydrationEnvelope\"\xb0\x01\n\x1b\x43reateRunnerSessionResponse\x12\x38\n\x07session\x18\x01 \x01(\x0b\x32\x1e.remoterunner.v1.RunnerSessionR\x07session\x12;\n\x06\x65vents\x18\x02 \x03(\x0b\x32#.remoterunner.v1.RunnerSessionEventR\x06\x65vents\x12\x1a\n\x08replayed\x18\x03 \x01(\x08R\x08replayed\"A\n\x17GetRunnerSessionRequest\x12&\n\nsession_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsessionId\"T\n\x18GetRunnerSessionResponse\x12\x38\n\x07session\x18\x01 \x01(\x0b\x32\x1e.remoterunner.v1.RunnerSessionR\x07session\"\xf7\x01\n\x19ListRunnerSessionsRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x39\n\x05state\x18\x03 \x01(\x0e\x32#.remoterunner.v1.RunnerSessionStateR\x05state\x12 \n\x05limit\x18\x04 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xc8\x01(\x00R\x05limit\x12\x1f\n\x06offset\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"y\n\x1aListRunnerSessionsResponse\x12:\n\x08sessions\x18\x01 \x03(\x0b\x32\x1e.remoterunner.v1.RunnerSessionR\x08sessions\x12\x1f\n\x0bnext_offset\x18\x02 \x01(\x05R\nnextOffset\"\xc5\x07\n\x1a\x43reateRunnerRestoreRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x17\n\x07user_id\x18\x03 \x01(\tR\x06userId\x12\x30\n\x0fidempotency_key\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12*\n\x11source_session_id\x18\x05 \x01(\tR\x0fsourceSessionId\x12,\n\x12maestro_session_id\x18\x06 \x01(\tR\x10maestroSessionId\x12!\n\x0c\x61rtifact_ref\x18\x07 \x01(\tR\x0b\x61rtifactRef\x12#\n\rmanifest_path\x18\x08 \x01(\tR\x0cmanifestPath\x12.\n\x0erunner_profile\x18\t \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rrunnerProfile\x12!\n\x0crunner_image\x18\n \x01(\tR\x0brunnerImage\x12)\n\x10workspace_source\x18\x0b \x01(\tR\x0fworkspaceSource\x12\x19\n\x08repo_url\x18\x0c \x01(\tR\x07repoUrl\x12\x16\n\x06\x62ranch\x18\r \x01(\tR\x06\x62ranch\x12\x14\n\x05model\x18\x0e \x01(\tR\x05model\x12+\n\x0bttl_minutes\x18\x0f \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xa0\x0b(\x01R\nttlMinutes\x12\x34\n\x10idle_ttl_minutes\x18\x10 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xa0\x0b(\x00R\x0eidleTtlMinutes\x12\x33\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12*\n\x11runner_session_id\x18\x12 \x01(\tR\x0frunnerSessionId\x12-\n\x12runtime_generation\x18\x13 \x01(\x04R\x11runtimeGeneration\x12\x33\n\x15\x61\x63tivation_generation\x18\x14 \x01(\x04R\x14\x61\x63tivationGeneration\x12m\n\x1cworkspace_hydration_envelope\x18\x15 \x01(\x0b\x32+.remoterunner.v1.WorkspaceHydrationEnvelopeR\x1aworkspaceHydrationEnvelope\"\xea\x01\n\x1b\x43reateRunnerRestoreResponse\x12\x38\n\x07restore\x18\x01 \x01(\x0b\x32\x1e.remoterunner.v1.RunnerRestoreR\x07restore\x12\x38\n\x07session\x18\x02 \x01(\x0b\x32\x1e.remoterunner.v1.RunnerSessionR\x07session\x12;\n\x06\x65vents\x18\x03 \x03(\x0b\x32#.remoterunner.v1.RunnerSessionEventR\x06\x65vents\x12\x1a\n\x08replayed\x18\x04 \x01(\x08R\x08replayed\"\x9f\x01\n\x17GetRunnerRestoreRequest\x12&\n\nrestore_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\trestoreId\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"T\n\x18GetRunnerRestoreResponse\x12\x38\n\x07restore\x18\x01 \x01(\x0b\x32\x1e.remoterunner.v1.RunnerRestoreR\x07restore\"\xf7\x01\n\x19ListRunnerRestoresRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x39\n\x05state\x18\x03 \x01(\x0e\x32#.remoterunner.v1.RunnerRestoreStateR\x05state\x12 \n\x05limit\x18\x04 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xc8\x01(\x00R\x05limit\x12\x1f\n\x06offset\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\"y\n\x1aListRunnerRestoresResponse\x12:\n\x08restores\x18\x01 \x03(\x0b\x32\x1e.remoterunner.v1.RunnerRestoreR\x08restores\x12\x1f\n\x0bnext_offset\x18\x02 \x01(\x05R\nnextOffset\"\xb8\x01\n\x18StopRunnerSessionRequest\x12&\n\nsession_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsessionId\x12\x16\n\x06reason\x18\x02 \x01(\tR\x06reason\x12\x30\n\x0forganization_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"\x90\x01\n\x19StopRunnerSessionResponse\x12\x38\n\x07session\x18\x01 \x01(\x0b\x32\x1e.remoterunner.v1.RunnerSessionR\x07session\x12\x39\n\x05\x65vent\x18\x02 \x01(\x0b\x32#.remoterunner.v1.RunnerSessionEventR\x05\x65vent\"\xdb\x01\n\x1a\x45xtendRunnerSessionRequest\x12&\n\nsession_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsessionId\x12\x39\n\x12\x61\x64\x64itional_minutes\x18\x02 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xa0\x0b(\x01R\x11\x61\x64\x64itionalMinutes\x12\x42\n\x17\x61\x64\x64itional_idle_minutes\x18\x03 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xa0\x0b(\x00R\x15\x61\x64\x64itionalIdleMinutes\x12\x16\n\x06reason\x18\x04 \x01(\tR\x06reason\"\x92\x01\n\x1b\x45xtendRunnerSessionResponse\x12\x38\n\x07session\x18\x01 \x01(\x0b\x32\x1e.remoterunner.v1.RunnerSessionR\x07session\x12\x39\n\x05\x65vent\x18\x02 \x01(\x0b\x32#.remoterunner.v1.RunnerSessionEventR\x05\x65vent\"\xc4\x01\n\x16MintAttachTokenRequest\x12&\n\nsession_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsessionId\x12\x1d\n\nsubject_id\x18\x02 \x01(\tR\tsubjectId\x12\x37\n\x05roles\x18\x03 \x03(\x0e\x32!.remoterunner.v1.RunnerAttachRoleR\x05roles\x12*\n\x0bttl_minutes\x18\x04 \x01(\x05\x42\t\xbaH\x06\x1a\x04\x18<(\x00R\nttlMinutes\"\xd2\x01\n\x17MintAttachTokenResponse\x12\x38\n\x05token\x18\x01 \x01(\x0b\x32\".remoterunner.v1.RunnerAttachTokenR\x05token\x12!\n\x0ctoken_secret\x18\x02 \x01(\tR\x0btokenSecret\x12*\n\x11owner_instance_id\x18\x03 \x01(\tR\x0fownerInstanceId\x12.\n\x13runner_service_name\x18\x04 \x01(\tR\x11runnerServiceName\"f\n\x18RevokeAttachTokenRequest\x12&\n\nsession_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsessionId\x12\"\n\x08token_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07tokenId\"\x90\x01\n\x19RevokeAttachTokenResponse\x12\x38\n\x05token\x18\x01 \x01(\x0b\x32\".remoterunner.v1.RunnerAttachTokenR\x05token\x12\x39\n\x05\x65vent\x18\x02 \x01(\x0b\x32#.remoterunner.v1.RunnerSessionEventR\x05\x65vent\"\xf8\x01\n\x1eListRunnerSessionEventsRequest\x12&\n\nsession_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsessionId\x12.\n\x0e\x61\x66ter_sequence\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\rafterSequence\x12 \n\x05limit\x18\x03 \x01(\x05\x42\n\xbaH\x07\x1a\x05\x18\xf4\x03(\x00R\x05limit\x12\x30\n\x0forganization_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"\x83\x01\n\x1fListRunnerSessionEventsResponse\x12;\n\x06\x65vents\x18\x01 \x03(\x0b\x32#.remoterunner.v1.RunnerSessionEventR\x06\x65vents\x12#\n\rnext_sequence\x18\x02 \x01(\x03R\x0cnextSequence\"\xaf\x03\n+RecordRunnerSessionArtifactLifecycleRequest\x12&\n\nsession_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tsessionId\x12K\n\x0e\x61rtifact_class\x18\x02 \x01(\x0e\x32$.remoterunner.v1.RunnerArtifactClassR\rartifactClass\x12\x43\n\x05state\x18\x03 \x01(\x0e\x32-.remoterunner.v1.RunnerArtifactLifecycleStateR\x05state\x12!\n\x0c\x61rtifact_uri\x18\x04 \x01(\tR\x0b\x61rtifactUri\x12#\n\rmanifest_path\x18\x05 \x01(\tR\x0cmanifestPath\x12\x16\n\x06reason\x18\x06 \x01(\tR\x06reason\x12\x18\n\x07message\x18\x07 \x01(\tR\x07message\x12L\n\x14retention_expires_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x12retentionExpiresAt\"\xa3\x01\n,RecordRunnerSessionArtifactLifecycleResponse\x12\x38\n\x07session\x18\x01 \x01(\x0b\x32\x1e.remoterunner.v1.RunnerSessionR\x07session\x12\x39\n\x05\x65vent\x18\x02 \x01(\x0b\x32#.remoterunner.v1.RunnerSessionEventR\x05\x65vent\"t\n\x1dGetRunnerAccountPolicyRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\"d\n\x1eGetRunnerAccountPolicyResponse\x12\x42\n\x06policy\x18\x01 \x01(\x0b\x32*.remoterunner.v1.RunnerAccountPolicyRecordR\x06policy\"\xb5\x01\n UpsertRunnerAccountPolicyRequest\x12\x30\n\x0forganization_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12<\n\x06policy\x18\x03 \x01(\x0b\x32$.remoterunner.v1.RunnerAccountPolicyR\x06policy\"g\n!UpsertRunnerAccountPolicyResponse\x12\x42\n\x06policy\x18\x01 \x01(\x0b\x32*.remoterunner.v1.RunnerAccountPolicyRecordR\x06policy\">\n\x10GetStatusRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\"}\n\x11GetStatusResponse\x12\x18\n\x07service\x18\x01 \x01(\tR\x07service\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12+\n\x11\x64ownstream_policy\x18\x03 \x01(\tR\x10\x64ownstreamPolicy*\xaf\x05\n\x1aRunnerSessionStepOperation\x12-\n)RUNNER_SESSION_STEP_OPERATION_UNSPECIFIED\x10\x00\x12)\n%RUNNER_SESSION_STEP_OPERATION_GENERIC\x10\x01\x12.\n*RUNNER_SESSION_STEP_OPERATION_APEX_HYDRATE\x10\x02\x12/\n+RUNNER_SESSION_STEP_OPERATION_APEX_DISCOVER\x10\x03\x12-\n)RUNNER_SESSION_STEP_OPERATION_APEX_FREEZE\x10\x04\x12,\n(RUNNER_SESSION_STEP_OPERATION_APEX_GRADE\x10\x05\x12/\n+RUNNER_SESSION_STEP_OPERATION_APEX_MCP_CALL\x10\x06\x12\x33\n/RUNNER_SESSION_STEP_OPERATION_APEX_STAGE_INPUTS\x10\x07\x12\x34\n0RUNNER_SESSION_STEP_OPERATION_APEX_STAGE_GRADING\x10\x08\x12\x38\n4RUNNER_SESSION_STEP_OPERATION_APEX_TASK_INSTRUCTIONS\x10\t\"\x04\x08\n\x10\n\"\x04\x08\x0b\x10\x0b\"\x04\x08\x0c\x10\x0c*,RUNNER_SESSION_STEP_OPERATION_COMPUTER_SHELL*0RUNNER_SESSION_STEP_OPERATION_COMPUTER_READ_FILE*1RUNNER_SESSION_STEP_OPERATION_COMPUTER_WRITE_FILE*\xed\x02\n\x12RunnerSessionState\x12$\n RUNNER_SESSION_STATE_UNSPECIFIED\x10\x00\x12\"\n\x1eRUNNER_SESSION_STATE_REQUESTED\x10\x01\x12%\n!RUNNER_SESSION_STATE_PROVISIONING\x10\x02\x12 \n\x1cRUNNER_SESSION_STATE_RUNNING\x10\x03\x12\x1d\n\x19RUNNER_SESSION_STATE_IDLE\x10\x04\x12!\n\x1dRUNNER_SESSION_STATE_STOPPING\x10\x05\x12 \n\x1cRUNNER_SESSION_STATE_STOPPED\x10\x06\x12 \n\x1cRUNNER_SESSION_STATE_EXPIRED\x10\x07\x12\x1f\n\x1bRUNNER_SESSION_STATE_FAILED\x10\x08\x12\x1d\n\x19RUNNER_SESSION_STATE_LOST\x10\t*\x96\x01\n\x10RunnerAttachRole\x12\"\n\x1eRUNNER_ATTACH_ROLE_UNSPECIFIED\x10\x00\x12\x1d\n\x19RUNNER_ATTACH_ROLE_VIEWER\x10\x01\x12!\n\x1dRUNNER_ATTACH_ROLE_CONTROLLER\x10\x02\x12\x1c\n\x18RUNNER_ATTACH_ROLE_ADMIN\x10\x03*\x90\x03\n\x19RunnerSessionRestoreState\x12,\n(RUNNER_SESSION_RESTORE_STATE_UNSPECIFIED\x10\x00\x12*\n&RUNNER_SESSION_RESTORE_STATE_REQUESTED\x10\x01\x12\x34\n0RUNNER_SESSION_RESTORE_STATE_ARTIFACTS_HYDRATING\x10\x02\x12\x32\n.RUNNER_SESSION_RESTORE_STATE_PROVIDER_STARTING\x10\x03\x12/\n+RUNNER_SESSION_RESTORE_STATE_IDENTITY_READY\x10\x04\x12+\n\'RUNNER_SESSION_RESTORE_STATE_ATTACHABLE\x10\x05\x12\'\n#RUNNER_SESSION_RESTORE_STATE_FAILED\x10\x06\x12(\n$RUNNER_SESSION_RESTORE_STATE_EXPIRED\x10\x07*\xc8\x01\n!RunnerSessionRestoreFailurePolicy\x12\x35\n1RUNNER_SESSION_RESTORE_FAILURE_POLICY_UNSPECIFIED\x10\x00\x12\x36\n2RUNNER_SESSION_RESTORE_FAILURE_POLICY_FAIL_SESSION\x10\x01\x12\x34\n0RUNNER_SESSION_RESTORE_FAILURE_POLICY_COLD_START\x10\x02*\xc9\x02\n\x12RunnerRestoreState\x12$\n RUNNER_RESTORE_STATE_UNSPECIFIED\x10\x00\x12\"\n\x1eRUNNER_RESTORE_STATE_REQUESTED\x10\x01\x12,\n(RUNNER_RESTORE_STATE_ARTIFACTS_HYDRATING\x10\x02\x12*\n&RUNNER_RESTORE_STATE_PROVIDER_STARTING\x10\x03\x12\'\n#RUNNER_RESTORE_STATE_IDENTITY_READY\x10\x04\x12#\n\x1fRUNNER_RESTORE_STATE_ATTACHABLE\x10\x05\x12\x1f\n\x1bRUNNER_RESTORE_STATE_FAILED\x10\x06\x12 \n\x1cRUNNER_RESTORE_STATE_EXPIRED\x10\x07*\x8f\x04\n\x18RunnerRestoreFailureCode\x12+\n\'RUNNER_RESTORE_FAILURE_CODE_UNSPECIFIED\x10\x00\x12\x30\n,RUNNER_RESTORE_FAILURE_CODE_MISSING_ARTIFACT\x10\x01\x12\x30\n,RUNNER_RESTORE_FAILURE_CODE_INVALID_MANIFEST\x10\x02\x12\x30\n,RUNNER_RESTORE_FAILURE_CODE_WORKSPACE_ESCAPE\x10\x03\x12\x30\n,RUNNER_RESTORE_FAILURE_CODE_PROVIDER_TIMEOUT\x10\x04\x12\x31\n-RUNNER_RESTORE_FAILURE_CODE_RUNTIME_NOT_READY\x10\x05\x12.\n*RUNNER_RESTORE_FAILURE_CODE_OWNER_MISMATCH\x10\x06\x12\x35\n1RUNNER_RESTORE_FAILURE_CODE_HYDRATION_UNAVAILABLE\x10\x07\x12-\n)RUNNER_RESTORE_FAILURE_CODE_POLICY_DENIED\x10\x08\x12\x35\n1RUNNER_RESTORE_FAILURE_CODE_SESSION_CREATE_FAILED\x10\t*\xee\x01\n\x13RunnerArtifactClass\x12%\n!RUNNER_ARTIFACT_CLASS_UNSPECIFIED\x10\x00\x12\x30\n,RUNNER_ARTIFACT_CLASS_CONTROL_PLANE_METADATA\x10\x01\x12*\n&RUNNER_ARTIFACT_CLASS_WORKSPACE_EXPORT\x10\x02\x12*\n&RUNNER_ARTIFACT_CLASS_RUNTIME_SNAPSHOT\x10\x03\x12&\n\"RUNNER_ARTIFACT_CLASS_RUNTIME_LOGS\x10\x04*\xb5\x03\n\x1cRunnerArtifactLifecycleState\x12/\n+RUNNER_ARTIFACT_LIFECYCLE_STATE_UNSPECIFIED\x10\x00\x12\x34\n0RUNNER_ARTIFACT_LIFECYCLE_STATE_UPLOAD_REQUESTED\x10\x01\x12,\n(RUNNER_ARTIFACT_LIFECYCLE_STATE_UPLOADED\x10\x02\x12\x32\n.RUNNER_ARTIFACT_LIFECYCLE_STATE_UPLOAD_SKIPPED\x10\x03\x12\x35\n1RUNNER_ARTIFACT_LIFECYCLE_STATE_RETENTION_EXPIRED\x10\x04\x12\x34\n0RUNNER_ARTIFACT_LIFECYCLE_STATE_DELETE_REQUESTED\x10\x05\x12+\n\'RUNNER_ARTIFACT_LIFECYCLE_STATE_DELETED\x10\x06\x12\x32\n.RUNNER_ARTIFACT_LIFECYCLE_STATE_CLEANUP_FAILED\x10\x07*\xc1\x02\n\x1fRunnerSessionApexAuthorityState\x12\x33\n/RUNNER_SESSION_APEX_AUTHORITY_STATE_UNSPECIFIED\x10\x00\x12\x34\n0RUNNER_SESSION_APEX_AUTHORITY_STATE_NOT_REQUIRED\x10\x01\x12;\n7RUNNER_SESSION_APEX_AUTHORITY_STATE_PENDING_RESERVATION\x10\x02\x12=\n9RUNNER_SESSION_APEX_AUTHORITY_STATE_RESERVATION_VALIDATED\x10\x03\x12\x37\n3RUNNER_SESSION_APEX_AUTHORITY_STATE_MISSION_ADOPTED\x10\x04\x32\x96\x1d\n\x13RemoteRunnerService\x12\xa4\x01\n\x12ListRunnerProfiles\x12*.remoterunner.v1.ListRunnerProfilesRequest\x1a+.remoterunner.v1.ListRunnerProfilesResponse\"5\xca\xf3\x18\x12remote-runner:read\xd8\xf3\x18\x01\x82\xd3\xe4\x93\x02\x15\x12\x13/v1/runner-profiles\x12\xab\x01\n\x13\x43reateRunnerSession\x12+.remoterunner.v1.CreateRunnerSessionRequest\x1a,.remoterunner.v1.CreateRunnerSessionResponse\"9\xca\xf3\x18\x13remote-runner:write\xd8\xf3\x18\x03\x82\xd3\xe4\x93\x02\x18\"\x13/v1/runner-sessions:\x01*\x12\x89\x02\n$AdoptRunnerSessionForComputerMission\x12<.remoterunner.v1.AdoptRunnerSessionForComputerMissionRequest\x1a=.remoterunner.v1.AdoptRunnerSessionForComputerMissionResponse\"d\xca\xf3\x18\x13remote-runner:write\xd8\xf3\x18\x03\x82\xd3\xe4\x93\x02\x43\">/v1/runner-sessions/{runner_session_id}/adopt-computer-mission:\x01*\x12\xab\x01\n\x10GetRunnerSession\x12(.remoterunner.v1.GetRunnerSessionRequest\x1a).remoterunner.v1.GetRunnerSessionResponse\"B\xca\xf3\x18\x12remote-runner:read\xd8\xf3\x18\x01\x82\xd3\xe4\x93\x02\"\x12 /v1/runner-sessions/{session_id}\x12\xa4\x01\n\x12ListRunnerSessions\x12*.remoterunner.v1.ListRunnerSessionsRequest\x1a+.remoterunner.v1.ListRunnerSessionsResponse\"5\xca\xf3\x18\x12remote-runner:read\xd8\xf3\x18\x01\x82\xd3\xe4\x93\x02\x15\x12\x13/v1/runner-sessions\x12\xab\x01\n\x13\x43reateRunnerRestore\x12+.remoterunner.v1.CreateRunnerRestoreRequest\x1a,.remoterunner.v1.CreateRunnerRestoreResponse\"9\xca\xf3\x18\x13remote-runner:write\xd8\xf3\x18\x02\x82\xd3\xe4\x93\x02\x18\"\x13/v1/runner-restores:\x01*\x12\xab\x01\n\x10GetRunnerRestore\x12(.remoterunner.v1.GetRunnerRestoreRequest\x1a).remoterunner.v1.GetRunnerRestoreResponse\"B\xca\xf3\x18\x12remote-runner:read\xd8\xf3\x18\x01\x82\xd3\xe4\x93\x02\"\x12 /v1/runner-restores/{restore_id}\x12\xa4\x01\n\x12ListRunnerRestores\x12*.remoterunner.v1.ListRunnerRestoresRequest\x1a+.remoterunner.v1.ListRunnerRestoresResponse\"5\xca\xf3\x18\x12remote-runner:read\xd8\xf3\x18\x01\x82\xd3\xe4\x93\x02\x15\x12\x13/v1/runner-restores\x12\xb7\x01\n\x11StopRunnerSession\x12).remoterunner.v1.StopRunnerSessionRequest\x1a*.remoterunner.v1.StopRunnerSessionResponse\"K\xca\xf3\x18\x13remote-runner:write\xd8\xf3\x18\x02\x82\xd3\xe4\x93\x02*\"%/v1/runner-sessions/{session_id}/stop:\x01*\x12\xbf\x01\n\x13\x45xtendRunnerSession\x12+.remoterunner.v1.ExtendRunnerSessionRequest\x1a,.remoterunner.v1.ExtendRunnerSessionResponse\"M\xca\xf3\x18\x13remote-runner:write\xd8\xf3\x18\x02\x82\xd3\xe4\x93\x02,\"\'/v1/runner-sessions/{session_id}/extend:\x01*\x12\xb9\x01\n\x0fMintAttachToken\x12\'.remoterunner.v1.MintAttachTokenRequest\x1a(.remoterunner.v1.MintAttachTokenResponse\"S\xca\xf3\x18\x13remote-runner:write\xd8\xf3\x18\x03\x82\xd3\xe4\x93\x02\x32\"-/v1/runner-sessions/{session_id}/attach-token:\x01*\x12\xd2\x01\n\x11RevokeAttachToken\x12).remoterunner.v1.RevokeAttachTokenRequest\x1a*.remoterunner.v1.RevokeAttachTokenResponse\"f\xca\xf3\x18\x13remote-runner:write\xd8\xf3\x18\x03\x82\xd3\xe4\x93\x02\x45\"@/v1/runner-sessions/{session_id}/attach-tokens/{token_id}/revoke:\x01*\x12\xc7\x01\n\x17ListRunnerSessionEvents\x12/.remoterunner.v1.ListRunnerSessionEventsRequest\x1a\x30.remoterunner.v1.ListRunnerSessionEventsResponse\"I\xca\xf3\x18\x12remote-runner:read\xd8\xf3\x18\x01\x82\xd3\xe4\x93\x02)\x12\'/v1/runner-sessions/{session_id}/events\x12\xfe\x01\n$RecordRunnerSessionArtifactLifecycle\x12<.remoterunner.v1.RecordRunnerSessionArtifactLifecycleRequest\x1a=.remoterunner.v1.RecordRunnerSessionArtifactLifecycleResponse\"Y\xca\xf3\x18\x13remote-runner:admin\xd8\xf3\x18\x02\x82\xd3\xe4\x93\x02\x38\"3/v1/runner-sessions/{session_id}/artifact-lifecycle:\x01*\x12\xcf\x01\n\x18\x45xecuteRunnerSessionStep\x12\x30.remoterunner.v1.ExecuteRunnerSessionStepRequest\x1a\x31.remoterunner.v1.ExecuteRunnerSessionStepResponse\"N\xca\xf3\x18\x15remote-runner:execute\xd8\xf3\x18\x03\x82\xd3\xe4\x93\x02+\"&/v1/runner-sessions/{session_id}/steps:\x01*\x12\xe2\x01\n\x1d\x43reateRunnerSessionCheckpoint\x12\x35.remoterunner.v1.CreateRunnerSessionCheckpointRequest\x1a\x36.remoterunner.v1.CreateRunnerSessionCheckpointResponse\"R\xca\xf3\x18\x13remote-runner:write\xd8\xf3\x18\x03\x82\xd3\xe4\x93\x02\x31\",/v1/runner-sessions/{session_id}/checkpoints:\x01*\x12\xcb\x01\n\x16GetRunnerAccountPolicy\x12..remoterunner.v1.GetRunnerAccountPolicyRequest\x1a/.remoterunner.v1.GetRunnerAccountPolicyResponse\"P\xca\xf3\x18\x13remote-runner:admin\xd8\xf3\x18\x01\x82\xd3\xe4\x93\x02/\x12-/v1/runner-account-policies/{organization_id}\x12\xd7\x01\n\x19UpsertRunnerAccountPolicy\x12\x31.remoterunner.v1.UpsertRunnerAccountPolicyRequest\x1a\x32.remoterunner.v1.UpsertRunnerAccountPolicyResponse\"S\xca\xf3\x18\x13remote-runner:admin\xd8\xf3\x18\x04\x82\xd3\xe4\x93\x02\x32\x1a-/v1/runner-account-policies/{organization_id}:\x01*\x12\x8e\x01\n\tGetStatus\x12!.remoterunner.v1.GetStatusRequest\x1a\".remoterunner.v1.GetStatusResponse\":\xca\xf3\x18\x12remote-runner:read\xd8\xf3\x18\x01\x82\xd3\xe4\x93\x02\x1a\x12\x18/v1/remote-runner/statusBCZAgithub.com/evalops/platform/gen/go/remoterunner/v1;remoterunnerv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'remoterunner.v1.remoterunner_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'ZAgithub.com/evalops/platform/gen/go/remoterunner/v1;remoterunnerv1' + _globals['_RUNNERSESSIONOWNERBINDING'].fields_by_name['mission_id']._loaded_options = None + _globals['_RUNNERSESSIONOWNERBINDING'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RUNNERSESSIONOWNERBINDING'].fields_by_name['runtime_run_id']._loaded_options = None + _globals['_RUNNERSESSIONOWNERBINDING'].fields_by_name['runtime_run_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RUNNERSESSIONOWNERBINDING'].fields_by_name['authority_grant_id']._loaded_options = None + _globals['_RUNNERSESSIONOWNERBINDING'].fields_by_name['authority_grant_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RUNNERSESSIONOWNERBINDING'].fields_by_name['contract_version']._loaded_options = None + _globals['_RUNNERSESSIONOWNERBINDING'].fields_by_name['contract_version']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RUNNERSESSIONOWNERBINDING'].fields_by_name['runner_profile']._loaded_options = None + _globals['_RUNNERSESSIONOWNERBINDING'].fields_by_name['runner_profile']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['reservation_id']._loaded_options = None + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['reservation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['runner_session_id']._loaded_options = None + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['runner_session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._loaded_options = None + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['mission_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['runtime_run_id']._loaded_options = None + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST'].fields_by_name['runtime_run_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONRESPONSE'].fields_by_name['session']._loaded_options = None + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONRESPONSE'].fields_by_name['session']._serialized_options = b'\272H\003\310\001\001' + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONRESPONSE'].fields_by_name['owner_binding']._loaded_options = None + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONRESPONSE'].fields_by_name['owner_binding']._serialized_options = b'\272H\003\310\001\001' + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['session_id']._loaded_options = None + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['argv']._loaded_options = None + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['argv']._serialized_options = b'\272H\005\222\001\002\020@' + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['timeout_seconds']._loaded_options = None + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['timeout_seconds']._serialized_options = b'\272H\007*\005\030\220\034(\001' + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['stdin']._loaded_options = None + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST'].fields_by_name['stdin']._serialized_options = b'\272H\006z\004\030\200\200@' + _globals['_EXECUTERUNNERSESSIONSTEPRESPONSE'].fields_by_name['apex_mcp_output']._loaded_options = None + _globals['_EXECUTERUNNERSESSIONSTEPRESPONSE'].fields_by_name['apex_mcp_output']._serialized_options = b'\272H\006z\004\030\200\200@' + _globals['_EXECUTERUNNERSESSIONSTEPRESPONSE'].fields_by_name['ephemeral_output']._loaded_options = None + _globals['_EXECUTERUNNERSESSIONSTEPRESPONSE'].fields_by_name['ephemeral_output']._serialized_options = b'\272H\006z\004\030\200\200@' + _globals['_CREATERUNNERSESSIONCHECKPOINTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_CREATERUNNERSESSIONCHECKPOINTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERSESSIONCHECKPOINTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CREATERUNNERSESSIONCHECKPOINTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERSESSIONCHECKPOINTREQUEST'].fields_by_name['session_id']._loaded_options = None + _globals['_CREATERUNNERSESSIONCHECKPOINTREQUEST'].fields_by_name['session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERSESSIONCHECKPOINTREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CREATERUNNERSESSIONCHECKPOINTREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['max_concurrent_sessions']._loaded_options = None + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['max_concurrent_sessions']._serialized_options = b'\272H\004\032\002(\000' + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['max_session_ttl_minutes']._loaded_options = None + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['max_session_ttl_minutes']._serialized_options = b'\272H\004\032\002(\000' + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['max_idle_ttl_minutes']._loaded_options = None + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['max_idle_ttl_minutes']._serialized_options = b'\272H\004\032\002(\000' + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['monthly_runner_minutes']._loaded_options = None + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['monthly_runner_minutes']._serialized_options = b'\272H\004\"\002(\000' + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['monthly_spend_cap_micros']._loaded_options = None + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['monthly_spend_cap_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['runner_minute_cost_micros']._loaded_options = None + _globals['_RUNNERACCOUNTPOLICY'].fields_by_name['runner_minute_cost_micros']._serialized_options = b'\272H\004\"\002(\000' + _globals['_LISTRUNNERPROFILESREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTRUNNERPROFILESREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTRUNNERPROFILESREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTRUNNERPROFILESREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_WORKSPACEHYDRATIONENVELOPE'].fields_by_name['claims']._loaded_options = None + _globals['_WORKSPACEHYDRATIONENVELOPE'].fields_by_name['claims']._serialized_options = b'\272H\003\310\001\001' + _globals['_WORKSPACEHYDRATIONENVELOPE'].fields_by_name['signature']._loaded_options = None + _globals['_WORKSPACEHYDRATIONENVELOPE'].fields_by_name['signature']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['runner_profile']._loaded_options = None + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['runner_profile']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['ttl_minutes']._loaded_options = None + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['ttl_minutes']._serialized_options = b'\272H\007\032\005\030\240\013(\001' + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['idle_ttl_minutes']._loaded_options = None + _globals['_CREATERUNNERSESSIONREQUEST'].fields_by_name['idle_ttl_minutes']._serialized_options = b'\272H\007\032\005\030\240\013(\000' + _globals['_GETRUNNERSESSIONREQUEST'].fields_by_name['session_id']._loaded_options = None + _globals['_GETRUNNERSESSIONREQUEST'].fields_by_name['session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTRUNNERSESSIONSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTRUNNERSESSIONSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTRUNNERSESSIONSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTRUNNERSESSIONSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTRUNNERSESSIONSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTRUNNERSESSIONSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\310\001(\000' + _globals['_LISTRUNNERSESSIONSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTRUNNERSESSIONSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['runner_profile']._loaded_options = None + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['runner_profile']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['ttl_minutes']._loaded_options = None + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['ttl_minutes']._serialized_options = b'\272H\007\032\005\030\240\013(\001' + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['idle_ttl_minutes']._loaded_options = None + _globals['_CREATERUNNERRESTOREREQUEST'].fields_by_name['idle_ttl_minutes']._serialized_options = b'\272H\007\032\005\030\240\013(\000' + _globals['_GETRUNNERRESTOREREQUEST'].fields_by_name['restore_id']._loaded_options = None + _globals['_GETRUNNERRESTOREREQUEST'].fields_by_name['restore_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETRUNNERRESTOREREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETRUNNERRESTOREREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETRUNNERRESTOREREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETRUNNERRESTOREREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTRUNNERRESTORESREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTRUNNERRESTORESREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTRUNNERRESTORESREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTRUNNERRESTORESREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTRUNNERRESTORESREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTRUNNERRESTORESREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\310\001(\000' + _globals['_LISTRUNNERRESTORESREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTRUNNERRESTORESREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_STOPRUNNERSESSIONREQUEST'].fields_by_name['session_id']._loaded_options = None + _globals['_STOPRUNNERSESSIONREQUEST'].fields_by_name['session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STOPRUNNERSESSIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_STOPRUNNERSESSIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STOPRUNNERSESSIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_STOPRUNNERSESSIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXTENDRUNNERSESSIONREQUEST'].fields_by_name['session_id']._loaded_options = None + _globals['_EXTENDRUNNERSESSIONREQUEST'].fields_by_name['session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_EXTENDRUNNERSESSIONREQUEST'].fields_by_name['additional_minutes']._loaded_options = None + _globals['_EXTENDRUNNERSESSIONREQUEST'].fields_by_name['additional_minutes']._serialized_options = b'\272H\007\032\005\030\240\013(\001' + _globals['_EXTENDRUNNERSESSIONREQUEST'].fields_by_name['additional_idle_minutes']._loaded_options = None + _globals['_EXTENDRUNNERSESSIONREQUEST'].fields_by_name['additional_idle_minutes']._serialized_options = b'\272H\007\032\005\030\240\013(\000' + _globals['_MINTATTACHTOKENREQUEST'].fields_by_name['session_id']._loaded_options = None + _globals['_MINTATTACHTOKENREQUEST'].fields_by_name['session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_MINTATTACHTOKENREQUEST'].fields_by_name['ttl_minutes']._loaded_options = None + _globals['_MINTATTACHTOKENREQUEST'].fields_by_name['ttl_minutes']._serialized_options = b'\272H\006\032\004\030<(\000' + _globals['_REVOKEATTACHTOKENREQUEST'].fields_by_name['session_id']._loaded_options = None + _globals['_REVOKEATTACHTOKENREQUEST'].fields_by_name['session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REVOKEATTACHTOKENREQUEST'].fields_by_name['token_id']._loaded_options = None + _globals['_REVOKEATTACHTOKENREQUEST'].fields_by_name['token_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTRUNNERSESSIONEVENTSREQUEST'].fields_by_name['session_id']._loaded_options = None + _globals['_LISTRUNNERSESSIONEVENTSREQUEST'].fields_by_name['session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTRUNNERSESSIONEVENTSREQUEST'].fields_by_name['after_sequence']._loaded_options = None + _globals['_LISTRUNNERSESSIONEVENTSREQUEST'].fields_by_name['after_sequence']._serialized_options = b'\272H\004\"\002(\000' + _globals['_LISTRUNNERSESSIONEVENTSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTRUNNERSESSIONEVENTSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\007\032\005\030\364\003(\000' + _globals['_LISTRUNNERSESSIONEVENTSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTRUNNERSESSIONEVENTSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTRUNNERSESSIONEVENTSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTRUNNERSESSIONEVENTSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RECORDRUNNERSESSIONARTIFACTLIFECYCLEREQUEST'].fields_by_name['session_id']._loaded_options = None + _globals['_RECORDRUNNERSESSIONARTIFACTLIFECYCLEREQUEST'].fields_by_name['session_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETRUNNERACCOUNTPOLICYREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETRUNNERACCOUNTPOLICYREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_UPSERTRUNNERACCOUNTPOLICYREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_UPSERTRUNNERACCOUNTPOLICYREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSTATUSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETSTATUSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ListRunnerProfiles']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ListRunnerProfiles']._serialized_options = b'\312\363\030\022remote-runner:read\330\363\030\001\202\323\344\223\002\025\022\023/v1/runner-profiles' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['CreateRunnerSession']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['CreateRunnerSession']._serialized_options = b'\312\363\030\023remote-runner:write\330\363\030\003\202\323\344\223\002\030\"\023/v1/runner-sessions:\001*' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['AdoptRunnerSessionForComputerMission']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['AdoptRunnerSessionForComputerMission']._serialized_options = b'\312\363\030\023remote-runner:write\330\363\030\003\202\323\344\223\002C\">/v1/runner-sessions/{runner_session_id}/adopt-computer-mission:\001*' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['GetRunnerSession']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['GetRunnerSession']._serialized_options = b'\312\363\030\022remote-runner:read\330\363\030\001\202\323\344\223\002\"\022 /v1/runner-sessions/{session_id}' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ListRunnerSessions']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ListRunnerSessions']._serialized_options = b'\312\363\030\022remote-runner:read\330\363\030\001\202\323\344\223\002\025\022\023/v1/runner-sessions' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['CreateRunnerRestore']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['CreateRunnerRestore']._serialized_options = b'\312\363\030\023remote-runner:write\330\363\030\002\202\323\344\223\002\030\"\023/v1/runner-restores:\001*' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['GetRunnerRestore']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['GetRunnerRestore']._serialized_options = b'\312\363\030\022remote-runner:read\330\363\030\001\202\323\344\223\002\"\022 /v1/runner-restores/{restore_id}' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ListRunnerRestores']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ListRunnerRestores']._serialized_options = b'\312\363\030\022remote-runner:read\330\363\030\001\202\323\344\223\002\025\022\023/v1/runner-restores' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['StopRunnerSession']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['StopRunnerSession']._serialized_options = b'\312\363\030\023remote-runner:write\330\363\030\002\202\323\344\223\002*\"%/v1/runner-sessions/{session_id}/stop:\001*' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ExtendRunnerSession']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ExtendRunnerSession']._serialized_options = b'\312\363\030\023remote-runner:write\330\363\030\002\202\323\344\223\002,\"\'/v1/runner-sessions/{session_id}/extend:\001*' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['MintAttachToken']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['MintAttachToken']._serialized_options = b'\312\363\030\023remote-runner:write\330\363\030\003\202\323\344\223\0022\"-/v1/runner-sessions/{session_id}/attach-token:\001*' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['RevokeAttachToken']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['RevokeAttachToken']._serialized_options = b'\312\363\030\023remote-runner:write\330\363\030\003\202\323\344\223\002E\"@/v1/runner-sessions/{session_id}/attach-tokens/{token_id}/revoke:\001*' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ListRunnerSessionEvents']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ListRunnerSessionEvents']._serialized_options = b'\312\363\030\022remote-runner:read\330\363\030\001\202\323\344\223\002)\022\'/v1/runner-sessions/{session_id}/events' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['RecordRunnerSessionArtifactLifecycle']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['RecordRunnerSessionArtifactLifecycle']._serialized_options = b'\312\363\030\023remote-runner:admin\330\363\030\002\202\323\344\223\0028\"3/v1/runner-sessions/{session_id}/artifact-lifecycle:\001*' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ExecuteRunnerSessionStep']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['ExecuteRunnerSessionStep']._serialized_options = b'\312\363\030\025remote-runner:execute\330\363\030\003\202\323\344\223\002+\"&/v1/runner-sessions/{session_id}/steps:\001*' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['CreateRunnerSessionCheckpoint']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['CreateRunnerSessionCheckpoint']._serialized_options = b'\312\363\030\023remote-runner:write\330\363\030\003\202\323\344\223\0021\",/v1/runner-sessions/{session_id}/checkpoints:\001*' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['GetRunnerAccountPolicy']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['GetRunnerAccountPolicy']._serialized_options = b'\312\363\030\023remote-runner:admin\330\363\030\001\202\323\344\223\002/\022-/v1/runner-account-policies/{organization_id}' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['UpsertRunnerAccountPolicy']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['UpsertRunnerAccountPolicy']._serialized_options = b'\312\363\030\023remote-runner:admin\330\363\030\004\202\323\344\223\0022\032-/v1/runner-account-policies/{organization_id}:\001*' + _globals['_REMOTERUNNERSERVICE'].methods_by_name['GetStatus']._loaded_options = None + _globals['_REMOTERUNNERSERVICE'].methods_by_name['GetStatus']._serialized_options = b'\312\363\030\022remote-runner:read\330\363\030\001\202\323\344\223\002\032\022\030/v1/remote-runner/status' + _globals['_RUNNERSESSIONSTEPOPERATION']._serialized_start=18234 + _globals['_RUNNERSESSIONSTEPOPERATION']._serialized_end=18921 + _globals['_RUNNERSESSIONSTATE']._serialized_start=18924 + _globals['_RUNNERSESSIONSTATE']._serialized_end=19289 + _globals['_RUNNERATTACHROLE']._serialized_start=19292 + _globals['_RUNNERATTACHROLE']._serialized_end=19442 + _globals['_RUNNERSESSIONRESTORESTATE']._serialized_start=19445 + _globals['_RUNNERSESSIONRESTORESTATE']._serialized_end=19845 + _globals['_RUNNERSESSIONRESTOREFAILUREPOLICY']._serialized_start=19848 + _globals['_RUNNERSESSIONRESTOREFAILUREPOLICY']._serialized_end=20048 + _globals['_RUNNERRESTORESTATE']._serialized_start=20051 + _globals['_RUNNERRESTORESTATE']._serialized_end=20380 + _globals['_RUNNERRESTOREFAILURECODE']._serialized_start=20383 + _globals['_RUNNERRESTOREFAILURECODE']._serialized_end=20910 + _globals['_RUNNERARTIFACTCLASS']._serialized_start=20913 + _globals['_RUNNERARTIFACTCLASS']._serialized_end=21151 + _globals['_RUNNERARTIFACTLIFECYCLESTATE']._serialized_start=21154 + _globals['_RUNNERARTIFACTLIFECYCLESTATE']._serialized_end=21591 + _globals['_RUNNERSESSIONAPEXAUTHORITYSTATE']._serialized_start=21594 + _globals['_RUNNERSESSIONAPEXAUTHORITYSTATE']._serialized_end=21915 + _globals['_RUNNERSESSIONOWNERBINDING']._serialized_start=201 + _globals['_RUNNERSESSIONOWNERBINDING']._serialized_end=689 + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST']._serialized_start=692 + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONREQUEST']._serialized_end=1019 + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONRESPONSE']._serialized_start=1022 + _globals['_ADOPTRUNNERSESSIONFORCOMPUTERMISSIONRESPONSE']._serialized_end=1251 + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST']._serialized_start=1254 + _globals['_EXECUTERUNNERSESSIONSTEPREQUEST']._serialized_end=2286 + _globals['_RUNNERPROVIDERPROOF']._serialized_start=2289 + _globals['_RUNNERPROVIDERPROOF']._serialized_end=2454 + _globals['_RUNNERSESSIONSTEPRECEIPT']._serialized_start=2457 + _globals['_RUNNERSESSIONSTEPRECEIPT']._serialized_end=2872 + _globals['_EXECUTERUNNERSESSIONSTEPRESPONSE']._serialized_start=2875 + _globals['_EXECUTERUNNERSESSIONSTEPRESPONSE']._serialized_end=3142 + _globals['_CREATERUNNERSESSIONCHECKPOINTREQUEST']._serialized_start=3145 + _globals['_CREATERUNNERSESSIONCHECKPOINTREQUEST']._serialized_end=3471 + _globals['_RUNNERSESSIONCHECKPOINTRECEIPT']._serialized_start=3474 + _globals['_RUNNERSESSIONCHECKPOINTRECEIPT']._serialized_end=3615 + _globals['_CREATERUNNERSESSIONCHECKPOINTRESPONSE']._serialized_start=3618 + _globals['_CREATERUNNERSESSIONCHECKPOINTRESPONSE']._serialized_end=3791 + _globals['_RUNNERSESSIONRESTORESPEC']._serialized_start=3794 + _globals['_RUNNERSESSIONRESTORESPEC']._serialized_end=4304 + _globals['_RUNNERSESSIONRESTORESTATUS']._serialized_start=4307 + _globals['_RUNNERSESSIONRESTORESTATUS']._serialized_end=4640 + _globals['_RUNNERSESSION']._serialized_start=4643 + _globals['_RUNNERSESSION']._serialized_end=6374 + _globals['_RUNNERSESSIONEVENT']._serialized_start=6377 + _globals['_RUNNERSESSIONEVENT']._serialized_end=6615 + _globals['_RUNNERATTACHTOKEN']._serialized_start=6618 + _globals['_RUNNERATTACHTOKEN']._serialized_end=6949 + _globals['_RUNNERRESTORE']._serialized_start=6952 + _globals['_RUNNERRESTORE']._serialized_end=8258 + _globals['_RUNNERACCOUNTPOLICY']._serialized_start=8261 + _globals['_RUNNERACCOUNTPOLICY']._serialized_end=8946 + _globals['_RUNNERACCOUNTPOLICYRECORD']._serialized_start=8949 + _globals['_RUNNERACCOUNTPOLICYRECORD']._serialized_end=9256 + _globals['_RUNNERPROFILE']._serialized_start=9259 + _globals['_RUNNERPROFILE']._serialized_end=9853 + _globals['_RUNNERPROFILEAVAILABILITY']._serialized_start=9856 + _globals['_RUNNERPROFILEAVAILABILITY']._serialized_end=10055 + _globals['_LISTRUNNERPROFILESREQUEST']._serialized_start=10058 + _globals['_LISTRUNNERPROFILESREQUEST']._serialized_end=10228 + _globals['_LISTRUNNERPROFILESRESPONSE']._serialized_start=10230 + _globals['_LISTRUNNERPROFILESRESPONSE']._serialized_end=10330 + _globals['_WORKSPACEHYDRATIONCLAIMS']._serialized_start=10333 + _globals['_WORKSPACEHYDRATIONCLAIMS']._serialized_end=11499 + _globals['_WORKSPACEHYDRATIONENVELOPE']._serialized_start=11502 + _globals['_WORKSPACEHYDRATIONENVELOPE']._serialized_end=11644 + _globals['_CREATERUNNERSESSIONREQUEST']._serialized_start=11647 + _globals['_CREATERUNNERSESSIONREQUEST']._serialized_end=12647 + _globals['_CREATERUNNERSESSIONRESPONSE']._serialized_start=12650 + _globals['_CREATERUNNERSESSIONRESPONSE']._serialized_end=12826 + _globals['_GETRUNNERSESSIONREQUEST']._serialized_start=12828 + _globals['_GETRUNNERSESSIONREQUEST']._serialized_end=12893 + _globals['_GETRUNNERSESSIONRESPONSE']._serialized_start=12895 + _globals['_GETRUNNERSESSIONRESPONSE']._serialized_end=12979 + _globals['_LISTRUNNERSESSIONSREQUEST']._serialized_start=12982 + _globals['_LISTRUNNERSESSIONSREQUEST']._serialized_end=13229 + _globals['_LISTRUNNERSESSIONSRESPONSE']._serialized_start=13231 + _globals['_LISTRUNNERSESSIONSRESPONSE']._serialized_end=13352 + _globals['_CREATERUNNERRESTOREREQUEST']._serialized_start=13355 + _globals['_CREATERUNNERRESTOREREQUEST']._serialized_end=14320 + _globals['_CREATERUNNERRESTORERESPONSE']._serialized_start=14323 + _globals['_CREATERUNNERRESTORERESPONSE']._serialized_end=14557 + _globals['_GETRUNNERRESTOREREQUEST']._serialized_start=14560 + _globals['_GETRUNNERRESTOREREQUEST']._serialized_end=14719 + _globals['_GETRUNNERRESTORERESPONSE']._serialized_start=14721 + _globals['_GETRUNNERRESTORERESPONSE']._serialized_end=14805 + _globals['_LISTRUNNERRESTORESREQUEST']._serialized_start=14808 + _globals['_LISTRUNNERRESTORESREQUEST']._serialized_end=15055 + _globals['_LISTRUNNERRESTORESRESPONSE']._serialized_start=15057 + _globals['_LISTRUNNERRESTORESRESPONSE']._serialized_end=15178 + _globals['_STOPRUNNERSESSIONREQUEST']._serialized_start=15181 + _globals['_STOPRUNNERSESSIONREQUEST']._serialized_end=15365 + _globals['_STOPRUNNERSESSIONRESPONSE']._serialized_start=15368 + _globals['_STOPRUNNERSESSIONRESPONSE']._serialized_end=15512 + _globals['_EXTENDRUNNERSESSIONREQUEST']._serialized_start=15515 + _globals['_EXTENDRUNNERSESSIONREQUEST']._serialized_end=15734 + _globals['_EXTENDRUNNERSESSIONRESPONSE']._serialized_start=15737 + _globals['_EXTENDRUNNERSESSIONRESPONSE']._serialized_end=15883 + _globals['_MINTATTACHTOKENREQUEST']._serialized_start=15886 + _globals['_MINTATTACHTOKENREQUEST']._serialized_end=16082 + _globals['_MINTATTACHTOKENRESPONSE']._serialized_start=16085 + _globals['_MINTATTACHTOKENRESPONSE']._serialized_end=16295 + _globals['_REVOKEATTACHTOKENREQUEST']._serialized_start=16297 + _globals['_REVOKEATTACHTOKENREQUEST']._serialized_end=16399 + _globals['_REVOKEATTACHTOKENRESPONSE']._serialized_start=16402 + _globals['_REVOKEATTACHTOKENRESPONSE']._serialized_end=16546 + _globals['_LISTRUNNERSESSIONEVENTSREQUEST']._serialized_start=16549 + _globals['_LISTRUNNERSESSIONEVENTSREQUEST']._serialized_end=16797 + _globals['_LISTRUNNERSESSIONEVENTSRESPONSE']._serialized_start=16800 + _globals['_LISTRUNNERSESSIONEVENTSRESPONSE']._serialized_end=16931 + _globals['_RECORDRUNNERSESSIONARTIFACTLIFECYCLEREQUEST']._serialized_start=16934 + _globals['_RECORDRUNNERSESSIONARTIFACTLIFECYCLEREQUEST']._serialized_end=17365 + _globals['_RECORDRUNNERSESSIONARTIFACTLIFECYCLERESPONSE']._serialized_start=17368 + _globals['_RECORDRUNNERSESSIONARTIFACTLIFECYCLERESPONSE']._serialized_end=17531 + _globals['_GETRUNNERACCOUNTPOLICYREQUEST']._serialized_start=17533 + _globals['_GETRUNNERACCOUNTPOLICYREQUEST']._serialized_end=17649 + _globals['_GETRUNNERACCOUNTPOLICYRESPONSE']._serialized_start=17651 + _globals['_GETRUNNERACCOUNTPOLICYRESPONSE']._serialized_end=17751 + _globals['_UPSERTRUNNERACCOUNTPOLICYREQUEST']._serialized_start=17754 + _globals['_UPSERTRUNNERACCOUNTPOLICYREQUEST']._serialized_end=17935 + _globals['_UPSERTRUNNERACCOUNTPOLICYRESPONSE']._serialized_start=17937 + _globals['_UPSERTRUNNERACCOUNTPOLICYRESPONSE']._serialized_end=18040 + _globals['_GETSTATUSREQUEST']._serialized_start=18042 + _globals['_GETSTATUSREQUEST']._serialized_end=18104 + _globals['_GETSTATUSRESPONSE']._serialized_start=18106 + _globals['_GETSTATUSRESPONSE']._serialized_end=18231 + _globals['_REMOTERUNNERSERVICE']._serialized_start=21918 + _globals['_REMOTERUNNERSERVICE']._serialized_end=25652 +# @@protoc_insertion_point(module_scope) diff --git a/src/toolexecution/v1/toolexecution_pb2.py b/src/toolexecution/v1/toolexecution_pb2.py new file mode 100644 index 0000000..373cc62 --- /dev/null +++ b/src/toolexecution/v1/toolexecution_pb2.py @@ -0,0 +1,248 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: toolexecution/v1/toolexecution.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'toolexecution/v1/toolexecution.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 +from common.v1 import authz_pb2 as common_dot_v1_dot_authz__pb2 +from common.v1 import risk_pb2 as common_dot_v1_dot_risk__pb2 +from common.v1 import surface_pb2 as common_dot_v1_dot_surface__pb2 +from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from evalops_platform.v1 import platform_pb2 as platform_dot_v1_dot_platform__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n$toolexecution/v1/toolexecution.proto\x12\x10toolexecution.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x15\x63ommon/v1/authz.proto\x1a\x14\x63ommon/v1/risk.proto\x1a\x17\x63ommon/v1/surface.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1aplatform/v1/platform.proto\"\xe2\x05\n\x14ToolExecutionLinkage\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12\"\n\x08\x61gent_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07\x61gentId\x12\x15\n\x06run_id\x18\x04 \x01(\tR\x05runId\x12!\n\x0cobjective_id\x18\x05 \x01(\tR\x0bobjectiveId\x12\x17\n\x07step_id\x18\x06 \x01(\tR\x06stepId\x12\x19\n\x08\x61\x63tor_id\x18\x07 \x01(\tR\x07\x61\x63torId\x12\x1c\n\x07surface\x18\x08 \x01(\tB\x02\x18\x01R\x07surface\x12\x1d\n\nchannel_id\x18\t \x01(\tR\tchannelId\x12%\n\x0e\x63orrelation_id\x18\n \x01(\tR\rcorrelationId\x12?\n\x0csurface_type\x18\x0b \x01(\x0e\x32\x12.common.v1.SurfaceB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0bsurfaceType\x12[\n\x11\x61ttachment_mounts\x18\x0c \x03(\x0b\x32..toolexecution.v1.ToolExecutionAttachmentMountR\x10\x61ttachmentMounts\x12.\n\x0e\x61pplication_id\x18\r \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rapplicationId\x12S\n\x0eproject_source\x18\x0e \x01(\x0b\x32,.toolexecution.v1.ToolExecutionProjectSourceR\rprojectSource\x12S\n\x0eproject_import\x18\x0f \x01(\x0b\x32,.toolexecution.v1.ToolExecutionProjectImportR\rprojectImport\"\xd0\x02\n\x1cToolExecutionAttachmentMount\x12$\n\tobject_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08objectId\x12&\n\nversion_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tversionId\x12#\n\x08\x66ilename\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08\x66ilename\x12\x1f\n\x06sha256\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06sha256\x12+\n\nsize_bytes\x18\x05 \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\x80\x80\x19 \x00R\tsizeBytes\x12\x32\n\x10\x64\x65stination_path\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0f\x64\x65stinationPath\x12;\n\x0cresource_ref\x18\x07 \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x0bresourceRef\"\xb7\x01\n\x19ToolExecutionTraceContext\x12\x19\n\x08trace_id\x18\x01 \x01(\tR\x07traceId\x12\x17\n\x07span_id\x18\x02 \x01(\tR\x06spanId\x12$\n\x0eparent_span_id\x18\x03 \x01(\tR\x0cparentSpanId\x12 \n\x0btraceparent\x18\x04 \x01(\tR\x0btraceparent\x12\x1e\n\ntracestate\x18\x05 \x01(\tR\ntracestate\"\xf9\x01\n\x07ToolRef\x12%\n\tnamespace\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tnamespace\x12\x1b\n\x04name\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x18\n\x07version\x18\x03 \x01(\tR\x07version\x12\'\n\ncapability\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\ncapability\x12\x1c\n\toperation\x18\x05 \x01(\tR\toperation\x12\x1e\n\nidempotent\x18\x06 \x01(\x08R\nidempotent\x12)\n\x10mutates_resource\x18\x07 \x01(\x08R\x0fmutatesResource\"\xf8\x01\n\x0c\x43onnectorRef\x12#\n\rconnection_id\x18\x01 \x01(\tR\x0c\x63onnectionId\x12\x1f\n\x0bprovider_id\x18\x02 \x01(\tR\nproviderId\x12\x1f\n\x0bresource_id\x18\x03 \x01(\tR\nresourceId\x12#\n\rresource_kind\x18\x04 \x01(\tR\x0cresourceKind\x12%\n\x0e\x63redential_ref\x18\x05 \x01(\tR\rcredentialRef\x12\x35\n\x16\x63redential_environment\x18\x06 \x01(\tR\x15\x63redentialEnvironment\"\xd8\x01\n\x0fToolRetryPolicy\x12*\n\x0cmax_attempts\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0bmaxAttempts\x12\x31\n\x10initial_delay_ms\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0einitialDelayMs\x12)\n\x0cmax_delay_ms\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\nmaxDelayMs\x12;\n\x1a\x61llow_non_idempotent_retry\x18\x04 \x01(\x08R\x17\x61llowNonIdempotentRetry\"\xc1\x04\n\x11ToolExecutionStep\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x44\n\x05stage\x18\x02 \x01(\x0e\x32$.toolexecution.v1.ToolExecutionStageB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05stage\x12H\n\x05state\x18\x03 \x01(\x0e\x32(.toolexecution.v1.ToolExecutionStepStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12I\n\x08\x64\x65\x63ision\x18\x04 \x01(\x0e\x32-.toolexecution.v1.ToolExecutionPolicyDecisionR\x08\x64\x65\x63ision\x12!\n\x0c\x65xternal_ref\x18\x05 \x01(\tR\x0b\x65xternalRef\x12\x18\n\x07reasons\x18\x06 \x03(\tR\x07reasons\x12S\n\nattributes\x18\x07 \x03(\x0b\x32\x33.toolexecution.v1.ToolExecutionStep.AttributesEntryR\nattributes\x12\x39\n\nstarted_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartedAt\x12\x35\n\x08\x65nded_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndedAt\x1a=\n\x0f\x41ttributesEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xbf\x03\n\x10ToolApprovalWait\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12.\n\x13\x61pproval_request_id\x18\x02 \x01(\tR\x11\x61pprovalRequestId\x12!\n\x0cresume_token\x18\x03 \x01(\tR\x0bresumeToken\x12\x16\n\x06reason\x18\x04 \x01(\tR\x06reason\x12\\\n\x12requested_decision\x18\x05 \x01(\x0e\x32-.toolexecution.v1.ToolExecutionPolicyDecisionR\x11requestedDecision\x12\x39\n\ncreated_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12;\n\x0bresolved_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nresolvedAt\x12\x1f\n\x0bresolved_by\x18\x08 \x01(\tR\nresolvedBy\x12\x39\n\nexpires_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\"\xb6\x02\n\x18VerifiedApprovalDecision\x12\x1f\n\x0b\x64\x65\x63ision_id\x18\x01 \x01(\tR\ndecisionId\x12.\n\x13\x61pproval_request_id\x18\x02 \x01(\tR\x11\x61pprovalRequestId\x12\x1a\n\x08\x64\x65\x63ision\x18\x03 \x01(\tR\x08\x64\x65\x63ision\x12\x1d\n\ndecided_by\x18\x04 \x01(\tR\tdecidedBy\x12\x16\n\x06reason\x18\x05 \x01(\tR\x06reason\x12\x39\n\ndecided_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tdecidedAt\x12;\n\x0bverified_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nverifiedAt\"\xc4\x02\n\x1cToolExecutionOutputAuthority\x12.\n\x0e\x61pplication_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\rapplicationId\x12\x1d\n\x05\x61\x63tor\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x05\x61\x63tor\x12\x38\n\x13request_fingerprint\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x12requestFingerprint\x12\x39\n\x14\x61pproval_decision_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x12\x61pprovalDecisionId\x12\x32\n\x10\x64ispatch_attempt\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x01R\x0f\x64ispatchAttempt\x12,\n\raction_digest\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x61\x63tionDigest\"\x91\x03\n\x13ToolExecutionOutput\x12\x36\n\nraw_output\x18\x01 \x01(\x0b\x32\x17.google.protobuf.StructR\trawOutput\x12\x38\n\x0bsafe_output\x18\x02 \x01(\x0b\x32\x17.google.protobuf.StructR\nsafeOutput\x12\x42\n\tproposals\x18\x03 \x03(\x0b\x32$.toolexecution.v1.ToolOutputProposalR\tproposals\x12\x1e\n\nredactions\x18\x04 \x03(\tR\nredactions\x12!\n\x0c\x63ontent_type\x18\x05 \x01(\tR\x0b\x63ontentType\x12#\n\routput_digest\x18\x06 \x01(\tR\x0coutputDigest\x12\x1f\n\x0b\x64uration_ms\x18\x07 \x01(\x03R\ndurationMs\x12;\n\x0cresource_ref\x18\x08 \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x0bresourceRef\"\xbe\x02\n\x12ToolOutputProposal\x12I\n\x04kind\x18\x01 \x01(\x0e\x32+.toolexecution.v1.ToolExecutionProposalKindB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x04kind\x12\x1d\n\ntarget_ref\x18\x02 \x01(\tR\ttargetRef\x12\x31\n\x07payload\x18\x03 \x01(\x0b\x32\x17.google.protobuf.StructR\x07payload\x12N\n\x08metadata\x18\x04 \x03(\x0b\x32\x32.toolexecution.v1.ToolOutputProposal.MetadataEntryR\x08metadata\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xf4\x04\n\x17ToolExecutionProvenance\x12%\n\x0e\x63\x61pability_ref\x18\x01 \x01(\tR\rcapabilityRef\x12%\n\x0e\x63redential_ref\x18\x02 \x01(\tR\rcredentialRef\x12&\n\x0fgate_policy_ref\x18\x03 \x01(\tR\rgatePolicyRef\x12\x36\n\x17governance_decision_ref\x18\x04 \x01(\tR\x15governanceDecisionRef\x12.\n\x13\x61pproval_request_id\x18\x05 \x01(\tR\x11\x61pprovalRequestId\x12!\n\x0c\x65xecutor_ref\x18\x06 \x01(\tR\x0b\x65xecutorRef\x12$\n\x0e\x61udit_event_id\x18\x07 \x01(\tR\x0c\x61uditEventId\x12&\n\x0fmeter_record_id\x18\x08 \x01(\tR\rmeterRecordId\x12\x30\n\x14provenance_record_id\x18\t \x01(\tR\x12provenanceRecordId\x12!\n\x0cinput_digest\x18\n \x01(\tR\x0binputDigest\x12#\n\routput_digest\x18\x0b \x01(\tR\x0coutputDigest\x12S\n\x08metadata\x18\x0c \x03(\x0b\x32\x37.toolexecution.v1.ToolExecutionProvenance.MetadataEntryR\x08metadata\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xc2\n\n\rToolExecution\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12H\n\x07linkage\x18\x02 \x01(\x0b\x32&.toolexecution.v1.ToolExecutionLinkageB\x06\xbaH\x03\xc8\x01\x01R\x07linkage\x12\x35\n\x04tool\x18\x03 \x01(\x0b\x32\x19.toolexecution.v1.ToolRefB\x06\xbaH\x03\xc8\x01\x01R\x04tool\x12<\n\tconnector\x18\x04 \x01(\x0b\x32\x1e.toolexecution.v1.ConnectorRefR\tconnector\x12\x35\n\targuments\x18\x05 \x01(\x0b\x32\x17.google.protobuf.StructR\targuments\x12\x33\n\nrisk_level\x18\x06 \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12\x44\n\x0cretry_policy\x18\x07 \x01(\x0b\x32!.toolexecution.v1.ToolRetryPolicyR\x0bretryPolicy\x12\x30\n\x0fidempotency_key\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12\x44\n\x05state\x18\t \x01(\x0e\x32$.toolexecution.v1.ToolExecutionStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\x18\n\x07\x61ttempt\x18\n \x01(\x05R\x07\x61ttempt\x12!\n\x0cmax_attempts\x18\x0b \x01(\x05R\x0bmaxAttempts\x12\x39\n\x05steps\x18\x0c \x03(\x0b\x32#.toolexecution.v1.ToolExecutionStepR\x05steps\x12G\n\rapproval_wait\x18\r \x01(\x0b\x32\".toolexecution.v1.ToolApprovalWaitR\x0c\x61pprovalWait\x12=\n\x06output\x18\x0e \x01(\x0b\x32%.toolexecution.v1.ToolExecutionOutputR\x06output\x12I\n\nprovenance\x18\x0f \x01(\x0b\x32).toolexecution.v1.ToolExecutionProvenanceR\nprovenance\x12#\n\rerror_message\x18\x10 \x01(\tR\x0c\x65rrorMessage\x12\x39\n\ncreated_at\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x12 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12=\n\x0c\x63ompleted_at\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x0b\x63ompletedAt\x12P\n\rtrace_context\x18\x14 \x01(\x0b\x32+.toolexecution.v1.ToolExecutionTraceContextR\x0ctraceContext\x12W\n\x0c\x66\x61ilure_code\x18\x15 \x01(\x0e\x32*.toolexecution.v1.ToolExecutionFailureCodeB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0b\x66\x61ilureCode\x12h\n\x1averified_approval_decision\x18\x16 \x01(\x0b\x32*.toolexecution.v1.VerifiedApprovalDecisionR\x18verifiedApprovalDecision\"\x96\x05\n\x12\x45xecuteToolRequest\x12H\n\x07linkage\x18\x01 \x01(\x0b\x32&.toolexecution.v1.ToolExecutionLinkageB\x06\xbaH\x03\xc8\x01\x01R\x07linkage\x12\x35\n\x04tool\x18\x02 \x01(\x0b\x32\x19.toolexecution.v1.ToolRefB\x06\xbaH\x03\xc8\x01\x01R\x04tool\x12<\n\tconnector\x18\x03 \x01(\x0b\x32\x1e.toolexecution.v1.ConnectorRefR\tconnector\x12\x35\n\targuments\x18\x04 \x01(\x0b\x32\x17.google.protobuf.StructR\targuments\x12\x33\n\nrisk_level\x18\x05 \x01(\x0e\x32\x14.common.v1.RiskLevelR\triskLevel\x12\x44\n\x0cretry_policy\x18\x06 \x01(\x0b\x32!.toolexecution.v1.ToolRetryPolicyR\x0bretryPolicy\x12\x30\n\x0fidempotency_key\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x12N\n\x08metadata\x18\x08 \x03(\x0b\x32\x32.toolexecution.v1.ExecuteToolRequest.MetadataEntryR\x08metadata\x12P\n\rtrace_context\x18\t \x01(\x0b\x32+.toolexecution.v1.ToolExecutionTraceContextR\x0ctraceContext\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\x81\x01\n\x13\x45xecuteToolResponse\x12=\n\texecution\x18\x01 \x01(\x0b\x32\x1f.toolexecution.v1.ToolExecutionR\texecution\x12+\n\x11idempotent_replay\x18\x02 \x01(\x08R\x10idempotentReplay\"\xc7\x02\n\x1aResumeToolExecutionRequest\x12*\n\x0c\x65xecution_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x65xecutionId\x12\x37\n\x13\x61pproval_request_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x11\x61pprovalRequestId\x12*\n\x0cresume_token\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bresumeToken\x12\x1e\n\x08\x61pproved\x18\x04 \x01(\x08\x42\x02\x18\x01R\x08\x61pproved\x12!\n\ndecided_by\x18\x05 \x01(\tB\x02\x18\x01R\tdecidedBy\x12\x1a\n\x06reason\x18\x06 \x01(\tB\x02\x18\x01R\x06reason\x12\x39\n\x14\x61pproval_decision_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x12\x61pprovalDecisionId\"\\\n\x1bResumeToolExecutionResponse\x12=\n\texecution\x18\x01 \x01(\x0b\x32\x1f.toolexecution.v1.ToolExecutionR\texecution\"\x86\x03\n RecordToolExecutionOutputRequest\x12*\n\x0c\x65xecution_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0b\x65xecutionId\x12\x45\n\x06output\x18\x02 \x01(\x0b\x32%.toolexecution.v1.ToolExecutionOutputB\x06\xbaH\x03\xc8\x01\x01R\x06output\x12\\\n\x08metadata\x18\x03 \x03(\x0b\x32@.toolexecution.v1.RecordToolExecutionOutputRequest.MetadataEntryR\x08metadata\x12T\n\tauthority\x18\x04 \x01(\x0b\x32..toolexecution.v1.ToolExecutionOutputAuthorityB\x06\xbaH\x03\xc8\x01\x01R\tauthority\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"b\n!RecordToolExecutionOutputResponse\x12=\n\texecution\x18\x01 \x01(\x0b\x32\x1f.toolexecution.v1.ToolExecutionR\texecution\"\xc5\x01\n\x17GetToolExecutionRequest\x12\x17\n\x02id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x02id\x12\x30\n\x0forganization_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x33\n\x0fwait_timeout_ms\x18\x04 \x01(\rB\x0b\xbaH\x08*\x06\x18\xb0\xea\x01(\x00R\rwaitTimeoutMs\"Y\n\x18GetToolExecutionResponse\x12=\n\texecution\x18\x01 \x01(\x0b\x32\x1f.toolexecution.v1.ToolExecutionR\texecution\"\xd1\x03\n\x19ListToolExecutionsRequest\x12!\n\x0cworkspace_id\x18\x01 \x01(\tR\x0bworkspaceId\x12\x15\n\x06run_id\x18\x02 \x01(\tR\x05runId\x12!\n\x0cobjective_id\x18\x03 \x01(\tR\x0bobjectiveId\x12\x19\n\x08\x61gent_id\x18\x04 \x01(\tR\x07\x61gentId\x12%\n\x0etool_namespace\x18\x05 \x01(\tR\rtoolNamespace\x12\x1b\n\ttool_name\x18\x06 \x01(\tR\x08toolName\x12#\n\rconnection_id\x18\x07 \x01(\tR\x0c\x63onnectionId\x12.\n\x13\x61pproval_request_id\x18\x08 \x01(\tR\x11\x61pprovalRequestId\x12:\n\x05state\x18\t \x01(\x0e\x32$.toolexecution.v1.ToolExecutionStateR\x05state\x12\x1d\n\x05limit\x18\n \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05limit\x12\x1f\n\x06offset\x18\x0b \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\x12\'\n\x0forganization_id\x18\x0c \x01(\tR\x0eorganizationId\"\x8e\x01\n\x1aListToolExecutionsResponse\x12?\n\nexecutions\x18\x01 \x03(\x0b\x32\x1f.toolexecution.v1.ToolExecutionR\nexecutions\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"\xc7\x01\n\x1eToolExecutionProjectSourceFile\x12\x12\n\x04path\x18\x01 \x01(\tR\x04path\x12\x1b\n\tobject_id\x18\x02 \x01(\tR\x08objectId\x12\x1d\n\nversion_id\x18\x03 \x01(\tR\tversionId\x12\x16\n\x06sha256\x18\x04 \x01(\tR\x06sha256\x12\x1d\n\nsize_bytes\x18\x05 \x01(\x04R\tsizeBytes\x12\x1e\n\nexecutable\x18\x06 \x01(\x08R\nexecutable\"\x99\x03\n\x1aToolExecutionProjectSource\x12.\n\x13project_resource_id\x18\x01 \x01(\tR\x11projectResourceId\x12*\n\x11\x61\x63\x63\x65pted_ref_name\x18\x02 \x01(\tR\x0f\x61\x63\x63\x65ptedRefName\x12\x30\n\x14\x61\x63\x63\x65pted_ref_version\x18\x03 \x01(\x04R\x12\x61\x63\x63\x65ptedRefVersion\x12\x30\n\x14\x61\x63\x63\x65pted_snapshot_id\x18\x04 \x01(\tR\x12\x61\x63\x63\x65ptedSnapshotId\x12.\n\x13source_workspace_id\x18\x05 \x01(\tR\x11sourceWorkspaceId\x12\x38\n\x18source_workspace_version\x18\x06 \x01(\x04R\x16sourceWorkspaceVersion\x12Q\n\x05\x66iles\x18\x07 \x03(\x0b\x32\x30.toolexecution.v1.ToolExecutionProjectSourceFileB\t\xbaH\x06\x92\x01\x03\x10\xe8\x07R\x05\x66iles\"\xdc\x02\n\x1aToolExecutionProjectImport\x12.\n\x13project_resource_id\x18\x01 \x01(\tR\x11projectResourceId\x12#\n\rconnection_id\x18\x02 \x01(\tR\x0c\x63onnectionId\x12\x35\n\x14\x65xpected_ref_version\x18\x03 \x01(\x04H\x00R\x12\x65xpectedRefVersion\x88\x01\x01\x12N\n\x08manifest\x18\x04 \x01(\x0b\x32\x32.toolexecution.v1.ToolExecutionGitSnapshotManifestR\x08manifest\x12 \n\x0cgrant_key_id\x18\x05 \x01(\tR\ngrantKeyId\x12\'\n\x0fgrant_signature\x18\x06 \x01(\tR\x0egrantSignatureB\x17\n\x15_expected_ref_version\"\xa7\x02\n ToolExecutionGitSnapshotManifest\x12#\n\rrepository_id\x18\x01 \x01(\x04R\x0crepositoryId\x12\x1b\n\tfull_name\x18\x02 \x01(\tR\x08\x66ullName\x12%\n\x0e\x64\x65\x66\x61ult_branch\x18\x03 \x01(\tR\rdefaultBranch\x12\x1d\n\ncommit_sha\x18\x04 \x01(\tR\tcommitSha\x12\x19\n\x08tree_sha\x18\x05 \x01(\tR\x07treeSha\x12\x44\n\x05\x66iles\x18\x06 \x03(\x0b\x32..toolexecution.v1.ToolExecutionGitSnapshotFileR\x05\x66iles\x12\x1a\n\x08\x63omplete\x18\x07 \x01(\x08R\x08\x63omplete\"\x93\x01\n\x1cToolExecutionGitSnapshotFile\x12\x12\n\x04path\x18\x01 \x01(\tR\x04path\x12 \n\x0cgit_blob_sha\x18\x02 \x01(\tR\ngitBlobSha\x12\x1d\n\nsize_bytes\x18\x03 \x01(\x04R\tsizeBytes\x12\x1e\n\nexecutable\x18\x04 \x01(\x08R\nexecutable*\xe0\x02\n\x12ToolExecutionState\x12$\n TOOL_EXECUTION_STATE_UNSPECIFIED\x10\x00\x12!\n\x1dTOOL_EXECUTION_STATE_ACCEPTED\x10\x01\x12*\n&TOOL_EXECUTION_STATE_POLICY_EVALUATING\x10\x02\x12)\n%TOOL_EXECUTION_STATE_WAITING_APPROVAL\x10\x03\x12 \n\x1cTOOL_EXECUTION_STATE_RUNNING\x10\x04\x12\"\n\x1eTOOL_EXECUTION_STATE_SUCCEEDED\x10\x05\x12\x1f\n\x1bTOOL_EXECUTION_STATE_FAILED\x10\x06\x12\x1f\n\x1bTOOL_EXECUTION_STATE_DENIED\x10\x07\x12\"\n\x1eTOOL_EXECUTION_STATE_CANCELLED\x10\x08*\x94\x03\n\x12ToolExecutionStage\x12$\n TOOL_EXECUTION_STAGE_UNSPECIFIED\x10\x00\x12*\n&TOOL_EXECUTION_STAGE_CAPABILITY_LOOKUP\x10\x01\x12.\n*TOOL_EXECUTION_STAGE_CREDENTIAL_RESOLUTION\x10\x02\x12$\n TOOL_EXECUTION_STAGE_GATE_POLICY\x10\x03\x12*\n&TOOL_EXECUTION_STAGE_GOVERNANCE_POLICY\x10\x04\x12!\n\x1dTOOL_EXECUTION_STAGE_APPROVAL\x10\x05\x12\"\n\x1eTOOL_EXECUTION_STAGE_EXECUTION\x10\x06\x12\x1e\n\x1aTOOL_EXECUTION_STAGE_AUDIT\x10\x07\x12\x1e\n\x1aTOOL_EXECUTION_STAGE_METER\x10\x08\x12#\n\x1fTOOL_EXECUTION_STAGE_PROVENANCE\x10\t*\x86\x02\n\x16ToolExecutionStepState\x12)\n%TOOL_EXECUTION_STEP_STATE_UNSPECIFIED\x10\x00\x12\'\n#TOOL_EXECUTION_STEP_STATE_SUCCEEDED\x10\x01\x12%\n!TOOL_EXECUTION_STEP_STATE_WAITING\x10\x02\x12$\n TOOL_EXECUTION_STEP_STATE_DENIED\x10\x03\x12$\n TOOL_EXECUTION_STEP_STATE_FAILED\x10\x04\x12%\n!TOOL_EXECUTION_STEP_STATE_SKIPPED\x10\x05*\xd5\x01\n\x1bToolExecutionPolicyDecision\x12.\n*TOOL_EXECUTION_POLICY_DECISION_UNSPECIFIED\x10\x00\x12(\n$TOOL_EXECUTION_POLICY_DECISION_ALLOW\x10\x01\x12\'\n#TOOL_EXECUTION_POLICY_DECISION_DENY\x10\x02\x12\x33\n/TOOL_EXECUTION_POLICY_DECISION_REQUIRE_APPROVAL\x10\x03*\xca\x01\n\x19ToolExecutionProposalKind\x12,\n(TOOL_EXECUTION_PROPOSAL_KIND_UNSPECIFIED\x10\x00\x12+\n\'TOOL_EXECUTION_PROPOSAL_KIND_CHECKPOINT\x10\x01\x12)\n%TOOL_EXECUTION_PROPOSAL_KIND_ARTIFACT\x10\x02\x12\'\n#TOOL_EXECUTION_PROPOSAL_KIND_MEMORY\x10\x03*\xf9\x05\n\x18ToolExecutionFailureCode\x12+\n\'TOOL_EXECUTION_FAILURE_CODE_UNSPECIFIED\x10\x00\x12/\n+TOOL_EXECUTION_FAILURE_CODE_INVALID_REQUEST\x10\x01\x12\x30\n,TOOL_EXECUTION_FAILURE_CODE_UNSUPPORTED_TOOL\x10\x02\x12\x31\n-TOOL_EXECUTION_FAILURE_CODE_AUTHORITY_INVALID\x10\x03\x12\x36\n2TOOL_EXECUTION_FAILURE_CODE_DEPENDENCY_UNAVAILABLE\x10\x04\x12\x30\n,TOOL_EXECUTION_FAILURE_CODE_CONNECTOR_FAILED\x10\x05\x12\x38\n4TOOL_EXECUTION_FAILURE_CODE_SANDBOX_PROVISION_FAILED\x10\x06\x12\x38\n4TOOL_EXECUTION_FAILURE_CODE_SANDBOX_OPERATION_FAILED\x10\x07\x12\x36\n2TOOL_EXECUTION_FAILURE_CODE_RUNNER_LEDGER_REQUIRED\x10\x08\x12/\n+TOOL_EXECUTION_FAILURE_CODE_APPROVAL_DENIED\x10\t\x12\x30\n,TOOL_EXECUTION_FAILURE_CODE_APPROVAL_EXPIRED\x10\n\x12\x33\n/TOOL_EXECUTION_FAILURE_CODE_EXECUTION_ABANDONED\x10\x0b\x12\x33\n/TOOL_EXECUTION_FAILURE_CODE_EXECUTION_CANCELLED\x10\x0c\x12\x37\n3TOOL_EXECUTION_FAILURE_CODE_CALLER_REPORTED_FAILURE\x10\r2\x94\x06\n\x14ToolExecutionService\x12\xab\x01\n\x0b\x45xecuteTool\x12$.toolexecution.v1.ExecuteToolRequest\x1a%.toolexecution.v1.ExecuteToolResponse\"O\xca\xf3\x18\x14tool-execution:write\xd2\xf3\x18\x14linkage.workspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x17linkage.organization_id\x12\x90\x01\n\x13ResumeToolExecution\x12,.toolexecution.v1.ResumeToolExecutionRequest\x1a-.toolexecution.v1.ResumeToolExecutionResponse\"\x1c\xca\xf3\x18\x14tool-execution:write\xd8\xf3\x18\x03\x12\xa2\x01\n\x19RecordToolExecutionOutput\x12\x32.toolexecution.v1.RecordToolExecutionOutputRequest\x1a\x33.toolexecution.v1.RecordToolExecutionOutputResponse\"\x1c\xca\xf3\x18\x14tool-execution:write\xd8\xf3\x18\x02\x12\x86\x01\n\x10GetToolExecution\x12).toolexecution.v1.GetToolExecutionRequest\x1a*.toolexecution.v1.GetToolExecutionResponse\"\x1b\xca\xf3\x18\x13tool-execution:read\xd8\xf3\x18\x01\x12\x8c\x01\n\x12ListToolExecutions\x12+.toolexecution.v1.ListToolExecutionsRequest\x1a,.toolexecution.v1.ListToolExecutionsResponse\"\x1b\xca\xf3\x18\x13tool-execution:read\xd8\xf3\x18\x01\x42\x45ZCgithub.com/evalops/platform/gen/go/toolexecution/v1;toolexecutionv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'toolexecution.v1.toolexecution_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'ZCgithub.com/evalops/platform/gen/go/toolexecution/v1;toolexecutionv1' + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['workspace_id']._loaded_options = None + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['organization_id']._loaded_options = None + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['agent_id']._loaded_options = None + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['agent_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['surface']._loaded_options = None + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['surface']._serialized_options = b'\030\001' + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['surface_type']._loaded_options = None + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['surface_type']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['application_id']._loaded_options = None + _globals['_TOOLEXECUTIONLINKAGE'].fields_by_name['application_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['object_id']._loaded_options = None + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['object_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['version_id']._loaded_options = None + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['version_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['filename']._loaded_options = None + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['filename']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['sha256']._loaded_options = None + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['sha256']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['size_bytes']._loaded_options = None + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['size_bytes']._serialized_options = b'\272H\t\"\007\030\200\200\200\031 \000' + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['destination_path']._loaded_options = None + _globals['_TOOLEXECUTIONATTACHMENTMOUNT'].fields_by_name['destination_path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLREF'].fields_by_name['namespace']._loaded_options = None + _globals['_TOOLREF'].fields_by_name['namespace']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLREF'].fields_by_name['name']._loaded_options = None + _globals['_TOOLREF'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLREF'].fields_by_name['capability']._loaded_options = None + _globals['_TOOLREF'].fields_by_name['capability']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLRETRYPOLICY'].fields_by_name['max_attempts']._loaded_options = None + _globals['_TOOLRETRYPOLICY'].fields_by_name['max_attempts']._serialized_options = b'\272H\004\032\002(\000' + _globals['_TOOLRETRYPOLICY'].fields_by_name['initial_delay_ms']._loaded_options = None + _globals['_TOOLRETRYPOLICY'].fields_by_name['initial_delay_ms']._serialized_options = b'\272H\004\032\002(\000' + _globals['_TOOLRETRYPOLICY'].fields_by_name['max_delay_ms']._loaded_options = None + _globals['_TOOLRETRYPOLICY'].fields_by_name['max_delay_ms']._serialized_options = b'\272H\004\032\002(\000' + _globals['_TOOLEXECUTIONSTEP_ATTRIBUTESENTRY']._loaded_options = None + _globals['_TOOLEXECUTIONSTEP_ATTRIBUTESENTRY']._serialized_options = b'8\001' + _globals['_TOOLEXECUTIONSTEP'].fields_by_name['stage']._loaded_options = None + _globals['_TOOLEXECUTIONSTEP'].fields_by_name['stage']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_TOOLEXECUTIONSTEP'].fields_by_name['state']._loaded_options = None + _globals['_TOOLEXECUTIONSTEP'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['application_id']._loaded_options = None + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['application_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['actor']._loaded_options = None + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['actor']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['request_fingerprint']._loaded_options = None + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['request_fingerprint']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['approval_decision_id']._loaded_options = None + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['approval_decision_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['dispatch_attempt']._loaded_options = None + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['dispatch_attempt']._serialized_options = b'\272H\004\032\002(\001' + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['action_digest']._loaded_options = None + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY'].fields_by_name['action_digest']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLOUTPUTPROPOSAL_METADATAENTRY']._loaded_options = None + _globals['_TOOLOUTPUTPROPOSAL_METADATAENTRY']._serialized_options = b'8\001' + _globals['_TOOLOUTPUTPROPOSAL'].fields_by_name['kind']._loaded_options = None + _globals['_TOOLOUTPUTPROPOSAL'].fields_by_name['kind']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_TOOLEXECUTIONPROVENANCE_METADATAENTRY']._loaded_options = None + _globals['_TOOLEXECUTIONPROVENANCE_METADATAENTRY']._serialized_options = b'8\001' + _globals['_TOOLEXECUTION'].fields_by_name['linkage']._loaded_options = None + _globals['_TOOLEXECUTION'].fields_by_name['linkage']._serialized_options = b'\272H\003\310\001\001' + _globals['_TOOLEXECUTION'].fields_by_name['tool']._loaded_options = None + _globals['_TOOLEXECUTION'].fields_by_name['tool']._serialized_options = b'\272H\003\310\001\001' + _globals['_TOOLEXECUTION'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_TOOLEXECUTION'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TOOLEXECUTION'].fields_by_name['state']._loaded_options = None + _globals['_TOOLEXECUTION'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_TOOLEXECUTION'].fields_by_name['failure_code']._loaded_options = None + _globals['_TOOLEXECUTION'].fields_by_name['failure_code']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_EXECUTETOOLREQUEST_METADATAENTRY']._loaded_options = None + _globals['_EXECUTETOOLREQUEST_METADATAENTRY']._serialized_options = b'8\001' + _globals['_EXECUTETOOLREQUEST'].fields_by_name['linkage']._loaded_options = None + _globals['_EXECUTETOOLREQUEST'].fields_by_name['linkage']._serialized_options = b'\272H\003\310\001\001' + _globals['_EXECUTETOOLREQUEST'].fields_by_name['tool']._loaded_options = None + _globals['_EXECUTETOOLREQUEST'].fields_by_name['tool']._serialized_options = b'\272H\003\310\001\001' + _globals['_EXECUTETOOLREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_EXECUTETOOLREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['execution_id']._loaded_options = None + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['execution_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['approval_request_id']._loaded_options = None + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['approval_request_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['resume_token']._loaded_options = None + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['resume_token']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['approved']._loaded_options = None + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['approved']._serialized_options = b'\030\001' + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['decided_by']._loaded_options = None + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['decided_by']._serialized_options = b'\030\001' + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['reason']._loaded_options = None + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['reason']._serialized_options = b'\030\001' + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['approval_decision_id']._loaded_options = None + _globals['_RESUMETOOLEXECUTIONREQUEST'].fields_by_name['approval_decision_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST_METADATAENTRY']._loaded_options = None + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST_METADATAENTRY']._serialized_options = b'8\001' + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST'].fields_by_name['execution_id']._loaded_options = None + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST'].fields_by_name['execution_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST'].fields_by_name['output']._loaded_options = None + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST'].fields_by_name['output']._serialized_options = b'\272H\003\310\001\001' + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST'].fields_by_name['authority']._loaded_options = None + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST'].fields_by_name['authority']._serialized_options = b'\272H\003\310\001\001' + _globals['_GETTOOLEXECUTIONREQUEST'].fields_by_name['id']._loaded_options = None + _globals['_GETTOOLEXECUTIONREQUEST'].fields_by_name['id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETTOOLEXECUTIONREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETTOOLEXECUTIONREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETTOOLEXECUTIONREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETTOOLEXECUTIONREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETTOOLEXECUTIONREQUEST'].fields_by_name['wait_timeout_ms']._loaded_options = None + _globals['_GETTOOLEXECUTIONREQUEST'].fields_by_name['wait_timeout_ms']._serialized_options = b'\272H\010*\006\030\260\352\001(\000' + _globals['_LISTTOOLEXECUTIONSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTTOOLEXECUTIONSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTTOOLEXECUTIONSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTTOOLEXECUTIONSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_TOOLEXECUTIONPROJECTSOURCE'].fields_by_name['files']._loaded_options = None + _globals['_TOOLEXECUTIONPROJECTSOURCE'].fields_by_name['files']._serialized_options = b'\272H\006\222\001\003\020\350\007' + _globals['_TOOLEXECUTIONSERVICE'].methods_by_name['ExecuteTool']._loaded_options = None + _globals['_TOOLEXECUTIONSERVICE'].methods_by_name['ExecuteTool']._serialized_options = b'\312\363\030\024tool-execution:write\322\363\030\024linkage.workspace_id\330\363\030\003\352\363\030\027linkage.organization_id' + _globals['_TOOLEXECUTIONSERVICE'].methods_by_name['ResumeToolExecution']._loaded_options = None + _globals['_TOOLEXECUTIONSERVICE'].methods_by_name['ResumeToolExecution']._serialized_options = b'\312\363\030\024tool-execution:write\330\363\030\003' + _globals['_TOOLEXECUTIONSERVICE'].methods_by_name['RecordToolExecutionOutput']._loaded_options = None + _globals['_TOOLEXECUTIONSERVICE'].methods_by_name['RecordToolExecutionOutput']._serialized_options = b'\312\363\030\024tool-execution:write\330\363\030\002' + _globals['_TOOLEXECUTIONSERVICE'].methods_by_name['GetToolExecution']._loaded_options = None + _globals['_TOOLEXECUTIONSERVICE'].methods_by_name['GetToolExecution']._serialized_options = b'\312\363\030\023tool-execution:read\330\363\030\001' + _globals['_TOOLEXECUTIONSERVICE'].methods_by_name['ListToolExecutions']._loaded_options = None + _globals['_TOOLEXECUTIONSERVICE'].methods_by_name['ListToolExecutions']._serialized_options = b'\312\363\030\023tool-execution:read\330\363\030\001' + _globals['_TOOLEXECUTIONSTATE']._serialized_start=10643 + _globals['_TOOLEXECUTIONSTATE']._serialized_end=10995 + _globals['_TOOLEXECUTIONSTAGE']._serialized_start=10998 + _globals['_TOOLEXECUTIONSTAGE']._serialized_end=11402 + _globals['_TOOLEXECUTIONSTEPSTATE']._serialized_start=11405 + _globals['_TOOLEXECUTIONSTEPSTATE']._serialized_end=11667 + _globals['_TOOLEXECUTIONPOLICYDECISION']._serialized_start=11670 + _globals['_TOOLEXECUTIONPOLICYDECISION']._serialized_end=11883 + _globals['_TOOLEXECUTIONPROPOSALKIND']._serialized_start=11886 + _globals['_TOOLEXECUTIONPROPOSALKIND']._serialized_end=12088 + _globals['_TOOLEXECUTIONFAILURECODE']._serialized_start=12091 + _globals['_TOOLEXECUTIONFAILURECODE']._serialized_end=12852 + _globals['_TOOLEXECUTIONLINKAGE']._serialized_start=249 + _globals['_TOOLEXECUTIONLINKAGE']._serialized_end=987 + _globals['_TOOLEXECUTIONATTACHMENTMOUNT']._serialized_start=990 + _globals['_TOOLEXECUTIONATTACHMENTMOUNT']._serialized_end=1326 + _globals['_TOOLEXECUTIONTRACECONTEXT']._serialized_start=1329 + _globals['_TOOLEXECUTIONTRACECONTEXT']._serialized_end=1512 + _globals['_TOOLREF']._serialized_start=1515 + _globals['_TOOLREF']._serialized_end=1764 + _globals['_CONNECTORREF']._serialized_start=1767 + _globals['_CONNECTORREF']._serialized_end=2015 + _globals['_TOOLRETRYPOLICY']._serialized_start=2018 + _globals['_TOOLRETRYPOLICY']._serialized_end=2234 + _globals['_TOOLEXECUTIONSTEP']._serialized_start=2237 + _globals['_TOOLEXECUTIONSTEP']._serialized_end=2814 + _globals['_TOOLEXECUTIONSTEP_ATTRIBUTESENTRY']._serialized_start=2753 + _globals['_TOOLEXECUTIONSTEP_ATTRIBUTESENTRY']._serialized_end=2814 + _globals['_TOOLAPPROVALWAIT']._serialized_start=2817 + _globals['_TOOLAPPROVALWAIT']._serialized_end=3264 + _globals['_VERIFIEDAPPROVALDECISION']._serialized_start=3267 + _globals['_VERIFIEDAPPROVALDECISION']._serialized_end=3577 + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY']._serialized_start=3580 + _globals['_TOOLEXECUTIONOUTPUTAUTHORITY']._serialized_end=3904 + _globals['_TOOLEXECUTIONOUTPUT']._serialized_start=3907 + _globals['_TOOLEXECUTIONOUTPUT']._serialized_end=4308 + _globals['_TOOLOUTPUTPROPOSAL']._serialized_start=4311 + _globals['_TOOLOUTPUTPROPOSAL']._serialized_end=4629 + _globals['_TOOLOUTPUTPROPOSAL_METADATAENTRY']._serialized_start=4570 + _globals['_TOOLOUTPUTPROPOSAL_METADATAENTRY']._serialized_end=4629 + _globals['_TOOLEXECUTIONPROVENANCE']._serialized_start=4632 + _globals['_TOOLEXECUTIONPROVENANCE']._serialized_end=5260 + _globals['_TOOLEXECUTIONPROVENANCE_METADATAENTRY']._serialized_start=4570 + _globals['_TOOLEXECUTIONPROVENANCE_METADATAENTRY']._serialized_end=4629 + _globals['_TOOLEXECUTION']._serialized_start=5263 + _globals['_TOOLEXECUTION']._serialized_end=6609 + _globals['_EXECUTETOOLREQUEST']._serialized_start=6612 + _globals['_EXECUTETOOLREQUEST']._serialized_end=7274 + _globals['_EXECUTETOOLREQUEST_METADATAENTRY']._serialized_start=4570 + _globals['_EXECUTETOOLREQUEST_METADATAENTRY']._serialized_end=4629 + _globals['_EXECUTETOOLRESPONSE']._serialized_start=7277 + _globals['_EXECUTETOOLRESPONSE']._serialized_end=7406 + _globals['_RESUMETOOLEXECUTIONREQUEST']._serialized_start=7409 + _globals['_RESUMETOOLEXECUTIONREQUEST']._serialized_end=7736 + _globals['_RESUMETOOLEXECUTIONRESPONSE']._serialized_start=7738 + _globals['_RESUMETOOLEXECUTIONRESPONSE']._serialized_end=7830 + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST']._serialized_start=7833 + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST']._serialized_end=8223 + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST_METADATAENTRY']._serialized_start=4570 + _globals['_RECORDTOOLEXECUTIONOUTPUTREQUEST_METADATAENTRY']._serialized_end=4629 + _globals['_RECORDTOOLEXECUTIONOUTPUTRESPONSE']._serialized_start=8225 + _globals['_RECORDTOOLEXECUTIONOUTPUTRESPONSE']._serialized_end=8323 + _globals['_GETTOOLEXECUTIONREQUEST']._serialized_start=8326 + _globals['_GETTOOLEXECUTIONREQUEST']._serialized_end=8523 + _globals['_GETTOOLEXECUTIONRESPONSE']._serialized_start=8525 + _globals['_GETTOOLEXECUTIONRESPONSE']._serialized_end=8614 + _globals['_LISTTOOLEXECUTIONSREQUEST']._serialized_start=8617 + _globals['_LISTTOOLEXECUTIONSREQUEST']._serialized_end=9082 + _globals['_LISTTOOLEXECUTIONSRESPONSE']._serialized_start=9085 + _globals['_LISTTOOLEXECUTIONSRESPONSE']._serialized_end=9227 + _globals['_TOOLEXECUTIONPROJECTSOURCEFILE']._serialized_start=9230 + _globals['_TOOLEXECUTIONPROJECTSOURCEFILE']._serialized_end=9429 + _globals['_TOOLEXECUTIONPROJECTSOURCE']._serialized_start=9432 + _globals['_TOOLEXECUTIONPROJECTSOURCE']._serialized_end=9841 + _globals['_TOOLEXECUTIONPROJECTIMPORT']._serialized_start=9844 + _globals['_TOOLEXECUTIONPROJECTIMPORT']._serialized_end=10192 + _globals['_TOOLEXECUTIONGITSNAPSHOTMANIFEST']._serialized_start=10195 + _globals['_TOOLEXECUTIONGITSNAPSHOTMANIFEST']._serialized_end=10490 + _globals['_TOOLEXECUTIONGITSNAPSHOTFILE']._serialized_start=10493 + _globals['_TOOLEXECUTIONGITSNAPSHOTFILE']._serialized_end=10640 + _globals['_TOOLEXECUTIONSERVICE']._serialized_start=12855 + _globals['_TOOLEXECUTIONSERVICE']._serialized_end=13643 +# @@protoc_insertion_point(module_scope) diff --git a/src/traces/v1/traces_pb2.py b/src/traces/v1/traces_pb2.py new file mode 100644 index 0000000..2b06fee --- /dev/null +++ b/src/traces/v1/traces_pb2.py @@ -0,0 +1,276 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: traces/v1/traces.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'traces/v1/traces.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 +from common.v1 import analytics_pb2 as common_dot_v1_dot_analytics__pb2 +from common.v1 import authz_pb2 as common_dot_v1_dot_authz__pb2 +from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x16traces/v1/traces.proto\x12\ttraces.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x19\x63ommon/v1/analytics.proto\x1a\x15\x63ommon/v1/authz.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xa0\x06\n\x04Span\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\x12 \n\x07span_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06spanId\x12$\n\x0eparent_span_id\x18\x03 \x01(\tR\x0cparentSpanId\x12*\n\x0cworkspace_id\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\'\n\x0forganization_id\x18\x05 \x01(\tR\x0eorganizationId\x12\x19\n\x08\x61gent_id\x18\x06 \x01(\tR\x07\x61gentId\x12\x18\n\x07surface\x18\x07 \x01(\tR\x07surface\x12\x1b\n\x04name\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04name\x12\x12\n\x04kind\x18\t \x01(\tR\x04kind\x12\x14\n\x05model\x18\n \x01(\tR\x05model\x12\x1a\n\x08provider\x18\x0b \x01(\tR\x08provider\x12\x1f\n\x0btoken_input\x18\x0c \x01(\x03R\ntokenInput\x12!\n\x0ctoken_output\x18\r \x01(\x03R\x0btokenOutput\x12\x1d\n\nlatency_ms\x18\x0e \x01(\x03R\tlatencyMs\x12-\n\x06status\x18\x0f \x01(\x0e\x32\x15.traces.v1.SpanStatusR\x06status\x12N\n\x13governance_decision\x18\x10 \x01(\x0e\x32\x1d.traces.v1.GovernanceDecisionR\x12governanceDecision\x12\x19\n\x08\x63ost_usd\x18\x11 \x01(\x01R\x07\x63ostUsd\x12\x37\n\nattributes\x18\x12 \x01(\x0b\x32\x17.google.protobuf.StructR\nattributes\x12\x39\n\nstarted_at\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartedAt\x12\x35\n\x08\x65nded_at\x18\x14 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndedAt\x12\x17\n\x07user_id\x18\x15 \x01(\tR\x06userId\"\xa6\x04\n\x0cTraceSummary\x12\x19\n\x08trace_id\x18\x01 \x01(\tR\x07traceId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\'\n\x0forganization_id\x18\x03 \x01(\tR\x0eorganizationId\x12\x19\n\x08\x61gent_id\x18\x04 \x01(\tR\x07\x61gentId\x12\x18\n\x07surface\x18\x05 \x01(\tR\x07surface\x12$\n\x0eroot_span_name\x18\x06 \x01(\tR\x0crootSpanName\x12\x1f\n\x0btotal_spans\x18\x07 \x01(\x05R\ntotalSpans\x12*\n\x11total_token_input\x18\x08 \x01(\x03R\x0ftotalTokenInput\x12,\n\x12total_token_output\x18\t \x01(\x03R\x10totalTokenOutput\x12$\n\x0etotal_cost_usd\x18\n \x01(\x01R\x0ctotalCostUsd\x12(\n\x10total_latency_ms\x18\x0b \x01(\x03R\x0etotalLatencyMs\x12\x39\n\nstarted_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartedAt\x12\x35\n\x08\x65nded_at\x18\r \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndedAt\x12\x17\n\x07user_id\x18\x0e \x01(\tR\x06userId\"\xae\x04\n\x0fTraceAnnotation\x12#\n\rannotation_id\x18\x01 \x01(\tR\x0c\x61nnotationId\x12\"\n\x08trace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\x12\x17\n\x07span_id\x18\x03 \x01(\tR\x06spanId\x12\x32\n\x04kind\x18\x04 \x01(\x0e\x32\x1e.traces.v1.TraceAnnotationKindR\x04kind\x12\x12\n\x04note\x18\x05 \x01(\tR\x04note\x12\x16\n\x06labels\x18\x06 \x03(\tR\x06labels\x12\x16\n\x06source\x18\x07 \x01(\tR\x06source\x12\x33\n\x08metadata\x18\x08 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12\x39\n\ncreated_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x38\n\x06status\x18\n \x01(\x0e\x32 .traces.v1.TraceAnnotationStatusR\x06status\x12\x39\n\nupdated_at\x18\x0b \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12;\n\x0bresolved_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\nresolvedAt\x12\x1f\n\x0bresolved_by\x18\r \x01(\tR\nresolvedBy\"\xc3\x01\n\x0f\x41ssertionResult\x12!\n\x0c\x61ssertion_id\x18\x01 \x01(\tR\x0b\x61ssertionId\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x16\n\x06passed\x18\x03 \x01(\x08R\x06passed\x12\x14\n\x05score\x18\x04 \x01(\x01R\x05score\x12\x16\n\x06reason\x18\x05 \x01(\tR\x06reason\x12\x33\n\x08metadata\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\"\x86\x01\n\x0fGovernanceScore\x12\x39\n\x08\x64\x65\x63ision\x18\x01 \x01(\x0e\x32\x1d.traces.v1.GovernanceDecisionR\x08\x64\x65\x63ision\x12\x1e\n\nconfidence\x18\x02 \x01(\x01R\nconfidence\x12\x18\n\x07reasons\x18\x03 \x03(\tR\x07reasons\"\xeb\x01\n\x14\x43onversationalSignal\x12\x37\n\x04kind\x18\x01 \x01(\x0e\x32#.traces.v1.ConversationalSignalKindR\x04kind\x12\x14\n\x05score\x18\x02 \x01(\x01R\x05score\x12:\n\x05label\x18\x03 \x01(\x0e\x32$.traces.v1.ConversationalSignalLabelR\x05label\x12\x1c\n\trationale\x18\x04 \x01(\tR\trationale\x12*\n\x11\x65vidence_span_ids\x18\x05 \x03(\tR\x0f\x65videnceSpanIds\"\xcc\x04\n\x16TraceQualityAnnotation\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\x12\x17\n\x07span_id\x18\x02 \x01(\tR\x06spanId\x12\'\n\x0f\x63omposite_score\x18\x03 \x01(\x01R\x0e\x63ompositeScore\x12:\n\nassertions\x18\x04 \x03(\x0b\x32\x1a.traces.v1.AssertionResultR\nassertions\x12:\n\ngovernance\x18\x05 \x01(\x0b\x32\x1a.traces.v1.GovernanceScoreR\ngovernance\x12$\n\x04\x63ost\x18\x06 \x01(\x0b\x32\x10.common.v1.MoneyR\x04\x63ost\x12,\n\x12quality_per_dollar\x18\x07 \x01(\x01R\x10qualityPerDollar\x12\"\n\reval_suite_id\x18\x08 \x01(\tR\x0b\x65valSuiteId\x12\x37\n\tscored_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x08scoredAt\x12\x16\n\x06scorer\x18\n \x01(\tR\x06scorer\x12\x33\n\x08metadata\x18\x0b \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12V\n\x16\x63onversational_signals\x18\x0c \x03(\x0b\x32\x1f.traces.v1.ConversationalSignalR\x15\x63onversationalSignals\"E\n\x12IngestSpansRequest\x12/\n\x05spans\x18\x01 \x03(\x0b\x32\x0f.traces.v1.SpanB\x08\xbaH\x05\x92\x01\x02\x08\x01R\x05spans\"m\n\x13IngestSpansResponse\x12%\n\x0eingested_count\x18\x01 \x01(\x05R\ringestedCount\x12/\n\x06traces\x18\x02 \x03(\x0b\x32\x17.traces.v1.TraceSummaryR\x06traces\"5\n\x0fGetTraceRequest\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\"\xfa\x01\n\x10GetTraceResponse\x12-\n\x05trace\x18\x01 \x01(\x0b\x32\x17.traces.v1.TraceSummaryR\x05trace\x12%\n\x05spans\x18\x02 \x03(\x0b\x32\x0f.traces.v1.SpanR\x05spans\x12R\n\x13quality_annotations\x18\x03 \x03(\x0b\x32!.traces.v1.TraceQualityAnnotationR\x12qualityAnnotations\x12<\n\x0b\x61nnotations\x18\x04 \x03(\x0b\x32\x1a.traces.v1.TraceAnnotationR\x0b\x61nnotations\"\xa9\x01\n\rReplayContext\x12\'\n\x0forganization_id\x18\x01 \x01(\tR\x0eorganizationId\x12!\n\x0cworkspace_id\x18\x02 \x01(\tR\x0bworkspaceId\x12\x19\n\x08\x61gent_id\x18\x03 \x01(\tR\x07\x61gentId\x12\x18\n\x07surface\x18\x04 \x01(\tR\x07surface\x12\x17\n\x07user_id\x18\x05 \x01(\tR\x06userId\"\x83\x01\n\x0eReplayToolCall\x12\x17\n\x07span_id\x18\x01 \x01(\tR\x06spanId\x12\x12\n\x04name\x18\x02 \x01(\tR\x04name\x12\x14\n\x05input\x18\x03 \x01(\tR\x05input\x12\x16\n\x06output\x18\x04 \x01(\tR\x06output\x12\x16\n\x06status\x18\x05 \x01(\tR\x06status\"\x8a\x03\n\x11TraceReplayBundle\x12\x19\n\x08trace_id\x18\x01 \x01(\tR\x07traceId\x12\x32\n\x07\x63ontext\x18\x02 \x01(\x0b\x32\x18.traces.v1.ReplayContextR\x07\x63ontext\x12\x14\n\x05input\x18\x03 \x01(\tR\x05input\x12\x14\n\x05model\x18\x04 \x01(\tR\x05model\x12\x1a\n\x08provider\x18\x05 \x01(\tR\x08provider\x12#\n\rprompt_config\x18\x06 \x01(\tR\x0cpromptConfig\x12\x38\n\ntool_calls\x18\x07 \x03(\x0b\x32\x19.traces.v1.ReplayToolCallR\ttoolCalls\x12R\n\x13quality_annotations\x18\x08 \x03(\x0b\x32!.traces.v1.TraceQualityAnnotationR\x12qualityAnnotations\x12+\n\x11redaction_applied\x18\t \x01(\x08R\x10redactionApplied\"\x9e\x05\n\x12TraceEvalCandidate\x12!\n\x0c\x63\x61ndidate_id\x18\x01 \x01(\tR\x0b\x63\x61ndidateId\x12\x19\n\x08trace_id\x18\x02 \x01(\tR\x07traceId\x12\x17\n\x07span_id\x18\x03 \x01(\tR\x06spanId\x12#\n\rannotation_id\x18\x04 \x01(\tR\x0c\x61nnotationId\x12\"\n\reval_suite_id\x18\x05 \x01(\tR\x0b\x65valSuiteId\x12\x1b\n\tcase_kind\x18\x06 \x01(\tR\x08\x63\x61seKind\x12\x16\n\x06labels\x18\x07 \x03(\tR\x06labels\x12\x14\n\x05title\x18\x08 \x01(\tR\x05title\x12\x1c\n\trationale\x18\t \x01(\tR\trationale\x12\x19\n\x08\x63ost_usd\x18\n \x01(\x01R\x07\x63ostUsd\x12\x1f\n\x0btoken_input\x18\x0b \x01(\x03R\ntokenInput\x12!\n\x0ctoken_output\x18\x0c \x01(\x03R\x0btokenOutput\x12N\n\x13governance_decision\x18\r \x01(\x0e\x32\x1d.traces.v1.GovernanceDecisionR\x12governanceDecision\x12+\n\x11\x61pproval_required\x18\x0e \x01(\x08R\x10\x61pprovalRequired\x12+\n\x11redaction_applied\x18\x0f \x01(\x08R\x10redactionApplied\x12\x41\n\rreplay_bundle\x18\x10 \x01(\x0b\x32\x1c.traces.v1.TraceReplayBundleR\x0creplayBundle\x12\x33\n\x08metadata\x18\x11 \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\"\xdf\x02\n\x11ListTracesRequest\x12!\n\x0cworkspace_id\x18\x01 \x01(\tR\x0bworkspaceId\x12\x19\n\x08\x61gent_id\x18\x02 \x01(\tR\x07\x61gentId\x12\x18\n\x07surface\x18\x03 \x01(\tR\x07surface\x12\x39\n\nstart_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12\x1d\n\x05limit\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05limit\x12\x1f\n\x06offset\x18\x07 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\x12\'\n\x0forganization_id\x18\x08 \x01(\tR\x0eorganizationId\x12\x17\n\x07user_id\x18\t \x01(\tR\x06userId\"v\n\x12ListTracesResponse\x12/\n\x06traces\x18\x01 \x03(\x0b\x32\x17.traces.v1.TraceSummaryR\x06traces\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"8\n\x12GetSpanTreeRequest\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\"`\n\x08SpanNode\x12#\n\x04span\x18\x01 \x01(\x0b\x32\x0f.traces.v1.SpanR\x04span\x12/\n\x08\x63hildren\x18\x02 \x03(\x0b\x32\x13.traces.v1.SpanNodeR\x08\x63hildren\"o\n\x13GetSpanTreeResponse\x12-\n\x05trace\x18\x01 \x01(\x0b\x32\x17.traces.v1.TraceSummaryR\x05trace\x12)\n\x05roots\x18\x02 \x03(\x0b\x32\x13.traces.v1.SpanNodeR\x05roots\"\xc4\x01\n\x15GetSpanContextRequest\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\x12 \n\x07span_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06spanId\x12\x1f\n\x06\x62\x65\x66ore\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06\x62\x65\x66ore\x12\x1d\n\x05\x61\x66ter\x18\x04 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05\x61\x66ter\x12%\n\x0einclude_parent\x18\x05 \x01(\x08R\rincludeParent\"\xb6\x01\n\x16GetSpanContextResponse\x12#\n\x04span\x18\x01 \x01(\x0b\x32\x0f.traces.v1.SpanR\x04span\x12\'\n\x06parent\x18\x02 \x01(\x0b\x32\x0f.traces.v1.SpanR\x06parent\x12\'\n\x06\x62\x65\x66ore\x18\x03 \x03(\x0b\x32\x0f.traces.v1.SpanR\x06\x62\x65\x66ore\x12%\n\x05\x61\x66ter\x18\x04 \x03(\x0b\x32\x0f.traces.v1.SpanR\x05\x61\x66ter\"\xa6\x02\n\x15GetSpanPayloadRequest\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\x12 \n\x07span_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06spanId\x12\x34\n\x06target\x18\x03 \x01(\x0e\x32\x1c.traces.v1.SpanPayloadTargetR\x06target\x12\x1f\n\x06offset\x18\x04 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\x12$\n\tmax_chars\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x08maxChars\x12J\n\x0eredaction_mode\x18\x06 \x01(\x0e\x32#.traces.v1.SpanPayloadRedactionModeR\rredactionMode\"\xb3\x01\n\x16GetSpanPayloadResponse\x12\x18\n\x07\x63ontent\x18\x01 \x01(\tR\x07\x63ontent\x12\x1f\n\x0bnext_offset\x18\x02 \x01(\x05R\nnextOffset\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\x12\x16\n\x06source\x18\x04 \x01(\tR\x06source\x12+\n\x11redaction_applied\x18\x05 \x01(\x08R\x10redactionApplied\"\xa3\x04\n\x12SearchTraceRequest\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\x12!\n\x07pattern\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07pattern\x12%\n\x0e\x63\x61se_sensitive\x18\x03 \x01(\x08R\rcaseSensitive\x12\x1b\n\tspan_kind\x18\x04 \x01(\tR\x08spanKind\x12,\n\rcontext_chars\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0c\x63ontextChars\x12\x1d\n\x05limit\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05limit\x12\x16\n\x06scopes\x18\x07 \x03(\tR\x06scopes\x12\x36\n\x0bspan_status\x18\x08 \x01(\x0e\x32\x15.traces.v1.SpanStatusR\nspanStatus\x12\x14\n\x05model\x18\t \x01(\tR\x05model\x12\x1a\n\x08provider\x18\n \x01(\tR\x08provider\x12N\n\x13governance_decision\x18\x0b \x01(\x0e\x32\x1d.traces.v1.GovernanceDecisionR\x12governanceDecision\x12\x14\n\x05label\x18\x0c \x01(\tR\x05label\x12M\n\x11\x61nnotation_status\x18\r \x01(\x0e\x32 .traces.v1.TraceAnnotationStatusR\x10\x61nnotationStatus\"\xbb\x01\n\x10TraceSearchMatch\x12\x19\n\x08trace_id\x18\x01 \x01(\tR\x07traceId\x12\x17\n\x07span_id\x18\x02 \x01(\tR\x06spanId\x12\x1b\n\tspan_name\x18\x03 \x01(\tR\x08spanName\x12\x14\n\x05scope\x18\x04 \x01(\tR\x05scope\x12\x14\n\x05start\x18\x05 \x01(\x05R\x05start\x12\x10\n\x03\x65nd\x18\x06 \x01(\x05R\x03\x65nd\x12\x18\n\x07snippet\x18\x07 \x01(\tR\x07snippet\"}\n\x13SearchTraceResponse\x12\x35\n\x07matches\x18\x01 \x03(\x0b\x32\x1b.traces.v1.TraceSearchMatchR\x07matches\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"Z\n\x14\x41nnotateTraceRequest\x12\x42\n\nannotation\x18\x01 \x01(\x0b\x32\x1a.traces.v1.TraceAnnotationB\x06\xbaH\x03\xc8\x01\x01R\nannotation\"S\n\x15\x41nnotateTraceResponse\x12:\n\nannotation\x18\x01 \x01(\x0b\x32\x1a.traces.v1.TraceAnnotationR\nannotation\"p\n\x1c\x44\x65leteTraceAnnotationRequest\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\x12,\n\rannotation_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0c\x61nnotationId\"[\n\x1d\x44\x65leteTraceAnnotationResponse\x12:\n\nannotation\x18\x01 \x01(\x0b\x32\x1a.traces.v1.TraceAnnotationR\nannotation\"\x9d\x01\n\x18\x42ulkAnnotateTraceRequest\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\x12\x19\n\x08span_ids\x18\x02 \x03(\tR\x07spanIds\x12\x42\n\nannotation\x18\x03 \x01(\x0b\x32\x1a.traces.v1.TraceAnnotationB\x06\xbaH\x03\xc8\x01\x01R\nannotation\"x\n\x19\x42ulkAnnotateTraceResponse\x12<\n\x0b\x61nnotations\x18\x01 \x03(\x0b\x32\x1a.traces.v1.TraceAnnotationR\x0b\x61nnotations\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\"\x9e\x02\n\x1bListTraceAnnotationsRequest\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\x12\x17\n\x07span_id\x18\x02 \x01(\tR\x06spanId\x12\x32\n\x04kind\x18\x03 \x01(\x0e\x32\x1e.traces.v1.TraceAnnotationKindR\x04kind\x12\x14\n\x05label\x18\x04 \x01(\tR\x05label\x12\x1d\n\x05limit\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05limit\x12\x1f\n\x06offset\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\x12\x38\n\x06status\x18\x07 \x01(\x0e\x32 .traces.v1.TraceAnnotationStatusR\x06status\"\x8d\x01\n\x1cListTraceAnnotationsResponse\x12<\n\x0b\x61nnotations\x18\x01 \x03(\x0b\x32\x1a.traces.v1.TraceAnnotationR\x0b\x61nnotations\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"\x85\x03\n\x10TraceEvidenceRef\x12\x1f\n\x0b\x65vidence_id\x18\x01 \x01(\tR\nevidenceId\x12\x14\n\x05label\x18\x02 \x01(\tR\x05label\x12#\n\rresource_type\x18\x03 \x01(\tR\x0cresourceType\x12\x10\n\x03uri\x18\x04 \x01(\tR\x03uri\x12\x33\n\x05state\x18\x05 \x01(\x0e\x32\x1d.traces.v1.TraceEvidenceStateR\x05state\x12\x16\n\x06reason\x18\x06 \x01(\tR\x06reason\x12+\n\x11redaction_applied\x18\x07 \x01(\x08R\x10redactionApplied\x12\x39\n\nexpires_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x33\n\x08metadata\x18\t \x01(\x0b\x32\x17.google.protobuf.StructR\x08metadata\x12\x19\n\x08span_ids\x18\n \x03(\tR\x07spanIds\"\x94\x02\n\x16TraceEvidenceBundleRef\x12\x1b\n\tbundle_id\x18\x01 \x01(\tR\x08\x62undleId\x12\x10\n\x03uri\x18\x02 \x01(\tR\x03uri\x12\x1c\n\tretention\x18\x03 \x01(\tR\tretention\x12\x39\n\ncreated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nexpires_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x37\n\nprovenance\x18\x06 \x01(\x0b\x32\x17.google.protobuf.StructR\nprovenance\"\xb7\x01\n\x13TraceRecoveryAction\x12\x1b\n\taction_id\x18\x01 \x01(\tR\x08\x61\x63tionId\x12\x14\n\x05title\x18\x02 \x01(\tR\x05title\x12\x16\n\x06\x64\x65tail\x18\x03 \x01(\tR\x06\x64\x65tail\x12\x1a\n\x08severity\x18\x04 \x01(\tR\x08severity\x12!\n\x0c\x65vidence_ids\x18\x05 \x03(\tR\x0b\x65videnceIds\x12\x16\n\x06source\x18\x06 \x01(\tR\x06source\"\xbe\x04\n\x0bTraceReview\x12\x16\n\x06status\x18\x01 \x01(\tR\x06status\x12\x1a\n\x08headline\x18\x02 \x01(\tR\x08headline\x12\x18\n\x07summary\x18\x03 \x01(\tR\x07summary\x12,\n\x12\x65vidence_gap_count\x18\x04 \x01(\x05R\x10\x65videnceGapCount\x12#\n\rmetadata_only\x18\x05 \x01(\x08R\x0cmetadataOnly\x12\x1d\n\nreview_url\x18\x06 \x01(\tR\treviewUrl\x12@\n\revidence_refs\x18\x07 \x03(\x0b\x32\x1b.traces.v1.TraceEvidenceRefR\x0c\x65videnceRefs\x12I\n\x10recovery_actions\x18\x08 \x03(\x0b\x32\x1e.traces.v1.TraceRecoveryActionR\x0frecoveryActions\x12L\n\x10\x65vidence_bundles\x18\t \x03(\x0b\x32!.traces.v1.TraceEvidenceBundleRefR\x0f\x65videnceBundles\x12\x30\n\tspan_tree\x18\n \x03(\x0b\x32\x13.traces.v1.SpanNodeR\x08spanTree\x12)\n\x10suggested_labels\x18\x0b \x03(\tR\x0fsuggestedLabels\x12\x37\n\nprovenance\x18\x0c \x01(\x0b\x32\x17.google.protobuf.StructR\nprovenance\"\xfa\x03\n\x11TraceReviewBundle\x12-\n\x05trace\x18\x01 \x01(\x0b\x32\x17.traces.v1.TraceSummaryR\x05trace\x12%\n\x05spans\x18\x02 \x03(\x0b\x32\x0f.traces.v1.SpanR\x05spans\x12<\n\x0b\x61nnotations\x18\x03 \x03(\x0b\x32\x1a.traces.v1.TraceAnnotationR\x0b\x61nnotations\x12R\n\x13quality_annotations\x18\x04 \x03(\x0b\x32!.traces.v1.TraceQualityAnnotationR\x12qualityAnnotations\x12\x35\n\x07matches\x18\x05 \x03(\x0b\x32\x1b.traces.v1.TraceSearchMatchR\x07matches\x12)\n\x10suggested_labels\x18\x06 \x03(\tR\x0fsuggestedLabels\x12\x18\n\x07summary\x18\x07 \x01(\tR\x07summary\x12\x46\n\x0f\x65val_candidates\x18\x08 \x03(\x0b\x32\x1d.traces.v1.TraceEvalCandidateR\x0e\x65valCandidates\x12\x39\n\x0ctrace_review\x18\t \x01(\x0b\x32\x16.traces.v1.TraceReviewR\x0btraceReview\"\x99\x01\n\x1bGetTraceReviewBundleRequest\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\x12\x16\n\x06search\x18\x02 \x01(\tR\x06search\x12\x14\n\x05label\x18\x03 \x01(\tR\x05label\x12(\n\x0bmax_matches\x18\x04 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\nmaxMatches\"T\n\x1cGetTraceReviewBundleResponse\x12\x34\n\x06\x62undle\x18\x01 \x01(\x0b\x32\x1c.traces.v1.TraceReviewBundleR\x06\x62undle\"h\n\x1b\x41nnotateTraceQualityRequest\x12I\n\nannotation\x18\x01 \x01(\x0b\x32!.traces.v1.TraceQualityAnnotationB\x06\xbaH\x03\xc8\x01\x01R\nannotation\"a\n\x1c\x41nnotateTraceQualityResponse\x12\x41\n\nannotation\x18\x01 \x01(\x0b\x32!.traces.v1.TraceQualityAnnotationR\nannotation\"\xe7\x01\n\"ListTraceQualityAnnotationsRequest\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\x12\x17\n\x07span_id\x18\x02 \x01(\tR\x06spanId\x12\x1d\n\x05limit\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05limit\x12\x1f\n\x06offset\x18\x04 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\x12\x44\n\x0bsignal_kind\x18\x05 \x01(\x0e\x32#.traces.v1.ConversationalSignalKindR\nsignalKind\"\x9b\x01\n#ListTraceQualityAnnotationsResponse\x12\x43\n\x0b\x61nnotations\x18\x01 \x03(\x0b\x32!.traces.v1.TraceQualityAnnotationR\x0b\x61nnotations\x12\x14\n\x05total\x18\x02 \x01(\x05R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"?\n\x19\x45xportReplayBundleRequest\x12\"\n\x08trace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07traceId\"R\n\x1a\x45xportReplayBundleResponse\x12\x34\n\x06\x62undle\x18\x01 \x01(\x0b\x32\x1c.traces.v1.TraceReplayBundleR\x06\x62undle\"\xcc\x02\n$SummarizeMaestroSelfTelemetryRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\'\n\x0forganization_id\x18\x02 \x01(\tR\x0eorganizationId\x12\x19\n\x08\x61gent_id\x18\x03 \x01(\tR\x07\x61gentId\x12\x18\n\x07surface\x18\x04 \x01(\tR\x07surface\x12\x39\n\nstart_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12(\n\x0btrace_limit\x18\x07 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\ntraceLimit\"\x99\x03\n\x1bMaestroSelfTelemetrySummary\x12\x1f\n\x0btrace_count\x18\x01 \x01(\x05R\ntraceCount\x12\x1d\n\nspan_count\x18\x02 \x01(\x05R\tspanCount\x12-\n\x12permission_denials\x18\x03 \x01(\x05R\x11permissionDenials\x12/\n\x13\x63ontext_compactions\x18\x04 \x01(\x05R\x12\x63ontextCompactions\x12\'\n\x0fsubagent_spawns\x18\x05 \x01(\x05R\x0esubagentSpawns\x12)\n\x10self_diagnostics\x18\x06 \x01(\x05R\x0fselfDiagnostics\x12\x34\n\x16permission_denial_rate\x18\x07 \x01(\x01R\x14permissionDenialRate\x12\'\n\x0f\x63ompaction_rate\x18\x08 \x01(\x01R\x0e\x63ompactionRate\x12\'\n\x0fsubagent_fanout\x18\t \x01(\x01R\x0esubagentFanout\"i\n%SummarizeMaestroSelfTelemetryResponse\x12@\n\x07summary\x18\x01 \x01(\x0b\x32&.traces.v1.MaestroSelfTelemetrySummaryR\x07summary*o\n\nSpanStatus\x12\x1b\n\x17SPAN_STATUS_UNSPECIFIED\x10\x00\x12\x12\n\x0eSPAN_STATUS_OK\x10\x01\x12\x15\n\x11SPAN_STATUS_ERROR\x10\x02\x12\x19\n\x15SPAN_STATUS_CANCELLED\x10\x03*\xc7\x01\n\x12GovernanceDecision\x12#\n\x1fGOVERNANCE_DECISION_UNSPECIFIED\x10\x00\x12\x1d\n\x19GOVERNANCE_DECISION_ALLOW\x10\x01\x12\x1c\n\x18GOVERNANCE_DECISION_DENY\x10\x02\x12(\n$GOVERNANCE_DECISION_REQUIRE_APPROVAL\x10\x03\x12%\n!GOVERNANCE_DECISION_AUTO_APPROVED\x10\x04*\x9d\x01\n\x13TraceAnnotationKind\x12%\n!TRACE_ANNOTATION_KIND_UNSPECIFIED\x10\x00\x12\x1e\n\x1aTRACE_ANNOTATION_KIND_NOTE\x10\x01\x12\x1f\n\x1bTRACE_ANNOTATION_KIND_ISSUE\x10\x02\x12\x1e\n\x1aTRACE_ANNOTATION_KIND_GOOD\x10\x03*\xd7\x01\n\x15TraceAnnotationStatus\x12\'\n#TRACE_ANNOTATION_STATUS_UNSPECIFIED\x10\x00\x12\"\n\x1eTRACE_ANNOTATION_STATUS_ACTIVE\x10\x01\x12$\n TRACE_ANNOTATION_STATUS_RESOLVED\x10\x02\x12%\n!TRACE_ANNOTATION_STATUS_DISMISSED\x10\x03\x12$\n TRACE_ANNOTATION_STATUS_ARCHIVED\x10\x04*\xcc\x01\n\x18\x43onversationalSignalKind\x12*\n&CONVERSATIONAL_SIGNAL_KIND_UNSPECIFIED\x10\x00\x12*\n&CONVERSATIONAL_SIGNAL_KIND_FRUSTRATION\x10\x01\x12(\n$CONVERSATIONAL_SIGNAL_KIND_CONFUSION\x10\x02\x12.\n*CONVERSATIONAL_SIGNAL_KIND_DISSATISFACTION\x10\x03*\xbb\x01\n\x19\x43onversationalSignalLabel\x12+\n\'CONVERSATIONAL_SIGNAL_LABEL_UNSPECIFIED\x10\x00\x12#\n\x1f\x43ONVERSATIONAL_SIGNAL_LABEL_LOW\x10\x01\x12&\n\"CONVERSATIONAL_SIGNAL_LABEL_MEDIUM\x10\x02\x12$\n CONVERSATIONAL_SIGNAL_LABEL_HIGH\x10\x03*\xa9\x02\n\x11SpanPayloadTarget\x12#\n\x1fSPAN_PAYLOAD_TARGET_UNSPECIFIED\x10\x00\x12\x1d\n\x19SPAN_PAYLOAD_TARGET_INPUT\x10\x01\x12\x1e\n\x1aSPAN_PAYLOAD_TARGET_OUTPUT\x10\x02\x12\"\n\x1eSPAN_PAYLOAD_TARGET_ATTRIBUTES\x10\x03\x12$\n SPAN_PAYLOAD_TARGET_LLM_MESSAGES\x10\x04\x12!\n\x1dSPAN_PAYLOAD_TARGET_TOOL_ARGS\x10\x05\x12#\n\x1fSPAN_PAYLOAD_TARGET_TOOL_RESULT\x10\x06\x12\x1e\n\x1aSPAN_PAYLOAD_TARGET_EVENTS\x10\x07*\x92\x01\n\x18SpanPayloadRedactionMode\x12+\n\'SPAN_PAYLOAD_REDACTION_MODE_UNSPECIFIED\x10\x00\x12$\n SPAN_PAYLOAD_REDACTION_MODE_SAFE\x10\x01\x12#\n\x1fSPAN_PAYLOAD_REDACTION_MODE_RAW\x10\x02*\xf2\x01\n\x12TraceEvidenceState\x12$\n TRACE_EVIDENCE_STATE_UNSPECIFIED\x10\x00\x12\"\n\x1eTRACE_EVIDENCE_STATE_AVAILABLE\x10\x01\x12!\n\x1dTRACE_EVIDENCE_STATE_WITHHELD\x10\x02\x12 \n\x1cTRACE_EVIDENCE_STATE_MISSING\x10\x03\x12+\n\'TRACE_EVIDENCE_STATE_PERMISSION_BLOCKED\x10\x04\x12 \n\x1cTRACE_EVIDENCE_STATE_EXPIRED\x10\x05\x32\xb6\x0f\n\x11SpanIngestService\x12x\n\x0bIngestSpans\x12\x1d.traces.v1.IngestSpansRequest\x1a\x1e.traces.v1.IngestSpansResponse\"*\xca\xf3\x18\x0ctraces:write\xd2\xf3\x18\x12spans.workspace_id\xd8\xf3\x18\x02\x12X\n\x08GetTrace\x12\x1a.traces.v1.GetTraceRequest\x1a\x1b.traces.v1.GetTraceResponse\"\x13\xca\xf3\x18\x0btraces:read\xd8\xf3\x18\x01\x12q\n\nListTraces\x12\x1c.traces.v1.ListTracesRequest\x1a\x1d.traces.v1.ListTracesResponse\"&\xca\xf3\x18\x0btraces:read\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\x61\n\x0bGetSpanTree\x12\x1d.traces.v1.GetSpanTreeRequest\x1a\x1e.traces.v1.GetSpanTreeResponse\"\x13\xca\xf3\x18\x0btraces:read\xd8\xf3\x18\x01\x12j\n\x0eGetSpanContext\x12 .traces.v1.GetSpanContextRequest\x1a!.traces.v1.GetSpanContextResponse\"\x13\xca\xf3\x18\x0btraces:read\xd8\xf3\x18\x01\x12j\n\x0eGetSpanPayload\x12 .traces.v1.GetSpanPayloadRequest\x1a!.traces.v1.GetSpanPayloadResponse\"\x13\xca\xf3\x18\x0btraces:read\xd8\xf3\x18\x02\x12\x61\n\x0bSearchTrace\x12\x1d.traces.v1.SearchTraceRequest\x1a\x1e.traces.v1.SearchTraceResponse\"\x13\xca\xf3\x18\x0btraces:read\xd8\xf3\x18\x01\x12h\n\rAnnotateTrace\x12\x1f.traces.v1.AnnotateTraceRequest\x1a .traces.v1.AnnotateTraceResponse\"\x14\xca\xf3\x18\x0ctraces:write\xd8\xf3\x18\x02\x12\x80\x01\n\x15\x44\x65leteTraceAnnotation\x12\'.traces.v1.DeleteTraceAnnotationRequest\x1a(.traces.v1.DeleteTraceAnnotationResponse\"\x14\xca\xf3\x18\x0ctraces:write\xd8\xf3\x18\x02\x12t\n\x11\x42ulkAnnotateTrace\x12#.traces.v1.BulkAnnotateTraceRequest\x1a$.traces.v1.BulkAnnotateTraceResponse\"\x14\xca\xf3\x18\x0ctraces:write\xd8\xf3\x18\x02\x12|\n\x14ListTraceAnnotations\x12&.traces.v1.ListTraceAnnotationsRequest\x1a\'.traces.v1.ListTraceAnnotationsResponse\"\x13\xca\xf3\x18\x0btraces:read\xd8\xf3\x18\x01\x12|\n\x14GetTraceReviewBundle\x12&.traces.v1.GetTraceReviewBundleRequest\x1a\'.traces.v1.GetTraceReviewBundleResponse\"\x13\xca\xf3\x18\x0btraces:read\xd8\xf3\x18\x01\x12}\n\x14\x41nnotateTraceQuality\x12&.traces.v1.AnnotateTraceQualityRequest\x1a\'.traces.v1.AnnotateTraceQualityResponse\"\x14\xca\xf3\x18\x0ctraces:write\xd8\xf3\x18\x02\x12\x91\x01\n\x1bListTraceQualityAnnotations\x12-.traces.v1.ListTraceQualityAnnotationsRequest\x1a..traces.v1.ListTraceQualityAnnotationsResponse\"\x13\xca\xf3\x18\x0btraces:read\xd8\xf3\x18\x01\x12\x8c\x01\n\x12\x45xportReplayBundle\x12$.traces.v1.ExportReplayBundleRequest\x1a%.traces.v1.ExportReplayBundleResponse\")\xca\xf3\x18\x0btraces:read\xca\xf3\x18\x12traces.payload.raw\xd8\xf3\x18\x03\x12\xba\x01\n\x1dSummarizeMaestroSelfTelemetry\x12/.traces.v1.SummarizeMaestroSelfTelemetryRequest\x1a\x30.traces.v1.SummarizeMaestroSelfTelemetryResponse\"6\xca\xf3\x18\x0btraces:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_idB7Z5github.com/evalops/platform/gen/go/traces/v1;tracesv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'traces.v1.traces_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z5github.com/evalops/platform/gen/go/traces/v1;tracesv1' + _globals['_SPAN'].fields_by_name['trace_id']._loaded_options = None + _globals['_SPAN'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SPAN'].fields_by_name['span_id']._loaded_options = None + _globals['_SPAN'].fields_by_name['span_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SPAN'].fields_by_name['workspace_id']._loaded_options = None + _globals['_SPAN'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SPAN'].fields_by_name['name']._loaded_options = None + _globals['_SPAN'].fields_by_name['name']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TRACEANNOTATION'].fields_by_name['trace_id']._loaded_options = None + _globals['_TRACEANNOTATION'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_TRACEQUALITYANNOTATION'].fields_by_name['trace_id']._loaded_options = None + _globals['_TRACEQUALITYANNOTATION'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_INGESTSPANSREQUEST'].fields_by_name['spans']._loaded_options = None + _globals['_INGESTSPANSREQUEST'].fields_by_name['spans']._serialized_options = b'\272H\005\222\001\002\010\001' + _globals['_GETTRACEREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_GETTRACEREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTTRACESREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTTRACESREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTTRACESREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTTRACESREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETSPANTREEREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_GETSPANTREEREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSPANCONTEXTREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_GETSPANCONTEXTREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSPANCONTEXTREQUEST'].fields_by_name['span_id']._loaded_options = None + _globals['_GETSPANCONTEXTREQUEST'].fields_by_name['span_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSPANCONTEXTREQUEST'].fields_by_name['before']._loaded_options = None + _globals['_GETSPANCONTEXTREQUEST'].fields_by_name['before']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETSPANCONTEXTREQUEST'].fields_by_name['after']._loaded_options = None + _globals['_GETSPANCONTEXTREQUEST'].fields_by_name['after']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETSPANPAYLOADREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_GETSPANPAYLOADREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSPANPAYLOADREQUEST'].fields_by_name['span_id']._loaded_options = None + _globals['_GETSPANPAYLOADREQUEST'].fields_by_name['span_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETSPANPAYLOADREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_GETSPANPAYLOADREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETSPANPAYLOADREQUEST'].fields_by_name['max_chars']._loaded_options = None + _globals['_GETSPANPAYLOADREQUEST'].fields_by_name['max_chars']._serialized_options = b'\272H\004\032\002(\000' + _globals['_SEARCHTRACEREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_SEARCHTRACEREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SEARCHTRACEREQUEST'].fields_by_name['pattern']._loaded_options = None + _globals['_SEARCHTRACEREQUEST'].fields_by_name['pattern']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SEARCHTRACEREQUEST'].fields_by_name['context_chars']._loaded_options = None + _globals['_SEARCHTRACEREQUEST'].fields_by_name['context_chars']._serialized_options = b'\272H\004\032\002(\000' + _globals['_SEARCHTRACEREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_SEARCHTRACEREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_ANNOTATETRACEREQUEST'].fields_by_name['annotation']._loaded_options = None + _globals['_ANNOTATETRACEREQUEST'].fields_by_name['annotation']._serialized_options = b'\272H\003\310\001\001' + _globals['_DELETETRACEANNOTATIONREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_DELETETRACEANNOTATIONREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DELETETRACEANNOTATIONREQUEST'].fields_by_name['annotation_id']._loaded_options = None + _globals['_DELETETRACEANNOTATIONREQUEST'].fields_by_name['annotation_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BULKANNOTATETRACEREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_BULKANNOTATETRACEREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_BULKANNOTATETRACEREQUEST'].fields_by_name['annotation']._loaded_options = None + _globals['_BULKANNOTATETRACEREQUEST'].fields_by_name['annotation']._serialized_options = b'\272H\003\310\001\001' + _globals['_BULKANNOTATETRACERESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_BULKANNOTATETRACERESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTTRACEANNOTATIONSREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_LISTTRACEANNOTATIONSREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTTRACEANNOTATIONSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTTRACEANNOTATIONSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTTRACEANNOTATIONSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTTRACEANNOTATIONSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_GETTRACEREVIEWBUNDLEREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_GETTRACEREVIEWBUNDLEREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETTRACEREVIEWBUNDLEREQUEST'].fields_by_name['max_matches']._loaded_options = None + _globals['_GETTRACEREVIEWBUNDLEREQUEST'].fields_by_name['max_matches']._serialized_options = b'\272H\004\032\002(\000' + _globals['_ANNOTATETRACEQUALITYREQUEST'].fields_by_name['annotation']._loaded_options = None + _globals['_ANNOTATETRACEQUALITYREQUEST'].fields_by_name['annotation']._serialized_options = b'\272H\003\310\001\001' + _globals['_LISTTRACEQUALITYANNOTATIONSREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_LISTTRACEQUALITYANNOTATIONSREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTTRACEQUALITYANNOTATIONSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTTRACEQUALITYANNOTATIONSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTTRACEQUALITYANNOTATIONSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTTRACEQUALITYANNOTATIONSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_EXPORTREPLAYBUNDLEREQUEST'].fields_by_name['trace_id']._loaded_options = None + _globals['_EXPORTREPLAYBUNDLEREQUEST'].fields_by_name['trace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUMMARIZEMAESTROSELFTELEMETRYREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_SUMMARIZEMAESTROSELFTELEMETRYREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SUMMARIZEMAESTROSELFTELEMETRYREQUEST'].fields_by_name['trace_limit']._loaded_options = None + _globals['_SUMMARIZEMAESTROSELFTELEMETRYREQUEST'].fields_by_name['trace_limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_SPANINGESTSERVICE'].methods_by_name['IngestSpans']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['IngestSpans']._serialized_options = b'\312\363\030\014traces:write\322\363\030\022spans.workspace_id\330\363\030\002' + _globals['_SPANINGESTSERVICE'].methods_by_name['GetTrace']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['GetTrace']._serialized_options = b'\312\363\030\013traces:read\330\363\030\001' + _globals['_SPANINGESTSERVICE'].methods_by_name['ListTraces']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['ListTraces']._serialized_options = b'\312\363\030\013traces:read\330\363\030\001\352\363\030\017organization_id' + _globals['_SPANINGESTSERVICE'].methods_by_name['GetSpanTree']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['GetSpanTree']._serialized_options = b'\312\363\030\013traces:read\330\363\030\001' + _globals['_SPANINGESTSERVICE'].methods_by_name['GetSpanContext']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['GetSpanContext']._serialized_options = b'\312\363\030\013traces:read\330\363\030\001' + _globals['_SPANINGESTSERVICE'].methods_by_name['GetSpanPayload']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['GetSpanPayload']._serialized_options = b'\312\363\030\013traces:read\330\363\030\002' + _globals['_SPANINGESTSERVICE'].methods_by_name['SearchTrace']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['SearchTrace']._serialized_options = b'\312\363\030\013traces:read\330\363\030\001' + _globals['_SPANINGESTSERVICE'].methods_by_name['AnnotateTrace']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['AnnotateTrace']._serialized_options = b'\312\363\030\014traces:write\330\363\030\002' + _globals['_SPANINGESTSERVICE'].methods_by_name['DeleteTraceAnnotation']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['DeleteTraceAnnotation']._serialized_options = b'\312\363\030\014traces:write\330\363\030\002' + _globals['_SPANINGESTSERVICE'].methods_by_name['BulkAnnotateTrace']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['BulkAnnotateTrace']._serialized_options = b'\312\363\030\014traces:write\330\363\030\002' + _globals['_SPANINGESTSERVICE'].methods_by_name['ListTraceAnnotations']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['ListTraceAnnotations']._serialized_options = b'\312\363\030\013traces:read\330\363\030\001' + _globals['_SPANINGESTSERVICE'].methods_by_name['GetTraceReviewBundle']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['GetTraceReviewBundle']._serialized_options = b'\312\363\030\013traces:read\330\363\030\001' + _globals['_SPANINGESTSERVICE'].methods_by_name['AnnotateTraceQuality']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['AnnotateTraceQuality']._serialized_options = b'\312\363\030\014traces:write\330\363\030\002' + _globals['_SPANINGESTSERVICE'].methods_by_name['ListTraceQualityAnnotations']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['ListTraceQualityAnnotations']._serialized_options = b'\312\363\030\013traces:read\330\363\030\001' + _globals['_SPANINGESTSERVICE'].methods_by_name['ExportReplayBundle']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['ExportReplayBundle']._serialized_options = b'\312\363\030\013traces:read\312\363\030\022traces.payload.raw\330\363\030\003' + _globals['_SPANINGESTSERVICE'].methods_by_name['SummarizeMaestroSelfTelemetry']._loaded_options = None + _globals['_SPANINGESTSERVICE'].methods_by_name['SummarizeMaestroSelfTelemetry']._serialized_options = b'\312\363\030\013traces:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_SPANSTATUS']._serialized_start=12483 + _globals['_SPANSTATUS']._serialized_end=12594 + _globals['_GOVERNANCEDECISION']._serialized_start=12597 + _globals['_GOVERNANCEDECISION']._serialized_end=12796 + _globals['_TRACEANNOTATIONKIND']._serialized_start=12799 + _globals['_TRACEANNOTATIONKIND']._serialized_end=12956 + _globals['_TRACEANNOTATIONSTATUS']._serialized_start=12959 + _globals['_TRACEANNOTATIONSTATUS']._serialized_end=13174 + _globals['_CONVERSATIONALSIGNALKIND']._serialized_start=13177 + _globals['_CONVERSATIONALSIGNALKIND']._serialized_end=13381 + _globals['_CONVERSATIONALSIGNALLABEL']._serialized_start=13384 + _globals['_CONVERSATIONALSIGNALLABEL']._serialized_end=13571 + _globals['_SPANPAYLOADTARGET']._serialized_start=13574 + _globals['_SPANPAYLOADTARGET']._serialized_end=13871 + _globals['_SPANPAYLOADREDACTIONMODE']._serialized_start=13874 + _globals['_SPANPAYLOADREDACTIONMODE']._serialized_end=14020 + _globals['_TRACEEVIDENCESTATE']._serialized_start=14023 + _globals['_TRACEEVIDENCESTATE']._serialized_end=14265 + _globals['_SPAN']._serialized_start=180 + _globals['_SPAN']._serialized_end=980 + _globals['_TRACESUMMARY']._serialized_start=983 + _globals['_TRACESUMMARY']._serialized_end=1533 + _globals['_TRACEANNOTATION']._serialized_start=1536 + _globals['_TRACEANNOTATION']._serialized_end=2094 + _globals['_ASSERTIONRESULT']._serialized_start=2097 + _globals['_ASSERTIONRESULT']._serialized_end=2292 + _globals['_GOVERNANCESCORE']._serialized_start=2295 + _globals['_GOVERNANCESCORE']._serialized_end=2429 + _globals['_CONVERSATIONALSIGNAL']._serialized_start=2432 + _globals['_CONVERSATIONALSIGNAL']._serialized_end=2667 + _globals['_TRACEQUALITYANNOTATION']._serialized_start=2670 + _globals['_TRACEQUALITYANNOTATION']._serialized_end=3258 + _globals['_INGESTSPANSREQUEST']._serialized_start=3260 + _globals['_INGESTSPANSREQUEST']._serialized_end=3329 + _globals['_INGESTSPANSRESPONSE']._serialized_start=3331 + _globals['_INGESTSPANSRESPONSE']._serialized_end=3440 + _globals['_GETTRACEREQUEST']._serialized_start=3442 + _globals['_GETTRACEREQUEST']._serialized_end=3495 + _globals['_GETTRACERESPONSE']._serialized_start=3498 + _globals['_GETTRACERESPONSE']._serialized_end=3748 + _globals['_REPLAYCONTEXT']._serialized_start=3751 + _globals['_REPLAYCONTEXT']._serialized_end=3920 + _globals['_REPLAYTOOLCALL']._serialized_start=3923 + _globals['_REPLAYTOOLCALL']._serialized_end=4054 + _globals['_TRACEREPLAYBUNDLE']._serialized_start=4057 + _globals['_TRACEREPLAYBUNDLE']._serialized_end=4451 + _globals['_TRACEEVALCANDIDATE']._serialized_start=4454 + _globals['_TRACEEVALCANDIDATE']._serialized_end=5124 + _globals['_LISTTRACESREQUEST']._serialized_start=5127 + _globals['_LISTTRACESREQUEST']._serialized_end=5478 + _globals['_LISTTRACESRESPONSE']._serialized_start=5480 + _globals['_LISTTRACESRESPONSE']._serialized_end=5598 + _globals['_GETSPANTREEREQUEST']._serialized_start=5600 + _globals['_GETSPANTREEREQUEST']._serialized_end=5656 + _globals['_SPANNODE']._serialized_start=5658 + _globals['_SPANNODE']._serialized_end=5754 + _globals['_GETSPANTREERESPONSE']._serialized_start=5756 + _globals['_GETSPANTREERESPONSE']._serialized_end=5867 + _globals['_GETSPANCONTEXTREQUEST']._serialized_start=5870 + _globals['_GETSPANCONTEXTREQUEST']._serialized_end=6066 + _globals['_GETSPANCONTEXTRESPONSE']._serialized_start=6069 + _globals['_GETSPANCONTEXTRESPONSE']._serialized_end=6251 + _globals['_GETSPANPAYLOADREQUEST']._serialized_start=6254 + _globals['_GETSPANPAYLOADREQUEST']._serialized_end=6548 + _globals['_GETSPANPAYLOADRESPONSE']._serialized_start=6551 + _globals['_GETSPANPAYLOADRESPONSE']._serialized_end=6730 + _globals['_SEARCHTRACEREQUEST']._serialized_start=6733 + _globals['_SEARCHTRACEREQUEST']._serialized_end=7280 + _globals['_TRACESEARCHMATCH']._serialized_start=7283 + _globals['_TRACESEARCHMATCH']._serialized_end=7470 + _globals['_SEARCHTRACERESPONSE']._serialized_start=7472 + _globals['_SEARCHTRACERESPONSE']._serialized_end=7597 + _globals['_ANNOTATETRACEREQUEST']._serialized_start=7599 + _globals['_ANNOTATETRACEREQUEST']._serialized_end=7689 + _globals['_ANNOTATETRACERESPONSE']._serialized_start=7691 + _globals['_ANNOTATETRACERESPONSE']._serialized_end=7774 + _globals['_DELETETRACEANNOTATIONREQUEST']._serialized_start=7776 + _globals['_DELETETRACEANNOTATIONREQUEST']._serialized_end=7888 + _globals['_DELETETRACEANNOTATIONRESPONSE']._serialized_start=7890 + _globals['_DELETETRACEANNOTATIONRESPONSE']._serialized_end=7981 + _globals['_BULKANNOTATETRACEREQUEST']._serialized_start=7984 + _globals['_BULKANNOTATETRACEREQUEST']._serialized_end=8141 + _globals['_BULKANNOTATETRACERESPONSE']._serialized_start=8143 + _globals['_BULKANNOTATETRACERESPONSE']._serialized_end=8263 + _globals['_LISTTRACEANNOTATIONSREQUEST']._serialized_start=8266 + _globals['_LISTTRACEANNOTATIONSREQUEST']._serialized_end=8552 + _globals['_LISTTRACEANNOTATIONSRESPONSE']._serialized_start=8555 + _globals['_LISTTRACEANNOTATIONSRESPONSE']._serialized_end=8696 + _globals['_TRACEEVIDENCEREF']._serialized_start=8699 + _globals['_TRACEEVIDENCEREF']._serialized_end=9088 + _globals['_TRACEEVIDENCEBUNDLEREF']._serialized_start=9091 + _globals['_TRACEEVIDENCEBUNDLEREF']._serialized_end=9367 + _globals['_TRACERECOVERYACTION']._serialized_start=9370 + _globals['_TRACERECOVERYACTION']._serialized_end=9553 + _globals['_TRACEREVIEW']._serialized_start=9556 + _globals['_TRACEREVIEW']._serialized_end=10130 + _globals['_TRACEREVIEWBUNDLE']._serialized_start=10133 + _globals['_TRACEREVIEWBUNDLE']._serialized_end=10639 + _globals['_GETTRACEREVIEWBUNDLEREQUEST']._serialized_start=10642 + _globals['_GETTRACEREVIEWBUNDLEREQUEST']._serialized_end=10795 + _globals['_GETTRACEREVIEWBUNDLERESPONSE']._serialized_start=10797 + _globals['_GETTRACEREVIEWBUNDLERESPONSE']._serialized_end=10881 + _globals['_ANNOTATETRACEQUALITYREQUEST']._serialized_start=10883 + _globals['_ANNOTATETRACEQUALITYREQUEST']._serialized_end=10987 + _globals['_ANNOTATETRACEQUALITYRESPONSE']._serialized_start=10989 + _globals['_ANNOTATETRACEQUALITYRESPONSE']._serialized_end=11086 + _globals['_LISTTRACEQUALITYANNOTATIONSREQUEST']._serialized_start=11089 + _globals['_LISTTRACEQUALITYANNOTATIONSREQUEST']._serialized_end=11320 + _globals['_LISTTRACEQUALITYANNOTATIONSRESPONSE']._serialized_start=11323 + _globals['_LISTTRACEQUALITYANNOTATIONSRESPONSE']._serialized_end=11478 + _globals['_EXPORTREPLAYBUNDLEREQUEST']._serialized_start=11480 + _globals['_EXPORTREPLAYBUNDLEREQUEST']._serialized_end=11543 + _globals['_EXPORTREPLAYBUNDLERESPONSE']._serialized_start=11545 + _globals['_EXPORTREPLAYBUNDLERESPONSE']._serialized_end=11627 + _globals['_SUMMARIZEMAESTROSELFTELEMETRYREQUEST']._serialized_start=11630 + _globals['_SUMMARIZEMAESTROSELFTELEMETRYREQUEST']._serialized_end=11962 + _globals['_MAESTROSELFTELEMETRYSUMMARY']._serialized_start=11965 + _globals['_MAESTROSELFTELEMETRYSUMMARY']._serialized_end=12374 + _globals['_SUMMARIZEMAESTROSELFTELEMETRYRESPONSE']._serialized_start=12376 + _globals['_SUMMARIZEMAESTROSELFTELEMETRYRESPONSE']._serialized_end=12481 + _globals['_SPANINGESTSERVICE']._serialized_start=14268 + _globals['_SPANINGESTSERVICE']._serialized_end=16242 +# @@protoc_insertion_point(module_scope) diff --git a/src/vfs/v1/filesystem_pb2.py b/src/vfs/v1/filesystem_pb2.py new file mode 100644 index 0000000..0676bd3 --- /dev/null +++ b/src/vfs/v1/filesystem_pb2.py @@ -0,0 +1,331 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# NO CHECKED-IN PROTOBUF GENCODE +# source: vfs/v1/filesystem.proto +# Protobuf Python Version: 7.35.0 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import runtime_version as _runtime_version +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +_runtime_version.ValidateProtobufRuntimeVersion( + _runtime_version.Domain.PUBLIC, + 7, + 35, + 0, + '', + 'vfs/v1/filesystem.proto' +) +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +from buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2 +from common.v1 import authz_pb2 as common_dot_v1_dot_authz__pb2 +from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2 +from evalops_platform.v1 import platform_pb2 as platform_dot_v1_dot_platform__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17vfs/v1/filesystem.proto\x12\x06vfs.v1\x1a\x1b\x62uf/validate/validate.proto\x1a\x15\x63ommon/v1/authz.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1aplatform/v1/platform.proto\"\x94\n\n\tVfsObject\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\x04path\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04path\x12\x36\n\x05state\x18\x04 \x01(\x0e\x32\x16.vfs.v1.VfsObjectStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12\x30\n\x0f\x63urrent_version\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0e\x63urrentVersion\x12,\n\x12\x63urrent_version_id\x18\x06 \x01(\tR\x10\x63urrentVersionId\x12!\n\x0c\x63ontent_type\x18\x07 \x01(\tR\x0b\x63ontentType\x12&\n\nsize_bytes\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\tsizeBytes\x12\x16\n\x06sha256\x18\t \x01(\tR\x06sha256\x12\x12\n\x04\x65tag\x18\n \x01(\tR\x04\x65tag\x12\x19\n\x08owner_id\x18\x0b \x01(\tR\x07ownerId\x12\x1d\n\ncreator_id\x18\x0c \x01(\tR\tcreatorId\x12%\n\x0esource_service\x18\r \x01(\tR\rsourceService\x12\x15\n\x06run_id\x18\x0e \x01(\tR\x05runId\x12*\n\x11tool_execution_id\x18\x0f \x01(\tR\x0ftoolExecutionId\x12!\n\x0c\x63onnector_id\x18\x10 \x01(\tR\x0b\x63onnectorId\x12#\n\rconnection_id\x18\x11 \x01(\tR\x0c\x63onnectionId\x12 \n\x0bsensitivity\x18\x12 \x01(\tR\x0bsensitivity\x12\'\n\x0fretention_class\x18\x13 \x01(\tR\x0eretentionClass\x12L\n\x0fredaction_state\x18\x14 \x01(\x0e\x32\x19.vfs.v1.VfsRedactionStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0eredactionState\x12\x12\n\x04tags\x18\x15 \x03(\tR\x04tags\x12;\n\x08metadata\x18\x16 \x03(\x0b\x32\x1f.vfs.v1.VfsObject.MetadataEntryR\x08metadata\x12(\n\x06grants\x18\x17 \x03(\x0b\x32\x10.vfs.v1.VfsGrantR\x06grants\x12\x39\n\ncreated_at\x18\x18 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nupdated_at\x18\x19 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tupdatedAt\x12\x39\n\ndeleted_at\x18\x1a \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tdeletedAt\x12\x1d\n\ndeleted_by\x18\x1b \x01(\tR\tdeletedBy\x12#\n\rdelete_reason\x18\x1c \x01(\tR\x0c\x64\x65leteReason\x12\x30\n\x0forganization_id\x18\x1d \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12;\n\x0cresource_ref\x18\x1e \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x0bresourceRef\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\x97\x05\n\x10VfsObjectVersion\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x1b\n\tobject_id\x18\x02 \x01(\tR\x08objectId\x12!\n\x07version\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x07version\x12\x1f\n\x0b\x63ontent_ref\x18\x04 \x01(\tR\ncontentRef\x12!\n\x0c\x63ontent_type\x18\x05 \x01(\tR\x0b\x63ontentType\x12&\n\nsize_bytes\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\tsizeBytes\x12\x16\n\x06sha256\x18\x07 \x01(\tR\x06sha256\x12\x12\n\x04\x65tag\x18\x08 \x01(\tR\x04\x65tag\x12\x1d\n\ncreated_by\x18\t \x01(\tR\tcreatedBy\x12%\n\x0esource_service\x18\n \x01(\tR\rsourceService\x12\x42\n\x08metadata\x18\x0b \x03(\x0b\x32&.vfs.v1.VfsObjectVersion.MetadataEntryR\x08metadata\x12\x39\n\ncreated_at\x18\x0c \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x30\n\x0forganization_id\x18\r \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x0e \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12;\n\x0cresource_ref\x18\x0f \x01(\x0b\x32\x18.platform.v1.ResourceRefR\x0bresourceRef\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xab\x02\n\x08VfsGrant\x12%\n\tprincipal\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\tprincipal\x12 \n\x0bpermissions\x18\x02 \x03(\tR\x0bpermissions\x12\x1f\n\x0bpath_prefix\x18\x03 \x01(\tR\npathPrefix\x12 \n\x0bsensitivity\x18\x04 \x01(\tR\x0bsensitivity\x12\x39\n\nexpires_at\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x39\n\ngranted_at\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tgrantedAt\x12\x1d\n\ngranted_by\x18\x07 \x01(\tR\tgrantedBy\"\xc1\x04\n\x08VfsLease\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12*\n\x0cworkspace_id\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\x04path\x18\x03 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04path\x12\x14\n\x05token\x18\x04 \x01(\tR\x05token\x12\x35\n\x05state\x18\x05 \x01(\x0e\x32\x15.vfs.v1.VfsLeaseStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x05state\x12!\n\x0c\x63ontent_type\x18\x06 \x01(\tR\x0b\x63ontentType\x12:\n\x08metadata\x18\x07 \x03(\x0b\x32\x1e.vfs.v1.VfsLease.MetadataEntryR\x08metadata\x12\x39\n\ncreated_at\x18\x08 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tcreatedAt\x12\x39\n\nexpires_at\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x1d\n\ncreated_by\x18\n \x01(\tR\tcreatedBy\x12\x30\n\x0forganization_id\x18\x0b \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12,\n\rfencing_token\x18\x0c \x01(\x03\x42\x07\xbaH\x04\"\x02(\x01R\x0c\x66\x65ncingToken\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xda\x06\n\x08VfsEvent\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04type\x18\x02 \x01(\tR\x04type\x12!\n\x0cworkspace_id\x18\x03 \x01(\tR\x0bworkspaceId\x12\x1b\n\tobject_id\x18\x04 \x01(\tR\x08objectId\x12\x12\n\x04path\x18\x05 \x01(\tR\x04path\x12\x1d\n\nversion_id\x18\x06 \x01(\tR\tversionId\x12!\n\x07version\x18\x07 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x07version\x12\x16\n\x06sha256\x18\x08 \x01(\tR\x06sha256\x12&\n\nsize_bytes\x18\t \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\tsizeBytes\x12!\n\x0c\x63ontent_type\x18\n \x01(\tR\x0b\x63ontentType\x12%\n\x0esource_service\x18\x0b \x01(\tR\rsourceService\x12\x15\n\x06run_id\x18\x0c \x01(\tR\x05runId\x12*\n\x11tool_execution_id\x18\r \x01(\tR\x0ftoolExecutionId\x12!\n\x0c\x63onnector_id\x18\x0e \x01(\tR\x0b\x63onnectorId\x12#\n\rconnection_id\x18\x0f \x01(\tR\x0c\x63onnectionId\x12 \n\x0bsensitivity\x18\x10 \x01(\tR\x0bsensitivity\x12\'\n\x0fretention_class\x18\x11 \x01(\tR\x0eretentionClass\x12:\n\x08metadata\x18\x12 \x03(\x0b\x32\x1e.vfs.v1.VfsEvent.MetadataEntryR\x08metadata\x12;\n\x0boccurred_at\x18\x13 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\noccurredAt\x12L\n\x0fredaction_state\x18\x14 \x01(\x0e\x32\x19.vfs.v1.VfsRedactionStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0eredactionState\x12\x30\n\x0forganization_id\x18\x15 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\x90\x07\n\x10PutObjectRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\x04path\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04path\x12\x18\n\x07\x63ontent\x18\x03 \x01(\x0cR\x07\x63ontent\x12!\n\x0c\x63ontent_type\x18\x04 \x01(\tR\x0b\x63ontentType\x12\x19\n\x08owner_id\x18\x05 \x01(\tR\x07ownerId\x12\x1d\n\ncreator_id\x18\x06 \x01(\tR\tcreatorId\x12%\n\x0esource_service\x18\x07 \x01(\tR\rsourceService\x12\x15\n\x06run_id\x18\x08 \x01(\tR\x05runId\x12*\n\x11tool_execution_id\x18\t \x01(\tR\x0ftoolExecutionId\x12!\n\x0c\x63onnector_id\x18\n \x01(\tR\x0b\x63onnectorId\x12#\n\rconnection_id\x18\x0b \x01(\tR\x0c\x63onnectionId\x12 \n\x0bsensitivity\x18\x0c \x01(\tR\x0bsensitivity\x12\'\n\x0fretention_class\x18\r \x01(\tR\x0eretentionClass\x12L\n\x0fredaction_state\x18\x0e \x01(\x0e\x32\x19.vfs.v1.VfsRedactionStateB\x08\xbaH\x05\x82\x01\x02\x10\x01R\x0eredactionState\x12\x12\n\x04tags\x18\x0f \x03(\tR\x04tags\x12\x42\n\x08metadata\x18\x10 \x03(\x0b\x32&.vfs.v1.PutObjectRequest.MetadataEntryR\x08metadata\x12\'\n\x0fidempotency_key\x18\x11 \x01(\tR\x0eidempotencyKey\x12\x30\n\x0forganization_id\x18\x12 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12\x32\n\x10\x65xpected_version\x18\x13 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0f\x65xpectedVersion\x12\x1f\n\x0blease_token\x18\x14 \x01(\tR\nleaseToken\x12,\n\rfencing_token\x18\x15 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x0c\x66\x65ncingToken\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\x9a\x01\n\x11PutObjectResponse\x12)\n\x06object\x18\x01 \x01(\x0b\x32\x11.vfs.v1.VfsObjectR\x06object\x12\x32\n\x07version\x18\x02 \x01(\x0b\x32\x18.vfs.v1.VfsObjectVersionR\x07version\x12&\n\x05\x65vent\x18\x03 \x01(\x0b\x32\x10.vfs.v1.VfsEventR\x05\x65vent\"\xa9\x02\n\x10GetObjectRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\tobject_id\x18\x02 \x01(\tR\x08objectId\x12\x12\n\x04path\x18\x03 \x01(\tR\x04path\x12\x1d\n\nversion_id\x18\x04 \x01(\tR\tversionId\x12\x1f\n\x06offset\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x06offset\x12\x1d\n\x05limit\x18\x06 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x05limit\x12\'\n\x0finclude_content\x18\x07 \x01(\x08R\x0eincludeContent\x12\x30\n\x0forganization_id\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\"\xe9\x01\n\x11GetObjectResponse\x12)\n\x06object\x18\x01 \x01(\x0b\x32\x11.vfs.v1.VfsObjectR\x06object\x12\x32\n\x07version\x18\x02 \x01(\x0b\x32\x18.vfs.v1.VfsObjectVersionR\x07version\x12\x18\n\x07\x63ontent\x18\x03 \x01(\x0cR\x07\x63ontent\x12\x1f\n\x06offset\x18\x04 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x06offset\x12(\n\x0bnext_offset\x18\x05 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\nnextOffset\x12\x10\n\x03\x65of\x18\x06 \x01(\x08R\x03\x65of\"\x96\x02\n\x12ListObjectsRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1f\n\x0bpath_prefix\x18\x02 \x01(\tR\npathPrefix\x12-\n\x12include_tombstones\x18\x03 \x01(\x08R\x11includeTombstones\x12\x12\n\x04tags\x18\x04 \x03(\tR\x04tags\x12\x1d\n\x05limit\x18\x05 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05limit\x12\x1f\n\x06offset\x18\x06 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x06offset\x12\x30\n\x0forganization_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\"|\n\x13ListObjectsResponse\x12+\n\x07objects\x18\x01 \x03(\x0b\x32\x11.vfs.v1.VfsObjectR\x07objects\x12\x1d\n\x05total\x18\x02 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05total\x12\x19\n\x08has_more\x18\x03 \x01(\x08R\x07hasMore\"\xcd\x01\n\x11StatObjectRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\tobject_id\x18\x02 \x01(\tR\x08objectId\x12\x12\n\x04path\x18\x03 \x01(\tR\x04path\x12)\n\x10include_versions\x18\x04 \x01(\x08R\x0fincludeVersions\x12\x30\n\x0forganization_id\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\"u\n\x12StatObjectResponse\x12)\n\x06object\x18\x01 \x01(\x0b\x32\x11.vfs.v1.VfsObjectR\x06object\x12\x34\n\x08versions\x18\x02 \x03(\x0b\x32\x18.vfs.v1.VfsObjectVersionR\x08versions\"\xdb\x01\n\x13\x44\x65leteObjectRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\tobject_id\x18\x02 \x01(\tR\x08objectId\x12\x12\n\x04path\x18\x03 \x01(\tR\x04path\x12\x1d\n\ndeleted_by\x18\x04 \x01(\tR\tdeletedBy\x12\x16\n\x06reason\x18\x05 \x01(\tR\x06reason\x12\x30\n\x0forganization_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\"i\n\x14\x44\x65leteObjectResponse\x12)\n\x06object\x18\x01 \x01(\x0b\x32\x11.vfs.v1.VfsObjectR\x06object\x12&\n\x05\x65vent\x18\x02 \x01(\x0b\x32\x10.vfs.v1.VfsEventR\x05\x65vent\"\xb8\x03\n\x11\x43opyObjectRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12(\n\x10source_object_id\x18\x02 \x01(\tR\x0esourceObjectId\x12\x1f\n\x0bsource_path\x18\x03 \x01(\tR\nsourcePath\x12\x32\n\x10\x64\x65stination_path\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0f\x64\x65stinationPath\x12\x1d\n\ncreator_id\x18\x05 \x01(\tR\tcreatorId\x12%\n\x0esource_service\x18\x06 \x01(\tR\rsourceService\x12\x43\n\x08metadata\x18\x07 \x03(\x0b\x32\'.vfs.v1.CopyObjectRequest.MetadataEntryR\x08metadata\x12\x30\n\x0forganization_id\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\x9b\x01\n\x12\x43opyObjectResponse\x12)\n\x06object\x18\x01 \x01(\x0b\x32\x11.vfs.v1.VfsObjectR\x06object\x12\x32\n\x07version\x18\x02 \x01(\x0b\x32\x18.vfs.v1.VfsObjectVersionR\x07version\x12&\n\x05\x65vent\x18\x03 \x01(\x0b\x32\x10.vfs.v1.VfsEventR\x05\x65vent\"\x83\x03\n\x11LinkObjectRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12(\n\x10source_object_id\x18\x02 \x01(\tR\x0esourceObjectId\x12\x1f\n\x0bsource_path\x18\x03 \x01(\tR\nsourcePath\x12$\n\tlink_path\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x08linkPath\x12\x1d\n\ncreator_id\x18\x05 \x01(\tR\tcreatorId\x12\x43\n\x08metadata\x18\x06 \x03(\x0b\x32\'.vfs.v1.LinkObjectRequest.MetadataEntryR\x08metadata\x12\x30\n\x0forganization_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\x9b\x01\n\x12LinkObjectResponse\x12)\n\x06object\x18\x01 \x01(\x0b\x32\x11.vfs.v1.VfsObjectR\x06object\x12\x32\n\x07version\x18\x02 \x01(\x0b\x32\x18.vfs.v1.VfsObjectVersionR\x07version\x12&\n\x05\x65vent\x18\x03 \x01(\x0b\x32\x10.vfs.v1.VfsEventR\x05\x65vent\"\x9b\x04\n\x12\x43reateLeaseRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\x04path\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04path\x12,\n\rlease_seconds\x18\x03 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x0cleaseSeconds\x12!\n\x0c\x63ontent_type\x18\x04 \x01(\tR\x0b\x63ontentType\x12\x1d\n\ncreator_id\x18\x05 \x01(\tR\tcreatorId\x12\x44\n\x08metadata\x18\x06 \x03(\x0b\x32(.vfs.v1.CreateLeaseRequest.MetadataEntryR\x08metadata\x12\x30\n\x0forganization_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12<\n\x13\x65xpected_size_bytes\x18\x08 \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\x80\x80\x19 \x00R\x11\x65xpectedSizeBytes\x12\'\n\x0f\x65xpected_sha256\x18\t \x01(\tR\x0e\x65xpectedSha256\x12\x30\n\x0fidempotency_key\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"n\n\x13\x43reateLeaseResponse\x12&\n\x05lease\x18\x01 \x01(\x0b\x32\x10.vfs.v1.VfsLeaseR\x05lease\x12/\n\x06upload\x18\x02 \x01(\x0b\x32\x17.vfs.v1.VfsUploadTargetR\x06upload\"\xe2\x02\n\x0fVfsUploadTarget\x12\x10\n\x03url\x18\x01 \x01(\tR\x03url\x12\x1f\n\x06method\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06method\x12>\n\x07headers\x18\x03 \x03(\x0b\x32$.vfs.v1.VfsUploadTarget.HeadersEntryR\x07headers\x12\x39\n\nexpires_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x12\x32\n\x0emax_size_bytes\x18\x05 \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\x80\x80\x19 \x00R\x0cmaxSizeBytes\x12\x31\n\x05parts\x18\x06 \x03(\x0b\x32\x1b.vfs.v1.VfsUploadPartTargetR\x05parts\x1a:\n\x0cHeadersEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\xff\x02\n\x13VfsUploadPartTarget\x12(\n\x0bpart_number\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00R\npartNumber\x12\x1f\n\x06offset\x18\x02 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x00R\x06offset\x12&\n\nsize_bytes\x18\x03 \x01(\x03\x42\x07\xbaH\x04\"\x02 \x00R\tsizeBytes\x12\x19\n\x03url\x18\x04 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x03url\x12\x1f\n\x06method\x18\x05 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06method\x12\x42\n\x07headers\x18\x06 \x03(\x0b\x32(.vfs.v1.VfsUploadPartTarget.HeadersEntryR\x07headers\x12\x39\n\nexpires_at\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\texpiresAt\x1a:\n\x0cHeadersEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"_\n\x16VfsCompletedUploadPart\x12(\n\x0bpart_number\x18\x01 \x01(\x05\x42\x07\xbaH\x04\x1a\x02 \x00R\npartNumber\x12\x1b\n\x04\x65tag\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x04\x65tag\"\xd1\x04\n\x14\x43ompleteLeaseRequest\x12\"\n\x08lease_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x07leaseId\x12(\n\x0blease_token\x18\x02 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\nleaseToken\x12\x18\n\x07\x63ontent\x18\x03 \x01(\x0cR\x07\x63ontent\x12\x1d\n\ncreated_by\x18\x04 \x01(\tR\tcreatedBy\x12\x46\n\x08metadata\x18\x05 \x03(\x0b\x32*.vfs.v1.CompleteLeaseRequest.MetadataEntryR\x08metadata\x12\x30\n\x0forganization_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x12*\n\x0cworkspace_id\x18\x07 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12,\n\rfencing_token\x18\x08 \x01(\x03\x42\x07\xbaH\x04\"\x02(\x01R\x0c\x66\x65ncingToken\x12+\n\nsize_bytes\x18\t \x01(\x03\x42\x0c\xbaH\t\"\x07\x18\x80\x80\x80\x19 \x00R\tsizeBytes\x12\x1f\n\x06sha256\x18\n \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x06sha256\x12!\n\x0cstorage_etag\x18\x0b \x01(\tR\x0bstorageEtag\x12\x30\n\x0fidempotency_key\x18\x0c \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eidempotencyKey\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"\x9e\x01\n\x15\x43ompleteLeaseResponse\x12)\n\x06object\x18\x01 \x01(\x0b\x32\x11.vfs.v1.VfsObjectR\x06object\x12\x32\n\x07version\x18\x02 \x01(\x0b\x32\x18.vfs.v1.VfsObjectVersionR\x07version\x12&\n\x05\x65vent\x18\x03 \x01(\x0b\x32\x10.vfs.v1.VfsEventR\x05\x65vent\"\xeb\x01\n\x12GrantObjectRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x1b\n\tobject_id\x18\x02 \x01(\tR\x08objectId\x12\x12\n\x04path\x18\x03 \x01(\tR\x04path\x12.\n\x05grant\x18\x04 \x01(\x0b\x32\x10.vfs.v1.VfsGrantB\x06\xbaH\x03\xc8\x01\x01R\x05grant\x12\x16\n\x06\x61ppend\x18\x05 \x01(\x08R\x06\x61ppend\x12\x30\n\x0forganization_id\x18\x06 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\"h\n\x13GrantObjectResponse\x12)\n\x06object\x18\x01 \x01(\x0b\x32\x11.vfs.v1.VfsObjectR\x06object\x12&\n\x05\x65vent\x18\x02 \x01(\x0b\x32\x10.vfs.v1.VfsEventR\x05\x65vent\"\x94\x03\n\x15SearchMetadataRequest\x12*\n\x0cworkspace_id\x18\x01 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0bworkspaceId\x12\x14\n\x05query\x18\x02 \x01(\tR\x05query\x12\x1f\n\x0bpath_prefix\x18\x03 \x01(\tR\npathPrefix\x12\x12\n\x04tags\x18\x04 \x03(\tR\x04tags\x12G\n\x08metadata\x18\x05 \x03(\x0b\x32+.vfs.v1.SearchMetadataRequest.MetadataEntryR\x08metadata\x12-\n\x12include_tombstones\x18\x06 \x01(\x08R\x11includeTombstones\x12\x1d\n\x05limit\x18\x07 \x01(\x05\x42\x07\xbaH\x04\x1a\x02(\x00R\x05limit\x12\x30\n\x0forganization_id\x18\x08 \x01(\tB\x07\xbaH\x04r\x02\x10\x01R\x0eorganizationId\x1a;\n\rMetadataEntry\x12\x10\n\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n\x05value\x18\x02 \x01(\tR\x05value:\x02\x38\x01\"E\n\x16SearchMetadataResponse\x12+\n\x07objects\x18\x01 \x03(\x0b\x32\x11.vfs.v1.VfsObjectR\x07objects*p\n\x0eVfsObjectState\x12 \n\x1cVFS_OBJECT_STATE_UNSPECIFIED\x10\x00\x12\x1b\n\x17VFS_OBJECT_STATE_ACTIVE\x10\x01\x12\x1f\n\x1bVFS_OBJECT_STATE_TOMBSTONED\x10\x02*\xbd\x01\n\x11VfsRedactionState\x12#\n\x1fVFS_REDACTION_STATE_UNSPECIFIED\x10\x00\x12\x1b\n\x17VFS_REDACTION_STATE_RAW\x10\x01\x12 \n\x1cVFS_REDACTION_STATE_REDACTED\x10\x02\x12$\n VFS_REDACTION_STATE_PREVIEW_ONLY\x10\x03\x12\x1e\n\x1aVFS_REDACTION_STATE_DENIED\x10\x04*\xa5\x01\n\rVfsLeaseState\x12\x1f\n\x1bVFS_LEASE_STATE_UNSPECIFIED\x10\x00\x12\x18\n\x14VFS_LEASE_STATE_OPEN\x10\x01\x12\x1d\n\x19VFS_LEASE_STATE_COMMITTED\x10\x02\x12\x1b\n\x17VFS_LEASE_STATE_EXPIRED\x10\x03\x12\x1d\n\x19VFS_LEASE_STATE_CANCELLED\x10\x04\x32\x81\x0b\n\x18VirtualFilesystemService\x12v\n\tPutObject\x12\x18.vfs.v1.PutObjectRequest\x1a\x19.vfs.v1.PutObjectResponse\"4\xca\xf3\x18\tvfs:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12u\n\tGetObject\x12\x18.vfs.v1.GetObjectRequest\x1a\x19.vfs.v1.GetObjectResponse\"3\xca\xf3\x18\x08vfs:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12{\n\x0bListObjects\x12\x1a.vfs.v1.ListObjectsRequest\x1a\x1b.vfs.v1.ListObjectsResponse\"3\xca\xf3\x18\x08vfs:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12x\n\nStatObject\x12\x19.vfs.v1.StatObjectRequest\x1a\x1a.vfs.v1.StatObjectResponse\"3\xca\xf3\x18\x08vfs:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_id\x12\x80\x01\n\x0c\x44\x65leteObject\x12\x1b.vfs.v1.DeleteObjectRequest\x1a\x1c.vfs.v1.DeleteObjectResponse\"5\xca\xf3\x18\nvfs:delete\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12y\n\nCopyObject\x12\x19.vfs.v1.CopyObjectRequest\x1a\x1a.vfs.v1.CopyObjectResponse\"4\xca\xf3\x18\tvfs:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12y\n\nLinkObject\x12\x19.vfs.v1.LinkObjectRequest\x1a\x1a.vfs.v1.LinkObjectResponse\"4\xca\xf3\x18\tvfs:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12|\n\x0b\x43reateLease\x12\x1a.vfs.v1.CreateLeaseRequest\x1a\x1b.vfs.v1.CreateLeaseResponse\"4\xca\xf3\x18\tvfs:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12\x82\x01\n\rCompleteLease\x12\x1c.vfs.v1.CompleteLeaseRequest\x1a\x1d.vfs.v1.CompleteLeaseResponse\"4\xca\xf3\x18\tvfs:write\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x02\xea\xf3\x18\x0forganization_id\x12|\n\x0bGrantObject\x12\x1a.vfs.v1.GrantObjectRequest\x1a\x1b.vfs.v1.GrantObjectResponse\"4\xca\xf3\x18\tvfs:grant\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x03\xea\xf3\x18\x0forganization_id\x12\x84\x01\n\x0eSearchMetadata\x12\x1d.vfs.v1.SearchMetadataRequest\x1a\x1e.vfs.v1.SearchMetadataResponse\"3\xca\xf3\x18\x08vfs:read\xd2\xf3\x18\x0cworkspace_id\xd8\xf3\x18\x01\xea\xf3\x18\x0forganization_idB1Z/github.com/evalops/platform/gen/go/vfs/v1;vfsv1b\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'vfs.v1.filesystem_pb2', _globals) +if not _descriptor._USE_C_DESCRIPTORS: + _globals['DESCRIPTOR']._loaded_options = None + _globals['DESCRIPTOR']._serialized_options = b'Z/github.com/evalops/platform/gen/go/vfs/v1;vfsv1' + _globals['_VFSOBJECT_METADATAENTRY']._loaded_options = None + _globals['_VFSOBJECT_METADATAENTRY']._serialized_options = b'8\001' + _globals['_VFSOBJECT'].fields_by_name['workspace_id']._loaded_options = None + _globals['_VFSOBJECT'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSOBJECT'].fields_by_name['path']._loaded_options = None + _globals['_VFSOBJECT'].fields_by_name['path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSOBJECT'].fields_by_name['state']._loaded_options = None + _globals['_VFSOBJECT'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_VFSOBJECT'].fields_by_name['current_version']._loaded_options = None + _globals['_VFSOBJECT'].fields_by_name['current_version']._serialized_options = b'\272H\004\032\002(\000' + _globals['_VFSOBJECT'].fields_by_name['size_bytes']._loaded_options = None + _globals['_VFSOBJECT'].fields_by_name['size_bytes']._serialized_options = b'\272H\004\"\002(\000' + _globals['_VFSOBJECT'].fields_by_name['redaction_state']._loaded_options = None + _globals['_VFSOBJECT'].fields_by_name['redaction_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_VFSOBJECT'].fields_by_name['organization_id']._loaded_options = None + _globals['_VFSOBJECT'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSOBJECTVERSION_METADATAENTRY']._loaded_options = None + _globals['_VFSOBJECTVERSION_METADATAENTRY']._serialized_options = b'8\001' + _globals['_VFSOBJECTVERSION'].fields_by_name['version']._loaded_options = None + _globals['_VFSOBJECTVERSION'].fields_by_name['version']._serialized_options = b'\272H\004\032\002(\000' + _globals['_VFSOBJECTVERSION'].fields_by_name['size_bytes']._loaded_options = None + _globals['_VFSOBJECTVERSION'].fields_by_name['size_bytes']._serialized_options = b'\272H\004\"\002(\000' + _globals['_VFSOBJECTVERSION'].fields_by_name['organization_id']._loaded_options = None + _globals['_VFSOBJECTVERSION'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSOBJECTVERSION'].fields_by_name['workspace_id']._loaded_options = None + _globals['_VFSOBJECTVERSION'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSGRANT'].fields_by_name['principal']._loaded_options = None + _globals['_VFSGRANT'].fields_by_name['principal']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSLEASE_METADATAENTRY']._loaded_options = None + _globals['_VFSLEASE_METADATAENTRY']._serialized_options = b'8\001' + _globals['_VFSLEASE'].fields_by_name['workspace_id']._loaded_options = None + _globals['_VFSLEASE'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSLEASE'].fields_by_name['path']._loaded_options = None + _globals['_VFSLEASE'].fields_by_name['path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSLEASE'].fields_by_name['state']._loaded_options = None + _globals['_VFSLEASE'].fields_by_name['state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_VFSLEASE'].fields_by_name['organization_id']._loaded_options = None + _globals['_VFSLEASE'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSLEASE'].fields_by_name['fencing_token']._loaded_options = None + _globals['_VFSLEASE'].fields_by_name['fencing_token']._serialized_options = b'\272H\004\"\002(\001' + _globals['_VFSEVENT_METADATAENTRY']._loaded_options = None + _globals['_VFSEVENT_METADATAENTRY']._serialized_options = b'8\001' + _globals['_VFSEVENT'].fields_by_name['version']._loaded_options = None + _globals['_VFSEVENT'].fields_by_name['version']._serialized_options = b'\272H\004\032\002(\000' + _globals['_VFSEVENT'].fields_by_name['size_bytes']._loaded_options = None + _globals['_VFSEVENT'].fields_by_name['size_bytes']._serialized_options = b'\272H\004\"\002(\000' + _globals['_VFSEVENT'].fields_by_name['redaction_state']._loaded_options = None + _globals['_VFSEVENT'].fields_by_name['redaction_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_VFSEVENT'].fields_by_name['organization_id']._loaded_options = None + _globals['_VFSEVENT'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUTOBJECTREQUEST_METADATAENTRY']._loaded_options = None + _globals['_PUTOBJECTREQUEST_METADATAENTRY']._serialized_options = b'8\001' + _globals['_PUTOBJECTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_PUTOBJECTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUTOBJECTREQUEST'].fields_by_name['path']._loaded_options = None + _globals['_PUTOBJECTREQUEST'].fields_by_name['path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUTOBJECTREQUEST'].fields_by_name['redaction_state']._loaded_options = None + _globals['_PUTOBJECTREQUEST'].fields_by_name['redaction_state']._serialized_options = b'\272H\005\202\001\002\020\001' + _globals['_PUTOBJECTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_PUTOBJECTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_PUTOBJECTREQUEST'].fields_by_name['expected_version']._loaded_options = None + _globals['_PUTOBJECTREQUEST'].fields_by_name['expected_version']._serialized_options = b'\272H\004\032\002(\000' + _globals['_PUTOBJECTREQUEST'].fields_by_name['fencing_token']._loaded_options = None + _globals['_PUTOBJECTREQUEST'].fields_by_name['fencing_token']._serialized_options = b'\272H\004\"\002(\000' + _globals['_GETOBJECTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GETOBJECTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETOBJECTREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_GETOBJECTREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\"\002(\000' + _globals['_GETOBJECTREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_GETOBJECTREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\"\002(\000' + _globals['_GETOBJECTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GETOBJECTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GETOBJECTRESPONSE'].fields_by_name['offset']._loaded_options = None + _globals['_GETOBJECTRESPONSE'].fields_by_name['offset']._serialized_options = b'\272H\004\"\002(\000' + _globals['_GETOBJECTRESPONSE'].fields_by_name['next_offset']._loaded_options = None + _globals['_GETOBJECTRESPONSE'].fields_by_name['next_offset']._serialized_options = b'\272H\004\"\002(\000' + _globals['_LISTOBJECTSREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LISTOBJECTSREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTOBJECTSREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_LISTOBJECTSREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTOBJECTSREQUEST'].fields_by_name['offset']._loaded_options = None + _globals['_LISTOBJECTSREQUEST'].fields_by_name['offset']._serialized_options = b'\272H\004\032\002(\000' + _globals['_LISTOBJECTSREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LISTOBJECTSREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LISTOBJECTSRESPONSE'].fields_by_name['total']._loaded_options = None + _globals['_LISTOBJECTSRESPONSE'].fields_by_name['total']._serialized_options = b'\272H\004\032\002(\000' + _globals['_STATOBJECTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_STATOBJECTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_STATOBJECTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_STATOBJECTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DELETEOBJECTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_DELETEOBJECTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_DELETEOBJECTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_DELETEOBJECTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COPYOBJECTREQUEST_METADATAENTRY']._loaded_options = None + _globals['_COPYOBJECTREQUEST_METADATAENTRY']._serialized_options = b'8\001' + _globals['_COPYOBJECTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_COPYOBJECTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COPYOBJECTREQUEST'].fields_by_name['destination_path']._loaded_options = None + _globals['_COPYOBJECTREQUEST'].fields_by_name['destination_path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COPYOBJECTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_COPYOBJECTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LINKOBJECTREQUEST_METADATAENTRY']._loaded_options = None + _globals['_LINKOBJECTREQUEST_METADATAENTRY']._serialized_options = b'8\001' + _globals['_LINKOBJECTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_LINKOBJECTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LINKOBJECTREQUEST'].fields_by_name['link_path']._loaded_options = None + _globals['_LINKOBJECTREQUEST'].fields_by_name['link_path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_LINKOBJECTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_LINKOBJECTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATELEASEREQUEST_METADATAENTRY']._loaded_options = None + _globals['_CREATELEASEREQUEST_METADATAENTRY']._serialized_options = b'8\001' + _globals['_CREATELEASEREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_CREATELEASEREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATELEASEREQUEST'].fields_by_name['path']._loaded_options = None + _globals['_CREATELEASEREQUEST'].fields_by_name['path']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATELEASEREQUEST'].fields_by_name['lease_seconds']._loaded_options = None + _globals['_CREATELEASEREQUEST'].fields_by_name['lease_seconds']._serialized_options = b'\272H\004\032\002(\000' + _globals['_CREATELEASEREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_CREATELEASEREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_CREATELEASEREQUEST'].fields_by_name['expected_size_bytes']._loaded_options = None + _globals['_CREATELEASEREQUEST'].fields_by_name['expected_size_bytes']._serialized_options = b'\272H\t\"\007\030\200\200\200\031 \000' + _globals['_CREATELEASEREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_CREATELEASEREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSUPLOADTARGET_HEADERSENTRY']._loaded_options = None + _globals['_VFSUPLOADTARGET_HEADERSENTRY']._serialized_options = b'8\001' + _globals['_VFSUPLOADTARGET'].fields_by_name['method']._loaded_options = None + _globals['_VFSUPLOADTARGET'].fields_by_name['method']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSUPLOADTARGET'].fields_by_name['max_size_bytes']._loaded_options = None + _globals['_VFSUPLOADTARGET'].fields_by_name['max_size_bytes']._serialized_options = b'\272H\t\"\007\030\200\200\200\031 \000' + _globals['_VFSUPLOADPARTTARGET_HEADERSENTRY']._loaded_options = None + _globals['_VFSUPLOADPARTTARGET_HEADERSENTRY']._serialized_options = b'8\001' + _globals['_VFSUPLOADPARTTARGET'].fields_by_name['part_number']._loaded_options = None + _globals['_VFSUPLOADPARTTARGET'].fields_by_name['part_number']._serialized_options = b'\272H\004\032\002 \000' + _globals['_VFSUPLOADPARTTARGET'].fields_by_name['offset']._loaded_options = None + _globals['_VFSUPLOADPARTTARGET'].fields_by_name['offset']._serialized_options = b'\272H\004\"\002(\000' + _globals['_VFSUPLOADPARTTARGET'].fields_by_name['size_bytes']._loaded_options = None + _globals['_VFSUPLOADPARTTARGET'].fields_by_name['size_bytes']._serialized_options = b'\272H\004\"\002 \000' + _globals['_VFSUPLOADPARTTARGET'].fields_by_name['url']._loaded_options = None + _globals['_VFSUPLOADPARTTARGET'].fields_by_name['url']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSUPLOADPARTTARGET'].fields_by_name['method']._loaded_options = None + _globals['_VFSUPLOADPARTTARGET'].fields_by_name['method']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VFSCOMPLETEDUPLOADPART'].fields_by_name['part_number']._loaded_options = None + _globals['_VFSCOMPLETEDUPLOADPART'].fields_by_name['part_number']._serialized_options = b'\272H\004\032\002 \000' + _globals['_VFSCOMPLETEDUPLOADPART'].fields_by_name['etag']._loaded_options = None + _globals['_VFSCOMPLETEDUPLOADPART'].fields_by_name['etag']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETELEASEREQUEST_METADATAENTRY']._loaded_options = None + _globals['_COMPLETELEASEREQUEST_METADATAENTRY']._serialized_options = b'8\001' + _globals['_COMPLETELEASEREQUEST'].fields_by_name['lease_id']._loaded_options = None + _globals['_COMPLETELEASEREQUEST'].fields_by_name['lease_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETELEASEREQUEST'].fields_by_name['lease_token']._loaded_options = None + _globals['_COMPLETELEASEREQUEST'].fields_by_name['lease_token']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETELEASEREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_COMPLETELEASEREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETELEASEREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_COMPLETELEASEREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETELEASEREQUEST'].fields_by_name['fencing_token']._loaded_options = None + _globals['_COMPLETELEASEREQUEST'].fields_by_name['fencing_token']._serialized_options = b'\272H\004\"\002(\001' + _globals['_COMPLETELEASEREQUEST'].fields_by_name['size_bytes']._loaded_options = None + _globals['_COMPLETELEASEREQUEST'].fields_by_name['size_bytes']._serialized_options = b'\272H\t\"\007\030\200\200\200\031 \000' + _globals['_COMPLETELEASEREQUEST'].fields_by_name['sha256']._loaded_options = None + _globals['_COMPLETELEASEREQUEST'].fields_by_name['sha256']._serialized_options = b'\272H\004r\002\020\001' + _globals['_COMPLETELEASEREQUEST'].fields_by_name['idempotency_key']._loaded_options = None + _globals['_COMPLETELEASEREQUEST'].fields_by_name['idempotency_key']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GRANTOBJECTREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_GRANTOBJECTREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_GRANTOBJECTREQUEST'].fields_by_name['grant']._loaded_options = None + _globals['_GRANTOBJECTREQUEST'].fields_by_name['grant']._serialized_options = b'\272H\003\310\001\001' + _globals['_GRANTOBJECTREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_GRANTOBJECTREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SEARCHMETADATAREQUEST_METADATAENTRY']._loaded_options = None + _globals['_SEARCHMETADATAREQUEST_METADATAENTRY']._serialized_options = b'8\001' + _globals['_SEARCHMETADATAREQUEST'].fields_by_name['workspace_id']._loaded_options = None + _globals['_SEARCHMETADATAREQUEST'].fields_by_name['workspace_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_SEARCHMETADATAREQUEST'].fields_by_name['limit']._loaded_options = None + _globals['_SEARCHMETADATAREQUEST'].fields_by_name['limit']._serialized_options = b'\272H\004\032\002(\000' + _globals['_SEARCHMETADATAREQUEST'].fields_by_name['organization_id']._loaded_options = None + _globals['_SEARCHMETADATAREQUEST'].fields_by_name['organization_id']._serialized_options = b'\272H\004r\002\020\001' + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['PutObject']._loaded_options = None + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['PutObject']._serialized_options = b'\312\363\030\tvfs:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['GetObject']._loaded_options = None + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['GetObject']._serialized_options = b'\312\363\030\010vfs:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['ListObjects']._loaded_options = None + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['ListObjects']._serialized_options = b'\312\363\030\010vfs:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['StatObject']._loaded_options = None + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['StatObject']._serialized_options = b'\312\363\030\010vfs:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['DeleteObject']._loaded_options = None + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['DeleteObject']._serialized_options = b'\312\363\030\nvfs:delete\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['CopyObject']._loaded_options = None + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['CopyObject']._serialized_options = b'\312\363\030\tvfs:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['LinkObject']._loaded_options = None + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['LinkObject']._serialized_options = b'\312\363\030\tvfs:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['CreateLease']._loaded_options = None + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['CreateLease']._serialized_options = b'\312\363\030\tvfs:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['CompleteLease']._loaded_options = None + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['CompleteLease']._serialized_options = b'\312\363\030\tvfs:write\322\363\030\014workspace_id\330\363\030\002\352\363\030\017organization_id' + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['GrantObject']._loaded_options = None + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['GrantObject']._serialized_options = b'\312\363\030\tvfs:grant\322\363\030\014workspace_id\330\363\030\003\352\363\030\017organization_id' + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['SearchMetadata']._loaded_options = None + _globals['_VIRTUALFILESYSTEMSERVICE'].methods_by_name['SearchMetadata']._serialized_options = b'\312\363\030\010vfs:read\322\363\030\014workspace_id\330\363\030\001\352\363\030\017organization_id' + _globals['_VFSOBJECTSTATE']._serialized_start=10753 + _globals['_VFSOBJECTSTATE']._serialized_end=10865 + _globals['_VFSREDACTIONSTATE']._serialized_start=10868 + _globals['_VFSREDACTIONSTATE']._serialized_end=11057 + _globals['_VFSLEASESTATE']._serialized_start=11060 + _globals['_VFSLEASESTATE']._serialized_end=11225 + _globals['_VFSOBJECT']._serialized_start=149 + _globals['_VFSOBJECT']._serialized_end=1449 + _globals['_VFSOBJECT_METADATAENTRY']._serialized_start=1390 + _globals['_VFSOBJECT_METADATAENTRY']._serialized_end=1449 + _globals['_VFSOBJECTVERSION']._serialized_start=1452 + _globals['_VFSOBJECTVERSION']._serialized_end=2115 + _globals['_VFSOBJECTVERSION_METADATAENTRY']._serialized_start=1390 + _globals['_VFSOBJECTVERSION_METADATAENTRY']._serialized_end=1449 + _globals['_VFSGRANT']._serialized_start=2118 + _globals['_VFSGRANT']._serialized_end=2417 + _globals['_VFSLEASE']._serialized_start=2420 + _globals['_VFSLEASE']._serialized_end=2997 + _globals['_VFSLEASE_METADATAENTRY']._serialized_start=1390 + _globals['_VFSLEASE_METADATAENTRY']._serialized_end=1449 + _globals['_VFSEVENT']._serialized_start=3000 + _globals['_VFSEVENT']._serialized_end=3858 + _globals['_VFSEVENT_METADATAENTRY']._serialized_start=1390 + _globals['_VFSEVENT_METADATAENTRY']._serialized_end=1449 + _globals['_PUTOBJECTREQUEST']._serialized_start=3861 + _globals['_PUTOBJECTREQUEST']._serialized_end=4773 + _globals['_PUTOBJECTREQUEST_METADATAENTRY']._serialized_start=1390 + _globals['_PUTOBJECTREQUEST_METADATAENTRY']._serialized_end=1449 + _globals['_PUTOBJECTRESPONSE']._serialized_start=4776 + _globals['_PUTOBJECTRESPONSE']._serialized_end=4930 + _globals['_GETOBJECTREQUEST']._serialized_start=4933 + _globals['_GETOBJECTREQUEST']._serialized_end=5230 + _globals['_GETOBJECTRESPONSE']._serialized_start=5233 + _globals['_GETOBJECTRESPONSE']._serialized_end=5466 + _globals['_LISTOBJECTSREQUEST']._serialized_start=5469 + _globals['_LISTOBJECTSREQUEST']._serialized_end=5747 + _globals['_LISTOBJECTSRESPONSE']._serialized_start=5749 + _globals['_LISTOBJECTSRESPONSE']._serialized_end=5873 + _globals['_STATOBJECTREQUEST']._serialized_start=5876 + _globals['_STATOBJECTREQUEST']._serialized_end=6081 + _globals['_STATOBJECTRESPONSE']._serialized_start=6083 + _globals['_STATOBJECTRESPONSE']._serialized_end=6200 + _globals['_DELETEOBJECTREQUEST']._serialized_start=6203 + _globals['_DELETEOBJECTREQUEST']._serialized_end=6422 + _globals['_DELETEOBJECTRESPONSE']._serialized_start=6424 + _globals['_DELETEOBJECTRESPONSE']._serialized_end=6529 + _globals['_COPYOBJECTREQUEST']._serialized_start=6532 + _globals['_COPYOBJECTREQUEST']._serialized_end=6972 + _globals['_COPYOBJECTREQUEST_METADATAENTRY']._serialized_start=1390 + _globals['_COPYOBJECTREQUEST_METADATAENTRY']._serialized_end=1449 + _globals['_COPYOBJECTRESPONSE']._serialized_start=6975 + _globals['_COPYOBJECTRESPONSE']._serialized_end=7130 + _globals['_LINKOBJECTREQUEST']._serialized_start=7133 + _globals['_LINKOBJECTREQUEST']._serialized_end=7520 + _globals['_LINKOBJECTREQUEST_METADATAENTRY']._serialized_start=1390 + _globals['_LINKOBJECTREQUEST_METADATAENTRY']._serialized_end=1449 + _globals['_LINKOBJECTRESPONSE']._serialized_start=7523 + _globals['_LINKOBJECTRESPONSE']._serialized_end=7678 + _globals['_CREATELEASEREQUEST']._serialized_start=7681 + _globals['_CREATELEASEREQUEST']._serialized_end=8220 + _globals['_CREATELEASEREQUEST_METADATAENTRY']._serialized_start=1390 + _globals['_CREATELEASEREQUEST_METADATAENTRY']._serialized_end=1449 + _globals['_CREATELEASERESPONSE']._serialized_start=8222 + _globals['_CREATELEASERESPONSE']._serialized_end=8332 + _globals['_VFSUPLOADTARGET']._serialized_start=8335 + _globals['_VFSUPLOADTARGET']._serialized_end=8689 + _globals['_VFSUPLOADTARGET_HEADERSENTRY']._serialized_start=8631 + _globals['_VFSUPLOADTARGET_HEADERSENTRY']._serialized_end=8689 + _globals['_VFSUPLOADPARTTARGET']._serialized_start=8692 + _globals['_VFSUPLOADPARTTARGET']._serialized_end=9075 + _globals['_VFSUPLOADPARTTARGET_HEADERSENTRY']._serialized_start=8631 + _globals['_VFSUPLOADPARTTARGET_HEADERSENTRY']._serialized_end=8689 + _globals['_VFSCOMPLETEDUPLOADPART']._serialized_start=9077 + _globals['_VFSCOMPLETEDUPLOADPART']._serialized_end=9172 + _globals['_COMPLETELEASEREQUEST']._serialized_start=9175 + _globals['_COMPLETELEASEREQUEST']._serialized_end=9768 + _globals['_COMPLETELEASEREQUEST_METADATAENTRY']._serialized_start=1390 + _globals['_COMPLETELEASEREQUEST_METADATAENTRY']._serialized_end=1449 + _globals['_COMPLETELEASERESPONSE']._serialized_start=9771 + _globals['_COMPLETELEASERESPONSE']._serialized_end=9929 + _globals['_GRANTOBJECTREQUEST']._serialized_start=9932 + _globals['_GRANTOBJECTREQUEST']._serialized_end=10167 + _globals['_GRANTOBJECTRESPONSE']._serialized_start=10169 + _globals['_GRANTOBJECTRESPONSE']._serialized_end=10273 + _globals['_SEARCHMETADATAREQUEST']._serialized_start=10276 + _globals['_SEARCHMETADATAREQUEST']._serialized_end=10680 + _globals['_SEARCHMETADATAREQUEST_METADATAENTRY']._serialized_start=1390 + _globals['_SEARCHMETADATAREQUEST_METADATAENTRY']._serialized_end=1449 + _globals['_SEARCHMETADATARESPONSE']._serialized_start=10682 + _globals['_SEARCHMETADATARESPONSE']._serialized_end=10751 + _globals['_VIRTUALFILESYSTEMSERVICE']._serialized_start=11228 + _globals['_VIRTUALFILESYSTEMSERVICE']._serialized_end=12637 +# @@protoc_insertion_point(module_scope) diff --git a/tests/test_account_brief.py b/tests/test_account_brief.py new file mode 100644 index 0000000..9eb1cd7 --- /dev/null +++ b/tests/test_account_brief.py @@ -0,0 +1,395 @@ +from __future__ import annotations + +import json +import os +import shutil +import socket +import subprocess +import sys +import threading +from contextlib import contextmanager +from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer +from pathlib import Path + +import pytest +from console.v1 import console_pb2 as pb + + +C = 9_007_199_254_740_994 + + +@contextmanager +def owner(*, lose_acceptance=False, state=None): + state = state if state is not None else {} + state.setdefault("decisions", []) + operations = {} + submissions = [] + errors = [] + completed = False + + class Handler(BaseHTTPRequestHandler): + def log_message(self, *args): + pass + + def do_POST(self): + nonlocal completed + method = self.path.rsplit("/", 1)[-1] + body = self.rfile.read(int(self.headers["Content-Length"])) + try: + assert self.path.startswith("/deixic.v1.DeixicService/") + assert self.headers["Content-Type"] == "application/proto" + assert self.headers["Connect-Protocol-Version"] == "1" + assert self.headers["Authorization"] == "Bearer fixture-secret" + request = getattr(pb, method + "Request").FromString(body) + assert ( + request.query.organization_id + == self.headers["X-Organization-ID"] + == "org-fixture" + ) + assert ( + request.query.workspace_id + == self.headers["X-Workspace-ID"] + == "ws-fixture" + ) + assert request.channel_id == "company" + if method == "SubmitOperatingMessage": + submissions.append(body) + key = request.idempotency_key + assert key == "crm-event-001" + assert "Example account" in request.body + if key in operations: + assert operations[key] == body + operations[key] = body + if state.get("on_accept"): + state["on_accept"]() + if lose_acceptance and len(submissions) == 1: + self.connection.shutdown(socket.SHUT_RDWR) + self.connection.close() + return + message = pb.SubmitOperatingMessageResponse( + replay_cursor=C, + accepted_turn=pb.OperatingThreadTurn( + turn_id="target", + sequence=2, + state=pb.OPERATING_TURN_STATE_QUEUED, + ), + ) + elif method == "ListOperatingThreadEvents": + if state.get("block_read"): + state["read_started"].set() + state["release_read"].wait(5) + if state.get("disconnect_read") and not state.get("disconnected"): + state["disconnected"] = True + self.connection.shutdown(socket.SHUT_RDWR) + self.connection.close() + return + completed = ( + not state.get("waiting") or state.get("decision") == "approve" + ) + message = pb.ListOperatingThreadEventsResponse( + next_cursor=C + 1 + if completed + or ( + state.get("waiting") + and not state.get("decision") + and state.get("request_visible", True) + ) + else request.after_cursor, + events=[ + pb.OperatingThreadEvent( + cursor=C + 1, + turn_id="target", + event_id="completed", + kind=pb.OPERATING_THREAD_EVENT_KIND_TURN_COMPLETED, + ) + ] + if completed and request.after_cursor < C + 1 + else [ + pb.OperatingThreadEvent( + cursor=C + 1, + turn_id="target", + event_id="approval", + kind=pb.OPERATING_THREAD_EVENT_KIND_APPROVAL_REQUIRED, + request_id="approval-1", + request_call_id="call-1", + request_type=pb.OPERATING_THREAD_REQUEST_TYPE_APPROVAL, + ) + ] + if state.get("waiting") + and not state.get("decision") + and state.get("request_visible", True) + and request.after_cursor < C + 1 + else [], + ) + elif method == "GetOperatingThread": + message = pb.GetOperatingThreadResponse( + channel=pb.OperatingChannel(id="company"), + default_model=pb.InferenceProviderTarget( + provider="fixture", model="fixture", ready=True + ), + turns=[ + pb.OperatingThreadTurn( + turn_id="target", + sequence=2, + state=pb.OPERATING_TURN_STATE_COMPLETED + if completed + else pb.OPERATING_TURN_STATE_FAILED + if state.get("decision") == "deny" + else pb.OPERATING_TURN_STATE_WAITING + if state.get("waiting") + else pb.OPERATING_TURN_STATE_QUEUED, + waiting_reason=pb.OPERATING_THREAD_WAITING_REASON_APPROVAL + if state.get("waiting") + else pb.OPERATING_THREAD_WAITING_REASON_NONE, + first_cursor=C, + last_cursor=C + 1, + assistant_message_id="answer" if completed else "", + ) + ], + messages=[ + pb.OperatingMessage( + id="answer", + channel_id="company", + role="assistant", + body=state.get( + "body", "Example account: an evidence-linked brief" + ), + receipt_ids=["evidence"], + ) + ] + if completed + else [], + ) + elif method == "GetOperatingReceipt": + assert request.receipt_id == "evidence" + message = pb.GetOperatingReceiptResponse( + receipt=pb.OperatingReceipt( + id="evidence", + lifecycle_state=state.get( + "receipt_state", pb.RECEIPT_LIFECYCLE_STATE_VERIFIED + ), + owner_service="crm", + object_id="account-1", + kind="crm.update", + evidence_refs=[ + pb.RelatedResource( + id="change-1", resource_type="crm-change" + ) + ], + ) + ) + elif method == "RespondOperatingThread": + if state.get("forbidden_decision"): + self.send_response(403) + self.send_header("Content-Type", "application/json") + self.end_headers() + self.wfile.write( + b'{"code":"permission_denied","message":"operator grant required"}' + ) + return + assert state.get("waiting") and not state.get("decision") + assert request.turn_id == "target" + assert request.response.request_id == "approval-1" + assert request.response.call_id == "call-1" + assert ( + request.response.request_type + == pb.OPERATING_THREAD_REQUEST_TYPE_APPROVAL + ) + assert ( + request.idempotency_key + == request.response.idempotency_key + == "decision-001" + ) + state["decisions"].append(body) + state["decision"] = ( + "approve" + if request.response.action + == pb.OPERATING_THREAD_RESPONSE_ACTION_APPROVE + else "deny" + ) + completed = state["decision"] == "approve" + message = pb.RespondOperatingThreadResponse(replay_cursor=C + 2) + else: + raise AssertionError("unexpected mutation or RPC: " + method) + except Exception as error: + errors.append(str(error)) + self.send_error(400) + return + data = message.SerializeToString(deterministic=True) + self.send_response(200) + self.send_header("Content-Type", "application/proto") + self.send_header("Content-Length", str(len(data))) + self.end_headers() + try: + self.wfile.write(data) + except (BrokenPipeError, ConnectionResetError): + pass # The crash-recovery test intentionally kills the waiting reader. + + server = ThreadingHTTPServer(("127.0.0.1", 0), Handler) + thread = threading.Thread(target=server.serve_forever, daemon=True) + thread.start() + try: + yield f"http://127.0.0.1:{server.server_port}", operations, submissions, errors + finally: + server.shutdown() + server.server_close() + thread.join(timeout=2) + + +def invocation(language="python"): + if language == "python": + return [sys.executable, "-m", "deixic.examples.account_brief"] + script = os.environ.get("DEIXIC_TYPESCRIPT_EXAMPLE") or str( + Path(__file__).resolve().parents[2] / "typescript/examples/account-brief.mjs" + ) + assert shutil.which("node") and Path(script).is_file() + return ["node", script] + + +def command(arguments, environment, language="python"): + result = subprocess.run( + [*invocation(language), *arguments], + env=environment, + text=True, + capture_output=True, + timeout=10, + ) + return result.returncode, json.loads(result.stdout) + + +def configuration(url): + return dict( + os.environ, + DEIXIC_API_KEY="fixture-secret", + DEIXIC_ORGANIZATION_ID="org-fixture", + DEIXIC_WORKSPACE_ID="ws-fixture", + DEIXIC_BASE_URL=url, + ) + + +def test_account_brief_submits_and_recovers_in_separate_processes(tmp_path): + with owner() as (url, operations, submissions, errors): + environment = configuration(url) + path = str(tmp_path / "brief.json") + status, check = command(["check"], environment) + assert status == 0 and check["status"] == "accessible" + assert check["write_access"] == "not_checked" + status, started = command( + [ + "start", + path, + "--account", + "Example account", + "--trigger", + "crm-event-001", + ], + environment, + ) + assert status == 0 and started["status"] == "accepted" + status, outcome = command(["resume", path], environment) + assert status == 0 and outcome["status"] == "completed" + assert outcome["body"] == "Example account: an evidence-linked brief" + assert outcome["receipt_ids"] == ["evidence"] + assert len(operations) == len(submissions) == 1 + assert not errors + assert "fixture-secret" not in Path(path).read_text() + assert Path(path).stat().st_mode & 0o777 == 0o600 + status, _ = command( + [ + "start", + path, + "--account", + "Example account", + "--trigger", + "crm-event-001", + ], + environment, + ) + assert status != 0 and len(submissions) == 1 + + +def test_lost_acceptance_resume_is_read_only_and_replay_preserves_request(tmp_path): + with owner(lose_acceptance=True) as (url, operations, submissions, errors): + environment = configuration(url) + path = str(tmp_path / "brief.json") + status, _ = command( + [ + "start", + path, + "--account", + "Example account", + "--trigger", + "crm-event-001", + ], + environment, + ) + assert status == 1 + status, pending = command(["resume", path], environment) + assert status == 2 and pending["status"] == "unacknowledged" + assert len(submissions) == 1 + status, replayed = command(["replay", path], environment) + assert status == 0 and replayed["status"] == "accepted" + status, completed = command(["resume", path], environment) + assert status == 0 and completed["status"] == "completed" + assert len(operations) == 1 and submissions[0] == submissions[1] + assert not errors + + +@pytest.mark.parametrize("lose_acceptance", [False, True]) +def test_typescript_checkpoint_recovers_in_python_without_duplicate_operation( + tmp_path, lose_acceptance +): + # The component builds TypeScript before running Python tests. Standalone + # Python consumers can run their tests without a Node development checkout. + sdk_root = Path(__file__).resolve().parents[2] + explicit_script = os.environ.get("DEIXIC_TYPESCRIPT_EXAMPLE") + script = ( + Path(explicit_script) + if explicit_script + else sdk_root / "typescript/examples/account-brief.mjs" + ) + compiled = sdk_root / "typescript/dist/sdk/deixic/typescript/src/index.js" + if explicit_script: + assert script.is_file() and shutil.which("node"), ( + "Configured TypeScript example is unavailable" + ) + elif not shutil.which("node") or not compiled.is_file(): + pytest.skip("Build the TypeScript SDK to run cross-language checkpoint proof") + with owner(lose_acceptance=lose_acceptance) as ( + url, + operations, + submissions, + errors, + ): + environment = configuration(url) + path = str(tmp_path / "brief.json") + result = subprocess.run( + [ + "node", + str(script), + "start", + path, + "--account", + "Example account", + "--trigger", + "crm-event-001", + ], + env=environment, + text=True, + capture_output=True, + timeout=10, + ) + assert result.returncode == (1 if lose_acceptance else 0), result.stdout + if lose_acceptance: + status, pending = command(["resume", path], environment) + assert status == 2 and pending["status"] == "unacknowledged" + assert len(submissions) == 1 + status, replayed = command(["replay", path], environment) + assert status == 0 and replayed["status"] == "accepted" + assert submissions[0] == submissions[1] + status, completed = command(["resume", path], environment) + assert status == 0 and completed["status"] == "completed" + assert len(operations) == 1 and len(submissions) == ( + 2 if lose_acceptance else 1 + ) + assert not errors diff --git a/tests/test_account_brief_application.py b/tests/test_account_brief_application.py new file mode 100644 index 0000000..b4554bb --- /dev/null +++ b/tests/test_account_brief_application.py @@ -0,0 +1,329 @@ +"""Application behavior over real binary HTTP and independently launched clients.""" + +from __future__ import annotations + +import copy +import json +import subprocess +import threading + +import pytest +from console.v1 import console_pb2 as pb + +from test_account_brief import command, configuration, invocation, owner +from deixic.examples.account_brief_result import parse_account_brief + +BRIEF = dict( + schemaVersion="deixic.account-brief.v1", + accountName="Example account", + summary=dict(text="An active account", sourceIds=["account"]), + opportunities=[dict(name="Renewal", stage="Open", sourceIds=["opportunity"])], + risks=[dict(description="Renewal has no owner", sourceIds=["opportunity"])], + sources=[ + dict(id="account", system="crm", resourceId="account-1"), + dict(id="opportunity", system="crm", resourceId="opportunity-1"), + ], + missingData=["Contract end date"], +) + + +def start(path, environment, language="python", structured=True): + return command( + [ + "start", + str(path), + "--account", + "Example account", + "--trigger", + "crm-event-001", + *(["--structured"] if structured else []), + ], + environment, + language, + ) + + +@pytest.mark.parametrize("language", ["python", "typescript"]) +@pytest.mark.parametrize( + "fault", + [ + "none", + "read_disconnect", + "failed_action", + "unavailable_action", + "invalid_answer", + "wrong_account", + "missing_data", + ], +) +def test_structured_application_result_and_action_outcomes(tmp_path, language, fault): + brief = copy.deepcopy(BRIEF) + if fault == "wrong_account": + brief["accountName"] = "Other account" + if fault == "missing_data": + brief.update( + summary=None, + opportunities=[], + risks=[], + sources=[], + missingData=["CRM connection unavailable"], + ) + state = dict( + body="not JSON" if fault == "invalid_answer" else json.dumps(brief), + disconnect_read=fault == "read_disconnect", + receipt_state=pb.RECEIPT_LIFECYCLE_STATE_FAILED + if fault == "failed_action" + else pb.RECEIPT_LIFECYCLE_STATE_UNAVAILABLE + if fault == "unavailable_action" + else pb.RECEIPT_LIFECYCLE_STATE_VERIFIED, + ) + with owner(state=state) as (url, operations, submissions, errors): + env = configuration(url) + path = tmp_path / "brief.json" + assert start(path, env, language)[0] == 0 + code, result = command(["resume", str(path), "--progress"], env, language) + assert code == ( + 2 + if fault + in ( + "failed_action", + "unavailable_action", + "invalid_answer", + "wrong_account", + ) + else 0 + ), result + assert result["status"] == ( + "invalid_result" + if fault in ("invalid_answer", "wrong_account") + else "completed" + ) + if result["status"] == "completed": + assert result["brief"] == brief + actions = result["actions"] + assert ( + actions[0].get("owner_service", actions[0].get("ownerService")) == "crm" + ) + assert ( + actions[0].get("object_id", actions[0].get("objectId")) == "account-1" + ) + assert ( + actions[0].get("lifecycle_state", actions[0].get("lifecycleState")) + == state["receipt_state"] + ) + assert result.get("action_status", result.get("actionStatus")) == ( + "requires_attention" + if fault in ("failed_action", "unavailable_action") + else "owner_reported_success" + ) + assert len(operations) == len(submissions) == 1 + assert not errors + + +@pytest.mark.parametrize("language", ["python", "typescript"]) +@pytest.mark.parametrize( + "decision", ["approve", "deny", "unavailable_history", "wrong_request", "forbidden"] +) +def test_operator_decision_requires_current_owner_request_and_authorization( + tmp_path, language, decision +): + state = dict( + waiting=True, + body=json.dumps(BRIEF), + request_visible=decision != "unavailable_history", + forbidden_decision=decision == "forbidden", + ) + with owner(state=state) as (url, operations, submissions, errors): + env = configuration(url) + path = tmp_path / "brief.json" + assert start(path, env, language)[0] == 0 + code, result = command(["resume", str(path)], env, language) + assert code == 2 and result["status"] == "waiting" + assert not state["decisions"] # Observation cannot authorize a mutation. + if decision == "unavailable_history": + assert result["reason"] == "request_not_visible" + code, result = command( + [ + "deny" if decision == "deny" else "approve", + str(path), + "--request", + "other-request" if decision == "wrong_request" else "approval-1", + "--decision-key", + "decision-001", + ], + env, + language, + ) + if decision in ("unavailable_history", "wrong_request", "forbidden"): + assert code == (1 if decision == "forbidden" else 2) + assert not state["decisions"] + else: + assert code == 0 and result["status"] == "decision_submitted" + code, result = command(["resume", str(path)], env, language) + assert code == (0 if decision == "approve" else 2) + assert result["status"] == ( + "completed" if decision == "approve" else "failed" + ) + assert len(state["decisions"]) == 1 + assert len(operations) == len(submissions) == 1 + assert not errors + + +@pytest.mark.parametrize("language", ["python", "typescript"]) +def test_killed_background_worker_resumes_same_accepted_task(tmp_path, language): + state = dict( + body=json.dumps(BRIEF), + block_read=True, + read_started=threading.Event(), + release_read=threading.Event(), + ) + with owner(state=state) as (url, operations, submissions, errors): + env = configuration(url) + path = tmp_path / "brief.json" + assert start(path, env, language)[0] == 0 + accepted = json.loads(path.read_text()) + worker = subprocess.Popen( + [*invocation(language), "resume", str(path)], + env=env, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE, + ) + try: + assert state["read_started"].wait(8) + worker.kill() + worker.communicate(timeout=5) + finally: + if worker.poll() is None: + worker.kill() + worker.communicate(timeout=5) + state["block_read"] = False + state["release_read"].set() + code, result = command(["resume", str(path)], env, language) + assert code == 0 and result["status"] == "completed" + assert ( + result.get("turn_id", result.get("turnId")) + == accepted["turnId"] + == "target" + ) + assert result["brief"] == BRIEF + assert len(operations) == len(submissions) == 1 + assert not errors + + +@pytest.mark.parametrize("language", ["python", "typescript"]) +def test_storage_failure_before_and_after_acceptance_never_retries_mutation( + tmp_path, language +): + directory = tmp_path / "private" + directory.mkdir() + moved = tmp_path / "preserved" + path = directory / "brief.json" + state = dict(body=json.dumps(BRIEF)) + + def fail_storage(): + directory.rename(moved) + directory.write_text("storage temporarily unavailable") + state["on_accept"] = None + + state["on_accept"] = fail_storage + with owner(state=state) as (url, operations, submissions, errors): + env = configuration(url) + assert start(tmp_path / "missing" / "brief.json", env, language)[0] == 1 + assert not submissions + assert start(path, env, language)[0] == 1 + assert len(submissions) == 1 + directory.unlink() + moved.rename(directory) + checkpoint = json.loads(path.read_text()) + assert checkpoint["submission"] == "unacknowledged" + code, result = command(["resume", str(path)], env, language) + assert code == 2 and result["status"] == "unacknowledged" + assert len(submissions) == 1 + assert command(["replay", str(path)], env, language)[0] == 0 + code, result = command(["resume", str(path)], env, language) + assert code == 0 and result["brief"] == BRIEF + assert len(operations) == 1 and submissions[0] == submissions[1] + assert not errors + + +@pytest.mark.parametrize( + "submitter,observer", [("python", "typescript"), ("typescript", "python")] +) +def test_structured_result_survives_cross_language_restart( + tmp_path, submitter, observer +): + with owner(state=dict(body=json.dumps(BRIEF))) as ( + url, + operations, + submissions, + errors, + ): + env = configuration(url) + path = tmp_path / "brief.json" + assert start(path, env, submitter)[0] == 0 + code, result = command(["resume", str(path)], env, observer) + assert code == 0 and result["brief"] == BRIEF + assert len(operations) == len(submissions) == 1 and not errors + + +@pytest.mark.parametrize( + "mutation", + [ + "extra", + "unlinked", + "duplicate_source", + "empty_text", + "wrong_type", + "missing_explanation", + "version", + ], +) +def test_account_brief_parser_rejects_unusable_data(mutation): + brief = copy.deepcopy(BRIEF) + if mutation == "extra": + brief["unexpected"] = True + if mutation == "unlinked": + brief["summary"]["sourceIds"] = ["invented"] + if mutation == "duplicate_source": + brief["sources"].append(brief["sources"][0]) + if mutation == "empty_text": + brief["summary"]["text"] = " " + if mutation == "wrong_type": + brief["opportunities"] = "not a list" + if mutation == "missing_explanation": + brief.update(summary=None, missingData=[]) + if mutation == "version": + brief["schemaVersion"] = "future" + with pytest.raises(ValueError): + parse_account_brief(json.dumps(brief)) + + +def test_duplicate_json_fields_are_rejected(): + body = json.dumps(BRIEF).replace( + '"accountName":', '"accountName":"Other account","accountName":' + ) + with pytest.raises(ValueError): + parse_account_brief(body) + + +@pytest.mark.parametrize("create", [True, False]) +def test_partial_checkpoint_serialization_never_publishes_a_partial_file( + tmp_path, monkeypatch, create +): + from deixic.examples import task_result + + path = tmp_path / "checkpoint.json" + if not create: + path.write_text('{"preserved": true}') + + def disk_full(value, output): + output.write('{"partial":') + raise OSError("fixture storage failure") + + monkeypatch.setattr(task_result.json, "dump", disk_full) + with pytest.raises(OSError): + task_result.save(path, dict(schema="fixture"), create=create) + assert not path.exists() if create else path.read_text() == '{"preserved": true}' + assert sorted(item.name for item in tmp_path.iterdir()) == ( + [] if create else [path.name] + ) diff --git a/tests/test_client.py b/tests/test_client.py new file mode 100644 index 0000000..6652ee0 --- /dev/null +++ b/tests/test_client.py @@ -0,0 +1,421 @@ +from __future__ import annotations + +import json +import struct +from collections.abc import Iterator, Mapping +from dataclasses import dataclass +from typing import Any + +import pytest +from console.v1 import console_pb2 + +from deixic import Credential, Deixic, DeixicError + + +@dataclass +class FakeResponse: + status_code: int + content: bytes = b"" + headers: Mapping[str, str] | None = None + chunks: tuple[bytes, ...] = () + closed: bool = False + + def json(self) -> Any: + return json.loads(self.content.decode("utf-8")) + + def iter_content(self, chunk_size: int | None = None) -> Iterator[bytes]: + return iter(self.chunks or (self.content,)) + + def close(self) -> None: + self.closed = True + + def __post_init__(self) -> None: + if self.headers is None: + self.headers = {} + + +class FakeTransport: + def __init__(self, responses: list[FakeResponse]) -> None: + self.responses = responses + self.requests: list[dict[str, Any]] = [] + + def send( + self, + method: str, + url: str, + *, + headers: Mapping[str, str], + body: bytes, + timeout: float, + stream: bool = False, + ) -> FakeResponse: + self.requests.append( + { + "method": method, + "url": url, + "headers": dict(headers), + "body": body, + "timeout": timeout, + "stream": stream, + } + ) + return self.responses.pop(0) + + +class RotatingCredentials: + can_refresh = True + + def __init__(self, refreshed: Credential) -> None: + self.refreshed = refreshed + self.refreshes = 0 + + def get_credential(self) -> Credential: + return Credential( + access_token="old-token", + subject="subject-a", + organization_id="org-a", + workspace_id="workspace-a", + scopes=("console:write",), + ) + + def refresh_credential(self, current: Credential) -> Credential: + self.refreshes += 1 + return self.refreshed + + +def response(message: Any) -> FakeResponse: + return FakeResponse(200, message.SerializeToString(deterministic=True)) + + +def test_send_uses_binary_connect_and_fixed_scope() -> None: + transport = FakeTransport( + [ + response( + console_pb2.SubmitOperatingMessageResponse( + replay_cursor=8, + accepted_turn=console_pb2.OperatingThreadTurn( + turn_id="turn-1", + sequence=2, + ), + ) + ) + ] + ) + client = Deixic( + api_key="sdk-test-key", + organization_id="org-a", + workspace_id="workspace-a", + base_url="https://api.deixic.test", + transport=transport, + ) + + result = client.messages.send( + channel_id="company", + body="Review this change.", + idempotency_key="send-1", + ) + + assert result.accepted_turn.turn_id == "turn-1" + request = transport.requests[0] + assert request["url"].endswith("/deixic.v1.DeixicService/SubmitOperatingMessage") + assert request["headers"]["Content-Type"] == "application/proto" + assert request["headers"]["Authorization"] == "Bearer sdk-test-key" + assert request["headers"]["X-Organization-ID"] == "org-a" + assert request["headers"]["X-Workspace-ID"] == "workspace-a" + decoded = console_pb2.SubmitOperatingMessageRequest.FromString(request["body"]) + assert decoded.query.organization_id == "org-a" + assert decoded.query.workspace_id == "workspace-a" + assert decoded.idempotency_key == "send-1" + + +@pytest.mark.parametrize("field", ["organization_id", "workspace_id"]) +def test_client_scope_cannot_be_reassigned_or_deleted(field: str) -> None: + transport = FakeTransport([response(console_pb2.GetOperatingThreadResponse())]) + client = Deixic( + api_key="sdk-test-key", + organization_id="org-a", + workspace_id="workspace-a", + transport=transport, + ) + + with pytest.raises(AttributeError): + setattr(client, field, "different-tenant") + with pytest.raises(AttributeError): + delattr(client, field) + + client.threads.get(channel_id="company") + request = transport.requests[0] + decoded = console_pb2.GetOperatingThreadRequest.FromString(request["body"]) + assert decoded.query.organization_id == "org-a" + assert decoded.query.workspace_id == "workspace-a" + assert request["headers"]["X-Organization-ID"] == "org-a" + assert request["headers"]["X-Workspace-ID"] == "workspace-a" + + +def test_authentication_refresh_preserves_request_bytes_and_identity() -> None: + first = FakeResponse( + 401, + b'{"code":"unauthenticated","message":"expired"}', + {"content-type": "application/json"}, + ) + transport = FakeTransport( + [first, response(console_pb2.InterruptOperatingThreadResponse())] + ) + credentials = RotatingCredentials( + Credential( + access_token="new-token", + subject="subject-a", + organization_id="org-a", + workspace_id="workspace-a", + scopes=("console:write",), + ) + ) + client = Deixic( + credential_provider=credentials, + organization_id="org-a", + workspace_id="workspace-a", + transport=transport, + ) + + client.controls.interrupt(channel_id="company", idempotency_key="interrupt-1") + + assert credentials.refreshes == 1 + assert first.closed is True + assert transport.requests[0]["body"] == transport.requests[1]["body"] + assert transport.requests[0]["headers"]["Authorization"] == "Bearer old-token" + assert transport.requests[1]["headers"]["Authorization"] == "Bearer new-token" + + +def test_second_authentication_failure_is_not_retried() -> None: + first = FakeResponse(401, b'{"code":"unauthenticated"}') + second = FakeResponse(401, b'{"code":"unauthenticated"}') + transport = FakeTransport([first, second]) + credentials = RotatingCredentials( + Credential( + access_token="new-token", + subject="subject-a", + organization_id="org-a", + workspace_id="workspace-a", + scopes=("console:write",), + ) + ) + client = Deixic( + credential_provider=credentials, + organization_id="org-a", + workspace_id="workspace-a", + transport=transport, + ) + + with pytest.raises(DeixicError) as caught: + client.controls.interrupt(channel_id="company", idempotency_key="interrupt-1") + + assert caught.value.kind == "authentication" + assert credentials.refreshes == 1 + assert len(transport.requests) == 2 + assert first.closed is True + assert second.closed is True + + +def test_refresh_rejects_subject_change_before_replay() -> None: + first = FakeResponse( + 401, b'{"code":"unauthenticated"}', {"content-type": "application/json"} + ) + transport = FakeTransport([first]) + credentials = RotatingCredentials( + Credential( + access_token="new-token", + subject="subject-b", + organization_id="org-a", + workspace_id="workspace-a", + scopes=("console:write",), + ) + ) + client = Deixic( + credential_provider=credentials, + organization_id="org-a", + workspace_id="workspace-a", + transport=transport, + ) + + with pytest.raises(DeixicError, match="same stable subject") as caught: + client.controls.interrupt(channel_id="company", idempotency_key="interrupt-1") + + assert caught.value.kind == "authentication" + assert len(transport.requests) == 1 + assert first.closed is True + + +def test_watch_decodes_bounded_connect_stream_frames() -> None: + first = console_pb2.WatchOperatingThreadResponse(next_cursor=4) + second = console_pb2.WatchOperatingThreadResponse( + next_cursor=8, reset_required=True + ) + frames = b"".join( + [ + _frame(first.SerializeToString(deterministic=True)), + _frame(second.SerializeToString(deterministic=True)), + _frame(b"{}", flags=2), + ] + ) + stream_response = FakeResponse( + 200, + headers={"content-type": "application/connect+proto"}, + chunks=(frames[:7], frames[7:19], frames[19:]), + ) + transport = FakeTransport([stream_response]) + client = Deixic( + api_key="sdk-test-key", + organization_id="org-a", + workspace_id="workspace-a", + transport=transport, + ) + + pages = list(client.events.watch(channel_id="company", after_cursor=0)) + + assert [page.next_cursor for page in pages] == [4, 8] + assert pages[1].reset_required is True + assert stream_response.closed is True + assert transport.requests[0]["stream"] is True + assert ( + transport.requests[0]["headers"]["Content-Type"] == "application/connect+proto" + ) + request_body = transport.requests[0]["body"] + assert request_body[0] == 0 + assert struct.unpack(">I", request_body[1:5])[0] == len(request_body) - 5 + request = console_pb2.WatchOperatingThreadRequest.FromString(request_body[5:]) + assert request.channel_id == "company" + + +def test_mutations_require_caller_idempotency_before_transport() -> None: + transport = FakeTransport([]) + client = Deixic( + api_key="sdk-test-key", + organization_id="org-a", + workspace_id="workspace-a", + transport=transport, + ) + + with pytest.raises(DeixicError, match="idempotency_key is required"): + client.messages.send(channel_id="company", body="hello", idempotency_key=" ") + + assert transport.requests == [] + + +def test_default_origin_is_the_deployed_deixic_api() -> None: + transport = FakeTransport([response(console_pb2.GetOperatingThreadResponse())]) + client = Deixic( + api_key="sdk-test-key", + organization_id="org-a", + workspace_id="workspace-a", + transport=transport, + ) + + client.threads.get(channel_id="company") + + assert transport.requests[0]["url"].startswith("https://app.deixic.com/") + + +def test_transport_failure_is_typed_and_not_retried() -> None: + class FailingTransport: + calls = 0 + + def send(self, *args: Any, **kwargs: Any) -> FakeResponse: + self.calls += 1 + raise OSError("socket contained implementation details") + + transport = FailingTransport() + client = Deixic( + api_key="sdk-test-key", + organization_id="org-a", + workspace_id="workspace-a", + transport=transport, + ) + + with pytest.raises(DeixicError, match="Deixic transport failed") as caught: + client.threads.get(channel_id="company") + + assert caught.value.kind == "transport" + assert transport.calls == 1 + + +def test_watch_rejects_malformed_end_envelope_as_protocol_error() -> None: + stream_response = FakeResponse( + 200, + headers={"content-type": "application/connect+proto"}, + chunks=(_frame(b"not-json", flags=2),), + ) + client = Deixic( + api_key="sdk-test-key", + organization_id="org-a", + workspace_id="workspace-a", + transport=FakeTransport([stream_response]), + ) + + with pytest.raises(DeixicError, match="invalid end envelope") as caught: + list(client.events.watch(channel_id="company", after_cursor=0)) + + assert caught.value.kind == "protocol" + assert stream_response.closed is True + + +@pytest.mark.parametrize( + "base_url", + [ + "deixic.example", + "ftp://deixic.example", + "https://user@deixic.example", + "https://deixic.example?token=x", + ], +) +def test_client_rejects_unsafe_base_urls(base_url: str) -> None: + with pytest.raises(DeixicError) as caught: + Deixic( + api_key="sdk-test-key", + organization_id="org-a", + workspace_id="workspace-a", + base_url=base_url, + transport=FakeTransport([]), + ) + + assert caught.value.kind == "validation" + + +@pytest.mark.parametrize("api_key", [None, " "]) +def test_client_reports_invalid_auth_configuration_as_typed_validation( + api_key: str | None, +) -> None: + with pytest.raises(DeixicError) as caught: + Deixic( + api_key=api_key, + organization_id="org-a", + workspace_id="workspace-a", + transport=FakeTransport([]), + ) + + assert caught.value.kind == "validation" + + +def _frame(payload: bytes, *, flags: int = 0) -> bytes: + return bytes([flags]) + struct.pack(">I", len(payload)) + payload + + +def test_coding_submission_preserves_explicit_acceptance_and_declares_kind() -> None: + transport = FakeTransport([FakeResponse(200, console_pb2.SubmitOperatingMessageResponse().SerializeToString())]) + client = Deixic(api_key="test-key", organization_id="org-a", workspace_id="workspace-a", transport=transport) + contract = console_pb2.CodingAcceptanceContract(repository_id="fixture", generation=1, + required_assertion_ids=["sum"], require_review=True, require_behavior=True, readiness_requirements=["test"]) + client.messages.send(channel_id="coding", body="Implement fixture", idempotency_key="coding-1", coding_acceptance=contract) + request = console_pb2.SubmitOperatingMessageRequest.FromString(transport.requests[0]["body"]) + assert request.coding_acceptance == contract + assert request.task_kind == console_pb2.OPERATING_TASK_KIND_CODING_IMPLEMENTATION + + +@pytest.mark.parametrize("include_content", [False, True]) +def test_coding_output_content_requires_explicit_receipt_read(include_content: bool) -> None: + transport = FakeTransport([FakeResponse(200, console_pb2.GetOperatingReceiptResponse().SerializeToString())]) + client = Deixic(api_key="test-key", organization_id="org-a", workspace_id="workspace-a", transport=transport) + client.receipts.get(channel_id="coding", receipt_id="receipt-1", include_coding_output_content=include_content) + request = console_pb2.GetOperatingReceiptRequest.FromString(transport.requests[0]["body"]) + assert request.include_coding_output_content == include_content + assert request.query.organization_id == "org-a" + assert request.query.workspace_id == "workspace-a" diff --git a/tests/test_http_journey.py b/tests/test_http_journey.py new file mode 100644 index 0000000..0f6e4c7 --- /dev/null +++ b/tests/test_http_journey.py @@ -0,0 +1,207 @@ +from __future__ import annotations + +import struct +import threading +from contextlib import contextmanager +from http.server import BaseHTTPRequestHandler, ThreadingHTTPServer +from typing import Any + +import pytest +from console.v1 import console_pb2 as pb + +from deixic import Credential, Deixic + + +@contextmanager +def loopback_owner(expired_method: str): + """Exercise the installed requests transport without a customer tenant.""" + calls: list[tuple[str, dict[str, str], bytes]] = [] + cursor = 9_007_199_254_740_994 + completed = False + + class Handler(BaseHTTPRequestHandler): + def log_message(self, *args: Any) -> None: + pass + + def do_POST(self) -> None: + nonlocal completed + method = self.path.rsplit("/", 1)[-1] + body = self.rfile.read(int(self.headers["Content-Length"])) + calls.append((method, dict(self.headers), body)) + if method == "WatchOperatingThread" and ( + len(body) < 5 or body[0] != 0 + or struct.unpack(">I", body[1:5])[0] != len(body) - 5 + ): + self.send_response(400) + self.send_header("Content-Type", "application/json") + self.end_headers() + self.wfile.write(b'{"code":"invalid_argument","message":"invalid Connect frame"}') + return + if ( + method == expired_method + and self.headers["Authorization"] == "Bearer old-fixture-token" + ): + self.send_response(401) + self.send_header("Content-Type", "application/json") + self.end_headers() + self.wfile.write(b'{"code":"unauthenticated","message":"expired"}') + return + + streaming = False + if method == "SubmitOperatingMessage": + message = pb.SubmitOperatingMessageResponse( + replay_cursor=cursor, + accepted_turn=pb.OperatingThreadTurn( + turn_id="turn-fixture", sequence=2, + state=pb.OPERATING_TURN_STATE_QUEUED, + ), + ) + elif method == "GetOperatingThread": + finished = completed + message = pb.GetOperatingThreadResponse( + replay_cursor=cursor + (3 if finished else 2), + turns=[pb.OperatingThreadTurn( + turn_id="turn-fixture", sequence=2, + state=(pb.OPERATING_TURN_STATE_COMPLETED if finished + else pb.OPERATING_TURN_STATE_RUNNING), + assistant_message_id="answer-fixture" if finished else "", + )], + messages=[pb.OperatingMessage( + id="answer-fixture", channel_id="company", role="assistant", + body="Verified result" if finished else "Still working", + receipt_ids=["receipt-fixture"] if finished else [], + )], + ) + elif method == "ListOperatingThreadEvents": + message = pb.ListOperatingThreadEventsResponse( + next_cursor=cursor + 2, + events=[ + pb.OperatingThreadEvent( + cursor=cursor + 1, event_id="other-completed", + turn_id="other-turn", + kind=pb.OPERATING_THREAD_EVENT_KIND_TURN_COMPLETED, + ), + pb.OperatingThreadEvent( + cursor=cursor + 2, event_id="own-progress", + turn_id="turn-fixture", + kind=pb.OPERATING_THREAD_EVENT_KIND_PROGRESS, + safe_text="Still working", + ), + ], + ) + elif method == "WatchOperatingThread": + completed = True + streaming = True + message = pb.WatchOperatingThreadResponse( + next_cursor=cursor + 3, + events=[pb.OperatingThreadEvent( + cursor=cursor + 3, event_id="own-completed", + turn_id="turn-fixture", + kind=pb.OPERATING_THREAD_EVENT_KIND_TURN_COMPLETED, + )], + ) + elif method == "GetOperatingReceipt": + message = pb.GetOperatingReceiptResponse(receipt=pb.OperatingReceipt( + id="receipt-fixture", summary="Verified result", + lifecycle_state=pb.RECEIPT_LIFECYCLE_STATE_VERIFIED, + )) + else: + self.send_error(404) + return + + payload = message.SerializeToString(deterministic=True) + self.send_response(200) + self.send_header("Content-Type", "application/connect+proto" if streaming + else "application/proto") + self.end_headers() + if streaming: + payload = struct.pack(">BI", 0, len(payload)) + payload + payload += struct.pack(">BI", 2, 2) + b"{}" + self.wfile.write(payload) + + server = ThreadingHTTPServer(("127.0.0.1", 0), Handler) + worker = threading.Thread(target=server.serve_forever, daemon=True) + worker.start() + try: + yield f"http://127.0.0.1:{server.server_port}", calls, cursor + finally: + server.shutdown() + server.server_close() + worker.join(timeout=2) + + +class FixtureCredentials: + can_refresh = True + + def __init__(self) -> None: + self.refreshed = False + + def get_credential(self) -> Credential: + return Credential( + access_token="new-fixture-token" if self.refreshed else "old-fixture-token", + subject="fixture-subject", organization_id="org-fixture", + workspace_id="ws-fixture", scopes=("console:read", "console:write"), + ) + + def refresh_credential(self, current: Credential) -> Credential: + self.refreshed = True + return self.get_credential() + + +@pytest.mark.parametrize("expired_method", ["SubmitOperatingMessage", "WatchOperatingThread"]) +def test_http_task_result_preserves_scope_and_replay_identity(expired_method: str) -> None: + with loopback_owner(expired_method) as (base_url, calls, cursor): + client = Deixic( + credential_provider=FixtureCredentials(), base_url=base_url, + organization_id="org-fixture", workspace_id="ws-fixture", + ) + for field in ("organization_id", "workspace_id"): + with pytest.raises(AttributeError): + setattr(client, field, "different-tenant") + + accepted = client.messages.send( + channel_id="company", body="Return a verified result", + idempotency_key="fixture-operation", + ) + assert accepted.accepted_turn.state == pb.OPERATING_TURN_STATE_QUEUED + early = client.threads.get(channel_id="company") + assert early.turns[0].state == pb.OPERATING_TURN_STATE_RUNNING + assert early.messages[0].body == "Still working" + page = client.events.list(channel_id="company", after_cursor=accepted.replay_cursor) + matching = [event for event in page.events + if event.turn_id == accepted.accepted_turn.turn_id] + assert [event.kind for event in matching] == [pb.OPERATING_THREAD_EVENT_KIND_PROGRESS] + assert page.next_cursor == cursor + 2 + stream = list(client.events.watch(channel_id="company", after_cursor=page.next_cursor)) + assert stream[0].next_cursor == cursor + 3 + assert stream[0].events[0].turn_id == accepted.accepted_turn.turn_id + assert stream[0].events[0].kind == pb.OPERATING_THREAD_EVENT_KIND_TURN_COMPLETED + final = client.threads.get(channel_id="company") + assert final.turns[0].state == pb.OPERATING_TURN_STATE_COMPLETED + assert final.turns[0].assistant_message_id == final.messages[0].id + assert final.messages[0].body == "Verified result" + receipt = client.receipts.get( + channel_id="company", receipt_id=final.messages[0].receipt_ids[0], + ).receipt + assert receipt.lifecycle_state == pb.RECEIPT_LIFECYCLE_STATE_VERIFIED + + replayed_calls = [call for call in calls if call[0] == expired_method] + assert len(replayed_calls) == 2 + assert replayed_calls[0][2] == replayed_calls[1][2] + assert replayed_calls[0][1]["Authorization"] == "Bearer old-fixture-token" + assert replayed_calls[1][1]["Authorization"] == "Bearer new-fixture-token" + for method, headers, body in calls: + assert headers["X-Organization-ID"] == "org-fixture" + assert headers["X-Workspace-ID"] == "ws-fixture" + assert headers["Connect-Protocol-Version"] == "1" + request_type = getattr(pb, method + "Request") + streaming = method == "WatchOperatingThread" + assert headers["Content-Type"] == ( + "application/connect+proto" if streaming else "application/proto" + ) + request = request_type.FromString(body[5:] if streaming else body) + assert request.query.organization_id == "org-fixture" + assert request.query.workspace_id == "ws-fixture" + if method == "SubmitOperatingMessage": + assert request.idempotency_key == "fixture-operation" + assert len(calls) == 7 diff --git a/tests/test_real_journey.py b/tests/test_real_journey.py new file mode 100644 index 0000000..4d3ea1f --- /dev/null +++ b/tests/test_real_journey.py @@ -0,0 +1,33 @@ +"""Opt-in acceptance against real Identity/Platform services, never default CI fixtures.""" + +from __future__ import annotations + +import json +import os +import subprocess +import sys + +import pytest + + +@pytest.mark.skipif(os.environ.get("DEIXIC_REAL_JOURNEY") != "1", + reason="requires an explicitly configured dedicated test tenant") +def test_real_identity_platform_result_survives_client_process_restart(tmp_path): + checkpoint = tmp_path / "real-journey.json" + command = [sys.executable, "-m", "deixic.examples.verify_test_journey"] + accepted = subprocess.run(command + ["submit", str(checkpoint)], + capture_output=True, text=True, timeout=60) + assert accepted.returncode == 0, "Real Identity/Platform submission did not pass" + acceptance = json.loads(accepted.stdout) + assert acceptance["status"] == "accepted" + recovered = subprocess.run(command + ["resume", str(checkpoint)], + capture_output=True, text=True, timeout=120) + assert recovered.returncode == 0, "Real Identity/Platform restarted result verification did not pass" + result = json.loads(recovered.stdout) + assert result["status"] == "completed" + assert result["turn_id"] == acceptance["turn_id"] + assert result["restarted_client"] is True + assert result["message_id"] + assert result["identity_key_id"] + token = os.environ["DEIXIC_API_KEY"] + assert token not in accepted.stdout + recovered.stdout + checkpoint.read_text() diff --git a/tests/test_recovery.py b/tests/test_recovery.py new file mode 100644 index 0000000..be1d892 --- /dev/null +++ b/tests/test_recovery.py @@ -0,0 +1,255 @@ +from __future__ import annotations + +import json +import os +import subprocess +import sys +from pathlib import Path + +import pytest +from console.v1 import console_pb2 as pb +from deixic import Credential, Deixic, DeixicError +from deixic.examples import task_result as example + +from test_client import FakeResponse, FakeTransport, RotatingCredentials, _frame, response +from test_http_journey import FixtureCredentials, loopback_owner + +def checkpoint(tmp_path: Path, *, url: str = "https://api.deixic.test"): + path = tmp_path / "task.json" + state = example.prepare(path, organization_id="org-fixture", workspace_id="ws-fixture", + base_url=url, channel_id="company", body="Return a verified result") + return path, state + + +def client(transport): + return Deixic(api_key="fixture-secret", organization_id="org-fixture", + workspace_id="ws-fixture", base_url="https://api.deixic.test", + transport=transport) + + +def test_saved_request_survives_response_loss_and_explicit_replay(tmp_path): + path, state = checkpoint(tmp_path) + accepted = pb.SubmitOperatingMessageResponse( + replay_cursor=9_007_199_254_740_994, + accepted_turn=pb.OperatingThreadTurn(turn_id="same-turn", sequence=1, + state=pb.OPERATING_TURN_STATE_QUEUED), + ) + + class LostResponse(FakeTransport): + def send(self, *args, **kwargs): + result = super().send(*args, **kwargs) + if len(self.requests) == 1: + raise ConnectionError("response lost after owner acceptance") + return result + + transport = LostResponse([response(accepted), response(accepted)]) + with pytest.raises(DeixicError, match="transport failed"): + example.submit(client(transport), path, state) + recovered = example.load(path, organization_id="org-fixture", workspace_id="ws-fixture", + base_url="https://api.deixic.test") + assert not recovered["turn_id"] + assert example.resume(client(transport), path, recovered)["status"] == "unacknowledged" + assert len(transport.requests) == 1 # Observation does not retry acceptance. + example.submit(client(transport), path, recovered) + assert transport.requests[0]["body"] == transport.requests[1]["body"] + assert recovered["turn_id"] == "same-turn" + assert recovered["cursor"] == 9_007_199_254_740_994 + with pytest.raises(ValueError, match="already has an accepted turn"): + example.submit(client(transport), path, recovered) + assert "fixture-secret" not in path.read_text() + assert path.stat().st_mode & 0o777 == 0o600 + + +def test_restart_recovers_exact_turn_final_message_and_receipt_over_http(tmp_path): + with loopback_owner("WatchOperatingThread") as (url, calls, _): + path, state = checkpoint(tmp_path, url=url) + original = Deixic(credential_provider=FixtureCredentials(), organization_id="org-fixture", + workspace_id="ws-fixture", base_url=url) + example.submit(original, path, state) + resumed = Deixic(credential_provider=FixtureCredentials(), organization_id="org-fixture", + workspace_id="ws-fixture", base_url=url) + recovered = example.load(path, organization_id="org-fixture", workspace_id="ws-fixture", + base_url=url) + outcome = example.resume(resumed, path, recovered) + assert outcome["status"] == "completed" + assert outcome["turn_id"] == "turn-fixture" + assert outcome["receipt_ids"] == ["receipt-fixture"] + assert len([call for call in calls if call[0] == "SubmitOperatingMessage"]) == 1 + watches = [call for call in calls if call[0] == "WatchOperatingThread"] + assert len(watches) == 2 + assert watches[0][2] == watches[1][2] + + +def test_cursor_reset_replaces_old_terminal_projection(tmp_path): + path, state = checkpoint(tmp_path) + state.update(turn_id="target", cursor=100, turn_state=pb.OPERATING_TURN_STATE_COMPLETED) + page = pb.ListOperatingThreadEventsResponse( + reset_required=True, next_cursor=200, + snapshot_turns=[pb.OperatingThreadTurn(turn_id="target", sequence=1, + state=pb.OPERATING_TURN_STATE_RUNNING)], + events=[pb.OperatingThreadEvent(turn_id="unrelated", cursor=200, + kind=pb.OPERATING_THREAD_EVENT_KIND_TURN_COMPLETED)], + ) + example.apply_page(path, state, page) + assert json.loads(path.read_text())["turn_state"] == pb.OPERATING_TURN_STATE_RUNNING + assert state["cursor"] == 200 + page.ClearField("snapshot_turns") + example.apply_page(path, state, page) + assert state["turn_state"] == pb.OPERATING_TURN_STATE_UNSPECIFIED + + +def test_watch_eof_is_unfinished_and_resume_uses_saved_cursor_without_submission(tmp_path): + path, state = checkpoint(tmp_path) + state.update(turn_id="target", cursor=9_007_199_254_740_994) + running = pb.GetOperatingThreadResponse(turns=[pb.OperatingThreadTurn( + turn_id="target", sequence=1, state=pb.OPERATING_TURN_STATE_RUNNING)]) + page = pb.WatchOperatingThreadResponse(next_cursor=state["cursor"] + 1) + watch = FakeResponse(200, content=_frame(page.SerializeToString()) + _frame(b"{}", flags=2)) + transport = FakeTransport([response(running), response(pb.ListOperatingThreadEventsResponse( + next_cursor=state["cursor"])), response(running), watch, response(running)]) + assert example.resume(client(transport), path, state)["reason"] == "watch_eof" + saved = example.load(path, organization_id="org-fixture", workspace_id="ws-fixture", + base_url="https://api.deixic.test") + assert saved["cursor"] == 9_007_199_254_740_995 + next_transport = FakeTransport([response(running), response(pb.ListOperatingThreadEventsResponse( + next_cursor=saved["cursor"])), response(running), FakeResponse(200, content=_frame(b"{}", flags=2))]) + assert example.resume(client(next_transport), path, saved)["status"] == "unfinished" + listed = pb.ListOperatingThreadEventsRequest.FromString(next_transport.requests[1]["body"]) + assert listed.after_cursor == saved["cursor"] + assert all("SubmitOperatingMessage" not in call["url"] for call in transport.requests + next_transport.requests) + assert watch.closed + + +@pytest.mark.parametrize("changed", ["organization_id", "workspace_id", "base_url"]) +def test_checkpoint_cannot_move_between_tenants_or_platforms(tmp_path, changed): + path, _ = checkpoint(tmp_path) + coordinates = dict(organization_id="org-fixture", workspace_id="ws-fixture", + base_url="https://api.deixic.test") + coordinates[changed] = "different" + with pytest.raises(ValueError, match="different tenant or Platform"): + example.load(path, **coordinates) + + +@pytest.mark.parametrize("ending", [b"\x00", _frame(b"broken")[:-1]]) +def test_truncated_watch_is_protocol_failure_and_closes_response(ending): + reply = FakeResponse(200, chunks=tuple(bytes([byte]) for byte in ending)) + transport = FakeTransport([reply]) + with pytest.raises(DeixicError, match="incomplete frame") as error: + list(client(transport).events.watch(channel_id="company", after_cursor=0)) + assert error.value.kind == "protocol" + assert transport.responses == [] + assert reply.closed + + +def test_fragmented_http_200_terminal_error_is_not_success(): + document = json.dumps({"error": {"code": "permission_denied", "message": "token revoked"}}).encode() + frame = _frame(document, flags=2) + reply = FakeResponse(200, chunks=tuple(bytes([byte]) for byte in frame)) + transport = FakeTransport([reply]) + with pytest.raises(DeixicError) as error: + list(client(transport).events.watch(channel_id="company", after_cursor=0)) + assert error.value.kind == "authorization" + assert error.value.code == "permission_denied" + assert len(transport.requests) == 1 + assert reply.closed + + +def test_revoked_static_credential_stops_before_watch_or_submission(tmp_path): + path, state = checkpoint(tmp_path) + state["turn_id"] = "target" + reply = FakeResponse(401, content=b'{"code":"unauthenticated"}') + transport = FakeTransport([reply]) + with pytest.raises(DeixicError) as error: + example.resume(client(transport), path, state) + assert error.value.kind == "authentication" + assert len(transport.requests) == 1 + assert reply.closed + + +@pytest.mark.parametrize("turn_state,status", [ + (pb.OPERATING_TURN_STATE_FAILED, "failed"), + (pb.OPERATING_TURN_STATE_INTERRUPTED, "interrupted"), +]) +def test_matching_terminal_failure_never_returns_success(tmp_path, turn_state, status): + path, state = checkpoint(tmp_path) + state["turn_id"] = "target" + transport = FakeTransport([response(pb.GetOperatingThreadResponse( + turns=[pb.OperatingThreadTurn(turn_id="target", sequence=1, state=turn_state)], + messages=[pb.OperatingMessage(id="unrelated", channel_id="company", role="assistant", + body="Everything is done")], + ))]) + assert example.resume(client(transport), path, state)["status"] == status + assert len(transport.requests) == 1 + + +def test_paginated_final_message_and_receipt_are_linked_to_accepted_turn(tmp_path): + path, state = checkpoint(tmp_path) + state["turn_id"] = "target" + transport = FakeTransport([ + response(pb.GetOperatingThreadResponse(next_page_token="older", + turns=[pb.OperatingThreadTurn(turn_id="target", sequence=1, + state=pb.OPERATING_TURN_STATE_COMPLETED, assistant_message_id="final")], + messages=[pb.OperatingMessage(id="preliminary", channel_id="company", role="assistant", + body="Working")], + )), + response(pb.GetOperatingThreadResponse(messages=[pb.OperatingMessage( + id="final", channel_id="company", role="assistant", body="Finished", + receipt_ids=["receipt"], + )])), + response(pb.GetOperatingReceiptResponse(receipt=pb.OperatingReceipt(id="receipt"))), + ]) + outcome = example.resume(client(transport), path, state) + assert outcome["body"] == "Finished" + assert outcome["message_id"] == "final" + assert outcome["receipt_ids"] == ["receipt"] + assert pb.GetOperatingThreadRequest.FromString(transport.requests[1]["body"]).page_token == "older" + + +def test_completed_turn_cannot_use_an_unrelated_message(tmp_path): + path, state = checkpoint(tmp_path) + state["turn_id"] = "target" + transport = FakeTransport([response(pb.GetOperatingThreadResponse( + turns=[pb.OperatingThreadTurn(turn_id="target", sequence=1, + state=pb.OPERATING_TURN_STATE_COMPLETED, assistant_message_id="missing")], + messages=[pb.OperatingMessage(id="unrelated", role="assistant", body="Finished")], + ))]) + with pytest.raises(ValueError, match="linked final assistant message"): + example.resume(client(transport), path, state) + + +@pytest.mark.parametrize("changed", ["organization_id", "workspace_id", "scopes"]) +def test_authentication_refresh_cannot_change_tenant_or_declared_grants(changed): + coordinates = dict(access_token="new-token", subject="subject-a", organization_id="org-a", + workspace_id="workspace-a", scopes=("console:write",)) + coordinates[changed] = ("console:read", "console:write") if changed == "scopes" else "different" + provider = RotatingCredentials(Credential(**coordinates)) + reply = FakeResponse(401, content=b'{"code":"unauthenticated"}') + transport = FakeTransport([reply]) + sdk = Deixic(credential_provider=provider, organization_id="org-a", workspace_id="workspace-a", + transport=transport) + with pytest.raises(DeixicError) as error: + sdk.messages.send(channel_id="company", body="Task", idempotency_key="same-request") + assert error.value.kind == "authentication" + assert len(transport.requests) == 1 + assert provider.refreshes == 1 + assert reply.closed + + +def test_installed_example_cli_restarts_without_resubmitting(tmp_path): + with loopback_owner("WatchOperatingThread") as (url, calls, _): + env = dict(os.environ, DEIXIC_API_KEY="fixture-cli-secret", + DEIXIC_ORGANIZATION_ID="org-fixture", DEIXIC_WORKSPACE_ID="ws-fixture", + DEIXIC_BASE_URL=url) + path = tmp_path / "cli.json" + command = [sys.executable, "-m", "deixic.examples.task_result"] + started = subprocess.run(command + ["start", str(path), "--body", "Return a verified result"], + env=env, capture_output=True, text=True, timeout=10) + assert started.returncode == 0, started.stderr + resumed = subprocess.run(command + ["resume", str(path)], env=env, capture_output=True, + text=True, timeout=10) + assert resumed.returncode == 0, resumed.stderr + first, second = json.loads(started.stdout), json.loads(resumed.stdout) + assert first == second + assert second["status"] == "completed" + assert len([call for call in calls if call[0] == "SubmitOperatingMessage"]) == 1 + assert "fixture-cli-secret" not in path.read_text() diff --git a/tests/test_tasks.py b/tests/test_tasks.py new file mode 100644 index 0000000..70a6ae0 --- /dev/null +++ b/tests/test_tasks.py @@ -0,0 +1,666 @@ +from __future__ import annotations + +import json +import time + +import pytest +from console.v1 import console_pb2 as pb +from deixic import Deixic, DeixicError + +from test_client import FakeResponse, FakeTransport, response + +C = 9_007_199_254_740_994 + + +def client(transport): + return Deixic( + api_key="fixture-secret", + organization_id="org-fixture", + workspace_id="ws-fixture", + base_url="https://api.deixic.test", + transport=transport, + ) + + +def accepted(): + return pb.SubmitOperatingMessageResponse( + replay_cursor=9_007_199_254_740_994, + accepted_turn=pb.OperatingThreadTurn( + turn_id="target", sequence=2, state=pb.OPERATING_TURN_STATE_QUEUED + ), + ) + + +def prepared(sdk, **options): + return sdk.tasks.prepare( + channel_id="company", + body="Create an account brief", + idempotency_key="crm-trigger-1", + **options, + ) + + +def test_response_loss_requires_explicit_replay_with_original_request(): + class LostResponse(FakeTransport): + def send(self, *args, **kwargs): + result = super().send(*args, **kwargs) + if len(self.requests) == 1: + raise ConnectionError("lost after acceptance") + return result + + transport = LostResponse([response(accepted()), response(accepted())]) + checkpoints = [] + task = prepared(client(transport), on_checkpoint=checkpoints.append) + with pytest.raises(DeixicError): + task.submit() + saved = json.loads(json.dumps(checkpoints[-1])) + assert saved["submission"] == "unacknowledged" + assert "fixture-secret" not in json.dumps(saved) + resumed = client(transport).tasks.resume(saved) + assert resumed.result().status == "unacknowledged" + assert len(transport.requests) == 1 + with pytest.raises(DeixicError): + resumed.submit() + resumed.replay() + assert transport.requests[0]["body"] == transport.requests[1]["body"] + assert resumed.checkpoint()["turnId"] == "target" + assert resumed.checkpoint()["cursor"] == "9007199254740994" + with pytest.raises(DeixicError): + resumed.replay() + + +def test_completed_result_fetches_exact_linked_message_and_receipts_across_pages(): + transport = FakeTransport( + [ + response(accepted()), + response( + pb.GetOperatingThreadResponse( + channel=pb.OperatingChannel(id="company"), + next_page_token="older", + turns=[ + pb.OperatingThreadTurn( + turn_id="target", + sequence=2, + state=pb.OPERATING_TURN_STATE_COMPLETED, + assistant_message_id="answer", + ) + ], + messages=[ + pb.OperatingMessage( + id="other-answer", + channel_id="company", + role="assistant", + body="Unrelated", + ) + ], + ) + ), + response( + pb.GetOperatingThreadResponse( + channel=pb.OperatingChannel(id="company"), + messages=[ + pb.OperatingMessage( + id="answer", + channel_id="company", + role="assistant", + body="Account brief", + receipt_ids=["evidence"], + ) + ], + ) + ), + response( + pb.GetOperatingReceiptResponse( + receipt=pb.OperatingReceipt( + id="evidence", + lifecycle_state=pb.RECEIPT_LIFECYCLE_STATE_VERIFIED, + ) + ) + ), + ] + ) + task = prepared(client(transport)).submit() + outcome = task.result() + assert outcome.status == "completed" + assert outcome.body == "Account brief" + assert outcome.message.id == "answer" + assert outcome.receipts[0].id == "evidence" + assert outcome.parse(str.upper) == "ACCOUNT BRIEF" + + +def test_checkpoint_cannot_move_between_tenants_or_origins(): + transport = FakeTransport([]) + saved = prepared(client(transport)).checkpoint() + for name in ("organizationId", "workspaceId", "baseUrl"): + changed = dict(saved, **{name: "different"}) + with pytest.raises(DeixicError): + client(transport).tasks.resume(changed) + assert not transport.requests + + +def finished(**options): + turn_options = options.pop("turn", {}) + message_options = options.pop("message", {}) + return pb.GetOperatingThreadResponse( + channel=pb.OperatingChannel(id="company"), + turns=[ + pb.OperatingThreadTurn( + **dict( + dict( + turn_id="target", + sequence=2, + state=pb.OPERATING_TURN_STATE_COMPLETED, + assistant_message_id="answer", + ), + **turn_options, + ) + ) + ], + messages=[ + pb.OperatingMessage( + **dict( + dict( + id="answer", + channel_id="company", + role="assistant", + body="Account brief", + ), + **message_options, + ) + ) + ], + **options, + ) + + +def test_retention_reset_uses_owner_execution_cursor_and_ignores_reset_events(): + events = [] + transport = FakeTransport( + [ + response(accepted()), + response( + pb.ListOperatingThreadEventsResponse( + reset_required=True, + next_cursor=C + 9, + thread_execution=pb.OperatingThreadExecution(replay_cursor=C + 2), + events=[ + pb.OperatingThreadEvent( + cursor=C + 9, + turn_id="target", + kind=pb.OPERATING_THREAD_EVENT_KIND_TURN_COMPLETED, + ) + ], + ) + ), + response(finished()), + ] + ) + task = prepared(client(transport)).submit() + assert task.wait(on_event=events.append).status == "completed" + assert task.checkpoint()["cursor"] == str(C + 2) + assert events == [] + + +def test_reconnect_retries_observation_without_resubmitting(): + transport = FakeTransport( + [ + response(accepted()), + FakeResponse(503, b'{"code":"unavailable"}'), + response(pb.ListOperatingThreadEventsResponse(next_cursor=C)), + response(finished()), + ] + ) + task = prepared(client(transport)).submit() + assert task.wait(poll_interval=0.001).status == "completed" + assert [item["url"].rsplit("/", 1)[-1] for item in transport.requests] == [ + "SubmitOperatingMessage", + "ListOperatingThreadEvents", + "ListOperatingThreadEvents", + "GetOperatingThread", + ] + + +def test_progress_callback_gets_only_new_matching_events_and_cannot_forge_result(): + own = pb.OperatingThreadEvent( + cursor=C + 2, + turn_id="target", + event_id="own", + kind=pb.OPERATING_THREAD_EVENT_KIND_PROGRESS, + ) + transport = FakeTransport( + [ + response(accepted()), + response( + pb.ListOperatingThreadEventsResponse( + next_cursor=C + 2, + events=[ + pb.OperatingThreadEvent( + cursor=C + 1, + turn_id="another", + kind=pb.OPERATING_THREAD_EVENT_KIND_TURN_COMPLETED, + ), + own, + own, + ], + ) + ), + response(finished()), + ] + ) + events = [] + + def progress(event): + events.append(event.event_id) + event.turn_id = "forged" + event.kind = pb.OPERATING_THREAD_EVENT_KIND_TURN_FAILED + + task = prepared(client(transport)).submit() + result = task.wait(on_event=progress) + assert events == ["own"] + assert result.status == "completed" + assert result.event.turn_id == "target" + assert task.checkpoint()["cursor"] == str(C + 2) + + +def test_approval_request_is_recovered_from_owner_after_restart(): + saved_transport = FakeTransport([response(accepted())]) + saved = prepared(client(saved_transport)).submit().checkpoint() + request = pb.OperatingThreadEvent( + cursor=C - 1, + event_id="approval-event", + turn_id="target", + kind=pb.OPERATING_THREAD_EVENT_KIND_APPROVAL_REQUIRED, + request_id="approval-1", + request_type=pb.OPERATING_THREAD_REQUEST_TYPE_APPROVAL, + ) + transport = FakeTransport( + [ + response( + finished( + turn=dict( + state=pb.OPERATING_TURN_STATE_WAITING, + waiting_reason=pb.OPERATING_THREAD_WAITING_REASON_APPROVAL, + first_cursor=C - 3, + ) + ) + ), + response( + pb.ListOperatingThreadEventsResponse( + next_cursor=C - 1, events=[request] + ) + ), + ] + ) + task = client(transport).tasks.resume(saved) + result = task.result() + assert result.status == "waiting" + assert result.event.request_id == "approval-1" + assert result.body is None + request = pb.ListOperatingThreadEventsRequest.FromString( + transport.requests[1]["body"] + ) + assert request.after_cursor == C - 4 + assert all("Submit" not in item["url"] for item in transport.requests) + + +def test_missing_retained_request_stays_waiting_without_inventing_approval(): + transport = FakeTransport( + [ + response(accepted()), + response( + finished( + turn=dict( + state=pb.OPERATING_TURN_STATE_WAITING, + waiting_reason=pb.OPERATING_THREAD_WAITING_REASON_APPROVAL, + ) + ) + ), + response(pb.ListOperatingThreadEventsResponse(reset_required=True)), + ] + ) + result = prepared(client(transport)).submit().result() + assert result.status == "waiting" + assert result.reason == "request_not_visible" + assert result.event is None + + +@pytest.mark.parametrize( + "bad", ["sequence", "message_id", "role", "channel", "receipt"] +) +def test_completed_results_fail_closed_on_mismatched_owner_links(bad): + page = finished() + tail = [] + if bad == "sequence": + page.turns[0].sequence = 3 + if bad == "message_id": + page.turns[0].assistant_message_id = "missing" + if bad == "role": + page.messages[0].role = "user" + if bad == "channel": + page.messages[0].channel_id = "another" + if bad == "receipt": + page.messages[0].receipt_ids.append("requested") + tail = [ + response( + pb.GetOperatingReceiptResponse(receipt=pb.OperatingReceipt(id="wrong")) + ) + ] + transport = FakeTransport([response(accepted()), response(page), *tail]) + with pytest.raises(DeixicError) as error: + prepared(client(transport)).submit().result() + assert error.value.kind == "protocol" + + +@pytest.mark.parametrize( + "state,status", + [ + (pb.OPERATING_TURN_STATE_RESPONDED, "responded"), + (pb.OPERATING_TURN_STATE_FAILED, "failed"), + (pb.OPERATING_TURN_STATE_INTERRUPTED, "interrupted"), + (pb.OPERATING_TURN_STATE_RUNNING, "unfinished"), + ], +) +def test_noncompleted_owner_states_have_no_final_answer(state, status): + transport = FakeTransport( + [response(accepted()), response(finished(turn=dict(state=state)))] + ) + result = prepared(client(transport)).submit().result() + assert result.status == status + assert result.body is None + with pytest.raises(DeixicError): + result.parse(str) + + +def test_storage_failure_prevents_submission_and_callback_failure_is_not_retried(): + transport = FakeTransport([response(accepted())]) + + def save(state): + if state["submission"] == "unacknowledged": + raise OSError("storage failed") + + task = prepared(client(transport), on_checkpoint=save) + with pytest.raises(OSError): + task.submit() + assert not transport.requests + + own = pb.OperatingThreadEvent(cursor=C + 1, turn_id="target", event_id="own") + transport = FakeTransport( + [ + response(accepted()), + response( + pb.ListOperatingThreadEventsResponse(next_cursor=C + 1, events=[own]) + ), + ] + ) + task = prepared(client(transport)).submit() + failure = DeixicError("application callback failed", kind="transport") + with pytest.raises(DeixicError) as error: + task.wait(on_event=lambda event: (_ for _ in ()).throw(failure)) + assert error.value is failure + assert len(transport.requests) == 2 + assert task.checkpoint()["cursor"] == str(C) + + +def test_cancelled_observation_does_not_interrupt_or_submit(): + transport = FakeTransport([response(accepted())]) + task = prepared(client(transport)).submit() + assert task.wait(cancelled=lambda: True).reason == "cancelled" + assert len(transport.requests) == 1 + + +@pytest.mark.parametrize( + "cancel_on", ["ListOperatingThreadEvents", "GetOperatingThread"] +) +def test_cancellation_during_read_stops_observation_without_remote_mutation(cancel_on): + class CancelDuringRead(FakeTransport): + cancelled = False + + def send(self, method, url, **kwargs): + result = super().send(method, url, **kwargs) + if url.endswith("/" + cancel_on): + self.cancelled = True + return result + + transport = CancelDuringRead( + [ + response(accepted()), + response(pb.ListOperatingThreadEventsResponse(next_cursor=C)), + response(finished()), + ] + ) + task = prepared(client(transport)).submit() + outcome = task.wait(cancelled=lambda: transport.cancelled) + assert outcome.status == "unfinished" and outcome.reason == "cancelled" + assert len(transport.requests) == ( + 2 if cancel_on == "ListOperatingThreadEvents" else 3 + ) + assert task.checkpoint()["submission"] == "accepted" + assert all("Interrupt" not in item["url"] for item in transport.requests) + + +def test_cancellation_callback_failure_is_not_a_network_error(): + transport = FakeTransport( + [ + response(accepted()), + response(pb.ListOperatingThreadEventsResponse(next_cursor=C)), + ] + ) + task = prepared(client(transport)).submit() + failure = DeixicError("application predicate failed", kind="transport") + checks = 0 + + def cancelled(): + nonlocal checks + checks += 1 + if checks == 2: + raise failure + return False + + with pytest.raises(DeixicError) as error: + task.wait(cancelled=cancelled, max_reconnect_attempts=0) + assert error.value is failure + assert len(transport.requests) == 2 + assert task.checkpoint()["submission"] == "accepted" + + +def test_deadline_caps_read_timeout_and_returns_recoverable_checkpoint(): + class SlowRead(FakeTransport): + def send(self, *args, **kwargs): + if len(self.requests) == 1: + self.requests.append(kwargs) + time.sleep(kwargs["timeout"]) + raise TimeoutError("read deadline") + return super().send(*args, **kwargs) + + transport = SlowRead([response(accepted())]) + task = prepared(client(transport)).submit() + result = task.wait(timeout=0.02) + assert result.status == "unfinished" and result.reason == "deadline" + assert 0 < transport.requests[-1]["timeout"] <= 0.02 + assert task.checkpoint()["submission"] == "accepted" + + +@pytest.mark.parametrize( + "page", + [ + pb.ListOperatingThreadEventsResponse(next_cursor=C + 2), + pb.ListOperatingThreadEventsResponse(next_cursor=C, has_more=True), + pb.ListOperatingThreadEventsResponse(reset_required=True), + pb.ListOperatingThreadEventsResponse( + next_cursor=C + 1, + events=[ + pb.OperatingThreadEvent(cursor=C + 1, turn_id="target", event_id="a"), + pb.OperatingThreadEvent(cursor=C + 1, turn_id="target", event_id="b"), + ], + ), + ], +) +def test_invalid_event_watermarks_do_not_advance_checkpoint(page): + transport = FakeTransport([response(accepted()), response(page)]) + task = prepared(client(transport)).submit() + with pytest.raises(DeixicError) as error: + task.wait() + assert error.value.kind == "protocol" + assert task.checkpoint()["cursor"] == str(C) + + +@pytest.mark.parametrize( + "name,value", + [ + ("cursor", 9_007_199_254_740_994), + ("sequence", "02"), + ("cursor", "-1"), + ("cursor", "9223372036854775808"), + ("sequence", "x"), + ("cursor", "9" * 5000), + ("projectResourceId", False), + ], +) +def test_invalid_checkpoint_coordinates_are_rejected_before_network(name, value): + transport = FakeTransport([]) + saved = prepared(client(transport)).checkpoint() + saved[name] = value + with pytest.raises(DeixicError): + client(transport).tasks.resume(saved) + assert not transport.requests + + +def test_setup_returns_owner_requirements_without_claiming_write_access(): + transport = FakeTransport( + [ + response( + pb.GetOperatingThreadResponse( + channel=pb.OperatingChannel(id="company"), + capabilities=[ + pb.OperatingCapabilityState( + service="crm", + status="unavailable", + missing_requirements=["Connect CRM"], + missing_requirement_states=[ + pb.OperatingCapabilityRequirementState( + service="crm", + reason_code="connection_missing", + remediation_ref="settings/integrations", + ) + ], + ) + ], + ) + ) + ] + ) + report = client(transport).tasks.check_setup(channel_id="company") + assert report.status == "needs_attention" + assert report.write_access == "not_checked" + assert ( + report.capabilities[0].missing_requirement_states[0].reason_code + == "connection_missing" + ) + assert len(transport.requests) == 1 + + +def test_setup_failure_has_action_and_support_reference(): + transport = FakeTransport( + [ + FakeResponse( + 403, b'{"code":"permission_denied"}', {"x-request-id": "support-1"} + ) + ] + ) + report = client(transport).tasks.check_setup(channel_id="company") + assert report.status == "error" + assert "read grants" in report.next_action + assert report.error.request_id == "support-1" + + +def test_setup_reports_owner_model_availability_without_inventing_a_route(): + transport = FakeTransport( + [ + response( + pb.GetOperatingThreadResponse( + channel=pb.OperatingChannel(id="company"), + default_model=pb.InferenceProviderTarget( + provider="fixture", + model="chosen", + ready=False, + unavailable_reason="grant_missing", + ), + ) + ) + ] + ) + report = client(transport).tasks.check_setup(channel_id="company") + assert report.status == "needs_attention" + assert report.default_model.unavailable_reason == "grant_missing" + assert report.model_selection is None + + +def test_wait_continues_past_preliminary_response_until_owner_completion(): + transport = FakeTransport( + [ + response(accepted()), + response(pb.ListOperatingThreadEventsResponse(next_cursor=C)), + response(finished(turn=dict(state=pb.OPERATING_TURN_STATE_RESPONDED))), + response(pb.ListOperatingThreadEventsResponse(next_cursor=C)), + response(finished()), + ] + ) + task = prepared(client(transport)).submit() + assert task.wait(poll_interval=0.001).status == "completed" + assert len(transport.requests) == 5 + + +def test_visible_final_answer_does_not_require_scanning_unrelated_old_history(): + page = finished(next_page_token="unrelated-old-history") + transport = FakeTransport([response(accepted()), response(page)]) + assert ( + prepared(client(transport)).submit().result(max_pages=1).body == "Account brief" + ) + assert len(transport.requests) == 2 + + +def test_selected_ready_model_is_not_blocked_by_unavailable_default(): + transport = FakeTransport( + [ + response( + pb.GetOperatingThreadResponse( + channel=pb.OperatingChannel(id="company"), + default_model=pb.InferenceProviderTarget( + provider="fixture", model="default", ready=False + ), + model_selection=pb.OperatingModelSelection( + provider="fixture", model="chosen" + ), + available_models=[ + pb.InferenceProviderTarget( + provider="fixture", model="chosen", ready=True + ) + ], + ) + ) + ] + ) + report = client(transport).tasks.check_setup(channel_id="company") + assert report.status == "accessible" + assert report.selected_model.model == "chosen" + assert report.selected_model.ready + + +def test_result_parser_failure_propagates_without_changing_completion(): + transport = FakeTransport( + [response(accepted()), response(finished(message=dict(body="invalid JSON")))] + ) + result = prepared(client(transport)).submit().result() + with pytest.raises(ValueError): + result.parse(json.loads) + assert result.status == "completed" + + +def test_invalid_acceptance_stays_unacknowledged_and_requires_explicit_replay(): + transport = FakeTransport([response(pb.SubmitOperatingMessageResponse())]) + task = prepared(client(transport)) + with pytest.raises(DeixicError) as error: + task.submit() + assert error.value.kind == "protocol" + assert task.result().status == "unacknowledged" + assert len(transport.requests) == 1 diff --git a/tests/test_test_journey.py b/tests/test_test_journey.py new file mode 100644 index 0000000..fc687cc --- /dev/null +++ b/tests/test_test_journey.py @@ -0,0 +1,56 @@ +from __future__ import annotations + +import json + +import pytest +from deixic.examples import verify_test_journey as probe + +from test_client import FakeResponse, FakeTransport + + +def values(): + return dict(DEIXIC_API_KEY="fixture-private-key", DEIXIC_ORGANIZATION_ID="org-test", + DEIXIC_WORKSPACE_ID="ws-test", DEIXIC_BASE_URL="https://platform.test", + DEIXIC_IDENTITY_API_KEY_VALIDATE_URL="https://identity.test/v1/api-keys/validate", + DEIXIC_TEST_CHANNEL_ID="sdk-test") + + +@pytest.mark.parametrize("mutation", [ + {"active": False}, + {"api_key": {"id": "key", "organization_id": "other", "scopes": ["deixic:read", "deixic:write"]}}, + {"api_key": {"id": "key", "organization_id": "org-test", "scopes": ["deixic:read"]}}, +]) +def test_identity_denial_or_wrong_grants_stop_before_platform(mutation): + document = {"active": True, "api_key": {"id": "key", "organization_id": "org-test", + "scopes": ["deixic:read", "deixic:write"]}} + document.update(mutation) + reply = FakeResponse(200, content=json.dumps(document).encode()) + transport = FakeTransport([reply]) + with pytest.raises(ValueError, match="required test-tenant key grants"): + probe.validate_identity(values(), transport) + assert reply.closed + assert len(transport.requests) == 1 + + +def test_identity_probe_self_introspects_only_its_supplied_key(): + reply = FakeResponse(200, content=json.dumps({"active": True, "api_key": { + "id": "key", "organization_id": "org-test", "scopes": ["deixic:read", "deixic:write"], + }}).encode()) + transport = FakeTransport([reply]) + assert probe.validate_identity(values(), transport) == "key" + request = transport.requests[0] + assert json.loads(request["body"]) == {"key": "fixture-private-key"} + assert request["headers"]["Authorization"] == "Bearer fixture-private-key" + assert reply.closed + + +def test_probe_requires_explicit_test_endpoints_and_tenant(monkeypatch): + for name in probe.REQUIRED: + monkeypatch.delenv(name, raising=False) + with pytest.raises(ValueError, match="Missing test-tenant configuration"): + probe.configuration() + for name, value in values().items(): + monkeypatch.setenv(name, value) + monkeypatch.setenv("DEIXIC_BASE_URL", "http://external.test") + with pytest.raises(ValueError, match="HTTPS or a loopback"): + probe.configuration()