# プロンプトと設定の管理

CURRENT_STATUS: UNKNOWN
OBSERVATION: UNOBSERVED
FRESHNESS: UNKNOWN
PAGE_TYPE: reference
CANONICAL_URL: /core/core-06
CLAIM_IDS: none
EVIDENCE_IDS: CORE-06-DOCUMENT-READBACK
UNKNOWN_IDS: CORE-06-CURRENTNESS
OPS_IDS: none

## Summary
CORE-06は、promptと周辺configurationを再構成・比較・承認・release・rollbackできるversioned entityとして管理する。目的は「prompt文字列は同じ」「昨日と同じmodel名」を再現性の証拠とせず、実際のbehaviorを変える構成要素とenvironment差を一つのrelease lineageへ結ぶことである。

## Current judgment
CORE-06は、promptと周辺configurationを再構成・比較・承認・release・rollbackできるversioned entityとして管理する。目的は「prompt文字列は同じ」「昨日と同じmodel名」を再現性の証拠とせず、実際のbehaviorを変える構成要素とenvironment差を一つのrelease lineageへ結ぶことである。

## Scope
CORE-06は、promptと周辺configurationを再構成・比較・承認・release・rollbackできるversioned entityとして管理する。目的は「prompt文字列は同じ」「昨日と同じmodel名」を再現性の証拠とせず、実際のbehaviorを変える構成要素とenvironment差を一つのrelease lineageへ結ぶことである。

含まない:

- golden dataset、scorer、judge、合否閾値の詳細（CORE-07）

- production release/change management全体（CORE-11）

- incident response全体（CORE-12）

- provider固有のGem/GPT/project/skill、UI history、share/export/rollback機能（Product Mapping）

- 組織のowner、approver、environment、retention、release window、緊急変更値（Organization Overlay）

## Confirmed

## UNKNOWN
- CORE-06-CURRENTNESS: 原資料の確定版から収録しています。外部根拠の最新性を今回の取込日で確認済みと扱いません。本文の未解決事項・残余制約を保持します。

## Evidence
- CORE-06-DOCUMENT-READBACK (IMPL): 原資料との収録照合

## Failure / limits
- CE-C06-001: provider UIやregistryにnative version history/rollbackが存在する場合、external registryの一部は重複する。ただしMLflowの現行model configのようにversion配下の値がmutableな場合があり、composite dependency、export/readback、tenant policyは別検証である。

- CE-C06-002: bundle hash一致でもbackend model、randomness、mutable source、external stateによりbehaviorは一致しない。

- CE-C06-003: composite configurationを複数registryへ分割すると、同期・権限・承認・rollbackの運用負荷が増える。

| UNKNOWN_ID | UNKNOWN | CLOSURE CONDITION |
| --- | --- | --- |
| UNK-C06-001 | 最小composite release bundle | BOUNDED_CLOSED_CORE: 常時必須groupと条件付きgroupを分離。provider/org固有fieldはPM/ORG |
| UNK-C06-002 | UI-only構成のexport/history/rollback可能性 | PUBLIC_BOUNDARY_PARTIAL: current Gemini Helpで編集/共有/Drive保存まで確認。full export/semantic diff/rollback/current digest readbackはPMでUNKNOWN |
| UNK-C06-003 | model pin不能時のequivalence test | BOUNDED_CLOSED_CORE_RULE: fixed slice反復、environment diff、acceptance envelopeを要求。hidden backend/閾値はPM/ORG/CORE-07 |
## Practice
常時必須groupはIdentity、Prompt、Model/runtime、Policy、Environment、Evaluation/releaseである。ToolとSourceはそのreleaseが各機能を使う場合に必須、Approvalはrisk/action policyが要求する場合に必須、rollback fieldsはrollbackを実行する場合に必須とする。これは普遍的なflat field setではなく、欠落時のfalse acceptanceを防ぐCore最低条件である。

