Eric Streit 1 день назад
Родитель
Сommit
b3d049fa2f
3 измененных файлов с 17 добавлено и 16 удалено
  1. 1 1
      README.md
  2. 13 13
      docs/git-branches-tags.md
  3. 3 2
      docs/summary_session-2026-10-23-exceptions.md

+ 1 - 1
README.md

@@ -53,7 +53,7 @@ docs/              STATUS.md, plan.md, plan-*.md, analysis_*.md, summary_*.md
   mixes conforming Modula-2 with gm2 leniencies — see `docs/gaps/`).
   `lazyunique` now runs; the remaining `except*` corpus files still hit
   V3's declaration-order policy.
-- Active branch **`master`**, feature state **`v3-ptrchain`**.
+- Active branch **`master`**, feature state **`v3-finally`**.
   Recent milestones: `PACKEDSET`, ISO exceptions (`EXCEPT`/`RETRY`,
   `EXCEPTIONS`, `M2EXCEPTION`, catchable language traps including
   `functionException`, module `FINALLY`), and

+ 13 - 13
docs/git-branches-tags.md

@@ -1,10 +1,10 @@
 # Git branches and tags — how this repository is organised
 
-**Snapshot:** 2026-10-23, after `v3-function-exception`. `master` =
-`4238f67` (the functionException fix) plus a docs follow-up;
-`origin/master` = `5c92728`.  The functionException fix and README/docs
-are local and **not pushed yet**; M1–M5 and `v3-ptrchain` are on the
-remote.  306 tags (304 `v3-*` checkpoints).
+**Snapshot:** 2026-10-23, after `v3-finally`. `master` =
+`c0c227c` (module finalization) plus a docs follow-up;
+`origin/master` = `4017d8f`.  The FINALLY work is local and **not
+pushed yet**; earlier exceptions/pointer/functionException work is on
+the remote.  307 tags (305 `v3-*` checkpoints).
 
 Mental model:
 
@@ -15,7 +15,7 @@ Mental model:
 
 | Branch | State | What it is |
 | --- | --- | --- |
-| **`master`** | `4238f67` + docs, 2 commits ahead of origin | The only active branch; all current work is here. |
+| **`master`** | `c0c227c` + docs, 1 commit ahead of origin | The only active branch; all current work is here. |
 | `ast-stage-c` | `0f611c0` (2026-10-08), local only | Old stage branch, fully merged into master. Stale. |
 | `generics-inc1` | `6639c19`, 6 commits behind `origin/generics-inc1` | Old generics work, fully merged into master. Stale. |
 | `resolve-check` | `95ca4d6`, in sync with origin | Old branch merged into master. Stale. |
@@ -48,6 +48,7 @@ Each points at the commit that landed a feature, all with green gates:
 | `v3-exceptions` | `02b3763` | ISO exceptions M1–M4: parser, runtime, libraries, traps |
 | `v3-ptrchain` | `e804e57` | self-referential record layout and `p^.next^.value` |
 | `v3-function-exception` | `4238f67` | result function falling off its end |
+| `v3-finally` | `c0c227c` | module FINALLY / termination |
 
 These are immutable checkpoints.  Useful commands:
 
@@ -89,20 +90,19 @@ git tag -d v3-session-2026-10-22-final
 git push origin :refs/tags/v3-session-2026-10-22-final
 ```
 
-## Why 306 tags?
+## Why 307 tags?
 
 The project convention is one `v3-*` tag per green step across all
 sessions (two-phase parse slices, generics increments, Unicode, stdlib,
 …).  They are a searchable history of passing states, not branches.
-`git tag --list | wc -l` = 306 (304 `v3-*`) is expected; only the
+`git tag --list | wc -l` = 307 (305 `v3-*`) is expected; only the
 recent ones above matter for the current session.
 
 ## Current state
 
-- `master` = `4238f67` + docs, **2 commits ahead** of
-  `origin/master` (`5c92728`).
-- `v3-function-exception` is local; push it with `master` when ready.
-  `v3-ptrchain` and the exceptions/PACKEDSET/history tags are already
-  on the remote.
+- `master` = `c0c227c` + docs, **1 commit ahead** of
+  `origin/master` (`4017d8f`).
+- `v3-finally` is local; push it with `master` when ready.  Earlier
+  exception/pointer/functionException tags are already on the remote.
 - Next session: start from `master` and read
   `docs/handoff-2026-10-23-next.md`.

+ 3 - 2
docs/summary_session-2026-10-23-exceptions.md

@@ -102,7 +102,7 @@ because `ip` is declared after the procedures, like `onebyte*`.
 | `96a3080` | `v3-session-2026-10-23-exceptions-end` | M5 summary/docs |
 | `e804e57` | `v3-ptrchain` | self-referential record layout / pointer chains |
 | `4238f67` | `v3-function-exception` | result-function fall-through trap |
-| FINALLY fix | `v3-finally` | module finalization at normal termination |
+| `c0c227c` | `v3-finally` | module finalization at normal termination |
 
 The design commit is `2a30d8c`.
 
@@ -132,7 +132,8 @@ imported/local finalizers in reverse initialization order.  The program
 body itself is emitted as `<module>_init`, so a module `RETURN` leaves
 the init function and finalizers still run.  Tests: `t_finally`,
 `t_finally_return`, `t_finally_except`, `t_finally_local`,
-`FinallyOrder` (reverse order `P!B!A!`).  Tagged `v3-finally`.
+`FinallyOrder` (reverse order `P!B!A!`).  Tagged `v3-finally`
+(`c0c227c`).
 
 ---