@agfpd/iapeer-memory-core 0.1.2 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agfpd/iapeer-memory-core",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "description": "iapeer-memory core — host-neutral TypeScript memory primitive: vault schema/taxonomy config, search engine, memoryd, context renderer, role contracts. Consumed by the @agfpd/iapeer-memory facade; version kept in lockstep by its release flow (docs/10-distribution.md).",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -167,8 +167,15 @@ export function fillInbox(
167
167
  fmBlock = setIfMissing(fmBlock, "title", basenameNoExt(opts.path));
168
168
  fmBlock = setIfMissing(fmBlock, "status", taxonomy.statusTokens.draft);
169
169
  fmBlock = setIfMissing(fmBlock, "created", opts.today);
170
- fmBlock = setIfMissing(fmBlock, "author", opts.agent);
170
+ // AUTHOR GUARD (инвариант Артура, инверсия 10.06): агент curator-set
171
+ // НИКОГДА не становится author в inbox-зоне. Курайторы трогают черновики
172
+ // только как курирование (rename/правки стиля — горячая дорожка
173
+ // инвертированного конвейера: копирайтер пишет НОВЫЙ файл при ренейме);
174
+ // бесхозный файл от курайтора остаётся без author до явной атрибуции —
175
+ // видимая аномалия лучше тихо присвоенного авторства. Существующий
176
+ // author и без гарда неприкосновенен (setIfMissing).
171
177
  if (!isCurator(opts.agent, opts.ctx)) {
178
+ fmBlock = setIfMissing(fmBlock, "author", opts.agent);
172
179
  fmBlock = setIfMissing(fmBlock, "needs_review", "true");
173
180
  }
174
181
  return fmBlock;