| GROUP | REQUIRED FIELDS | BOUNDARY |
| --- | --- | --- |
| Identity | CONFIG_ID / VERSION / PARENT_VERSION / CREATED_AT / OWNER | mutable display nameをidentityにしない |
| Prompt | SYSTEM / DEVELOPER / USER_TEMPLATE / VARIABLES / EXAMPLES / OUTPUT_CONTRACT / PROMPT_DIGEST | rendered promptとtemplate/sourceを分離 |
| Model/runtime | PROVIDER / SURFACE / MODEL_ID_OR_ALIAS / REVISION_EVIDENCE / PARAMETERS / CONTEXT_POLICY / SEED_IF_SUPPORTED | aliasだけでbackend pinを主張しない |
| Tool | TOOL_ID / SCHEMA_VERSION / IMPLEMENTATION_VERSION / PERMISSION_PROFILE / SIDE_EFFECT_CLASS | tool名だけで互換性を仮定しない |
| Source | SOURCE_ID / AUTHORITY / CAPTURE_MODE / VERSION / DIGEST / FRESHNESS / PERMISSION_PROFILE | mutable linkとimmutable snapshotを分離 |
| Policy | SAFETY / SECURITY / ROUTING / MEMORY / RETRY / HUMAN_GATE / POLICY_VERSION | hidden provider policyはUNKNOWNで管理 |
| Environment | ENV_ID / REGION / ACCOUNT_OR_TENANT / UI_OR_API / FEATURE_FLAGS / DEPENDENCY_LOCK / SECRET_REF_VERSION | secret値自体をbundleへ埋め込まない |
| Evaluation/release | EVAL_CONTRACT_ID / EVAL_RUN_ID / ACCEPTANCE / APPROVAL_ID / RELEASE_ID / CANARY / ROLLBACK_TARGET | dataset/scorer詳細はCORE-07へ送る |
## 資料の識別情報
Source SHA-256 8999051085f827b2d4a7bb8f28b698b83f7322903e6ec702b8dd1fb2f60280d4

## Enterprise AI Core — CORE-06 Prompt & Configuration Management
PACKET_ID: PKT-GEMINI-A-CORE-06-v0.1

SECTION_ID: CORE-06

WAVE: WAVE-A

LAYER: ENTERPRISE_AI_CORE

STATUS: GEMINI_CYCLE_BOUNDED_CLOSED_V0.3

AS_OF: 2026-09-07

DEPENDENCIES: CORE-01, CORE-04, CORE-05

FROZEN_TOC: S063 v0.1

## 1. Scope boundary
CORE-06は、promptと周辺configurationを再構成・比較・承認・release・rollbackできるversioned entityとして管理する。目的は「prompt文字列は同じ」「昨日と同じmodel名」を再現性の証拠とせず、実際のbehaviorを変える構成要素とenvironment差を一つのrelease lineageへ結ぶことである。

含まない:

- golden dataset、scorer、judge、合否閾値の詳細（CORE-07）

- production release/change management全体（CORE-11）

- incident response全体（CORE-12）

- provider固有のGem/GPT/project/skill、UI history、share/export/rollback機能（Product Mapping）

- 組織のowner、approver、environment、retention、release window、緊急変更値（Organization Overlay）

## 2. Canonical concepts
| CONCEPT_ID | TERM | CORE-06での境界 |
| --- | --- | --- |
| C-PROMPT-CONFIG | Prompt configuration | system/developer/user template、variables、examples、output contract等の実行入力 |
| C-CONFIG-BUNDLE | Configuration bundle | prompt、model、tool、source、policy、runtime、environment、evaluation linkを束ねた版付きentity |
| C-VERSION | Version | immutable release identityと、その親・変更理由・互換性を示す識別子 |
| C-HASH | Hash / digest | canonical serializationされたentity bytesの同一性検査値 |
| C-OWNER | Owner | configurationの意味・運用責任を負う主体 |
| C-APPROVER | Approver | release候補を独立に承認し、差分・証拠・rollback条件を確認する主体 |
| C-RELEASE | Release | candidate bundleを特定environmentへ有効化する記録 |
| C-CANARY | Canary | 限定traffic/task sliceで候補を観測し、停止可能な段階導入 |
| C-ROLLBACK | Rollback | 既知のprior bundleとenvironmentへ戻し、readbackで復元を確認する処理 |
| C-ENVIRONMENT-DIFF | Environment diff | dev/test/prod、UI/API、region、account、feature flag等の構成差 |

## 3. Claims v0.1
1. CLAIM_ID: CLM-C06-001; CLAIM: prompt/configurationをchat本文でなく、ID/version/digest/lineageを持つmanaged entityとして扱う; EVIDENCE CLASS: DIRECT_SPAN + STANDARD + OSS; CURRENT SUPPORT: S021/S039/S042/S044; SPDX/CycloneDX; MLflow/Phoenix; STATUS: BOUNDED_SUPPORTED

