{"version":"2.1.236","anchor":"saved-database-documents-land-under-a-per-collection-path-wi","canonical_anchor":"saved-database-documents-land-under-a-per-collection-path-wi","heading":"Saved database documents land under a per-collection path, with per-document skip reasons","tier":"notice","area":"Artifacts","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.236\/e\/saved-database-documents-land-under-a-per-collection-path-wi","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.236","markdown":"### Saved database documents land under a per-collection path, with per-document skip reasons\n\nSaved database documents go into per-collection folders, and you get a list of skipped ones with reasons.\n\n**What**\n\nDocuments saved by an artifact database read are written to `<out_dir>\/<collection path>\/<doc_id>.json`, large ones compacted, and the read returns empty data plus a list of the files written and the ones skipped.\n\n**Details**\n\n- Per-document skip reasons cover an unusable id, a duplicate name, an unsafe name, and a name that was not approved.\n- If any target file is denied by the file-edit rules, the whole save is aborted rather than partially written.\n- New failure codes distinguish a denied write, a file kept, a file moved, and a general error.\n\n**Evidence**\n\n`Add \\`out_dir\\` to a read to save each returned document as a JSON file under that directory`\n\n- Area: Artifacts\n- Names: `out_dir`\n- Tier: You'll notice\n- Useful: 3\/5\n- Signal: 2\/5"}