activity-core/workplans
tegwick 9be4ddbdb7 feat(ACTIVITY-WP-0016-T04): producer trust-boundary guardrails + ADR-004
Add ADR-004 documenting the producer trust boundary: untrusted producers (LLM,
agent, human; erroneous and malicious), the trust-but-handle vs verify-and-mitigate
postures, error-locality and quarantine-with-provenance principles, and the concrete
activity-core mechanisms.

Implement producer-agnostic guardrails in executor.py, applied uniformly on the
happy path and the recovery path via _partition_items: structural-type -> schema ->
structural caps (_MAX_DEPTH, _MAX_STRING_LEN) -> reference allow-list -> count cap.
Each quarantine carries a reason. Closes the happy-path maxItems count cap deferred
from T03 (valid 9-item report keeps 7, quarantines 2). Reference allow-list reads
context["known_candidates"] via _allow_list_from_context; inert until a resolver
populates it. SCOPE.md updated (executor bullet + ADR list); no INTENT drift.

New tests: happy-path count cap, oversized-string guardrail, allow-list rejection.
Full suite: 218 passed, 1 skipped.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 18:10:17 +02:00
..
archived chore(consistency): apply state_hub_workstream_id writeback 2026-06-22 17:43:32 +02:00
ACTIVITY-WP-0005-railiance01-production-service.md Record state hub IDs for railiance deployment 2026-05-22 13:51:51 +02:00
ACTIVITY-WP-0006-post-triage-operational-hardening.md feat(ACTIVITY-WP-0016): register LLM output robustness & producer trust boundary workplan 2026-06-26 14:39:21 +02:00
ACTIVITY-WP-0007-ops-inventory-probe-runner.md Close ops inventory probe handoff 2026-06-16 03:51:02 +02:00
ACTIVITY-WP-0008-weekly-coding-retro.md Harden coding retro resolver selection 2026-06-18 15:13:08 +02:00
ACTIVITY-WP-0009-intent-gap-closure.md Align activity-core scope boundaries 2026-06-18 15:11:48 +02:00
ACTIVITY-WP-0010-daily-triage-llm-reconciliation.md docs(workplan): record railiance01 llm-connect smoke evidence 2026-06-19 15:58:04 +02:00
ACTIVITY-WP-0011-event-payload-context-resolver.md Finish event payload resolver workplan 2026-06-18 15:15:07 +02:00
ACTIVITY-WP-0012-definition-schedule-hot-reload.md feat(ACTIVITY-WP-0012): complete live admin-sync no-restart smoke 2026-06-22 16:25:26 +02:00
ACTIVITY-WP-0013-reuse-surface-report-gaps-resolver.md Add reuse-surface report gaps resolver 2026-06-18 17:58:00 +02:00
ACTIVITY-WP-0014-schedule-misfire-robustness.md feat(ACTIVITY-WP-0014): close workplan — catchup_latest deployed & verified on railiance01 2026-06-24 12:52:54 +02:00
ACTIVITY-WP-0015-adopt-statehub-beachhead-endpoint.md chore(ACTIVITY-WP-0015): dedupe state_hub_workstream_id frontmatter 2026-06-24 12:53:52 +02:00
ACTIVITY-WP-0016-llm-output-robustness-trust-boundary.md feat(ACTIVITY-WP-0016-T04): producer trust-boundary guardrails + ADR-004 2026-06-26 18:10:17 +02:00
ADHOC-2026-06-01.md Expand rule actions for per-repo tasks 2026-06-03 11:58:24 +02:00
custodian-WP-0001-temporal-backbone.md chore(workplan): close WP-0001 Foundation — all 21 tasks done 2026-05-14 15:03:26 +02:00
custodian-WP-0002-triggers-ops.md feat(WP-0002): complete Triggers & Ops workstream 2026-03-28 01:04:43 +01:00
custodian-WP-0003-event-bridge.md Normalize legacy WP-0003 status 2026-06-03 15:28:59 +02:00
custodian-WP-0003a-event-bridge-model-rules-registry.md feat(event-bridge): WP-0003a — domain model, rules module, event type registry 2026-05-14 22:01:15 +02:00
custodian-WP-0003b-event-bridge-parser-workflow-triggers.md chore(consistency): sync task status from DB [auto] 2026-05-14 23:03:29 +02:00
custodian-WP-0003c-event-bridge-context-integration.md feat(WP-0003c): context adapters, first ActivityDefinition, full test suite 2026-05-14 23:24:48 +02:00
custodian-WP-0004-railiance-ops.md chore(WP-0004): mark workplan done 2026-05-15 00:05:01 +02:00