245 Commits

Author SHA1 Message Date
ddff84ffed Any slice is to clone into the context allocator 2026-09-25 09:53:36 +07:00
497881a333 An into temporary is reclaimed by its region, so its leak is not a gap 2026-09-25 09:53:16 +07:00
51ce9a2ba6 Any expression is to take its type from (the T expr) 2026-09-25 09:52:29 +07:00
1cec47b5d4 Result and try are cancelled: conditions are the error mechanism 2026-09-25 09:45:48 +07:00
7a1d9c1263 The Map is to take the Swiss-table layout 2026-09-25 09:44:59 +07:00
af4da764b2 A dev build is to name the raylib resources still loaded at exit 2026-09-25 09:43:52 +07:00
836185a174 A diagnostic's clauses have a fixed order, and a stable kind waits for the docs it would link to 2026-09-25 09:41:24 +07:00
6a1182df5d A test binary runs under a temporary directory of its own and leaves nothing in the one it was given 2026-09-25 09:40:00 +07:00
ff89f25e48 C-c C-c is to report every error in a form, through an error type that absorbs what it causes 2026-09-25 09:37:16 +07:00
92d63e3b36 Every decision taken in the TODO review is recorded, and NEXT is a keyword the file declares 2026-09-25 09:34:47 +07:00
795ba945d9 A dyn value held beside a sibling that can allocate is rooted until it is used, on every backend 2026-09-25 09:32:34 +07:00
0d629d791f The array an index or a slice is taken of is rooted while its index runs, when it is a temporary 2026-09-25 09:30:41 +07:00
11dc230974 A defn- is private to its module, and the module's own macros may call it 2026-09-25 08:57:20 +07:00
793b0eea9e A defn- is private to its module, the package's own macros may write calls to it, and the refusal names the fix 2026-09-25 08:55:37 +07:00
96314accd0 One library pipeline builds every program, one alias names the corpus, and a closed session leaves no directory behind 2026-09-25 08:53:45 +07:00
00f116ea29 Six small refusals and conversions say what the program wrote 2026-09-25 08:41:31 +07:00
6f0f4957f4 The break buffer, the inspector and the watch table show what a stopped program holds 2026-09-25 08:37:15 +07:00
ff744120fc A release build's watch is only its value, next-error lets go of a stack that has resumed, and the frame a stop is in is always shown 2026-09-25 08:36:53 +07:00
0653f341d0 A dyn value held in an operand list is rooted while a sibling operand may allocate 2026-09-25 08:36:34 +07:00
63f1a1357f Merge branch 'master' into worktree-agent-ad23aafb29b84cc8b 2026-09-25 08:33:28 +07:00
cb0be62087 An integer written at or above 2^63 is a u64 and nothing else, and vec-new reads a type from its argument only when the builtin is what was called 2026-09-25 07:43:24 +07:00
6fd456c0a2 A function declared with defn- is callable only from the files of its own package 2026-09-25 07:42:40 +07:00
f986c0728a A test binary names the signal that killed a daemon, and the break buffer keeps its keys under Evil 2026-09-25 07:40:58 +07:00
414e1e5ae6 The temp directory is left to the build-plumbing lane, and under Evil the break buffer takes only the keys it binds
The dead-session sweep and the remove-on-close half are dropped: the sweep contradicts the recorded non-goals, and the other lane owns removal on a clean close. The Evil keys are defined per state from the map's own bindings, so special-mode-map's h, SPC, < and - no longer shadow Evil's.
2026-09-25 07:40:33 +07:00
88584f76bc The records say what the tree does, and an arena grown in place answers to its budget 2026-09-25 07:39:11 +07:00
918edfb0b5 plan.org describes containers, pools and classes as they are after the repeal 2026-09-25 07:37:37 +07:00
52681ec58c Two gaps found on the way are on record: the half-write abort flake and the one-shot commands' empty work directory 2026-09-25 07:33:32 +07:00
cda939c8be Only a place has an address in the inspector, and a watched dyn value and string are pinned armed 2026-09-25 07:32:25 +07:00
7d75cc0a5d The CLI and the tests load, check and link a program through one module in the library 2026-09-25 07:30:55 +07:00
54ec52fde6 A dev session that ends cleanly takes its directories with it, and Build.executable says where the IR it kept is 2026-09-25 07:28:34 +07:00
377ada8d27 The inspector says where a slot's value is stored 2026-09-25 07:27:25 +07:00
5477c75909 Three of the four under-load and dogfooding entries are settled, and the fourth records what was tried 2026-09-25 07:24:20 +07:00
37ccca56a3 Every sweep reads the corpus through one alias, and a build that raises is a FAIL line in each of them
The sanitizer sweep also lists the five macro programs that run.
2026-09-25 07:23:12 +07:00
85b9f35a66 (watch "name" v) renders any value into the watch table the way print renders it 2026-09-25 07:22:59 +07:00
7b843f6753 TODO.org records what this lane settled and the one decision it left 2026-09-25 07:17:07 +07:00
aa5052e401 A dyn value an expression answers is the reply's value, not the program's output 2026-09-25 07:14:13 +07:00
cf028e23ea A class and each case of a data type are names on the definitions list 2026-09-25 07:09:46 +07:00
8b354d4bc8 The notes say what is built: no pool, frames on x86, implicit widening, and the budget in the spec 2026-09-25 07:05:55 +07:00
9194f918fc An aggregate that reads its own destination sees the old value, on x86 too
x86 built a settling right-hand side straight into its destination, so (set p (P {.a (.b p) .b (.a p)})) wrote .a and read it back for .b. assign now also asks whether the value reads storage the destination lies in, and goes through the temporary when it does. The global-initialiser entry was already closed by startup_plan's Set; the unrooted-temporary entry turns out to be a both-backends rooting gap and stays open for a decision.
2026-09-25 07:05:18 +07:00
2e58880160 The break buffer hides the prelude's frames and opens the source behind a frame 2026-09-25 07:04:56 +07:00
9c0e659209 next-error stops on a diagnostic's notes, and CFn is drawn as a type 2026-09-25 07:01:48 +07:00
5557594f31 What the dogfooding session turned up 2026-09-25 06:45:26 +07:00
9d7da2ba7a A stop takes the window, because the next key is aimed at it 2026-09-22 11:12:53 +07:00
45cc4d20e8 One file holds what five did
# Conflicts:
#	FIX.org
2026-09-21 21:07:40 +07:00
57fe91f303 Five records become one, and every citation lands somewhere
FIX.org, NEXT.md, DISCUSS.org, docs/DISCUSS.md and the session handoff at the
root are one TODO.org now: 293 entries under seven subsystem headings, each
carrying an org keyword that says where it stands. A DONE entry is a few lines
saying what was decided and what that rules out; the reasoning that would not
compress — the embedding spike and the four reports the hand-written x86
backend was built from — moved into docs/BUILT.md instead, and its entries
point there in one line.

Every entry was checked against the tree before it got a keyword, and the
prose was wrong in both directions. Things the deleted files called open were
built: the first-evaluation stall, main being redefinable, macro parameter
lists, the type-limit constants, the array constructors, the byte fills,
inc/dec, the discard's fontification, the Emacs buffers, rt_die's _exit, the
backtrace surface, and the acceptance failure that could print and still exit
zero. Things they called done were not: the backend reports' no-plan buckets
had gone stale in the other direction, the value-dependent defvar was
superseded rather than built, and macro-expansion source locations are on an
unmerged lane, so that entry is NEXT and names the branch.

Every comment that cited one of the five by name now cites a heading that
exists, in TODO.org or in docs/BUILT.md. The session reports under
docs/handoffs/ keep naming the files they worked on, because rewriting them
would falsify what those sessions did; each carries a note saying where the
content went.
2026-09-21 21:05:48 +07:00