2. CLAIM_ID: CLM-C06-002; CLAIM: release bundleは常時必須groupと、使用時に必須となるtool/source/approval/rollback groupを明示的に束ねる; EVIDENCE CLASS: DIRECT_SPAN + STANDARD + ABLATION; CURRENT SUPPORT: S040/S042/S044/S045/S050; TST-C06-06; STATUS: BOUNDED_CORE_MINIMUM

3. CLAIM_ID: CLM-C06-003; CLAIM: digestはcanonical bytesの同一性を検査するが、provider backend、randomness、external stateを含むbehavior再現を保証しない; EVIDENCE CLASS: COUNTEREVIDENCE + DRIFT_RESEARCH + TEST; CURRENT SUPPORT: CE-C06-002; S039/S049; TST-C06-08; STATUS: BOUNDED_CLOSED_CORE

4. CLAIM_ID: CLM-C06-004; CLAIM: owner、approver、change reason、risk、evidence、approval digestをrelease ledgerへ記録し、承認後のbundle変更で承認を失効させる; EVIDENCE CLASS: DEPENDENCY + CONTRACT; CURRENT SUPPORT: CORE-05 canonical approval binding; STATUS: EVIDENCE_CARRY

5. CLAIM_ID: CLM-C06-005; CLAIM: dev/test/prodおよびUI/API等のenvironment diffをrelease前にmaterializeし、未説明差をblockする; EVIDENCE CLASS: FROZEN_MANIFEST + CONTRACT; CURRENT SUPPORT: S040/S044/S056 manifest; local diagnostic; STATUS: INITIAL_BOUNDED_RULE

6. CLAIM_ID: CLM-C06-006; CLAIM: model alias、unpinned tool/schema、mutable source、hidden UI editはconfiguration driftとして検知対象にする; EVIDENCE CLASS: DIRECT_SPAN + OSS_COUNTEREXAMPLE + FAILURE_SIGNAL; CURRENT SUPPORT: S039/S042/S049; MLflow mutable model config; Gemini Help/community signals; STATUS: BOUNDED_SUPPORTED

7. CLAIM_ID: CLM-C06-007; CLAIM: releaseはcandidate configだけでなく、評価run/dataset/scorer/rubricのversioned referenceとacceptance decisionへlinkする; EVIDENCE CLASS: FROZEN_MANIFEST + DEPENDENCY; CURRENT SUPPORT: S045/S050 manifest; CORE-01 completion contract; STATUS: INITIAL_SYNTHESIS

8. CLAIM_ID: CLM-C06-008; CLAIM: canaryはtraffic/task slice、stop condition、observation window、fallbackを持ち、全体releaseと別stateで記録する; EVIDENCE CLASS: FROZEN_MANIFEST + CONTRACT; CURRENT SUPPORT: S040/S051 manifest; STATUS: INITIAL_SYNTHESIS

9. CLAIM_ID: CLM-C06-009; CLAIM: rollbackは単なる旧prompt貼付でなく、prior bundle、environment、dependency availability、data/schema compatibility、readbackを検証する; EVIDENCE CLASS: FROZEN_MANIFEST + DEPENDENCY; CURRENT SUPPORT: S040/S041 manifest; CORE-03/05 recovery contract; STATUS: INITIAL_BOUNDED_RULE

10. CLAIM_ID: CLM-C06-010; CLAIM: UI-only構成で完全export/history/rollbackが得られない場合、external registry、immutable export、manual ledger、sentinel suiteへ縮退する; EVIDENCE CLASS: DIRECT_SPAN + ALTERNATIVE + PRODUCT_BOUNDARY; CURRENT SUPPORT: S044/S049/S050; current Gemini Help; STATUS: ROUTED_PM_ORG

## 4. Source manifest boundary
Primary manifestはS021/S039/S040/S042/S044/S045/S048/S049/S050/S055/S056/S063、contextはS003/S007/S015/S019/S020/S029/S041/S051。S021/S039/S040/S042/S044/S045/S048/S049/S050のclaim-level direct spanはDrive正本1w88Q77mHlXsYm22v6VtwKeX-G-WkMwQAAIdje4DxLKc（modified 2026-09-05T00:26:29.993Z）から回収した。S063内のS050–S055説明と実在見出しの不一致はPROV-FIND-001を継承する。

## 5. Dependency handoff
- CORE-01: configuration bundleをversioned artifactとして扱い、declared source、completion contract、readbackと結ぶ。

- CORE-04: model/tool/source/state route descriptorをbundleへ固定し、aliasやadapter revisionを同値routeとみなさない。

- CORE-05: approvalはcanonical candidate digestへbindし、変更後の旧承認を再利用しない。

## 6. Configuration bundle schema
常時必須groupはIdentity、Prompt、Model/runtime、Policy、Environment、Evaluation/releaseである。ToolとSourceはそのreleaseが各機能を使う場合に必須、Approvalはrisk/action policyが要求する場合に必須、rollback fieldsはrollbackを実行する場合に必須とする。これは普遍的なflat field setではなく、欠落時のfalse acceptanceを防ぐCore最低条件である。

| GROUP | REQUIRED FIELDS | BOUNDARY |
| --- | --- | --- |
| Identity | CONFIG_ID / VERSION / PARENT_VERSION / CREATED_AT / OWNER | mutable display nameをidentityにしない |
| Prompt | SYSTEM / DEVELOPER / USER_TEMPLATE / VARIABLES / EXAMPLES / OUTPUT_CONTRACT / PROMPT_DIGEST | rendered promptとtemplate/sourceを分離 |
| Model/runtime | PROVIDER / SURFACE / MODEL_ID_OR_ALIAS / REVISION_EVIDENCE / PARAMETERS / CONTEXT_POLICY / SEED_IF_SUPPORTED | aliasだけでbackend pinを主張しない |
| Tool | TOOL_ID / SCHEMA_VERSION / IMPLEMENTATION_VERSION / PERMISSION_PROFILE / SIDE_EFFECT_CLASS | tool名だけで互換性を仮定しない |
| Source | SOURCE_ID / AUTHORITY / CAPTURE_MODE / VERSION / DIGEST / FRESHNESS / PERMISSION_PROFILE | mutable linkとimmutable snapshotを分離 |
| Policy | SAFETY / SECURITY / ROUTING / MEMORY / RETRY / HUMAN_GATE / POLICY_VERSION | hidden provider policyはUNKNOWNで管理 |
| Environment | ENV_ID / REGION / ACCOUNT_OR_TENANT / UI_OR_API / FEATURE_FLAGS / DEPENDENCY_LOCK / SECRET_REF_VERSION | secret値自体をbundleへ埋め込まない |
| Evaluation/release | EVAL_CONTRACT_ID / EVAL_RUN_ID / ACCEPTANCE / APPROVAL_ID / RELEASE_ID / CANARY / ROLLBACK_TARGET | dataset/scorer詳細はCORE-07へ送る |

## 7. Version / owner / approval ledger
| FIELD | REQUIREMENT |
| --- | --- |
| BUNDLE_VERSION / DIGEST / PARENT | immutable identityとlineageを固定 |
| AUTHOR / OWNER / APPROVER | 作成、運用責任、独立承認を分離 |
| CHANGE_REASON / RISK / AFFECTED_TASKS | 変更意図とblast radiusを記録 |
| DIFF / MIGRATION / COMPATIBILITY | promptだけでなく全component差を表示 |
| EVIDENCE / EVAL_RUN / APPROVAL_DIGEST | release判断をcandidate bytesへbind |
| STATUS / ACTIVATED_AT / RETIRED_AT | draft/candidate/canary/active/retired/revokedを分離 |

## 8. Environment diff
| DIMENSION | EXAMPLE DIFFERENCE | DEFAULT DECISION |
| --- | --- | --- |
| model | pinned ID vs moving alias | unexplained alias changeはblock/UNKNOWN |
| runtime | temperature、tool mode、context limit | material differenceとして再評価 |
| tool/schema | implementation/schema/permission差 | compatibility未証明ならblock |
| source | snapshot/version/freshness/ACL差 | current authorityを再取得 |
| surface | UI vs API vs batch/agent runtime | 同値environmentとみなさない |
| tenant/region | feature/policy/data boundary差 | Organization Overlay値を要求 |
| dependency | SDK/runtime/parser version差 | lockまたはcompatibility testを要求 |

## 9. Release / canary / rollback linkage
CANDIDATE_BUNDLE -> EVAL_CONTRACT/RUN -> APPROVAL_DIGEST -> CANARY_RELEASE -> OBSERVATION/STOP -> ACTIVE_RELEASE

rollbackはFAILED_RELEASE_ID / OBSERVED_FAILURE / TARGET_BUNDLE_ID+DIGEST / TARGET_ENVIRONMENT / DEPENDENCY_READINESS / DATA_OR_SCHEMA_COMPATIBILITY / EXECUTOR / RECEIPT / READBACK / FINAL_ACCEPTANCEを記録する。prior digest一致だけでは、廃止model、変化したexternal source、非可逆migration、provider backend差を元に戻せない。

## 10. Failure modes and safe alternatives
- prompt drift: UI/manual editやvariable/default変更をledger外で実施。

- hidden UI edit: current rendered configをexport/readbackできず、declared versionと実値が乖離。

- stale source: promptは同じでもsource link/indexが更新・失効。

- unpinned model:同じaliasが異なるbackend revisionを指す。

- missing tool/schema version: call shape/permission/side effectが変化。

- rollback without evidence:旧promptへ戻しただけでdependency/source/environmentを確認しない。

- split configuration overhead: registryとUI、source/tool設定が分散し、同期漏れが増える。

MLflow Prompt Registryはprompt versionをimmutableにできる一方、現行文書ではprompt versionに結びつくmodel configを作成後も変更できる。このためnative version番号だけをcomposite bundle identityにしない。Phoenixのprompt/evaluator versionも有用なcomponent provenanceだが、tool/source/policy/environmentまで自動的に固定する証拠ではない。Gemini HelpはGemのinstructions/Knowledge編集、共有、Drive保存、参照Drive fileの最新内容反映を示すが、reviewed public Helpだけではfull config export、semantic diff、rollback、current composite digest readbackを閉じない。

safe alternativesはexternal registry/Git、immutable export、manual change ledger、sentinel suite、draft-only、fixed compatibility matrixとする。export不能な値は「同一」と推定せずUNOBSERVABLE_PRODUCT_CONFIGURATIONとして扱う。

## 11. Acceptance tests
| TEST_ID | TEST | PASS CONDITION | CURRENT RESULT |
| --- | --- | --- | --- |
| TST-C06-01 | config reconstruction | bundleだけから全declared componentとlineageを再構成 | PASS_LOCAL_DIAGNOSTIC |
| TST-C06-02 | hash/manifest completeness | canonical digest一致、required component欠落を拒否 | PASS_LOCAL_DIAGNOSTIC |
| TST-C06-03 | environment parity | model/tool/source/runtime差を列挙し、未説明material差をblock | PASS_LOCAL_DIAGNOSTIC |
| TST-C06-04 | rollback | prior bundle/digest/environment/compatibility/readbackを要求 | PASS_LOCAL_DIAGNOSTIC |
| TST-C06-05 | unapproved change detection | approval後変更でdigest mismatchとなりrelease拒否 | PASS_LOCAL_DIAGNOSTIC |
| TST-C06-06 | required-field ablation | 常時必須group欠落を拒否し、tool/source/approval/rollbackを条件付き必須として判定 | PASS_LOCAL_DIAGNOSTIC |
| TST-C06-07 | mutable nested configuration | 同じnative versionでもmodel config等の下位値変更でcomposite digestが変わる | PASS_LOCAL_DIAGNOSTIC |
| TST-C06-08 | alias drift / bounded compatibility | digest一致や単発sampleだけで互換とせず、固定slice反復とenvironment差説明を要求 | PASS_LOCAL_DIAGNOSTIC |

tests/CORE-06_config_release_contract_fixture_v0.1.pyは7/7、tests/CORE-06_config_ablation_alias_drift_fault_v0.1.pyは19/19で期待観測に一致した。後者はfield ablation、同一version内のmutable subfield、moving alias、単発sampleの不十分性、固定slice反復、未説明environment差を検査する。いずれもsynthetic provider-neutral decision ruleであり、provider UI/API、実prompt、secret、source、toolは操作せず、製品保証には昇格させない。

