VibePackr Enterprise · Part.4
Part.4 · Contract and Document authoring
Guide connections, workflow and input/output map
First-use checkpoint and return points
- Start here
- First read the source-only quality-document.json; then open a separate working copy of the full read-only-custom-api.json envelope.
- Have ready
- A UTF-8 plain-text editor, the complete synthetic files, and published target references for the chosen release. A text worksheet or excerpt is not a machine request.
- Expected exercise result
- Keep the source object in draft.source; retain definition, mapping, fixture and request identity. Record syntax separately from Helper semantic validation.
Exercise and next steps
Open the relevant failure case
How to read numbers and file names
Part.1–8 identifies the current tool manuals. W1–W4 and codes such as GUI-01 identify exercises inside a Part. Use Case 1–5 is a separate retained procedure sequence, not the Part numbering. Case A–J and codes such as SDK-1 or IH-1 identify troubleshooting scenarios. Older filenames and pN section IDs remain valid bookmarks; read the page heading for the current Part number.
Exercise files: check the role before saving
Distinguish source-only JSON, complete requests and intentional errors. TXT files are human worksheets, not profiles, API inputs or GAPE manifests. If a file opens in the browser, save it with the correct extension and UTF-8.
Before starting: file roles, paths and shell
Save the exercise files at the beginning of this manual into a fresh workspace and check their roles. TXT worksheets are human notes, not client profiles, API requests or GAPE manifests. Distinguish source-only JSON, complete requests and intentional type-error examples too.
Use bash for macOS/Linux and PowerShell for Windows. Do not copy prompts. Replace /absolute/path, C:\absolute\path and bracketed values with actual supplied values first; retain quotes. Commands using variables need the setup shell. In a new shell restore paths only, without overwriting old outputs/logs. Long code and tables scroll horizontally.
Company connection/enrollment, approval, supported Packs, published targets and approved manifests require actual supplied material at their relevant steps. Do not invent IDs, screen names or addresses. Read each W section's success and failure/return criteria, then perform one step at a time.
W1 · DOC-01: save, parse and read the complete source JSON
Save quality-document.json from the exercise files into a fresh private folder. If it opens in the browser, use Save As and check against an accidental .json.txt extension. Reopen as UTF-8 plain text. This is source only, not a full Helper/SDK request.
document_path="/absolute/path/quality-document.json"
python3 -m json.tool "$document_path"$documentPath = 'C:\absolute\path\quality-document.json'
$document = Get-Content -LiteralPath $documentPath -Raw -Encoding UTF8 -ErrorAction Stop | ConvertFrom-Json -ErrorAction Stop
$document.operations.read_quality | Format-List
Get-FileHash -LiteralPath $documentPath -Algorithm SHA256The macOS/Linux command assumes Python 3 is already available. Windows can use built-in ConvertFrom-Json. Parsing checks syntax, not product semantics, every duplicate key or unsupported schema.
| Location in the actual file | Supplied value | Meaning |
|---|---|---|
| document_kind | CUSTOM_API | Source format |
| operations.read_quality.input_schema | resource string, required resource | Source operation input |
| operations.read_quality.output_schema | component/score strings | Declared source response |
Complete: the file parses and you have read these declarations. Failure: correct line/column punctuation or encoding errors, then parse the same file again. Do not submit this source-only file to a tool requiring a complete request.
W2 · DOC-02: review properties, required and mapping together
Intent: resource → resource_name
Check 1: exact replacement for properties.resource
Check 2: required contains that same name
Check 3: impact on full request mapping/published target
Check 4: new source remains within supported schema
Result: record syntax separately from Helper semanticsThis is a change-review note, not a complete new API request. Preserve the original and edit a copy. Valid syntax with required: ["resource"] still has a name mismatch. Do not fabricate a schema digest; evaluate the new request through supplied normalization/validation. Return to preparation once the actual refused declaration is resolved.
W3 · DOC-03: place the source object in the correct envelope slot
Supplied read-only-custom-api.json is a complete synthetic request example. Open the whole file and separate three layers.
| Layer | Actual file fields | Before changing |
|---|---|---|
| Request identity | request_id/correlation_id | Release-supported request shape |
| draft.source | Object matching quality-document.json | Not a path or double-encoded string |
| draft.definition/mapping/fixture | Target/transform/synthetic response | Published target, supported transform, synthetic scope |
To practise the envelope edit without losing fields:
- Preserve both originals. Save a new complete request copy as
request-02.jsonin your private workspace. - In that copy locate
draft.source. Replace only its object value with the complete object fromquality-document.json, from its opening{to matching closing}. Keep it an object, without wrapping the JSON in quotes or substituting a path. - Keep
request_id,correlation_id,draft.definition,draft.mappinganddraft.fixturefrom the supplied full request. For this first copy exercise the supplied source objects already match; no new target or digest is required. - Save UTF-8 and parse the full
request-02.json, using the parser command from W1 with that actual path. This proves syntax only. Return to Part.3B for Helper validation before treating the edited request as prepared.
Source score is a string; example target quality_score is integer, using supported STRING_TO_INTEGER. The logical expectation for score: "88" is integer 88. This is neither a real API response nor a CLI execution log. Do not guess new target IDs, adapter revisions or digests from the example. Stop at missing target provisioning for a different release.
W4 · DOC-04: hand over a reviewable file set
source/quality-document.json source-only document
request.json working copy of full supplied request
notes.txt change reason, target, check state
results/ only checks actually executedThis is a workspace layout illustration. Record actual file digests, syntax and any Helper results separately: e.g. Syntax checked / semantics not executed / registration not performed. Exclude keys/tokens/customer responses. Stop sharing if sensitive data is present and follow organizational response procedures. The recipient must distinguish the full request from source excerpts.
More exercises and checklists
Reading sequence
Check inputs → choose a task → use the detailed first exercise/commands below → inspect results → modify/repeat → follow the relevant failure case. Part numbers are not a mandatory installation sequence; choose only needed tools.
Prerequisites and input
UTF-8 editor, complete source JSON below and an OS parser. Semantics additionally need a full request and published target.
Both online and offline environments remain available. The optional SDK Rust set provisions SDK builds in closed on-premises environments; it is not a product default. Use actual supplied company endpoints, approval and enrollment material where an exercise needs them.
Find an exercise or case
| Exercise | Task |
|---|---|
| DOC-01 | Declare a read-only quality operation |
| DOC-02 | Trace the impact of renaming a field |
| DOC-03 | Separate a target Contract from source description |
| DOC-04 | Prepare a review record with synthetic data |
Exercise DOC-01 · Declare a read-only quality operation
read_quality accepts a resource string and returns component/score strings. Author the full source Document without calling a server.
Actions:
- Save the complete JSON below as a fresh UTF-8 quality-document.json.
- Read input/output properties and required under operations.read_quality.
- Parse it using the OS-specific syntax check and retain its digest.
- Insert the object into draft.source of a complete request with published target references, then hand to Helper.
Read the result: Valid source JSON and a syntax result; target semantics are checked separately in Part.3.
Failure and next branch: Fix JSON line/column errors; without a complete request, record source preparation only.
Retain: Source revision/digest, syntax, target and request availability.
Your exercise record: fill in time, version, input reference, actual actions, observed result and next owner. Do not copy expected outcomes into an execution success record.
Exercise DOC-02 · Trace the impact of renaming a field
You want resource renamed to resource_name. A name-only change can break required fields, mapping and target compatibility.
Actions:
- Preserve the original and state the purpose in a new input copy.
- Review properties/required together and check explicit request mapping for the name.
- Check syntax, then read refused fields through supplied normalization/semantic validation.
- Prepare only a supported new request and distinguish old inputs/results.
Read the result: A changed declaration bound to affected mapping and validation results.
Failure and next branch: Do not edit schema digests to force acceptance; retain unsupported extensions as implementation-needed.
Retain: Before/after names, required/mapping, request revision, parsing/semantic results.
Your exercise record: fill in time, version, input reference, actual actions, observed result and next owner. Do not copy expected outcomes into an execution success record.
Exercise DOC-03 · Separate a target Contract from source description
Source score is a string and published target quality_score is an integer. Separate human description, supplier target and explicit transformation.
Actions:
- Obtain actual contract_id/revision and adapter_id/revision from the supplied inventory.
- Compare returned source types with required target types.
- Choose only supported transforms such as the supplied STRING_TO_INTEGER example and review synthetic responses.
- Validate the complete request semantically; a source document title is not a Contract ID.
Read the result: Exact target references and validated supported mapping, not issuance of a new product Contract.
Failure and next branch: Hand missing targets or unsupported transforms to supplier/implementation owners.
Retain: Source/target types, target revision, transform declaration and validation reason.
Your exercise record: fill in time, version, input reference, actual actions, observed result and next owner. Do not copy expected outcomes into an execution success record.
Exercise DOC-04 · Prepare a review record with synthetic data
Prepare reproducible input for a colleague using declarations and synthetic examples, without real tokens/customer responses.
Actions:
- Separate source Document, full request copy, target references and change reason.
- Review examples/descriptions/defaults/attachments for secrets or customer content.
- Bind syntax and any actual Helper/SDK results to their respective input digests.
- Label executable full requests versus illustrative excerpts, including pending semantic checks/approval.
Read the result: A minimal record identifying the next input and last verified stage.
Failure and next branch: If sensitive content is present, stop sharing and follow the organization's response procedure.
Retain: File kind/revision/digest, synthetic scope, performed checks and pending items.
Your exercise record: fill in time, version, input reference, actual actions, observed result and next owner. Do not copy expected outcomes into an execution success record.
Repeat, modify and resume after failure
Preserve earlier input/version/validation/results and distinguish a new input or revision. Use fresh output paths for SDK/GAPE; retain product-returned candidate revisions for Builder. Helper commands take the same complete request rather than the preceding result. Query an existing ID first when Work is running or uncertain.
After closing a terminal, restore absolute paths and the selected environment. Recheck affected stages and hand over pending company authority, registration or approval as pending. Support records use minimal messages/shareable references, without bulk private keys, raw prompts, customer responses or full logs.
Detailed commands, inputs and troubleshooting sources
The following detailed guides share the same maintained documentation source. Use their first exercises, complete JSON, OS-specific commands, file inspection and symptom cases. Cross-Part references lead to the appropriate manual.
Full workflow and skip conditions
Contract & Document: declare an operation and match a supported target
Contract & Document: declare an operation and match a supported target
Detailed section contents
First Document exercise: save a file and hand it to Helper
Goal: save the complete source Document below as quality-document.json and check syntax. This file contains a source declaration only; it is not a complete SDK/Helper request or GAPE manifest.
- Create an organization-approved fresh working folder and open a text editor. Copy only the JSON block from its opening
{through the final}. Do not include code fences or thejsonlabel. - Save as
quality-document.json, UTF-8. Use plain text rather than a Word/formatted document; check for an accidental.json.txtsuffix. Reopen the saved file and confirmoperations.read_qualityexists. - Use the command below when Python 3 is already available on macOS/Linux. Windows can use PowerShell's built-in JSON parser; this exercise does not require installing Python.
- After parsing, compare resource/component/score in
propertieswith theirrequiredlists. This review and JSON parsing do not replace product semantic validation. - Preserve an original copy, then place the object into
draft.sourceof the supplier's complete request. Do not insert a file-path string or double-encoded JSON string. Check target references, mapping and fixture separately in the supplied request, then follow Helper's first exercise.
document_path="/absolute/path/quality-document.json"
python3 -m json.tool "$document_path"$documentPath = 'C:\absolute\path\quality-document.json'
Get-Content -LiteralPath $documentPath -Raw -Encoding UTF8 -ErrorAction Stop | ConvertFrom-Json -ErrorAction Stop | Format-List
Get-FileHash -LiteralPath $documentPath -Algorithm SHA256Expected result: the parser displays an object without a parsing error. On syntax errors inspect the reported line/column, commas, quotes and braces. This parser does not adjudicate every duplicate key or unsupported product schema. Record syntax checked / Helper semantic validation not executed, and add actual Helper results separately.
Small edit exercise: renaming an input requires reviewing properties, required, explicit request mappings and the supported target together. Check the supplied original once before editing. DOC-1/2 cover name mismatch and incomplete requests.
Decide which artifact you are editing
| Artifact | Example field | Meaning |
|---|---|---|
| Planning brief | “Read one service health state” | Human goal; not parser input |
| Source Document | document_kind: CUSTOM_API | Declared source operation and input/output shape |
| Target reference | contract_id, contract_revision, adapter_id | Values copied from a supported supplier release |
| Complete request envelope | request_id, correlation_id, draft | Machine request; contains the source Document in draft.source |
| Typed result | status, reason, next_required_actions | Product preparation decision; not execution authority |
Build a bounded source Document
- Write a short goal and the operation's data boundary. Example:
read_qualityaccepts a resource name and returns a component name and quality score as strings. It does not change the resource. - In the supported CUSTOM_API format, set
document_kindtoCUSTOM_API, use the supportedprotocol_revisionvalue, and placeread_qualityunderoperations. Declareinput_schemaas an object with a requiredresourcestring. Declareoutput_schemaas an object with requiredcomponentandscorestrings. Copy the complete example below for punctuation and nesting; these inline field names are an explanation, not a full JSON file. - Keep property names and
requiredlists consistent. The bounded example accepts only supported primitive fields; nested objects, arrays, extra JSON Schema keywords, duplicate keys, and comments are not silently accepted. Never put a credential or sample production response into schema defaults or descriptions. - Check JSON syntax on a local copy, for example with
python3 -m json.tool quality-document.json. A syntax PASS proves only that JSON parsed. Preserve the original document and its digest when making a correction. - Obtain the exact published capability, Contract, adapter, operation and revision identifiers. Put those references in the release-defined request envelope, not inside the standalone source Document. Then follow the Integration Helper preparation path.
Complete source Document example
The CUSTOM_API example below declares a read-only read_quality operation. It does not call a live API or create a product Contract. Save the JSON as quality-document.json; put it under draft.source in the complete request supplied for your release and provide a compatible supported target reference.
{
"document_kind": "CUSTOM_API",
"protocol_revision": "1",
"operations": {
"read_quality": {
"input_schema": {
"type": "object",
"properties": {"resource": {"type": "string"}},
"required": ["resource"]
},
"output_schema": {
"type": "object",
"properties": {
"component": {"type": "string"},
"score": {"type": "string"}
},
"required": ["component", "score"]
}
}
}
}python3 -m json.tool quality-document.json > /dev/null
sha256sum quality-document.jsonThe first command proves JSON syntax only. Use shasum -a 256 quality-document.json on macOS or Get-FileHash -Algorithm SHA256 quality-document.json in PowerShell. The Helper's typed validation still decides whether the full envelope, target and mapping are acceptable.
Worked example: valid JSON, wrong target revision
The source document parses and discovery accepts read_quality. The request references an adapter revision from a different release. Normalization refuses the target. Compare the release manifest and supplier reference; correct the target revision in a new request only if an approved compatible value exists. Changing the source operation name to force a match would conceal the actual mismatch.
Worked example: a field is renamed without updating required
An editor changes the input property from resource to resource_name but leaves required: ["resource"]. The document is syntactically valid JSON but semantically inconsistent. Restore the property or update the required list, then re-run the exact local parser and Helper validation. Do not treat a successful syntax check as Contract validation.
Completion evidence
Keep the source Document revision and digest, exact published target references, request identity, typed Helper result, and remaining approval owner. Do not call the declaration “connected” until actual authenticated registration and runtime evidence exists; do not call it “executed” without Work and receipt.
A practical operational use case
Suppose a read-only quality query needs one additional output field. Separate the human goal, source schema, target reference and full request envelope. Review output properties, required fields, synthetic response and explicit mapping together. Retain unsupported schema extensions as implementation requirements; a customer document does not replace a product-issued Contract.
Symptom-specific checks and return to operation
| Symptom or situation | Facts to check separately | Action and result to recheck |
|---|---|---|
| JSON parses but semantic validation refuses | Property/required alignment, types and supported schema subset | Record parsing and semantic checks separately; correct the specifically refused declaration. |
| A source-field change no longer matches the mapping digest | Source revision, schema digest and mapping target | Prepare the changed request through supplied normalization/validation; do not edit just the digest. |
| A document includes live tokens or customer responses | Sensitive content in defaults, descriptions, examples and attachments | Stop sharing and create new synthetic inputs; follow organizational exposure handling. |
Minimum handover to the next owner
Handover: source Document revision/digest, envelope revision, published Contract/adapter references, mappings, synthetic inputs/expected outputs, parsing/semantic results and change reason. Distinguish an unfilled template from a complete executable request.
Read the tool-specific troubleshooting examples
These teaching examples use documented input, command and authority boundaries. Read them alongside actual product states/reasons; do not treat illustrative outcomes as execution history. Distinguish checks shared by online/offline environments from checks specific to the optional dependency route.
Worked scenario DOC-1: A property is renamed while required stays unchanged
Situation: The input property resource is renamed resource_name, but required still lists resource. JSON parsing can succeed while the declaration is semantically inconsistent.
Read these observations separately.
- Syntax: JSON parsing succeeds.
- Declaration: properties and required name different fields.
- Target/mapping: source-change effects need separate checking.
Check and action sequence:
- Retain the complete Document and original revision/digest.
- Establish the intended field and align property/required/explicit mapping within supported coverage.
- Perform and distinguish local JSON parsing and Helper semantic validation.
Condition for resuming: Use the changed request for preparation only after both parsing and semantic validation are confirmed.
If still unresolved: Retain unsupported schema extensions as implementation requirements instead of silently accepting them.
Worked scenario DOC-2: A source Document excerpt is used as a full request
Situation: A user saves a short CUSTOM_API example and sends it to Helper/SDK. The source description may be valid, but it is not the complete envelope containing request identity, targets, mappings and fixture.
Read these observations separately.
- Source Document: input for draft.source.
- Full request: needs request_id/correlation_id/draft and supported references.
- Excerpt: explains fields; it is not a complete executable input.
Check and action sequence:
- Obtain the supplied version-matched full request template and retain its original.
- Populate source/target/mapping/fixture in their defined locations without secrets or live customer responses.
- After parsing, use product analyze or Helper stage decisions for semantic checks.
Condition for resuming: Proceed to preparation only with a complete request and published target validated within supported coverage.
If still unresolved: Do not guess explanatory values as real target identifiers when required references are unavailable.
첫 사용 점검·복귀 지점
- 시작 지점
- 소스 전용 quality-document.json을 읽고 전체 read-only-custom-api.json의 별도 작업 사본을 엽니다.
- 필요한 준비물
- UTF-8 편집기·완전한 합성 파일·해당 릴리스의 게시 대상이 필요합니다. 메모 양식·발췌는 기계 요청이 아닙니다.
- 확인할 실습 결과
- 소스를 draft.source 객체로 넣고 definition·mapping·fixture·요청 신원을 유지합니다. 문법과 Helper 의미 검증은 따로 기록합니다.
실습·다음 단계
실패 시 바로 열기
번호·파일 이름 읽는 법
Part.1~8은 현재 도구별 매뉴얼, W1~W4와 GUI-01 같은 코드는 그 안의 실습입니다. Use Case 1~5는 보존한 작업 안내 번호이며 Part 번호와 다릅니다. Case A~J와 SDK-1·IH-1 같은 코드는 문제 해결 사례입니다. 이전 파일 이름과 pN 절 주소는 기존 북마크용으로 유지하므로 현재 Part는 본문 제목으로 확인합니다.
실습 파일: 내려받기 전에 용도 확인
JSON은 소스·전체 요청·의도적 오류 예제를 구분합니다. TXT는 사람이 채우는 양식이며 프로필·API 입력·GAPE manifest가 아닙니다. 파일이 브라우저에 열리면 다른 이름으로 저장하고 UTF-8/확장자를 확인하십시오.
시작 전에: 파일 종류·경로·셸 확인
이 문서 첫머리의 실습 파일을 새 작업 폴더에 저장하고 역할을 확인합니다. TXT 양식은 사람이 작성하는 메모이며 앱 프로필·API 요청·GAPE manifest가 아닙니다. JSON도 소스 Document, 전체 요청, 의도적 오류 예제를 구분합니다.
macOS/Linux는 bash, Windows는 PowerShell 블록을 사용합니다. 프롬프트는 복사하지 않습니다. /absolute/path·C:\absolute\path·대괄호는 실제 제공 값으로 먼저 바꾸고 따옴표를 유지합니다. 변수가 있는 명령은 준비 절과 같은 셸에서 실행합니다. 새 셸이면 경로만 다시 지정하며 기존 결과·로그를 덮지 않습니다. 긴 코드/표는 가로 스크롤할 수 있습니다.
회사별 연결/등록·승인·지원 Pack·게시 대상·승인 manifest가 필요한 단계에서는 실제 제공 자료가 있어야 합니다. 없는 자료의 ID·화면 이름·주소를 만들어 진행하지 않습니다. 각 W 절의 정상 결과와 실패 후 복귀 기준을 모두 읽고 한 단계씩 수행합니다.
W1 · DOC-01: 전체 소스 JSON 저장·검사·읽기
실습 파일의 quality-document.json을 새 개인 작업 폴더에 저장합니다. 브라우저가 파일을 화면에 표시하면 다른 이름으로 저장하고 확장자가 .json.txt가 되지 않았는지 확인합니다. UTF-8 일반 텍스트로 다시 엽니다. 이 파일에는 소스만 있으며 전체 Helper/SDK 요청은 아닙니다.
document_path="/absolute/path/quality-document.json"
python3 -m json.tool "$document_path"$documentPath = 'C:\absolute\path\quality-document.json'
$document = Get-Content -LiteralPath $documentPath -Raw -Encoding UTF8 -ErrorAction Stop | ConvertFrom-Json -ErrorAction Stop
$document.operations.read_quality | Format-List
Get-FileHash -LiteralPath $documentPath -Algorithm SHA256macOS/Linux의 명령은 Python 3가 이미 준비된 환경용입니다. Windows는 내장 ConvertFrom-Json으로 충분합니다. 파서는 문법만 확인하며 제품 의미 검증·중복 키·모든 미지원 스키마를 보장하지 않습니다.
| 실제 파일에서 찾을 위치 | 제공 예제의 값 | 의미 |
|---|---|---|
| document_kind | CUSTOM_API | 소스 형식 |
| operations.read_quality.input_schema | resource 문자열, required에 resource | 소스 작업 입력 |
| operations.read_quality.output_schema | component·score 문자열 | 소스가 선언한 응답 |
완료: 파일이 파싱되고 위 선언을 직접 읽었습니다. 실패: 줄/열 오류는 쉼표·따옴표·중괄호·인코딩을 고친 뒤 같은 파일을 다시 파싱합니다. 전체 요청을 요구하는 도구에 이 소스 파일만 보내지 않습니다.
W2 · DOC-02: 필드 변경은 속성·required·매핑을 함께 보기
변경 의도: resource → resource_name
검토 1: properties.resource를 어떤 이름으로 바꿀 것인가
검토 2: required에도 그 정확한 이름이 있는가
검토 3: 전체 요청의 명시적 매핑·게시 대상에 영향이 있는가
검토 4: 새 소스가 지원 스키마 범위 안인가
결과: 문법 검사와 Helper 의미 검증을 별도로 기록위는 변경 검토 메모이지 완전한 새 API 요청이 아닙니다. 원본을 남기고 사본에서 변경합니다. 문법이 맞아도 required: ["resource"]가 남으면 이름이 어긋납니다. 스키마 지문을 직접 꾸며 넣지 말고 제공된 정규화/검증 경로로 새 요청을 평가합니다. 실제 거부 필드가 해소됐을 때 다음 준비로 복귀합니다.
W3 · DOC-03: 소스 객체를 전체 envelope의 정확한 칸에 넣기
같이 제공한 read-only-custom-api.json은 완전한 합성 요청의 예입니다. 전체 파일을 열고 아래 세 층을 구분하십시오.
| 층 | 파일에서 찾을 값 | 바꾸기 전에 확인 |
|---|---|---|
| 요청 신원 | request_id·correlation_id | 내 릴리스가 지원하는 요청 형식 |
| draft.source | quality-document.json과 같은 객체 | 파일 경로나 이중 인코딩 문자열이 아님 |
| draft.definition/mapping/fixture | 대상·변환·합성 응답 | 게시 대상·지원 변환·합성 범위 |
소스 score는 문자열, 예제 목표 quality_score는 정수이며 지원된 STRING_TO_INTEGER 매핑으로 연결됩니다. score: "88"의 논리적 변환 기대값은 정수 88입니다. 이 설명은 실제 API 응답이나 CLI 출력 로그가 아닙니다. 대상 ID·어댑터 리비전·지문은 예제를 참고해 새로 추측하지 않습니다. 다른 릴리스의 대상이 미제공이면 준비를 그 지점에서 멈춥니다.
W4 · DOC-04: 검토용 파일 세트를 인계하기
source/quality-document.json 소스만 담은 파일
request.json 제공된 전체 요청의 작업 사본
notes.txt 변경 이유·대상 참조·검사 상태
results/ 실제 실행한 검사만 보관위는 작업 폴더 배치 예입니다. 실제 사용한 파일 지문, 문법 결과, Helper 단계 결과가 있으면 각각 적습니다. 문법 확인 / 의미 검증 미실행 / 등록 미수행처럼 끝난 단계와 남은 단계를 나눕니다. 비밀키·토큰·고객 응답을 넣지 말고, 실제 민감 자료가 섞이면 공유를 멈추고 조직의 대응 절차로 처리합니다. 인계 담당자가 전체 요청과 소스 발췌를 구별할 수 있어야 이 연습이 끝납니다.
추가 용례·체크리스트
이 Part를 읽는 순서
준비물 확인 → 목적에 맞는 용례 선택 → 뒤의 첫 실습·실제 명령 수행 → 결과 읽기 → 수정·반복 → 실패 시 해당 사례로 이동합니다. 숫자 순서가 모든 도구의 필수 설치 순서는 아닙니다. 필요한 도구만 선택하십시오.
시작 조건과 입력
UTF-8 편집기, 아래 전체 소스 JSON, OS의 파서. 의미 검증에는 전체 요청·게시 대상이 별도 필요.
온라인과 오프라인을 모두 사용할 수 있습니다. SDK의 선택 Rust 의존성 세트는 폐쇄형 온프렘의 SDK 빌드용이며 전체 제품의 기본값이 아닙니다. 회사별 endpoint·승인·등록 자료가 필요한 용례는 실제 제공 자료를 사용합니다.
실습과 사례 찾아보기
| 용례 | 해볼 일 |
|---|---|
| DOC-01 | 읽기 전용 품질 작업의 소스 선언 |
| DOC-02 | 필드 이름 변경의 영향 정리 |
| DOC-03 | 목표 Contract를 소스 설명과 구분 |
| DOC-04 | 합성 자료로 검토 패키지 준비 |
용례 DOC-01 · 읽기 전용 품질 작업의 소스 선언
read_quality는 resource 문자열을 받고 component·score 문자열을 돌려줍니다. 실제 서버를 호출하지 않고 전체 소스 Document를 작성합니다.
진행 순서:
- 아래 전체 JSON을 새 quality-document.json에 UTF-8로 저장합니다.
- operations.read_quality 아래 input_schema와 output_schema의 properties/required를 읽습니다.
- OS별 문법 검사로 파일을 파싱하고 원본 파일 지문을 보관합니다.
- 게시된 대상 참조가 있는 전체 요청의 draft.source에 객체로 넣고 Helper 단계로 인계합니다.
결과를 이렇게 읽습니다: 유효한 소스 JSON과 문법 결과입니다. 대상 의미 검증은 Part.6에서 따로 확인합니다.
실패·다음 분기: 줄/열 오류는 JSON을 수정하고, 전체 요청이 없으면 소스 준비까지 기록합니다.
남길 기록: 소스 리비전·지문, 문법 결과, 게시 대상과 요청 유무.
내 연습 기록: 수행 시각·버전·입력 참조·실제로 한 단계·관찰 결과·다음 담당자를 채우십시오. 예시에 적힌 기대 결과를 그대로 성공 기록에 복사하지 않습니다.
용례 DOC-02 · 필드 이름 변경의 영향 정리
resource를 resource_name으로 바꾸려 합니다. 이름만 바꾸면 required·매핑·대상 적합성이 어긋날 수 있습니다.
진행 순서:
- 원본을 보존하고 새 입력 사본에 변경 목적을 적습니다.
- 속성 이름과 required를 함께 검토하고 요청의 명시적 매핑이 그 이름을 쓰는지 확인합니다.
- 문법 검사를 수행하고 제공된 정규화·의미 검증으로 실제 거부 필드를 읽습니다.
- 지원 범위 안의 새 요청만 준비하고 이전 입력·결과와 구분합니다.
결과를 이렇게 읽습니다: 변경이 반영된 선언과 영향받은 매핑·검증 결과가 묶입니다.
실패·다음 분기: 스키마 지문을 임의로 고쳐 통과시키지 않습니다. 미지원 스키마 확장은 구현 필요로 남깁니다.
남길 기록: 변경 전후 이름·required·매핑, 요청 리비전, 파싱·의미 결과.
내 연습 기록: 수행 시각·버전·입력 참조·실제로 한 단계·관찰 결과·다음 담당자를 채우십시오. 예시에 적힌 기대 결과를 그대로 성공 기록에 복사하지 않습니다.
용례 DOC-03 · 목표 Contract를 소스 설명과 구분
소스 score는 문자열이고 게시된 목표 quality_score는 정수입니다. 사람용 설명·공급자 대상·명시적 변환을 혼동하지 않습니다.
진행 순서:
- 게시된 contract_id/revision과 adapter_id/revision을 실제 제공 목록에서 확인합니다.
- 소스가 반환하는 타입과 목표가 요구하는 타입을 표로 대조합니다.
- 제공된 예제의 STRING_TO_INTEGER 같은 지원 변환만 선택하고 합성 응답을 함께 검토합니다.
- 전체 요청을 의미 검증해 목표 적합성을 확인합니다. 소스 문서 제목을 Contract ID로 쓰지 않습니다.
결과를 이렇게 읽습니다: 정확한 대상 참조와 검증된 지원 매핑입니다. 새 제품 Contract 발행은 아닙니다.
실패·다음 분기: 게시 대상이 없거나 타입 변환이 미지원이면 제공자/구현 담당자에게 인계합니다.
남길 기록: 소스/목표 타입, 대상 리비전, 변환 선언, 검증 사유.
내 연습 기록: 수행 시각·버전·입력 참조·실제로 한 단계·관찰 결과·다음 담당자를 채우십시오. 예시에 적힌 기대 결과를 그대로 성공 기록에 복사하지 않습니다.
용례 DOC-04 · 합성 자료로 검토 패키지 준비
동료가 입력을 재현하도록 전달하려 합니다. 실제 토큰·고객 응답 없이 선언과 합성 예제를 묶습니다.
진행 순서:
- 소스 Document, 전체 요청 사본, 대상 참조와 변경 이유를 구분합니다.
- 예제·설명·기본값·첨부에 비밀값이나 고객 내용이 들어 있지 않은지 검토합니다.
- 문법 결과와 실제 Helper/SDK 결과가 있으면 각각의 입력 지문에 연결합니다.
- 실행 가능한 전체 요청과 설명용 발췌를 표시하고 미완료 의미 검증·승인을 적습니다.
결과를 이렇게 읽습니다: 다음 담당자가 무엇을 입력하고 어느 단계까지 확인됐는지 알 수 있는 최소 기록입니다.
실패·다음 분기: 민감 자료가 섞였다면 공유를 중단하고 조직의 대응 절차를 따릅니다.
남길 기록: 파일 종류·리비전·지문, 합성 범위, 실행한 검사와 미완료 항목.
내 연습 기록: 수행 시각·버전·입력 참조·실제로 한 단계·관찰 결과·다음 담당자를 채우십시오. 예시에 적힌 기대 결과를 그대로 성공 기록에 복사하지 않습니다.
반복 사용·수정·실패 후 재개
이전 입력·버전·검증·결과를 보존하고 새 입력 또는 새 리비전을 구분합니다. SDK/GAPE 파일 출력은 새 경로를 쓰고, Builder는 제품이 반환한 새 후보 리비전을 기록합니다. Helper는 단계 결과를 다음 명령의 입력으로 바꾸지 않고 같은 전체 요청을 사용합니다. 진행 중이거나 결과가 불명확한 Work는 먼저 기존 ID로 조회합니다.
터미널을 닫았다면 절대 경로와 선택 환경을 다시 지정합니다. 실제 변경의 영향을 받는 단계부터 재확인하고, 회사별 권한·등록·승인이 미완료이면 그 상태로 인계합니다. 지원에는 최소 메시지와 공개 가능한 참조를 사용하며 비밀키·원문 프롬프트·고객 응답·전체 로그를 일괄 전달하지 않습니다.
상세 명령·입력 예제·문제 해결 원본
아래에는 이 Part에 해당하는 기존 상세 안내를 같은 작성 원본에서 이어 싣습니다. 첫 실습, 전체 JSON, OS별 명령, 실제 결과 파일 확인과 증상별 상세 사례를 필요할 때 펼쳐 읽으십시오. 다른 Part의 사례를 참조하는 링크도 해당 매뉴얼로 연결됩니다.
전체 흐름·생략 조건
Contract & Document: 작업 선언과 지원 대상의 연결
Contract & Document: 작업 선언과 지원 대상의 연결
상세 절 목차
첫 문서 실습: 파일 저장부터 Helper 인계까지
목표: 아래의 완전한 소스 Document를 quality-document.json으로 저장하고 문법을 확인합니다. 이 파일은 소스 선언만 담습니다. SDK/Helper의 전체 요청이나 GAPE 매니페스트가 아닙니다.
- 조직이 허용한 새 작업 폴더를 만들고 텍스트 편집기를 엽니다. 아래 JSON 블록의
{부터 마지막}까지만 복사합니다. 코드 울타리와json표시는 파일에 넣지 않습니다. - 파일 이름을
quality-document.json, 인코딩을 UTF-8로 저장합니다. Word/서식 문서 형식이 아닌 일반 텍스트를 사용하고.json.txt가 붙지 않았는지 확인합니다. 저장한 파일을 다시 열어operations.read_quality가 있는지 읽습니다. - macOS/Linux에 Python 3가 이미 준비돼 있다면 아래 명령을 사용합니다. Windows는 PowerShell의 내장 JSON 파서를 사용할 수 있으므로 이 실습 때문에 Python 설치가 필수는 아닙니다.
- 문법 통과 후
properties의 resource/component/score와 각required목록을 대조합니다. 이 검토와 JSON 파싱은 제품의 의미 검증을 대신하지 않습니다. - 원본 사본을 보존한 뒤 공급자가 제공한 전체 요청의
draft.source에 문서 객체를 넣습니다. 파일 경로 문자열이나 JSON을 이중 인코딩한 문자열을 넣지 않습니다. 대상 참조·매핑·fixture는 제공된 요청에서 별도로 확인하고 Helper 첫 준비 실습으로 이동합니다.
document_path="/absolute/path/quality-document.json"
python3 -m json.tool "$document_path"$documentPath = 'C:\absolute\path\quality-document.json'
Get-Content -LiteralPath $documentPath -Raw -Encoding UTF8 -ErrorAction Stop | ConvertFrom-Json -ErrorAction Stop | Format-List
Get-FileHash -LiteralPath $documentPath -Algorithm SHA256기대 결과: JSON 파서는 객체를 표시하고 파싱 오류를 내지 않습니다. 문법 오류라면 줄/열과 쉼표·따옴표·중괄호를 확인합니다. 이 파서는 중복 키나 제품 미지원 스키마 전체를 판정하지 않습니다. 문법 확인 완료 / Helper 의미 검증 미실행으로 기록하고, 실제 Helper 결과가 나왔을 때 별도 추가합니다.
작은 수정 연습: 새 사본에서 입력 이름을 바꾸려면 properties, required, 요청의 명시적 매핑과 지원 대상 영향을 함께 검토합니다. 처음에는 제공된 원본으로 한 번 확인한 뒤 바꾸십시오. DOC-1/2 사례는 이름 불일치와 전체 요청 누락을 다룹니다.
수정 중인 산출물 구분
| 산출물 | 예시 필드 | 의미 |
|---|---|---|
| 계획 요약 | “서비스 상태 한 건 읽기” | 사람이 읽는 목표; 파서 입력이 아님 |
| 소스 Document | document_kind: CUSTOM_API | 소스 작업과 입출력 형태의 선언 |
| 대상 참조 | contract_id, contract_revision, adapter_id | 지원되는 공급자 릴리스에서 가져온 값 |
| 완전한 요청 envelope | request_id, correlation_id, draft | 기계 요청; draft.source에 소스 Document 포함 |
| 타입 결과 | status, reason, next_required_actions | 제품 준비 판정; 실행 권한이 아님 |
범위가 정해진 소스 Document 작성
- 짧은 목표와 데이터 경계를 적습니다. 예:
read_quality는 리소스 이름을 받아 구성요소 이름과 품질 점수를 문자열로 반환합니다. 리소스를 변경하지 않습니다. - 지원되는 CUSTOM_API 형식에서
document_kind는CUSTOM_API,protocol_revision은 지원되는 값으로 하고operations아래에read_quality를 둡니다.input_schema는 필수resource문자열을 가진 object,output_schema는 필수component와score문자열을 가진 object로 선언합니다. 문장 속 필드 이름은 설명이며 완전한 JSON 파일이 아니므로 구두점과 중첩은 아래의 완전한 예시를 사용하십시오. - 속성 이름과
required목록을 일치시킵니다. 제한된 예시는 지원되는 기본 자료형만 받습니다. 중첩 object·배열·추가 JSON Schema 키워드·중복 키·주석이 묵시적으로 허용되지는 않습니다. 자격 증명이나 실제 운영 응답을 schema의 기본값·설명에 넣지 않습니다. - 로컬 사본에서 앞의 OS별 파서 명령으로 JSON 문법을 확인합니다. 문법 PASS는 JSON 파싱만 증명합니다. 수정할 때 원본과 지문을 보존합니다.
- 공급자가 게시한 정확한 기능·Contract·어댑터·작업·리비전 식별자를 확보합니다. 이 참조는 독립 소스 Document가 아니라 릴리스가 정한 요청 envelope에 넣습니다. 이후 Integration Helper 준비 절차를 따릅니다.
완전한 소스 Document 예시
아래 CUSTOM_API 예시는 읽기 전용 read_quality 작업을 선언합니다. 실제 API를 호출하거나 제품 Contract를 만들지 않습니다. JSON을 quality-document.json으로 저장하고 해당 릴리스가 제공한 완전한 요청의 draft.source에 넣은 뒤 호환되는 지원 대상 참조를 지정하십시오.
{
"document_kind": "CUSTOM_API",
"protocol_revision": "1",
"operations": {
"read_quality": {
"input_schema": {
"type": "object",
"properties": {"resource": {"type": "string"}},
"required": ["resource"]
},
"output_schema": {
"type": "object",
"properties": {
"component": {"type": "string"},
"score": {"type": "string"}
},
"required": ["component", "score"]
}
}
}
}python3 -m json.tool quality-document.json > /dev/null
sha256sum quality-document.json첫 명령은 JSON 문법만 확인합니다. macOS는 shasum -a 256 quality-document.json, Windows PowerShell은 Get-FileHash -Algorithm SHA256 quality-document.json을 사용하십시오. 완전한 envelope·대상·매핑의 적합성은 Helper의 타입 판정으로 별도 확인해야 합니다.
예시: JSON은 유효하지만 대상 리비전이 다름
소스 Document가 파싱되고 발견 단계에서 read_quality가 받아들여졌지만 요청은 다른 릴리스의 어댑터 리비전을 참조합니다. 정규화 단계는 대상을 거부합니다. 릴리스 매니페스트와 공급자 참조를 대조하고, 승인된 호환 값이 실제로 있을 때만 새 요청의 대상 리비전을 바로잡습니다. 소스 작업 이름만 바꿔 우연히 맞추면 불일치를 숨기게 됩니다.
예시: 필드 이름만 바꾸고 required를 그대로 둠
편집자가 입력 속성 resource를 resource_name으로 바꾸고 required: ["resource"]는 그대로 둡니다. JSON 문법은 유효하지만 선언 의미가 일치하지 않습니다. 속성을 되돌리거나 required 목록을 고친 뒤 같은 로컬 파서와 Helper 검증을 다시 수행하십시오. 문법 검사 통과를 Contract 검증으로 해석하지 않습니다.
완료 증거
소스 Document의 리비전·지문, 게시된 대상 참조, 요청 신원, 타입이 정해진 Helper 결과와 남은 승인 담당자를 보관합니다. 실제 인증·등록·런타임 증거 전에는 “연결됨”, Work와 영수증 전에는 “실행됨”이라고 표시하지 않습니다.
단계별 실제 사용 용례
예를 들어 읽기 전용 품질 조회에 출력 필드 하나를 추가하려고 합니다. 사람용 목표, 소스 스키마, 대상 참조와 전체 요청 envelope를 각각 구분합니다. 출력 속성과 required 목록, 실제 합성 응답, 명시적 매핑을 함께 검토하고 지원되지 않는 스키마 확장은 그대로 별도 구현 요구로 남깁니다. 제품이 발행한 Contract를 고객 문서로 대체하지 않습니다.
증상별 확인과 복귀 확인
| 증상 또는 상황 | 분리해서 확인할 사실 | 조치와 다시 확인할 결과 |
|---|---|---|
| JSON 문법은 유효하지만 의미 검증 거부 | 속성·required 일치, 필드 자료형과 지원 스키마 범위 | 문법 검사와 의미 검증을 각각 기록하고 정확히 거부된 선언을 수정합니다. |
| 소스 필드 변경 뒤 매핑 지문이 맞지 않음 | 소스 문서 리비전·스키마 지문·매핑 대상 | 릴리스가 제공한 정규화·검증 절차로 새 요청을 준비합니다. 지문만 임의로 고치지 않습니다. |
| 문서에 실제 토큰이나 고객 응답이 들어감 | 기본값·설명·예제·첨부 파일의 민감 정보 | 공유를 멈추고 합성 자료로 새 입력을 작성합니다. 노출 대응은 조직 절차를 따릅니다. |
다음 담당자에게 넘길 최소 기록
인계 항목: 소스 Document 리비전·지문, 요청 envelope 리비전, 게시된 Contract·어댑터 참조, 매핑 규칙, 합성 입력·예상 출력, 문법·의미 검증 결과와 변경 이유. 실제 값이 없는 템플릿과 실행 가능한 전체 요청을 구분합니다.
도구별 문제 해결 사례 읽기
다음은 지원되는 입력·명령·권한 경계를 바탕으로 구성한 교육용 사례입니다. 제품의 실제 상태·사유와 함께 읽고, 자신의 실행 기록 없이 예시의 결과를 성공 이력으로 사용하지 않습니다. 온라인과 오프라인 환경 모두에 적용되는 확인 항목과 선택 의존성 경로에만 해당하는 항목을 구별합니다.
상세 예시 DOC-1: 속성 이름만 바꾸고 required는 그대로 둠
상황: 입력 속성 resource를 resource_name으로 바꿨지만 required에는 resource가 남아 있습니다. JSON 문법 검사는 통과해도 선언의 의미는 일치하지 않습니다.
관찰을 이렇게 나눠 읽습니다.
- 문법: JSON 파싱은 가능합니다.
- 선언: properties와 required가 다른 이름을 가리킵니다.
- 대상·매핑: 소스 변경의 영향을 따로 확인해야 합니다.
확인·조치 순서:
- 전체 소스 Document와 원본 리비전·지문을 보존합니다.
- 실제 의도한 입력 이름을 정하고 속성·required·명시적 매핑을 지원 범위 안에서 맞춥니다.
- 로컬 JSON 문법과 Helper 의미 검증을 각각 수행하고 결과를 구분합니다.
다음 단계로 돌아갈 조건: 문법과 의미 검증이 모두 확인된 새 요청을 후속 준비에 사용합니다.
해결되지 않았을 때: 지원되지 않는 스키마 확장은 임의로 허용하지 않고 추가 구현 요구로 남깁니다.
상세 예시 DOC-2: 소스 Document 발췌를 전체 요청으로 실행함
상황: 사용자는 안내서의 짧은 CUSTOM_API 예시만 저장해 Helper 또는 SDK 입력으로 보냅니다. 소스 설명은 맞지만 요청·대상·매핑·합성 응답을 포함한 전체 envelope는 아닙니다.
관찰을 이렇게 나눠 읽습니다.
- 소스 Document: draft.source에 들어갈 자료입니다.
- 전체 요청: request_id·correlation_id·draft와 지원 참조가 필요합니다.
- 발췌: 필드를 설명하는 예시이며 바로 실행 가능한 전체 입력이 아닙니다.
확인·조치 순서:
- 제공된 버전에 맞는 전체 요청 템플릿을 확보하고 원본을 보존합니다.
- 소스·대상·매핑·합성 응답을 각각의 정해진 위치에 채웁니다. 비밀값·실제 고객 응답은 넣지 않습니다.
- 문법 확인 뒤 제품의 analyze 또는 Helper 단계 판정으로 의미를 확인합니다.
다음 단계로 돌아갈 조건: 완전한 요청과 게시된 대상이 지원 범위 안에서 검증됐을 때 후보 준비로 진행합니다.
해결되지 않았을 때: 필수 대상 참조가 없으면 설명용 값을 실제 식별자로 추측해 사용하지 않습니다.
Local documentation edition. Company connection, approval and enrollment require actual supplied material. Educational scenarios are not customer execution evidence. Apple signing/notarization and customer activation/delivery remain held.
Connect the Guides and Parts 1–8
Choose a purpose in a Guide, then use the relevant Part for exact tool steps. The same sequence, vocabulary and artifact roles apply in both.
Purpose guides
- Common PoC Guide
Choose a question, collect scoped observations and review the result. A retained-reading route needs no new installation.
- Google Reviewer Guide
Bind the exact review delivery and criterion evidence. Cloud access, document coverage and actual Google approval remain separate.
- On-premises Guide
Prepare the exact OS, package, network choice and toolchain. Use the local SDK shortcut only after its prerequisites are supplied.
- Custom Execution Guide
Choose a supported task. Keep source-document preparation, full SDK candidates and actual Work/report inspection as distinct routes.
- Guide links open the public website and require network access; this offline manual and its local examples remain readable without it.
Recommended integration order and shortcuts
- Part.1 · Install and prepare
- Part.2 · Observe structure with GAPE
- Part.3A · Plan with Integration Helper
- Part.4 · Write the source Document and bind the published target Contract
- Part.3B · Check the complete request and identify implementation needs
- Part.5 if needed · SDK candidate, implementation review and separate registration
- Part.6 if needed · Builder Pack candidate and its approval path
- Part.7 · Permitted GUI or headless operation
- Part.8 · Results, troubleshooting and human review
Helper B checks the completed declarations before you decide whether implementation or a new Pack is needed. After an implementation or declaration change, repeat only the affected supported checks and finish the separate implementation/registration/Pack approval path before operation. A generated candidate grants no operating authority.
Select only the route needed for your goal. Retained PoC reading can begin without installation. A supplied local SDK exercise uses Part.1 → Part.5 and does not require a new GAPE scan or appliance account. An existing approved Pack can use Part.1 → Part.7 → Part.8 after its current prerequisites are checked. New integration/Pack authoring follows the full conditional sequence.
Part map and tool responsibilities
| Part | Role and expected boundary |
|---|---|
| Part.1 · Installation and first connection | OS preparation, supplied packages and first connection. Installation is not an executed Work. |
| Part.2 · GAPE observation, comparison and sharing | Revision-bound architecture observation. A worksheet is not the approved GAPE input manifest. |
| Part.3 · Integration Helper operation | A plans before the Document; B checks the completed full request. Each stage reads its typed status/reason. |
| Part.4 · Contract and Document authoring | Author the source Document and mappings; use the supplied target Contract/revision. JSON syntax alone does not establish semantic compatibility. |
| Part.5 · SDK Engine practice and candidates | Generate a local SDK implementation candidate. Reuse an implemented, registered, release-compatible integration when it already meets the need. |
| Part.6 · Builder and Additional Packs | Prepare a Pack candidate when a new Pack is needed. Reuse an existing approved Pack that meets the goal and installation scope. |
| Part.7 · PackrGUI and headless operation | Use the supplied GUI/headless route under its current authority and preconditions. Inspect the returned Work identity and result. |
| Part.8 · Operations, troubleshooting and support | Compare same-Work artifacts, receipt and closure; keep human acceptance pending until actually recorded. |
Shared vocabulary
- Guide / Part
- A Guide is a purpose/role route; a Part is a tool reference. They complement each other and are not two competing numbered workflows.
- Contract / source Document
- The published target Contract defines the supported target and revision. The source Document declares your source shapes. A source declaration does not authorize execution.
- Complete request / source-only file
- A complete SDK request includes request_id, correlation_id and draft with definition/source/mapping/fixture. The source-only status Document is one component, not that complete request.
- Fixture / actual observation
- A fixture supplies synthetic values for a declared local exercise. Its declared fields do not prove a real provider call, current connectivity or a customer result.
- SDK candidate / Pack candidate
- The SDK candidate has README.md, adapter.rs, libadapter.rlib and manifest.json. A Builder Pack candidate is a separate product-returned candidate with its own validation/approval path. Neither automatically becomes an approved Pack.
- Worksheet / receipt / acceptance
- A worksheet records a human note. A receipt is a product execution record. PASSED validation and automation completion can coexist with human acceptance pending; record each field at its actual scope.
- Online / Offline
- These are setup choices. Offline product development requires the exact declared dependency set and native tools; an offline manual ZIP only supports document reading.
Match each input to the right output
The status.read source-only example and the read_quality SDK exercise are different examples. Use a matching complete request; do not pass the status source file directly as the quality SDK request. Expected mapping values below are teaching expectations, not a newly captured run.
| File / role | Input | Output / check |
|---|---|---|
status-document.jsonSource-only CUSTOM_API declaration for status.read. Use it inside the complete supplied preparation request. | service: string | Declared service: string and healthy: boolean. This is a schema, not an observed service response. |
read-only-custom-api.json / custom-api-01.jsonThe complete maintained SDK base request; the guide copy is byte-equivalent JSON. | fixture.response.component = "fixture-component"; score = "97" (string) | STRING_TO_INTEGER maps score to expected integer quality_score 97. The documented SDK result is a local candidate. |
custom-api-02.jsonA complete second SDK request changing only the two fixture response values. | component = "my-test-component"; score = "88" (string) | Expected mapped component is "my-test-component" and quality_score is integer 88. Inspect actual manifest/stages; identical mapping source is possible. |
custom-api-score-number.jsonIntentional negative input, not a successful base example. | fixture.response.score = 88 (JSON number) against a declared string schema | Keep the actual typed failure result. Do not convert the example into a claimed successful candidate. |
Worksheet / SDK artifacts / Work reportsThree different artifact classes: human notes, local compiled candidate, actual Work/report/receipt records. | Use the matching tool and current target; never submit a worksheet or previous result as the next full request. | Bind outputs to the actual input, version, candidate or Work identity. File presence and exit 0 alone are insufficient. |
가이드와 Part.1–8 연결
가이드에서 목적을 고른 뒤 해당 Part에서 정확한 도구 단계를 확인합니다. 두 문서는 같은 순서·용어·자료 역할을 사용합니다.
목적별 가이드
- PoC 공통 가이드
질문을 정하고 범위에 맞는 관찰을 모아 결과를 검토합니다. 보존 기록 독해에는 신규 설치가 필요하지 않습니다.
- Google 심사자 가이드
정확한 심사 전달물과 기준 증거를 연결합니다. Cloud 접근·문서 범위·실제 Google 승인은 각각 구분합니다.
- 온프레미스 가이드
정확한 OS·패키지·네트워크 선택·도구 체인을 준비합니다. 로컬 SDK 준비 요건이 제공된 뒤에만 해당 단축 경로를 사용합니다.
- Custom Execution 가이드
지원 작업을 선택합니다. 소스 문서 준비·전체 SDK 후보·실제 Work 및 보고서 확인을 서로 다른 경로로 구분합니다.
- 가이드 링크는 네트워크가 필요한 공개 웹사이트를 엽니다. 이 오프라인 매뉴얼과 로컬 예제는 네트워크 없이 읽을 수 있습니다.
권장 연동 순서와 단축 경로
- Part.1 · 설치·준비
- Part.2 · GAPE 구조 관찰
- Part.3A · Integration Helper 계획
- Part.4 · 소스 Document 작성·게시된 대상 Contract 연결
- Part.3B · 전체 요청 확인·구현 필요 여부 확인
- 필요 시 Part.5 · SDK 후보·구현 검토·별도 등록
- 필요 시 Part.6 · Builder Pack 후보·승인 경로
- Part.7 · 허용된 GUI·헤드리스 사용
- Part.8 · 결과·문제 해결·사람 검토
Helper B는 구현·새 Pack 필요 여부를 결정하기 전에 완성된 선언을 확인합니다. 구현·선언 변경 후에는 영향을 받은 지원 검사를 다시 수행하고 별도 구현·등록·Pack 승인 경로를 마친 뒤 사용합니다. 생성 후보는 운영 권한을 부여하지 않습니다.
목표에 필요한 경로만 선택합니다. 보존 PoC 독해는 설치 없이 시작할 수 있습니다. 제공된 로컬 SDK 실습은 Part.1 → Part.5를 따르며 새 GAPE 관찰·어플라이언스 계정이 필요하지 않습니다. 기존 승인 Pack은 현재 준비 요건 확인 후 Part.1 → Part.7 → Part.8을 따를 수 있습니다. 새 연동·Pack 작성은 조건부 전체 순서를 따릅니다.
Part 연결과 도구 역할
| Part | 역할과 기대 범위 |
|---|---|
| Part.1 · 설치·초기 연결 | OS 준비·제공 패키지·초기 연결입니다. 설치는 실행된 Work가 아닙니다. |
| Part.2 · GAPE 관찰·비교·공유 | 리비전에 고정된 구조 관찰입니다. 워크시트는 승인된 GAPE 입력 매니페스트가 아닙니다. |
| Part.3 · Integration Helper 사용 | A는 Document 작성 전 계획, B는 완성된 전체 요청 확인입니다. 단계마다 타입이 있는 status·reason을 읽습니다. |
| Part.4 · Contract·Document 작성 | 소스 Document·매핑을 작성하고 제공된 대상 Contract·리비전을 사용합니다. JSON 구문만으로 의미상 호환성이 확인되지 않습니다. |
| Part.5 · SDK Engine 실습·연동 후보 | 로컬 SDK 구현 후보를 생성합니다. 기존 구현·등록·릴리스 호환 연동이 요구를 충족하면 재사용합니다. |
| Part.6 · Builder·추가 Pack 사용 | 새 Pack이 필요할 때 Pack 후보를 준비합니다. 목표·설치 범위에 맞는 기존 승인 Pack은 재사용합니다. |
| Part.7 · PackrGUI·헤드리스 사용 | 현재 권한·사전 조건에 따라 제공 GUI·헤드리스 경로를 사용합니다. 반환된 Work 식별·결과를 확인합니다. |
| Part.8 · 운영·문제 해결·지원 | 동일 Work 산출물·영수증·종결을 비교하며 사람 인수은 실제 기록될 때까지 대기로 유지합니다. |
공통 용어
- 가이드 / Part
- 가이드는 목적·역할 경로이고 Part는 도구 설명입니다. 서로 보완하며 경쟁하는 두 번호 순서가 아닙니다.
- Contract / 소스 Document
- 게시된 대상 Contract는 지원 대상·리비전을 정합니다. 소스 Document는 소스 형식을 선언합니다. 소스 선언은 실행을 승인하지 않습니다.
- 전체 요청 / 소스 전용 파일
- 전체 SDK 요청은 request_id·correlation_id와 definition·source·mapping·fixture가 있는 draft를 포함합니다. status 소스 Document는 한 구성 요소이며 전체 요청이 아닙니다.
- Fixture / 실제 관찰
- fixture는 선언된 로컬 실습의 합성 값을 제공합니다. 선언 필드는 실제 공급자 호출·현재 연결·고객 결과를 입증하지 않습니다.
- SDK 후보 / Pack 후보
- SDK 후보에는 README.md·adapter.rs·libadapter.rlib·manifest.json이 있습니다. Builder Pack 후보는 별도 제품 반환 후보이며 자체 검증·승인 경로를 가집니다. 어느 쪽도 자동으로 승인 Pack이 되지 않습니다.
- 워크시트 / 영수증 / 인수
- 워크시트는 사람 기록입니다. 영수증은 제품 실행 기록입니다. 검증 PASSED·자동화 완료와 사람 인수 대기는 함께 존재할 수 있으며 각 필드의 실제 범위를 기록합니다.
- Online / Offline
- 구성 선택 사항입니다. Offline 제품 개발에는 정확한 선언 의존성 세트·네이티브 도구가 필요하며 오프라인 매뉴얼 ZIP은 문서 열람을 지원합니다.
입력별 올바른 출력 연결
status.read 소스 전용 예제와 read_quality SDK 실습은 서로 다른 예제입니다. 일치하는 전체 요청을 사용하고 status 소스 파일을 quality SDK 전체 요청으로 제출하지 않습니다. 아래 매핑 값은 설명을 위한 기대값이며 새 실행 캡처가 아닙니다.
| 파일 / 역할 | 입력 | 출력 / 확인 |
|---|---|---|
status-document.jsonstatus.read의 소스 전용 CUSTOM_API 선언입니다. 제공된 전체 준비 요청 안에서 사용합니다. | service: string | service: string·healthy: boolean을 선언합니다. 스키마이며 관찰된 서비스 응답이 아닙니다. |
read-only-custom-api.json / custom-api-01.json유지관리되는 전체 SDK 기준 요청이며 가이드 사본은 같은 JSON입니다. | fixture.response.component = "fixture-component"; score = "97" (문자열) | STRING_TO_INTEGER는 score를 기대 정수 quality_score 97로 매핑합니다. 문서의 SDK 결과는 로컬 후보입니다. |
custom-api-02.jsonfixture 응답 값 두 개만 바꾼 두 번째 전체 SDK 요청입니다. | component = "my-test-component"; score = "88" (문자열) | 기대 매핑 component는 "my-test-component", quality_score는 정수 88입니다. 실제 매니페스트·단계를 확인하며 매핑 소스는 같을 수 있습니다. |
custom-api-score-number.json정상 기준 예제가 아닌 의도적 오류 입력입니다. | 선언된 문자열 스키마에 fixture.response.score = 88 (JSON 숫자) 사용 | 실제 타입 오류 결과를 보존하며 이 예제를 성공 후보로 기록하지 않습니다. |
Worksheet / SDK artifacts / Work reports사람 기록·로컬 컴파일 후보·실제 Work 및 보고서·영수증이라는 서로 다른 산출물 종류입니다. | 해당 도구·현재 타깃을 사용하며 워크시트·이전 결과를 다음 전체 요청으로 제출하지 않습니다. | 실제 입력·버전·후보 또는 Work 식별에 출력을 연결합니다. 파일 존재·종료 0만으로는 충분하지 않습니다. |
