scrub / EXPORT_DOWNLOAD_UX_CONTRACTS.md
solidprivacy-nl
Add export download UX contract specification
e029fb4
|
Raw
History Blame Contribute Delete
3.94 kB

Export/download UX contracts

Workpackage: WP_EXPORT_DOWNLOAD_UX_CONTRACT_TESTS

Repository: solidprivacy-nl/scrub

Status: tests/documentation-only.

This document records the contract for the professional export/download UX redesign before implementation.


1. Purpose

The export/download UX may be grouped and renamed, but export semantics must stay unchanged unless a later approved implementation package explicitly changes them.

The contract protects these boundaries:

Export UX is grouped but semantics stay unchanged.
Scrub Key is separate and visibly sensitive.
Audit/technical downloads remain available but secondary.
Debug labels are planned for cleanup.
Implementation requires separate package.

2. Required export groups

The planned export/download section must separate:

Document downloaden
Scrub Key
Audit en technische bestanden

Meaning:

  • normal document outputs belong under Document downloaden;
  • Scrub Key belongs in its own visibly warned section;
  • audit/technical files remain available but move to a secondary/audit layer.

3. Primary and secondary outputs

Primary/normal document outputs:

Opgeschoonde tekst (.txt)
Word-document (.docx)
PDF (.pdf)

Secondary/audit outputs:

Vervangtabel (.csv)
Scrubrapport (.txt)
DOCX hygiene audit
Geavanceerde technische informatie

The contract is about grouping and hierarchy. It does not approve a change to download bytes, filenames, MIME types or availability.


4. Export semantics boundary

No export semantics change is approved by this contract package.

The redesign must not change:

filenames
MIME types
payloads
export eligibility
Scrub Key contents
report contents

The current implementation package must only be allowed to group/label existing downloads unless a later package explicitly approves an export-behavior change.


5. Scrub Key safety

The Scrub Key must be clearly separated from normal document downloads.

Scrub Key is sensitive because it can restore original values.

The future UI must include a separate warning near the Scrub Key download.

Required concepts:

Scrub Key clearly separated
Scrub Key is sensitive
can restore original values
separate warning

6. Audit and technical details remain available

Audit and technical details must not disappear.

They should become secondary layers such as:

Audit en risico’s
Geavanceerd
Audit en technische bestanden
Geavanceerde technische informatie

The implementation may make these details calmer or collapsed by default, but it must not remove them.


7. Planned debug/prototype copy cleanup

The direction is locked by contract tests:

Serial review — experimentele reviewhulp -> Stap voor stap controleren
Download opgeschoonde bestanden -> Exporteer resultaat
Technische details bij de vervangtabel -> Geavanceerde details bij de vervangtabel
Technische herkenningen -> Geavanceerde herkenningsdetails

These are planning contracts only. They are not implemented in this package.


8. Follow-up implementation route

Implementation sequence:

WP_EXPORT_DOWNLOAD_UX_CONTRACT_TESTS
WP_EXPORT_DOWNLOAD_UX_IMPLEMENTATION
WP_REVIEW_DEBUG_ELEMENTS_COLLAPSE_PLAN
WP_REVIEW_DEBUG_ELEMENTS_COLLAPSE_IMPLEMENTATION
WP_REVIEW_COPY_POLISH_IMPLEMENTATION
WP_MVP_UI_APP_VERIFICATION_CLOSEOUT

The immediate next implementation package is:

WP_EXPORT_DOWNLOAD_UX_IMPLEMENTATION

Do not start it automatically.


9. Explicit non-goals

No Streamlit implementation.
No export payload change.
No Scrub Key change.
No reinsert change.
No recognizer/benchmark change.
No product claim.
No threshold enforcement.
No production gate.

No product UI implementation is approved by this contract package. The implementation requires a separate workpackage and must preserve export semantics.