Skip to content

DL-024.5+6: boundsExceeded and runDir in dld-core - #48

Merged
jimutt merged 1 commit into
feat/dld-core-completionfrom
feat/dld-core-bounds-paths
Aug 27, 2026
Merged

DL-024.5+6: boundsExceeded and runDir in dld-core#48
jimutt merged 1 commit into
feat/dld-core-completionfrom
feat/dld-core-bounds-paths

Conversation

@jimutt

@jimutt jimutt commented Aug 27, 2026

Copy link
Copy Markdown
Owner

What

DL-024 items 5+6: boundsExceeded pure function in run-state.ts and runDir helper in paths.ts.

Why

boundsExceeded closes OpenCode's maxMinutes gap — the direction doc promised Move 1 would unlock it. runDir replaces six inline join(root, ".dld", "runs", slug) copies.

What changed

  • boundsExceeded(state, events) returns { reason: "maxItems" | "maxMinutes" } | null — pure, no exec.
  • runDir(root, slug) in paths.ts.
  • Pi's withinBounds delegates. OpenCode's bounds check now enforces both maxItems and maxMinutes.

Stacks on #46.

Test coverage

124 bun tests, 305 bats, tsc, tessl lint — all green.

@jimutt
jimutt force-pushed the feat/dld-core-bounds-paths branch from 5fc08bf to 401aef7 Compare August 27, 2026 12:41
@jimutt
jimutt marked this pull request as ready for review August 27, 2026 13:20
DL-024 items 5+6. boundsExceeded(state, events) as a pure function in
run-state.ts — both harnesses call it instead of inline checks. runDir
in paths.ts replaces six join(root, '.dld', 'runs', slug) copies.

OpenCode's server.ts now enforces maxMinutes alongside maxItems — the
gap the direction doc promised Move 1 would close. Pi's loop.ts
withinBounds delegates to boundsExceeded.

All suites green.

Co-Authored-By: Kimi K3 <noreply@pi.dev>
Generated-By: pi 0.84.2
Co-Authored-By: Kimi K3 <noreply@pi.dev>
Generated-By: pi 0.84.2
@jimutt
jimutt force-pushed the feat/dld-core-bounds-paths branch from 401aef7 to 3d067e7 Compare August 27, 2026 13:21
@jimutt
jimutt merged commit 49d3007 into v1 Aug 27, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant