8000 refactor(harness): drop the startup prompt, dead tool state, and duplicate label helpers by geminixiang · Pull Request #201 · geminixiang/mikan · GitHub
[go: up one dir, main page]

Skip to content

refactor(harness): drop the startup prompt, dead tool state, and duplicate label helpers - #201

Merged
geminixiang merged 2 commits into
mainfrom
refactor/simplify-harness
Oct 26, 2026
Merged

geminixiang merged 2 commits into
mainfrom
refactor/simplify-harness

Conversation

@geminixiang
Copy link
Copy Markdown
Owner

Stage 1 of docs/research/simplify-modules-2026-10.md (#196). 18 files, +137 / −268 (production −111 net).

Change Note
Drop the startup system prompt, the unused conversationId param, and prepareRunnerTurn Every run sets its own prompt before the mikan section installs; no model read the startup one. systemPrompt option defaults to ""
Remove session.ts's toolArgs map and emitToolEnd Written, never read
Remove the inline-skill path; scopedSkills alone sets source Only a test set inline
withLabelParameter(schema, "required" | "optional") / withoutLabel replace four copies read/write/edit/bash keep the optional label
start_task's callers: ["model"] lives in createTaskTool A codemode test now uses the real tool and fails without it
part.type === "toolCall"; presenter uses one toolLabel Log label and getCurrentStep left alone: unifying them would change text for padded or non-string labels
Presenter pass-throughs inlined; compaction/retry share presentNotice
eventRunId / isEventRunId / eventRunName in src/events/ own the event: run name Two adapter files still spell event:; add a fact-owner guard after #198

Visible effects: the "Skipping conversation skill entry (symlink)" warning now logs once per run instead of also at runner creation.

Verification

Check main branch
npm run typecheck pass pass
npm test 2033 passed 2032 passed (inline-skill test removed)
npm run duplication 1 clone 1 clone (unchanged)

Pending: this changes the run loop, so slack-e2e.yml must pass before merge. Draft until then.

@geminixiang
geminixiang marked this pull request as ready for review October 26, 2026 09:52
@geminixiang
geminixiang commented Oct 26, 2026 •
Copy link
Copy Markdown
Owner Author

Slack E2E passed 26/26 on this branch (run 40301300494).

- Drop the runner's startup system prompt built for a fake "chat"
  platform; every run sets its own before tools install. Remove the
  unused conversationId param and the prepareRunnerTurn pass-through.
- Remove the session's write-only toolArgs map and inline emitToolEnd.
- Remove the test-only inline-skill path and the skill loader's source
  argument that loadOfficeSkills overwrote.
- One withLabelParameter/withoutLabel helper in host-fn-tool.ts replaces
  four copies, keeping the optional label for read/write/edit/bash.
- start_task declares callers: ["model"] itself; drop unreachable
  unbound-function throws in task tools.
- Match pi-ai's only tool-call part type and share toolLabel between
  run-events and presenter; fold presenter pass-throughs and duplicate
  notice cases.
- src/events/index.ts owns the scheduled-event run id (eventRunId,
  isEventRunId, eventRunName); runner, prompt, scheduler and memory
  capture use it.
@geminixiang
geminixiang force-pushed the refactor/simplify-harness branch from e516858 to 9e64591 Compare October 26, 2026 10:44
@geminixiang
geminixiang merged commit bb07b34 into main Oct 26, 2026
5 checks passed
@geminixiang
geminixiang deleted the refactor/simplify-harness branch October 26, 2026 10:47
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

0