From baede5c3730e24183e9f830be887f55a961b7bbf Mon Sep 17 00:00:00 2001 From: "shoney.arickathil" Date: Tue, 1 Sep 2026 22:11:11 +0200 Subject: [PATCH] =?UTF-8?q?feat(lang42):=20proc.run=5Fdl=20=E2=80=94=20dea?= =?UTF-8?q?dline=20and=20caps=20at=20the=20call=20site?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - one stdlib_members row (arity 5, id 96, nullable Proc return, Proc record class appended) — the net _dl precedent verified: those rows needed no emit.ml change and neither does this one - woc-test: 557 checks, 0 failures Co-Authored-By: Claude Fable 5 --- compiler/src/types.ml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/compiler/src/types.ml b/compiler/src/types.ml index 912376a..6e28cc7 100644 --- a/compiler/src/types.ml +++ b/compiler/src/types.ml @@ -313,6 +313,10 @@ let stdlib_members : stdlib_member list = m "time" "after" 3 90 None None; (* proc *) m "proc" "run" 2 56 (Some (TNullable (TScalar proc_record_name))) (Some proc_record_name); + (* iteration 42: per-call bounds — deadline_ms, out_cap, err_cap + (<= 0 picks the default: 30 000 ms / 1 MiB / 64 KiB). A bound + violation kills the child and traps WO_T_IO naming the bound. *) + m "proc" "run_dl" 5 96 (Some (TNullable (TScalar proc_record_name))) (Some proc_record_name); (* json — both members are lowered specially (emit.ml): encode needs its argument's static kind, and decode has no type until an `as` names one, so neither goes through the generic builtin path. They are listed here