Commit Graph

  • 813bc46640 docs(examples): add the CMS proof-of-concept dogfooding artifact main MechaCat02 2026-07-19 20:15:29 +02:00
  • 5682be366c fix(cms-poc): remediate findings surfaced by the CMS proof-of-concept MechaCat02 2026-07-19 20:15:17 +02:00
  • dbdd398d90 feat(email): native SMTP-listener ingress (A3) MechaCat02 2026-07-16 21:01:46 +02:00
  • 0dd03af0c6 feat(interceptors): hook set_if (CAS) + pic interceptors ls (§9.4 M12) MechaCat02 2026-07-16 20:44:42 +02:00
  • ef16d48a8c feat(interceptors): extend before/after hooks to docs/files/queue/pubsub/http (§9.4 M7-M11) MechaCat02 2026-07-16 20:37:18 +02:00
  • faf04174c4 perf(interceptors): per-execution resolve cache (§9.4 M6) MechaCat02 2026-07-16 20:22:11 +02:00
  • 8b70d52d43 feat(interceptors): per-interceptor wall-clock timeout (§9.4 M5) MechaCat02 2026-07-16 20:18:03 +02:00
  • 5592f1c97e feat(interceptors): KV after-hooks + before-hook data transform (§9.4 M3+M4) MechaCat02 2026-07-16 19:55:44 +02:00
  • be0c618672 feat(interceptors): ordered before-chains + cycle guard + ctx plumbing (§9.4 M1+M2) MechaCat02 2026-07-15 22:54:51 +02:00
  • eae2ee08f1 feat(triggers): shared dead-letter trigger fan-out (B2) MechaCat02 2026-07-15 22:20:24 +02:00
  • 6b2dcd41a6 feat(metrics): per-app observability dashboard over execution_logs (A2) MechaCat02 2026-07-15 21:42:18 +02:00
  • 35345e62de feat(cli): pic pull --group round-trips a group node MechaCat02 2026-07-15 21:19:59 +02:00
  • e4a58dc140 feat(cli): per-app docs admin read (pic docs ls/get --app) MechaCat02 2026-07-15 20:53:11 +02:00
  • 8fc78cd07f docs: correct the stale 'per-app email secret deferred' note MechaCat02 2026-07-15 20:31:10 +02:00
  • 80fbf2e642 test: give three no-teeth assertions their teeth MechaCat02 2026-07-15 20:13:12 +02:00
  • 8e68f3a1cb test(crypto): pin the dev-mode acknowledgement gate MechaCat02 2026-07-15 20:13:12 +02:00
  • 4bf518c86f test(executor): pin the emission budget through the real pubsub SDK MechaCat02 2026-07-15 20:13:00 +02:00
  • a09c346e83 test(dispatcher): pin trigger_depth ceiling in the async outbox path MechaCat02 2026-07-15 20:13:00 +02:00
  • 789325b6db test(authz): pin the editor role-floor on group pubsub + queue write caps MechaCat02 2026-07-15 20:13:00 +02:00
  • 977abc25d0 test(quota): pin docs ceiling, group docs byte race, and files disk-ordering rollback MechaCat02 2026-07-15 20:12:45 +02:00
  • 345db4a076 test: close the DB-suite hermeticity + vacuous-skip gaps MechaCat02 2026-07-15 19:39:13 +02:00
  • 2445074c87 test(cli): pin the group-create RBAC denial as HTTP 403 MechaCat02 2026-07-15 19:38:51 +02:00
  • 77397e4cb3 test(auth): pin the admin-session absolute-TTL cap MechaCat02 2026-07-15 19:38:51 +02:00
  • 27bda66be6 test(services): pin that the per-value byte caps reject before authz MechaCat02 2026-07-15 19:38:51 +02:00
  • a7fb7ea23c test(sdk): give the isolation and retry-negative tests teeth MechaCat02 2026-07-15 19:38:31 +02:00
  • 95d6b95272 feat(executor): expose ctx.trigger_depth and pin the invoke depth bump MechaCat02 2026-07-15 19:38:31 +02:00
  • 36272c8dac test(groups): pin the anon + isolation gates on the queue and pubsub services MechaCat02 2026-07-15 07:27:53 +02:00
  • 73c634ae0d test(groups): pin the shared-collection isolation boundary against real SQL MechaCat02 2026-07-15 07:27:53 +02:00
  • 612074af04 test: give the DDL and global-count suites their own database MechaCat02 2026-07-15 07:27:35 +02:00
  • b5ce4cec01 ci: run the DB-backed tests that CI was silently skipping MechaCat02 2026-07-15 07:27:21 +02:00
  • 251d7fe3dd test(e2e): give each dispatcher test its own database MechaCat02 2026-07-14 21:40:27 +02:00
  • 8f35050499 fix(groups): don't let with_events silently downgrade a transactional writer MechaCat02 2026-07-14 21:12:01 +02:00
  • 1fc4080800 fix(outbox): never resurrect a synchronous row on reclaim MechaCat02 2026-07-14 21:12:01 +02:00
  • fa79b4ee45 fix(files): check the quota BEFORE the destructive blob write MechaCat02 2026-07-14 21:11:49 +02:00
  • 735b2daedf docs(users): warn against wiring a users trigger to the non-transactional emit MechaCat02 2026-07-14 20:47:58 +02:00
  • c859c9aab2 fix(outbox): reclaim stale claims — a crash mid-dispatch stranded events forever MechaCat02 2026-07-14 20:38:29 +02:00
  • 966b209d2e feat(quota): add per-app storage ceilings MechaCat02 2026-07-14 20:32:32 +02:00
  • 3de75fe4a8 docs: record the transactional-outbox write-path invariant MechaCat02 2026-07-14 20:14:45 +02:00
  • 80a0d31cd2 fix(files): make file writes transactional and close a quota bypass MechaCat02 2026-07-14 20:09:03 +02:00
  • 58bf0ab3ec fix(docs): make docs writes transactional and the group quota a bound MechaCat02 2026-07-14 19:45:26 +02:00
  • b086713e3d fix(quota): make the per-group ceiling a bound, not a hint MechaCat02 2026-07-14 19:37:11 +02:00
  • 01e4e5a8f5 fix(kv): commit a write and its trigger fan-out in one transaction MechaCat02 2026-07-14 19:28:17 +02:00
  • a2360a9464 refactor(outbox): make the trigger fan-out connection-scoped MechaCat02 2026-07-14 19:20:41 +02:00
  • 155c5471b7 fix(quota): measure the per-group byte projection with one consistent metric MechaCat02 2026-07-14 07:18:14 +02:00
  • fc70f5e224 fix(materialize): take the per-(app,queue) lock so a consumer slot can't double-fill MechaCat02 2026-07-13 22:31:42 +02:00
  • 8b62b137c0 fix(executor): cap per-execution durable fan-out width MechaCat02 2026-07-13 22:27:32 +02:00
  • 590b98b60f fix(suppress): don't over-decline a nearer descendant's own route/trigger MechaCat02 2026-07-13 22:17:01 +02:00
  • 31e6fc964d fix(queue): don't count never-executed transient releases against max_attempts MechaCat02 2026-07-13 22:05:32 +02:00
  • bdcd3dc7f4 fix(executor): bound Rhai→JSON materialization to prevent anonymous OOM MechaCat02 2026-07-13 21:50:16 +02:00
  • d08df88df5 fix(interceptors): harden the §9.4 slice — seal, fail-closed, re-entrancy, shared coverage MechaCat02 2026-07-13 21:20:20 +02:00
  • 2fc9476f9e feat(interceptors): §9.4 service interceptors — thin KV allow/deny slice MechaCat02 2026-07-13 20:44:50 +02:00
  • fcd9451ab1 docs: reconcile roadmap with shipped v1.2 Workflows track MechaCat02 2026-07-13 20:03:12 +02:00
  • 3da70a66c7 feat(cli): add pic docs/dead-letters ls group read mirrors MechaCat02 2026-07-13 20:00:37 +02:00
  • bc2538b5b5 fix(cli): reject unknown fields in manifest entry specs (fail-loud on typos) MechaCat02 2026-07-13 19:50:02 +02:00
  • 486cc44a06 refactor(authz): route users_service through the shared authz-verdict mapper MechaCat02 2026-07-13 19:46:22 +02:00
  • 5e6bb762f4 refactor(groups): dedup the group-service value-size check + shared-emit tail MechaCat02 2026-07-13 19:44:06 +02:00
  • f1b480f2eb refactor(sdk): consolidate the SDK error/bridge helpers MechaCat02 2026-07-13 19:36:31 +02:00
  • aa3f0531f0 fix(workflows): pull hard-errors on a definition-less workflow, not silent skip MechaCat02 2026-07-12 19:19:03 +02:00
  • aeebdd2f3f fix(workflows): close re-review gaps in the pull round-trip + partial-failure UI MechaCat02 2026-07-12 19:08:21 +02:00
  • eaf5ace30f fix(workflows): close review gaps — pull round-trip, dup-names, reclaim budget MechaCat02 2026-07-12 18:56:44 +02:00
  • bd9c3fa4f0 feat(workflows): M6 — dashboard run-history + DAG view MechaCat02 2026-07-12 17:57:56 +02:00
  • 5a630e1d9f feat(workflows): M5 — SDK workflow::start + admin run API + pic CLI MechaCat02 2026-07-12 17:48:38 +02:00
  • 74d5874384 feat(workflows): M4 — nested sub-workflows (start_child, parent-park, depth ceiling) MechaCat02 2026-07-12 17:30:16 +02:00
  • 41a21c0551 feat(workflows): M3 — conditional when + input templating at run time MechaCat02 2026-07-12 17:18:01 +02:00
  • a55c2f112e feat(workflows): M2 — durable orchestrator worker (claim/execute/advance) MechaCat02 2026-07-12 17:12:42 +02:00
  • 44f992cbb0 feat(workflows): M1 — schema + definition validation + declarative reconcile MechaCat02 2026-07-12 16:46:32 +02:00
  • c8c4f012ff docs: reconcile blueprint/design-doc/CLAUDE.md to shipped v1.2 state MechaCat02 2026-07-12 14:53:34 +02:00
  • c03c0c83c5 feat(dashboard): group data-plane read surfaces + CodeEditor readOnly fix MechaCat02 2026-07-11 23:48:09 +02:00
  • a3c4267f6c feat(cli): plan warnings, apply confirm + blast-radius gate, files --group, unified owner-XOR MechaCat02 2026-07-11 23:47:59 +02:00
  • 5e1bda1f32 fix(core): cron double-fire, materialize warnings, group quota fast path, SSE channel cap MechaCat02 2026-07-11 23:47:47 +02:00
  • 86448beb06 fix(security): server-authoritative approval gate + auth/session/file hardening MechaCat02 2026-07-11 23:47:35 +02:00
  • b8b047368e feat(realtime): external SSE subscription for group shared topics (§11.6 D2 / Track A M6) MechaCat02 2026-07-11 15:33:39 +02:00
  • 0f05c270d1 feat(kv): set_if compare-and-swap for KV (per-app + shared + SDK) (Track A M5) MechaCat02 2026-07-11 15:19:03 +02:00
  • 636106e9ea feat(quota): per-group total-byte quotas for shared KV + docs (Track A M4) MechaCat02 2026-07-11 15:09:01 +02:00
  • 1a69778c0c feat(secrets): AAD-bind email-trigger inbound secrets v0->v1 (Track A M3) MechaCat02 2026-07-11 14:58:35 +02:00
  • fd4336e883 feat(queue): dead-letter store for group shared queues (§11.6 D3 / Track A M2) MechaCat02 2026-07-11 14:41:04 +02:00
  • c06a9e801e feat(apply): make the per-env approval gate hermetic (§3 M3 / Track A M1) MechaCat02 2026-07-11 14:31:15 +02:00
  • 4b4b3148b7 feat(apply): server-side enforcement of per-env approval gating (§3 M3 / §4.2) MechaCat02 2026-07-11 14:01:04 +02:00
  • bbfdb1bf47 fix(apply): bound the blast-radius subtree down-walk CTE MechaCat02 2026-07-11 13:25:06 +02:00
  • 87292fc4e9 refactor(apply): split reconcile_group_structure_tx create/reparent branches MechaCat02 2026-07-07 21:49:18 +02:00
  • 6ec034fb1d refactor(apply): unify divergence detection and drop the plan-path N+1 MechaCat02 2026-07-07 21:49:05 +02:00
  • 3f272daf04 fix(cli): make the per-env approval gate fail closed MechaCat02 2026-07-07 21:48:09 +02:00
  • 2e3263002a fix(apply): gate group content writes in-tx to close a create-race authz hole MechaCat02 2026-07-07 21:47:59 +02:00
  • 8d71620e11 style(test): rustfmt the env-approval journey MechaCat02 2026-07-07 20:28:59 +02:00
  • f0e18d263b style(test): rustfmt the structural-divergence journey MechaCat02 2026-07-07 20:28:37 +02:00
  • e2bfe633a7 test/docs(cli): §3 M3 per-env approval journey; Tier 1 complete MechaCat02 2026-07-07 20:28:28 +02:00
  • 62710b5d81 feat(cli): §3 M3 — per-env approval gating ([project.environments]) MechaCat02 2026-07-07 20:28:28 +02:00
  • b8eced9d91 test/docs(apply): §6 M2 structural-divergence journey + design note MechaCat02 2026-07-07 20:23:10 +02:00
  • cb3d458cfd feat(apply): §6 M2 — structural-divergence detection + declarative reparent MechaCat02 2026-07-07 20:23:10 +02:00
  • dcc387c345 test/docs(apply): §6 M1 group-create journey + design note MechaCat02 2026-07-07 20:07:12 +02:00
  • 0078ae8b26 feat(apply): §6 M1 — declarative group create (directory-nesting parentage) MechaCat02 2026-07-07 20:07:03 +02:00
  • 76926de369 fix(apply): bound the blast-radius up-walk; fix two stale comments MechaCat02 2026-07-07 19:21:03 +02:00
  • 86b51df50d refactor(apply): address ownership review follow-ups (#3–#6) MechaCat02 2026-07-07 07:49:52 +02:00
  • ffa8b02506 fix(apply): restore bare-bundle wire compat on the plan endpoints MechaCat02 2026-07-07 07:37:35 +02:00
  • 74f7a67be7 fix(apply): preserve project name on a name-less re-apply MechaCat02 2026-07-07 07:37:25 +02:00
  • f673922d89 feat(cli): pic projects ls + §7 M3/track-complete docs MechaCat02 2026-07-06 21:26:10 +02:00
  • 30fe160f16 feat(apply): cross-repo blast-radius in the plan preview MechaCat02 2026-07-06 21:17:15 +02:00
  • b4eb226d20 feat(apply): project on the plan wire + ownership preview annotation MechaCat02 2026-07-06 21:09:55 +02:00
  • 5a820d7262 test/docs(ownership): attach-ceiling journey + M2 status MechaCat02 2026-07-06 20:57:57 +02:00
  • 5bb1ccad5e feat(apply): [project] parent_group attach-point ceiling MechaCat02 2026-07-06 20:57:03 +02:00