<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ContextFlow.git/frontend/src/components/nodes, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.blackhao.com/ContextFlow.git/'/>
<entry>
<title>Add cyan border and debate label to LLMNode in debate mode</title>
<updated>2026-02-13T23:11:18+00:00</updated>
<author>
<name>YurenHao0426</name>
<email>blackhao0426@gmail.com</email>
</author>
<published>2026-02-13T23:11:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.blackhao.com/ContextFlow.git/commit/?id=072d0cfa4e6a81807cc8aa2fca5d1073896609cb'/>
<id>072d0cfa4e6a81807cc8aa2fca5d1073896609cb</id>
<content type='text'>
Mirrors the amber border styling of council nodes with cyan for debate
nodes, including the icon color and model count subtitle.

Co-Authored-By: Claude Opus 4.6 &lt;noreply@anthropic.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Mirrors the amber border styling of council nodes with cyan for debate
nodes, including the icon color and model count subtitle.

Co-Authored-By: Claude Opus 4.6 &lt;noreply@anthropic.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add LLM Council mode for multi-model consensus</title>
<updated>2026-02-13T21:43:34+00:00</updated>
<author>
<name>YurenHao0426</name>
<email>blackhao0426@gmail.com</email>
</author>
<published>2026-02-13T21:43:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.blackhao.com/ContextFlow.git/commit/?id=77be59bc0a6353e98846b9c9bfa2d566efea8b1f'/>
<id>77be59bc0a6353e98846b9c9bfa2d566efea8b1f</id>
<content type='text'>
3-stage council orchestration: parallel model queries (Stage 1),
anonymous peer ranking (Stage 2), and streamed chairman synthesis
(Stage 3). Includes scope-aware file resolution for Google/Claude
providers so upstream file attachments are visible to all providers.

- Backend: council.py orchestrator, /api/run_council_stream endpoint,
  query_model_full() non-streaming wrapper, resolve_provider() helper,
  resolve_scoped_file_ids() for Google/Claude scope parity with OpenAI
- Frontend: council toggle UI, model checkbox selector, chairman picker,
  SSE event parsing, tabbed Stage 1/2/3 response display
- Canvas: amber council node indicator with Users icon

Co-Authored-By: Claude Opus 4.6 &lt;noreply@anthropic.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
3-stage council orchestration: parallel model queries (Stage 1),
anonymous peer ranking (Stage 2), and streamed chairman synthesis
(Stage 3). Includes scope-aware file resolution for Google/Claude
providers so upstream file attachments are visible to all providers.

- Backend: council.py orchestrator, /api/run_council_stream endpoint,
  query_model_full() non-streaming wrapper, resolve_provider() helper,
  resolve_scoped_file_ids() for Google/Claude scope parity with OpenAI
- Frontend: council toggle UI, model checkbox selector, chairman picker,
  SSE event parsing, tabbed Stage 1/2/3 response display
- Canvas: amber council node indicator with Users icon

Co-Authored-By: Claude Opus 4.6 &lt;noreply@anthropic.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add unfold merged trace: convert to sequential node chain</title>
<updated>2026-02-13T05:07:46+00:00</updated>
<author>
<name>YurenHao0426</name>
<email>blackhao0426@gmail.com</email>
</author>
<published>2026-02-13T05:07:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.blackhao.com/ContextFlow.git/commit/?id=b6f21c210ee804782eba2e7c30c2ccdcbd95bffb'/>
<id>b6f21c210ee804782eba2e7c30c2ccdcbd95bffb</id>
<content type='text'>
Unfold takes a merged trace's messages, extracts the node order,
and creates real edges chaining those nodes sequentially (A→B→C→D→E).
The merged trace is deleted and replaced by a regular pass-through trace.

- Add unfoldMergedTrace() to flowStore (creates edges, rewires downstream)
- Add Unfold button (Layers icon) to Sidebar merged traces UI
- Fix isMerged edge detection to use explicit flag instead of ID prefix
- Fix LLMNode useUpdateNodeInternals deps for dynamic handle updates

Co-Authored-By: Claude Opus 4.6 &lt;noreply@anthropic.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Unfold takes a merged trace's messages, extracts the node order,
and creates real edges chaining those nodes sequentially (A→B→C→D→E).
The merged trace is deleted and replaced by a regular pass-through trace.

- Add unfoldMergedTrace() to flowStore (creates edges, rewires downstream)
- Add Unfold button (Layers icon) to Sidebar merged traces UI
- Fix isMerged edge detection to use explicit flag instead of ID prefix
- Fix LLMNode useUpdateNodeInternals deps for dynamic handle updates

Co-Authored-By: Claude Opus 4.6 &lt;noreply@anthropic.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>fix: resolve all TypeScript errors for production build</title>
<updated>2025-12-11T03:54:08+00:00</updated>
<author>
<name>blackhao</name>
<email>13851610112@163.com</email>
</author>
<published>2025-12-11T03:54:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.blackhao.com/ContextFlow.git/commit/?id=0c76ea3db76c9908e770b56fb94bf0a92a0d116f'/>
<id>0c76ea3db76c9908e770b56fb94bf0a92a0d116f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>some fix on trace merging</title>
<updated>2025-12-09T21:05:04+00:00</updated>
<author>
<name>blackhao</name>
<email>13851610112@163.com</email>
</author>
<published>2025-12-09T21:05:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.blackhao.com/ContextFlow.git/commit/?id=c3673766aecdb988bb4e811376d4f1f1e18f1e0f'/>
<id>c3673766aecdb988bb4e811376d4f1f1e18f1e0f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>before file functions</title>
<updated>2025-12-09T01:54:58+00:00</updated>
<author>
<name>blackhao</name>
<email>13851610112@163.com</email>
</author>
<published>2025-12-09T01:54:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.blackhao.com/ContextFlow.git/commit/?id=a14a53edbacb24051a31e73e2d111307c2f0354e'/>
<id>a14a53edbacb24051a31e73e2d111307c2f0354e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>merge logic</title>
<updated>2025-12-08T21:07:12+00:00</updated>
<author>
<name>blackhao</name>
<email>13851610112@163.com</email>
</author>
<published>2025-12-08T21:07:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.blackhao.com/ContextFlow.git/commit/?id=f97b7a1bfa220a0947f2cd63c23f4faa9fcd42e7'/>
<id>f97b7a1bfa220a0947f2cd63c23f4faa9fcd42e7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>UX</title>
<updated>2025-12-06T07:30:57+00:00</updated>
<author>
<name>blackhao</name>
<email>13851610112@163.com</email>
</author>
<published>2025-12-06T07:30:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.blackhao.com/ContextFlow.git/commit/?id=93dbe11014cf967690727c25e89d9d1075008c24'/>
<id>93dbe11014cf967690727c25e89d9d1075008c24</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>init: add project files and ignore secrets</title>
<updated>2025-12-06T02:40:40+00:00</updated>
<author>
<name>blackhao</name>
<email>13851610112@163.com</email>
</author>
<published>2025-12-06T02:40:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.blackhao.com/ContextFlow.git/commit/?id=d9868550e66fe8aaa7fff55a8e24b871ee51e3b1'/>
<id>d9868550e66fe8aaa7fff55a8e24b871ee51e3b1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
