Category coverage identifies the kind of proof present. Detailed transition, permission and invariant obligations and unbound proposals remain in the coverage finding until their individual cases are accounted for.
Validation does not exempt later writes from current object availability. The structured interaction rows identify the related capabilities exercised and any remaining gap. Cross-capability workflow seams remain subject to the detailed coverage audit.
Coverage
Rulecovered
Transitiongap: FND-PFM-MTD-078
Validationcovered
Permissioncovered
Edgecovered
Failurecovered
Boundarygap: FND-PFM-MTD-078
Concurrencygap: FND-PFM-MTD-078
Invariantcovered
Interactioncovered
Test Scenarios
8 scenarios proving CAP-PFM-MTD-016; 7 bound to an existing test.
01Repeated source files do not duplicate recordsinvariantapitest
[
{
"do": "Validate and apply, then resubmit unchanged lines and corrections.",
"provenance": "test",
"source": "services-platform:tests/acceptance/custom-objects/journeys/data-operations/CO-ACC-0401.spec.js#CO-ACC-0401: A registrar corrects a loaded boat by hand, and the nightly feed neither tramples the correction nor revives a boat that was archived or deleted @area:data-operations @P0 @isolation:parallel-safe"
}
]
Expected
The first load creates expected records, repetition makes no changes and corrections affect only supplied changed properties.
[
{
"do": "Validate the input.",
"provenance": "test",
"source": "services-platform:tests/acceptance/custom-objects/journeys/data-operations/CO-ACC-0400.spec.js#step 3: the rejections name each bad line and its property, never a value or an error class"
}
]
Expected
Rejected lines identify properties without values, and validation does not write records.
[
{
"do": "Apply with a stale digest and then the correct digest.",
"provenance": "test",
"source": "services-platform:tests/acceptance/custom-objects/journeys/data-operations/CO-ACC-0400.spec.js#step 4: an apply with a stale digest is refused 409 impact_digest_mismatch and the job stays validated"
}
]
Expected
The stale request fails while leaving validation intact; the accepted impact can be applied.
The object includes numbering, references and unique properties.
Steps
[
{
"do": "Apply valid lines and a line targeting an archived record.",
"provenance": "test",
"source": "services-platform:tests/acceptance/custom-objects/journeys/data-operations/CO-ACC-0400.spec.js#step 6: every created boat reads back as the file said, and the id refused at step 2 named no record"
}
]
Expected
Successful records have normal derived information and audit effects, while the archived target is refused.
Data
The object includes numbering, references and unique properties.
[
{
"do": "Load invalid endpoint and cardinality cases, then correct a known link with different endpoints.",
"provenance": "test",
"source": "services-platform:tests/acceptance/custom-objects/journeys/data-operations/CO-ACC-0402.spec.js#step 9: OWN-2 naming another boat is refused because endpoints never change, and with its own endpoints its notes update"
}
]
Expected
Validation refuses incompatible inputs and immutable endpoint changes before writing.
A known dated link has position and notes and another link is ended.
Steps
[
{
"do": "Submit corrections containing only a primary flag or omitting an end date.",
"provenance": "test",
"source": "services-platform:tests/acceptance/custom-objects/journeys/data-operations/CO-ACC-0402.spec.js#step 6: a CRW-1 line with only isPrimary replaces the association and clears its dates, position and notes, silently"
}
]
Expected
Omitted attributes clear and the ended link reopens without warning.
Data
A known dated link has position and notes and another link is ended.
Create-only, reader and foreign-workspace callers exist.
Steps
[
{
"do": "Load new and known links and inspect results under each caller.",
"provenance": "test",
"source": "services-platform:tests/acceptance/custom-objects/journeys/data-operations/CO-ACC-0404.spec.js#step 5: a clerk with the create key only has the known key refused as not found and the new key created"
}
]
Expected
New links require create, known links require update, disallowed callers fail and other submitters cannot read results.
Data
Create-only, reader and foreign-workspace callers exist.
Record and link files resolve keys into an active object.
Steps
[
{
"do": "Validate the files, archive the object, apply the validated impact and inspect line results and storage.",
"provenance": "proposed",
"source": [
"services-platform:tests/acceptance/custom-objects/journeys/data-operations/CO-ACC-0400.spec.js#step 6: every created boat reads back as the file said, and the id refused at step 2 named no record",
"services-platform:tests/acceptance/custom-objects/journeys/data-operations/CO-ACC-0402.spec.js#step 9: OWN-2 naming another boat is refused because endpoints never change, and with its own endpoints its notes update",
"services-platform:modules/custom-objects/tests/integration/services/persistence/custom-objects.integration.spec.js#restores an archived object as a draft, keeping its object id"
]
}
]
Expected
Check the ordinary write refusals and verify that no invalid records or links are inserted.
Data
Record and link files resolve keys into an active object.
Source
services-platform:tests/acceptance/custom-objects/journeys/data-operations/CO-ACC-0400.spec.js#step 6: every created boat reads back as the file said, and the id refused at step 2 named no record,services-platform:tests/acceptance/custom-objects/journeys/data-operations/CO-ACC-0402.spec.js#step 9: OWN-2 naming another boat is refused because endpoints never change, and with its own endpoints its notes update,services-platform:modules/custom-objects/tests/integration/services/persistence/custom-objects.integration.spec.js#restores an archived object as a draft, keeping its object id