Retire dev: final reconciliation into master #99

Merged
lost-rob0t merged 80 commits from reconcile/dev-into-master-final into master 2026-08-16 14:17:49 +00:00
lost-rob0t commented 2026-08-16 14:08:28 +00:00 (Migrated from github.com)

Purpose

Make master the sole canonical development branch by performing the final semantic reconciliation of the diverged long-lived dev history into a branch created from current master.

After this PR, normal development must branch from current master and target master; dev is retired/deprecated and must receive no new work.

Audited divergence

  • audited master: e2fa1991d8b08b74bcb2194c7a10f02da2431ad1
  • audited dev: 6d2feb103e57f2227b3609430ae7c68e7e834aa1
  • merge base: e9586b935758dbae69283e6a099e30cdb29a5ba9
  • dev ahead of master: 78 commits
  • dev behind master: 21 commits

The reconciliation commit is bd4b9d1ecd808f5e3aecf53df0b9c54337500b94, with audited master as first parent and audited dev as second parent. Published history was not rewritten or force-pushed.

Preserved from master

  • persistent human users and first-run star:intel authentication from PR #97
  • auth user storage/design-view support
  • login/user/password HTTP routes
  • human-user unit suite
  • current master Nix/CI hardening
  • current Compose/auth configuration and documentation

Preserved from dev

  • backend-neutral target lease protocol and deterministic memory backend from PR #94 / #30
  • fine-grained authorization runtime and scoped HTTP/service policy
  • target dispatch/recovery/repository work
  • CouchDB document-update, target-acceptance, outbox, quarantine, and view-registry work
  • Rabbit retry/quarantine/settlement work
  • operational-salvage workflow/tests
  • CouchDB view integration and authorization test coverage

Semantic conflict resolution

Seven paths were modified on both sides since the merge base:

  1. .github/workflows/smoke-tests.yml: retained master's stronger Nix action, flake evaluation, build gate, timeouts, permissions, and concurrency controls. Branch policy is intentionally changed only after this reconciliation lands.
  2. scripts/stack-test.sh: retained dev's broader scoped authorization/denial stack coverage; persistent human users remain covered by the dedicated master unit/API code and test suite.
  3. source/gserver-settings.lisp: union of master human-user settings/public login path and dev Rabbit retry/quarantine settings.
  4. source/package.lisp: union of master human-user exports and dev authorization/target/Rabbit/CouchDB exports.
  5. source/starintel-gserver.asd: retained dev's newer runtime module graph and inserted master auth/users after the shared auth store.
  6. starintel-gserver-tests.asd: retained dev's newer suites and inserted master auth-users-test.
  7. t/run-tests.lisp: retained dev required suites and added fail-on-empty auth-users-tests.

All other master-only changed files were copied verbatim into the dev-derived reconciled tree; all other dev-only changes remain intact.

Open dev-targeting PR disposition

  • #95: valid target-lease backend work; preserve, refresh against reconciled master, and retarget to master after this PR lands.
  • #79: AGPL relicensing; requires separate legal/contributor-permission review. Do not fold into this runtime reconciliation. Retarget to master after migration if kept open.

Verification

CI on this PR is the authoritative execution environment because the connected execution environment has no direct GitHub/network checkout. Required repository workflows must complete successfully before merge. Exact commands/counts will be recorded from workflow evidence; zero-test discovery is treated as failure.

Resulting branch policy

Once merged, a follow-up policy slice will update checked-in docs/workflow triggers and issue #53 to state:

  • master is canonical.
  • all feature/fix/research/hotfix branches start from current master.
  • all normal PRs target master.
  • dev is retired/deprecated and receives no new work.
## Purpose Make `master` the sole canonical development branch by performing the final semantic reconciliation of the diverged long-lived `dev` history into a branch created from current `master`. After this PR, normal development must branch from current `master` and target `master`; `dev` is retired/deprecated and must receive no new work. ## Audited divergence - audited master: `e2fa1991d8b08b74bcb2194c7a10f02da2431ad1` - audited dev: `6d2feb103e57f2227b3609430ae7c68e7e834aa1` - merge base: `e9586b935758dbae69283e6a099e30cdb29a5ba9` - dev ahead of master: 78 commits - dev behind master: 21 commits The reconciliation commit is `bd4b9d1ecd808f5e3aecf53df0b9c54337500b94`, with audited master as first parent and audited dev as second parent. Published history was not rewritten or force-pushed. ## Preserved from master - persistent human users and first-run `star:intel` authentication from PR #97 - auth user storage/design-view support - login/user/password HTTP routes - human-user unit suite - current master Nix/CI hardening - current Compose/auth configuration and documentation ## Preserved from dev - backend-neutral target lease protocol and deterministic memory backend from PR #94 / #30 - fine-grained authorization runtime and scoped HTTP/service policy - target dispatch/recovery/repository work - CouchDB document-update, target-acceptance, outbox, quarantine, and view-registry work - Rabbit retry/quarantine/settlement work - operational-salvage workflow/tests - CouchDB view integration and authorization test coverage ## Semantic conflict resolution Seven paths were modified on both sides since the merge base: 1. `.github/workflows/smoke-tests.yml`: retained master's stronger Nix action, flake evaluation, build gate, timeouts, permissions, and concurrency controls. Branch policy is intentionally changed only after this reconciliation lands. 2. `scripts/stack-test.sh`: retained dev's broader scoped authorization/denial stack coverage; persistent human users remain covered by the dedicated master unit/API code and test suite. 3. `source/gserver-settings.lisp`: union of master human-user settings/public login path and dev Rabbit retry/quarantine settings. 4. `source/package.lisp`: union of master human-user exports and dev authorization/target/Rabbit/CouchDB exports. 5. `source/starintel-gserver.asd`: retained dev's newer runtime module graph and inserted master `auth/users` after the shared auth store. 6. `starintel-gserver-tests.asd`: retained dev's newer suites and inserted master `auth-users-test`. 7. `t/run-tests.lisp`: retained dev required suites and added fail-on-empty `auth-users-tests`. All other master-only changed files were copied verbatim into the dev-derived reconciled tree; all other dev-only changes remain intact. ## Open dev-targeting PR disposition - #95: valid target-lease backend work; preserve, refresh against reconciled master, and retarget to `master` after this PR lands. - #79: AGPL relicensing; requires separate legal/contributor-permission review. Do not fold into this runtime reconciliation. Retarget to `master` after migration if kept open. ## Verification CI on this PR is the authoritative execution environment because the connected execution environment has no direct GitHub/network checkout. Required repository workflows must complete successfully before merge. Exact commands/counts will be recorded from workflow evidence; zero-test discovery is treated as failure. ## Resulting branch policy Once merged, a follow-up policy slice will update checked-in docs/workflow triggers and issue #53 to state: - `master` is canonical. - all feature/fix/research/hotfix branches start from current `master`. - all normal PRs target `master`. - `dev` is retired/deprecated and receives no new work.
Sign in to join this conversation.
No description provided.