## 12. Counterevidence and UNKNOWNs
- CE-C06-001: provider UIやregistryにnative version history/rollbackが存在する場合、external registryの一部は重複する。ただしMLflowの現行model configのようにversion配下の値がmutableな場合があり、composite dependency、export/readback、tenant policyは別検証である。

- CE-C06-002: bundle hash一致でもbackend model、randomness、mutable source、external stateによりbehaviorは一致しない。

- CE-C06-003: composite configurationを複数registryへ分割すると、同期・権限・承認・rollbackの運用負荷が増える。

| UNKNOWN_ID | UNKNOWN | CLOSURE CONDITION |
| --- | --- | --- |
| UNK-C06-001 | 最小composite release bundle | BOUNDED_CLOSED_CORE: 常時必須groupと条件付きgroupを分離。provider/org固有fieldはPM/ORG |
| UNK-C06-002 | UI-only構成のexport/history/rollback可能性 | PUBLIC_BOUNDARY_PARTIAL: current Gemini Helpで編集/共有/Drive保存まで確認。full export/semantic diff/rollback/current digest readbackはPMでUNKNOWN |
| UNK-C06-003 | model pin不能時のequivalence test | BOUNDED_CLOSED_CORE_RULE: fixed slice反復、environment diff、acceptance envelopeを要求。hidden backend/閾値はPM/ORG/CORE-07 |

## 13. Evidence closure and question decisions
- Q-C06-001: Coreでは常時必須groupと条件付きgroupまでbounded close。SPDX/CycloneDXはcomponent/build/provenance表現を支えるが、辞典独自の一律field数を標準由来とは主張しない。

- Q-C06-002: Gemini公開境界はGemの編集、Knowledge、共有、Drive保存までpartial close。full composite export、semantic diff、rollback、current digest readbackはPM-GEMINI-CORE-06、tenant運用値はORG-CORE-06へ送る。公開Helpに記載が見当たらないことを不存在証明にしない。

- Q-C06-003: digest identityとbehavioral compatibilityを分離し、moving aliasでは固定sentinel/task sliceの反復、環境差説明、acceptance envelopeを要求するCore ruleまでbounded close。hidden backend buildと普遍的閾値はUNKNOWNを維持する。

NEXT_PACKET_ACTION: S063 Frozen TOCのCORE-07を起票する。後発provider mappingまたはCore変更時だけCORE-06を遡及監査する。

## GPT Product Mapping handoff — 2026-09-09
PM-GPT-CORE-06-v0.1は、OpenAI reusable prompt objectsの2026-06-03 deprecation／2026-11-30 shutdown予定、code-managed promptへの移行、Agents SDK v0.22.0の移行期adapter、prompt config validation failure signalをCore契約へ対応づけた。prompt object、code commit、SDK adapterをcomposite releaseまたはbehavior同値へ昇格しない。Core claimは変更せず、migration inventory・tenant・deployment・release値はOrganization Overlayへ移送した。

## Claude Product Mapping handoff — 2026-09-09
PM-CLAUDE-CORE-06-v0.1は、Claude API/UI/Agent SDK/Claude Codeを分離し、minimal/preset/custom system prompt、settingSources、settings precedence/merge、CLAUDE.md/skills、structured outputs、prompt cache、local/cloud差をeffective composite releaseへ対応づけた。Agent SDK Python v0.2.152／commit a8b1e28／bundled CLI 2.1.259を固定anchorとし、過去修正とoperator issueは回帰試験意図に限定した。同一model ID、cache hit、schema hashをbehavior同値へ昇格しない。Core claimは変更せず、live configurationとOrganization値を移送した。

## Grok Product Mapping handoff — 2026-09-12
PM-GROK-CORE-06-v0.1は、xAI request prompt、model alias/latest/date pinとredirect、client/server/MCP tool、Collections/file source、structured-output schema、prompt cache、stored continuation、release-note driftを別componentとしてcomposite releaseへ対応づけた。cache hit、response ID、schema conformance、slug/API互換をconfiguration identity、behavior同値、rollback成功へ昇格しない。既存7/7・19/19はCOMPILER_EXPERIMENTのまま保持する。Core claimは変更せず、live effective bundle、独立実運用、Organization値を移送したため、Gemini/GPT/Claude遡及監査は不要である。

NEXT: /agent/start.json
STOP: This is a knowledge projection, not an execution order.