Before accepting the Digital Oath and publishing your app, you must rigorously test its logic. Testing is not optional — it is the professional standard that justifies the responsibility you accept.
Majormatic executes your logic exactly as you defined it. The platform does not evaluate whether the logic is professionally correct — it enforces that the output conforms to your declared schema. If your logic is wrong, the system produces well-structured wrong results.
Testing is the only mechanism that validates whether your workflow produces outputs that are professionally accurate, not just structurally valid. You must test before accepting the Digital Oath — the oath affirms that you have done this work.
result.json ensures the output has the right shape. Your test library ensures the output has the right content. These are separate validation layers and both are mandatory.
The Expert Test Library is the set of reusable test scenarios you create for your app. It must be built before publication. Its purpose is to prove your app works reliably across the realistic range of inputs it will receive in professional use.
Platform review requires at least 3 test cases. Professional quality requires more. Build as many as needed to cover your realistic use range.
Test cases should be structured so you can re-run them when you update the app. This allows you to verify that changes do not break existing functionality.
Tests must cover the realistic range of inputs — not just the ideal case. Include typical professional scenarios your users will actually encounter.
Your test library must include all four test types. Omitting any type leaves gaps that platform review will identify — and that your users will eventually encounter.
Test with complete, correctly formatted inputs that represent the typical professional use case. Verify the output is structured, accurate, and meets the quality criteria declared in result.json.
Test with inputs that violate validation rules — too short, wrong format, missing required fields. Verify the platform catches these before execution. These tests confirm your input.json validation rules work correctly.
Test with inputs that are technically valid but professionally incomplete — cases where the AI may struggle because insufficient context was provided. Verify the output handles uncertainty appropriately.
Test with inputs at the limits of your declared constraints — maximum file size, minimum text length, unusual characters, very short inputs, very long inputs. Verify the app behaves correctly at the boundaries.
Every output your app produces must meet these quality standards. These are the criteria against which platform reviewers will evaluate your app — and the standards your professional users will rely on.
The output reflects what the input data actually states. No fabrication, no unfounded assertions, no overclaiming.
The output is written in plain professional language appropriate to the target audience. Technical terms are used correctly.
Running the same input twice produces structurally consistent results. Minor AI variation is acceptable; structural inconsistency is not.
The user must be able to understand how the output was produced — what inputs drove which conclusions. Black-box reasoning is not acceptable.
Outputs that could be interpreted multiple ways leave users unable to make confident professional decisions. Be explicit.
Outputs that apply generic statements to specific inputs undermine professional utility. The output must address the specific case provided.
Outputs that assert facts without a traceable basis cannot be defended professionally. Claims must be supportable from the input data or cited external sources.
Before accepting the Digital Oath and submitting for review, verify each item in this checklist. This is the standard the platform review team applies.
What you commit to when you accept professional responsibility for your published app
Read guide →How to design your workflow and configure the ABI contract files
View guide →How to submit your tested and verified app to Appstream after testing
View guide →