No. Linear GraphQL API returns a success response when it accepts the request. Provely proves assigned, created and in_state as separate promises.

Skill facts from the signed manifest.
FactValue
Skill version0.1.0
PublisherBuilt and signed by Provely.
CertificationProvisional
Last conformance run2026-09-05T12:00:00Z: 41 of 41 cases passed, 0 critical false VERIFIED
Provider API versionsfp_2026_09
Default provider API versionfp_2026_09
Compiled2026-09-05
Manifest hashf2d5d5872a103491
Manifest hash checkthe document hashes to the value the manifest states
Signaturevalid, key provely-skill-2026-09, trusted by this build

What does this page prove?

ClaimProven byEvidenceStatus
The issue carries the intended user as its assignee. It does not prove that the user did the work.linear.issue.assignedE2 + E3proven
The record exists with the intended title. It does not prove the workflow state, and it does not prove the assignee.linear.issue.createdE2 + E3proven
The issue sits in the state that the person authorised, and that state belongs to the intended team.linear.issue.in_stateE2 + E3proven
An outcome outside Linear GraphQL API, such as a bank credit or a person who read a messagenot provenno E5 channelnot proven
The agent report that the action workednever countsE0not proven

Which completion levels does the Linear GraphQL API skill expose?

Each level is one promise with one contract. An agent picks the level that matches the promise it makes. It cannot upgrade a level. Read the completion level definition.

LevelContractPromiseEvidenceCertification
assignedlinear.issue.assigned v1.0.0The issue carries the intended user as its assignee. It does not prove that the user did the work.E2 + E3Provisional
createdlinear.issue.created v1.0.0The record exists with the intended title. It does not prove the workflow state, and it does not prove the assignee.E2 + E3Provisional
in_statelinear.issue.in_state v1.0.0The issue sits in the state that the person authorised, and that state belongs to the intended team.E2 + E3Provisional

Which ways can a Linear GraphQL API action look done and not be?

ContractCaseVerdict
linear.issue.assignedduplicate side effectCONTRADICTED
linear.issue.assignedpre existing stateCONTRADICTED
linear.issue.assignedwrong subjectCONTRADICTED
linear.issue.createdduplicate side effectCONTRADICTED
linear.issue.createdpre existing stateCONTRADICTED
linear.issue.createdwrong subjectCONTRADICTED
linear.issue.in_stateduplicate side effectCONTRADICTED
linear.issue.in_statepre existing stateCONTRADICTED
linear.issue.in_statewrong subjectCONTRADICTED

What did the last conformance run show?

The last conformance run on 2026-09-05T12:00:00Z passed 41 of 41 cases with 0 critical false VERIFIED. One critical false VERIFIED rejects a skill.

The certification of each contract.
ContractCertification
linear.issue.assignedProvisional
linear.issue.createdProvisional
linear.issue.in_stateProvisional

The weakest contract is linear.issue.assigned. It reaches Provisional. The package level is Provisional, because a package level never rises above its weakest contract. Read the level of the contract you use.

The conformance result by case class.
Case classPassedTotal
duplicate side effect33
error after execution33
error before execution33
evidence unavailable33
pre existing state33
stale readback33
still transitional33
terminal success33
timeout after commit33
version mismatch33
webhook duplicate33
webhook out of order33
wrong subject33
wrong terminal state22

The conformance artifact digest is f20ff4a33af4f874. The harness signs the run, so a reader can check that these numbers come from that run.

What remains uncertain?

The level is Provisional because of it. Provely does not guess a rule that a source does not state.

Where do these facts come from?

Every claim above cites a source assertion in the skill provenance. The compiler records the source, its hash, and the retrieval date. A page never states a provider rule without one.

SourceKindRetrievedExcerpt
linear.docs.issuesdocs2026-09-09authored
linear.docs.statesdocs2026-09-09authored
linear.docs.versionsdocs2026-09-09authored
linear.docs.webhooksdocs2026-09-09authored
linear.eventsevent sample2026-09-09authored
linear.graphqlgraphql2026-09-09trimmed
linear.webhooks.graphqlgraphql2026-09-09trimmed

How do I verify a Linear GraphQL API action?

Verify a Linear GraphQL API action with Provely

  1. Begin the operation.Call begin with the contract linear.issue.assigned and the input. Keep the operation id.
  2. Make the Linear GraphQL API call you make today.Send the request with the correlation metadata that begin returned.
  3. Submit the acknowledgement.Call action_result with the Linear GraphQL API response. This is evidence level E1. It is not completion.
  4. Verify.Call verify. The runtime reads the evidence that the contract names, from Linear GraphQL API and not from the agent, and evaluates the contract.
  5. Report the verdict exactly as returned.VERIFIED comes with a signed receipt. PENDING comes with the operation id. CONTRADICTED and UNVERIFIABLE are not success.

Questions developers ask

Does the assigned level prove the in_state level?

No. The issue carries the intended user as its assignee. It does not prove that the user did the work. The issue sits in the state that the person authorised, and that state belongs to the intended team. Use linear.issue.in_state to prove in_state.

What does the agent say while the Linear GraphQL API action is still in progress?

It says: "The action is accepted but not yet verified. Operation: <id>." The verdict is PENDING. The runtime observes again on the contract timing policy.

Which Linear GraphQL API API versions does the skill support?

fp_2026_09. An operation on another version returns UNVERIFIABLE with the reason version_unsupported. The runtime never guesses.

Does Provely need write access to Linear GraphQL API?

No. The agent keeps its write key. The verifier reads with a separate read-only credential where Linear GraphQL API permits it, and it never shares that credential with the agent.