play data-safety: write the conditional required rows (PSL_ACCOUNT_DELETION_URL from accounts.deletionUrl, PSL_SUPPORT_DATA_DELETION_BY_USER from dataSafety.partialDeletion, PSL_DATA_DELETION_URL); a rule table checks every conditional row in check, declarations and --dry before Play answers 400
This commit is contained in:
parent
c9a7f095c4
commit
97ab76e9c8
14 changed files with 295 additions and 24 deletions
|
|
@ -230,6 +230,23 @@ Each entry: **symptom** → cause → what to do → what guards it now. The ful
|
|||
- **Guard:** `console plan` / `console verify` (CLI and the read-only MCP tools `console_plan`, `console_verify`), the
|
||||
console-autofill skill puts them first; `tests/console-plan.test.ts`.
|
||||
|
||||
## 21. Play Data safety: conditional required rows
|
||||
- **Symptom:** `play data-safety` answers 400 "Invalid safety labels declaration: Response missing for
|
||||
PSL_ACCOUNT_DELETION_URL" (or another `PSL_...` id) although `--dry` looked fine.
|
||||
- **Cause:** some questions are required only after another answer. Account creation not `PSL_ACM_NONE` requires the
|
||||
delete-account URL (`PSL_ACCOUNT_DELETION_URL`) and the data-only deletion question
|
||||
(`PSL_SUPPORT_DATA_DELETION_BY_USER`; when yes, `PSL_DATA_DELETION_URL`), and Play then refuses
|
||||
`PSL_HAS_OUTSIDE_APP_ACCOUNTS`. A selected data type needs its whole usage block.
|
||||
- **Do:** set `accounts.deletionUrl`, ask the owner for `dataSafety.partialDeletion: true | false` (and
|
||||
`partialDeletionUrl` when true and it is another page), run `storebound check` / `play data-safety --dry` until no
|
||||
`missing: <id>` is left. If Play names an id storebound does not know, export the form (Play Console > App content >
|
||||
Data safety > Export to CSV) and add the row in `dataSafety.extra` (same id = replaces the generated row).
|
||||
- **Guard:** `DATA_SAFETY_RULES` / `typeRules` / `dataSafetyIssues` in `cli/lib/data-safety.ts`; `check`,
|
||||
`project.declarations` and `play data-safety` (dry and real, before the POST) report them.
|
||||
- **Sources:** https://support.google.com/googleplay/android-developer/answer/10787469 (Data safety form, CSV import),
|
||||
https://support.google.com/googleplay/android-developer/answer/13327111 (account deletion: delete-account link;
|
||||
deleting other data is a separate question).
|
||||
|
||||
## Adding a lesson
|
||||
Every bug found in real use gets an entry in `docs/pitfalls.md` and here, and, where possible, a check or a test
|
||||
that fails without the fix (see CONTRIBUTING.md).
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue