Files
makelore/.project-docs/30-worklog/tasks/20260831-merge-upstream-main-7c3a91f2.md
T
inman 38f85f6b5e
Electron E2E / Electron E2E (macos-latest) (push) Has been cancelled
Electron E2E / Electron E2E (ubuntu-latest) (push) Has been cancelled
Electron E2E / Electron E2E (windows-latest) (push) Has been cancelled
docs: record upstream merge promotion
2026-08-31 10:57:23 +08:00

5.1 KiB

Task: Merge upstream updates into main

Identity

  • Task ID: 20260831-merge-upstream-main-7c3a91f2
  • Mode: Integration
  • Branch: codex/20260831-merge-upstream-main-7c3a91f2-merge-upstream-main
  • Worktree: /Users/inmanx/Documents/makelore-merge-upstream-main-7c3a91f2
  • Base commit: 62304dc85b
  • Owner: codex
  • Status: Completed

Scope

  • Integrate the occupied local main worktree's tracked source changes and intentional source/test additions, based on 48a9189, onto fetched origin/main at 62304dc.
  • Preserve the upstream Plugin Marketplace Release A and AI Design Living Form V2 integrations while resolving overlapping local Code, auth, navigation, Canvas utility, project-data, and documentation changes semantically.
  • Exclude the untracked generated resources/learning-player/ artifact from Git without deleting it locally.
  • Promote the verified integration result to the local main branch; do not push to the remote.

Intent And Constraints

  • Capture the dirty source work as a non-destructive snapshot commit before attempting a three-way merge.
  • Do not overwrite the tree with either side wholesale. Preserve Main-owned runtime, authentication, project-data, cloud Canvas, Marketplace trust, and packaging boundaries.
  • Treat the user's explicit instruction to merge the local changes into main as confirmation to adopt the local single-Agent-Server parent-process topology and reconcile ADR-006/current architecture accordingly.
  • Keep source task records read-only. Record integration decisions and verification only in this integration task record and canonical Integration-Gate documents.
  • Do not commit dependencies, downloaded runtimes, generated build output, reports, caches, secrets, or local user data.

Outcome

  • Captured the occupied local source tree without mutating it as commit 33fb31fb285b5cfb00d194a036aaf6e21cf8c5a1 on codex/local-main-snapshot-20260831-7c3a91f2. The generated 93 MiB resources/learning-player/ directory was deliberately excluded from Git and remains in the original worktree.
  • Merged that snapshot into upstream 62304dc85b3c1069cd656dfacb61ee820e216fa2 with semantic conflict resolution. Plugin Marketplace Release A, Data Service, AI Design Living Form V2, cloud-only Canvas, project identity, module access, local voice input, conversation navigation, and the local .makelore-only project-data boundary are all retained.
  • Adopted one long-lived parent Pi Agent Server with isolated per-Conversation Runtime, Session, credential store, extension context, generation and JSONL channel. Thread configuration is supplied by a per-thread extension factory closure rather than process-global environment mutation or late CLI flag injection. Child Agents remain independent short-lived processes.
  • Reconciled ADR-006, the decision index, architecture maps, domain rules, success criteria, current-state memory, README, release runbook and tests with the new topology and .makelore authority. Plugin selection now persists at .makelore/plugins.json; no project metadata is read or migrated from .niancode or .opencode.
  • Promoted the streaming-preview behavior into the canonical README while leaving its source task record unchanged on source snapshot 33fb31fb; the Integration Gate intentionally does not copy task-owned source records into the integration result.
  • Created two-parent merge commit 28897cd4a2b7179d9ccb444218a1d74a2bbc004b and fast-forwarded the occupied local main to it. The original tracked source tree was hash-verified against snapshot tree 925e515a before moving the branch. The generated Learning player remains locally present and ignored only through repository-local Git metadata; no remote push was performed.

Verification

  • pnpm install --frozen-lockfile with exact pnpm@10.33.4: passed.
  • pnpm run typecheck: passed.
  • Merge-focused Vitest set: 14 files / 121 tests passed.
  • pnpm test: 212 files / 1,726 tests passed; 3 staged-runtime-only tests skipped.
  • pnpm run lint:check: passed with zero errors and five existing warnings (Home/index.tsx hook dependency and four Makelore/index.tsx Fast Refresh warnings).
  • pnpm run build:vite: passed for Renderer, Electron Main, Preload and utility worker; existing dynamic-import and large-chunk warnings remain non-fatal.
  • Focused pnpm run test:e2e for app smoke, main navigation, Pi first chat, project configuration Skills and Coding project identity: 13/13 passed.
  • git diff --check: passed; unresolved merge path count is zero.
  • check_project_docs.py and task-aware check_doc_drift.py: passed after the source task record remained on its source snapshot instead of being promoted.

Follow-ups

  • Existing release gates remain unchanged: official Marketplace Ed25519 trust-key activation, real Provider validation, macOS x64/arm64 and native non-WSL Linux packaged evidence are not promoted to Pass by this merge.

Promotion Candidates

  • Merge commit 28897cd4a2b7179d9ccb444218a1d74a2bbc004b is present on local main; no remote promotion was requested or performed.