# Build, buy, adapt decision record

Compare delivery routes against one bounded workflow and the same required result. Keep failed requirements distinct from unknown capabilities. Do not average a missing safety property into a favorable overall score.

The completed example is hypothetical. Its descriptions are authored assumptions about unnamed options, not inspected product capabilities, prices, supplier recommendations, or implementation evidence. It authorizes no access or change.

## Completed hypothetical date-change draft

- Trigger: a customer requests another delivery date.
- Proposed slice: read permitted current order evidence and prepare a checked draft for an authorized reviewer.
- Outside scope: posting an order change, contacting the customer, changing policy, or granting permissions.
- Required packet: order identity/revision, requested date, current allowed dates, cutoff and holds, source references, correction history, blocked-state owner, and exportable decision record.
- Recheck condition: an order amendment makes the earlier packet stale; current evidence is required before review continues.
- Control owners: workflow owner approves the required result and exceptions; source owner establishes authoritative current evidence and permitted fields; service owner accepts operating and exit obligations. Names and capacity remain to be assigned in a real engagement.

| Option                                        | Authored assumption and provisional disposition                                                                                                         |
| --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Existing native draft feature                 | Suggests dates but cannot bind an order revision to the draft. Fails the required stale-draft check. Price cannot waive it.                             |
| Supported configuration of the current screen | Can show and retain the packet but cannot fetch current evidence itself. Candidate only with a proven preparation path.                                 |
| Narrow adapter into the configured screen     | Current revision and field-level scope are unknown. Investigate those interface properties; do not select or estimate a complete implementation yet.    |
| Separate custom draft service                 | Revision-aware design is possible on paper. Operating cover and export/exit are unassigned. Blocked pending owners, target access, tests, and capacity. |
| Retained manual review                        | Assume the owner permits the existing checked manual path for this exercise. Retain during investigation. Actual effort and defects remain unmeasured.  |

**Provisional decision:** investigate adapter plus supported configuration while retaining the permitted manual review. This is a decision to obtain evidence, not a purchase, implementation, release, or automatic-write approval.

If you consider buying a separate product, give it the same required job and failure tests. Purchasing a feature does not establish that it can read current permitted order facts, retain corrections, or leave the team with a usable export. Investigate a custom service when existing options fail a checked requirement; do not treat that investigation as a decision to build.

## Proposed disqualifying tests, not executed results

1. Prepare a packet, then amend the order. Expect a visible stale state and current evidence check before review continues.
2. Use a requester outside the order's scope. Prohibited fields must not enter the packet, model request, error, or ordinary logs.
3. Make the source unavailable. Expect owned blocked work and the permitted manual fallback, not guessed dates.
4. Supply a contradictory cutoff. Preserve the conflict for its owner; the model does not rewrite policy.
5. Correct or hold a draft, then interrupt the session. Check retained revision/reason, current evidence on resume, and named next owner.
6. Exercise export and disablement using permitted test cases. Confirm pending work, retained evidence, credential removal, reconciliation, and fallback responsibilities.

Bind any eventual results to the actual installed feature, license, configuration, adapter build, source revision, identity policy, and target environment. A paper check is not a passed test.

## Full-cost and ownership questions

Full-cost ranking remains unknown. No target price, interface behavior, manual baseline, or funded support cover has been established.

- Record delivery/setup, licenses, integration, data preparation, evaluation, reviewer work, operation, support, recovery, upgrades, and retirement over the same period.
- Separate actual payment timing from allocated cost; prevent double counting.
- Distinguish the source API owner, adapter mapping owner, configuration owner, service operator, independent verifier, and policy owner. Supplier ownership of a feature does not cover every customer obligation.
- Check export of pending cases, source references, decisions, corrections, and configuration; continued retained-evidence access; credential revocation; and migration reconciliation.
- Prefer a documented permitted interface when it meets the contract. If a visual-interface action is necessary, assess observation, authority, staging, drift, execution, and result verification separately. That wider action route is not included in this draft-only scope.

## Blank option record

First write what every option must do for the delivery-date draft. Then choose a test that could rule an option out, such as an amended order that makes its prepared facts stale. Fill in costs and ownership for the options that remain possible, leaving unanswered questions visible.

- Workflow, trigger, accepted result, verifier, and permitted initial slice:
- Current approved path, observed baseline, exceptions, and retained fallback:
- Which order source and revision apply, how current must they be, which fields may the user see, and where may those fields be sent or stored?
- Human review, correction, rejection, blocked-state, and resume needs:
- Non-negotiable requirements and owners allowed to amend them:
- Existing native feature and supported configuration considered:
- Adapter/integration, separate service, manual, narrower, and deferred alternatives:

| Candidate | Verified fit, failed requirement, or unknown; evidence and revision |
| --------- | ------------------------------------------------------------------- |
|           |                                                                     |
|           |                                                                     |
|           |                                                                     |
|           |                                                                     |

- Which installed product version, license, settings, API or screen, and deployment environment did you actually inspect?
- Disqualifying ordinary, exception, denied, stale, and interrupted cases:
- What must someone still demonstrate, who will obtain that evidence, where will it be saved, and when will you review it?
- Comparable cost period, currency, setup/payment/allocation, and maintenance:
- Review, source, mapping, operation, support, recovery, and change owners:
- Reserved operating capacity, backup, support hours, and escalation:
- If this option is replaced or stopped, how will the team export and finish pending work, retain needed evidence, reconcile the replacement, and remove old access?
- Recommendation and limitations; reasons rejected alternatives failed:
- Narrow investigation or trial scope, resource ceiling, stop conditions, and fallback:
- Production decisions still withheld and who may approve them:
- Reconsideration triggers: feature change, source change, cost, risk, ownership, or requirements:

If a required property fails, reject or narrow the candidate. If it is unknown, obtain the evidence before selection. Retain the approved current process or explicit containment while the question is unresolved.
