<?xml version='1.0' encoding='utf-8'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Labyricorn - ThinkStorm</title>
  <id>https://www.labyricorn.com/projects/thinkstorm/feed.xml</id>
  <updated>2026-08-21T19:28:17Z</updated>
  <link rel="self" href="https://www.labyricorn.com/projects/thinkstorm/feed.xml" type="application/atom+xml" />
  <link rel="alternate" href="https://www.labyricorn.com/projects/thinkstorm/" type="text/html" />
  <author>
    <name>Labyricorn</name>
  </author>
  <entry>
    <title>ThinkStorm</title>
    <id>https://www.labyricorn.com/projects/thinkstorm/</id>
    <link rel="alternate" href="https://www.labyricorn.com/projects/thinkstorm/" type="text/html" />
    <published>2026-08-21T00:00:00Z</published>
    <updated>2026-08-21T19:28:17Z</updated>
    <author>
      <name>Labyricorn</name>
    </author>
    <summary type="text">ThinkStorm captures unformed ideas with zero friction, preserves original submissions, and orchestrates self-hosted AI to research prior art, synthesize feasibility, and incubate full Gitea projects.</summary>
    <content type="html" xml:base="https://www.labyricorn.com/projects/thinkstorm/">&lt;h1&gt;ThinkStorm: Autonomous Idea Incubation Platform&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;ThinkStorm&lt;/strong&gt; is a self-hosted platform built to solve the cold-start problem of idea generation and execution. It eliminates cognitive friction during initial capture, protects user intent by preserving immutable submission logs, and orchestrates local and cloud AI models to research, evaluate, and scaffold ideas into full projects.&lt;/p&gt;
&lt;h2&gt;Core Architectural Pillars&lt;/h2&gt;
&lt;h3&gt;1. Frictionless Anonymous Intake&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Zero Required Fields&lt;/strong&gt;: Users submit free-form thoughts without mandatory titles, categories, or tags.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Embedded URL Safety Boundary&lt;/strong&gt;: URLs inside submissions are automatically extracted and scanned via VirusTotal. High-risk links trigger automated quarantine and administrative review before processor execution.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;2. Multi-Stage Research &amp;amp; Prior Art Pipeline&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Title &amp;amp; Summary Extraction&lt;/strong&gt;: AI extracts semantic essence and tags while keeping the original submission immutable.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Prior Art &amp;amp; Alternative Discovery&lt;/strong&gt;: Integrates with SearXNG and Perplexica to search the live web and identify existing competitors, similar projects, and differentiators.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Deep Research &amp;amp; Technical Feasibility&lt;/strong&gt;: Generates comprehensive feasibility scores, risk critiques, and architecture blueprints.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;3. Canonical Gitea Project Repositories&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Every incubated idea is provisioned as a full Git repository under the &lt;strong&gt;&lt;code&gt;thinkstorm&lt;/code&gt;&lt;/strong&gt; organization on Gitea (e.g. &lt;code&gt;https://git.labyricorn.com/thinkstorm/ts-0032&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Structured repository dossiers include executive &lt;code&gt;README.md&lt;/code&gt;, &lt;code&gt;metadata.json&lt;/code&gt;, &lt;code&gt;research/prior-art.md&lt;/code&gt;, &lt;code&gt;research/analysis.md&lt;/code&gt;, &lt;code&gt;research/feasibility.md&lt;/code&gt;, and multi-modal &lt;code&gt;outputs/&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Full Git history, branch management, issue tracking, and SSH/HTTPS cloning capabilities are natively supported.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;4. Multi-Modal Work Tracks &amp;amp; Versioning&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Ideas can be claimed and activated into specialized work tracks:&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Article &amp;amp; Whitepaper&lt;/strong&gt;: Long-form structured essays and publication-ready Markdown.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Coding Project&lt;/strong&gt;: Full codebase architectures, implementation requirements, and Gitea repository graduation.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Blog Entry&lt;/strong&gt;: Conversational announcement posts and technical retrospectives.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Complete versioning and deletion system preserves iterative revision histories while allowing fine-grained lifecycle management.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;5. Self-Hosted Infrastructure &amp;amp; Authentication&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Gitea OAuth2 SSO&lt;/strong&gt;: Unified single sign-on with Gitea accounts.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Local SQLite Storage&lt;/strong&gt;: High-concurrency Write-Ahead Logging (WAL) with automatic sequence generation and schema migration.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;OmniRoute Integration&lt;/strong&gt;: Flexible routing between local LLM backends (Ollama, vLLM) and upstream cloud models with token usage telemetry and prompt catalog versioning.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Architectural Foundation: Frictionless Intake, Multi-Stage Pipelines, and Untrusted URL Boundaries</title>
    <id>https://www.labyricorn.com/projects/thinkstorm/devlog/initial-architecture-and-frictionless-intake/</id>
    <link rel="alternate" href="https://www.labyricorn.com/projects/thinkstorm/devlog/initial-architecture-and-frictionless-intake/" type="text/html" />
    <published>2026-08-19T00:00:00Z</published>
    <updated>2026-08-21T14:57:51Z</updated>
    <author>
      <name>Labyricorn</name>
    </author>
    <summary type="text">Established the core ThinkStorm architecture, featuring frictionless anonymous idea capture, VirusTotal URL scanning, bounded multi-stage research pipelines, prompt catalog versioning, and token usage accounting.</summary>
    <content type="html" xml:base="https://www.labyricorn.com/projects/thinkstorm/devlog/initial-architecture-and-frictionless-intake/">&lt;h1&gt;Architectural Foundation: Frictionless Intake &amp;amp; Multi-Stage Pipelines&lt;/h1&gt;
&lt;p&gt;The core design objective of ThinkStorm is solving the cognitive barrier of initial idea capture. Most project management and idea tracking platforms burden users with mandatory fields, rigid taxonomies, and categorization upfront. ThinkStorm flips this model: users throw free-form thoughts into an anonymous intake box with zero friction, while autonomous background processors handle structuring, research, and technical evaluation.&lt;/p&gt;
&lt;h2&gt;What Was Implemented&lt;/h2&gt;
&lt;h3&gt;1. Bounded Intake Engine &amp;amp; Safety Boundaries&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Implemented single-textarea intake accepting raw text up to 10,000 characters.&lt;/li&gt;
&lt;li&gt;Built an automatic URL extraction engine that isolates embedded links from untrusted submission text.&lt;/li&gt;
&lt;li&gt;Integrated asynchronous VirusTotal scanning that evaluates link reputation, domain risk profiles, and malicious redirection vectors. Submissions containing flagged URLs are automatically routed to a secure quarantine state for administrator review before any model processing runs.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;2. Multi-Stage Pipeline Orchestration&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Processor 1 (Safety Evaluator)&lt;/strong&gt;: Validates link safety and determines automated processing eligibility.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Processor 2 (Semantic Extraction)&lt;/strong&gt;: Extracts concise project titles, executive summaries, categories, and tags while preserving the raw submission text immutably.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Processor 3 (Duplicate &amp;amp; Relationship Detector)&lt;/strong&gt;: Computes semantic overlaps and links related ideas in SQLite.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Processor 4 (Prior Art &amp;amp; Landscape Search)&lt;/strong&gt;: Interfaces with SearXNG and Perplexica to discover live competitors and open-source equivalents.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Processor 5 (Technical Feasibility &amp;amp; Critique)&lt;/strong&gt;: Generates rigorous feasibility scoring, architectural constraints, and risk matrices.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;3. Prompt Catalog &amp;amp; Provenance Telemetry&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Modeled prompt definitions with semantic versioning (&lt;code&gt;prompt_definitions&lt;/code&gt; and &lt;code&gt;prompt_versions&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Tracked complete execution provenance (&lt;code&gt;processor_runs&lt;/code&gt;) capturing model policies, resolved backend providers, input/output token counts, durations, and output artifacts.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Ecosystem Integration: Gitea OAuth2 Single Sign-On and OpenGist Dossier Publishing</title>
    <id>https://www.labyricorn.com/projects/thinkstorm/devlog/opengist-ecosystem-integration-and-gitea-sso/</id>
    <link rel="alternate" href="https://www.labyricorn.com/projects/thinkstorm/devlog/opengist-ecosystem-integration-and-gitea-sso/" type="text/html" />
    <published>2026-08-19T00:00:00Z</published>
    <updated>2026-08-21T14:57:51Z</updated>
    <author>
      <name>Labyricorn</name>
    </author>
    <summary type="text">Connected ThinkStorm with self-hosted ecosystem services by implementing Gitea OAuth2 authentication, session cookie management, and automated dossier synchronization to OpenGist.</summary>
    <content type="html" xml:base="https://www.labyricorn.com/projects/thinkstorm/devlog/opengist-ecosystem-integration-and-gitea-sso/">&lt;h1&gt;Ecosystem Integration: Gitea OAuth2 SSO &amp;amp; OpenGist Synchronization&lt;/h1&gt;
&lt;p&gt;To operate seamlessly within the self-hosted Labyricorn infrastructure, ThinkStorm required direct integration with authentication providers and publishing backends. This milestone unified user authentication with Gitea accounts and enabled automated snippet publishing to OpenGist.&lt;/p&gt;
&lt;h2&gt;Key Changes&lt;/h2&gt;
&lt;h3&gt;1. Gitea OAuth2 Single Sign-On Flow&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Configured Gitea OAuth application credentials and registered redirect callback routes at &lt;code&gt;/auth/gitea/callback&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Fixed authorization code exchange by enforcing &lt;code&gt;Accept: application/json&lt;/code&gt; headers on token requests to Gitea.&lt;/li&gt;
&lt;li&gt;Implemented automated user provisioning: authenticating via Gitea retrieves profile information, associates local user records (&lt;code&gt;gitea_id&lt;/code&gt;), and issues secure HTTP-only session cookies (&lt;code&gt;thinkstorm_session&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;2. OpenGist REST API Formatter Alignment&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Deployed OpenGist v1.15 with custom branding, SSH Git support, and Gitea OAuth links.&lt;/li&gt;
&lt;li&gt;Resolved REST API schema mismatches by updating the OpenGist adapter to target &lt;code&gt;POST /api/gists&lt;/code&gt; using the array/map payload structures and Personal Access Token bearer authentication.&lt;/li&gt;
&lt;li&gt;Added direct local subnet communication to avoid external IPv6 connection latency.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Work Track Iteration: Deliverable Versioning, Soft Deletion, and UI Tab Persistence</title>
    <id>https://www.labyricorn.com/projects/thinkstorm/devlog/work-track-versioning-and-lifecycle/</id>
    <link rel="alternate" href="https://www.labyricorn.com/projects/thinkstorm/devlog/work-track-versioning-and-lifecycle/" type="text/html" />
    <published>2026-08-19T00:00:00Z</published>
    <updated>2026-08-21T14:57:51Z</updated>
    <author>
      <name>Labyricorn</name>
    </author>
    <summary type="text">Implemented comprehensive multi-version artifact management for generated work track deliverables, soft-delete and permanent purge lifecycle states, and seamless tab focus persistence.</summary>
    <content type="html" xml:base="https://www.labyricorn.com/projects/thinkstorm/devlog/work-track-versioning-and-lifecycle/">&lt;h1&gt;Work Track Iteration: Deliverable Versioning &amp;amp; Lifecycle Controls&lt;/h1&gt;
&lt;p&gt;As ideas progress from research into active incubation, users activate specialized Work Tracks (such as Articles, Coding Scaffolds, and Blog Entries). Because iterative AI generation produces successive drafts of documents, we introduced a structured versioning engine and fine-grained lifecycle management.&lt;/p&gt;
&lt;h2&gt;Key Enhancements&lt;/h2&gt;
&lt;h3&gt;1. Document Versioning Engine&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Extended &lt;code&gt;work_track_outputs&lt;/code&gt; with &lt;code&gt;version&lt;/code&gt;, &lt;code&gt;is_current&lt;/code&gt;, and &lt;code&gt;model_used&lt;/code&gt; attributes.&lt;/li&gt;
&lt;li&gt;Whenever a workflow re-runs, previous deliverables are automatically archived with incremented version numbers, ensuring historical drafts remain viewable and restorable without overwriting.&lt;/li&gt;
&lt;li&gt;Added version badges (&lt;code&gt;v1&lt;/code&gt;, &lt;code&gt;v2&lt;/code&gt;, &lt;code&gt;v3&lt;/code&gt;) in the UI displaying generation timestamps and attributing the specific LLM model used for each version.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;2. Fine-Grained Deletion &amp;amp; Soft-Delete Lifecycle&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Added single-document deletion (&lt;code&gt;DELETE /api/ideas/work-tracks/outputs/{output_id}&lt;/code&gt;) allowing users to delete specific versions or entire deliverable series.&lt;/li&gt;
&lt;li&gt;Introduced two-stage idea lifecycle controls:&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Soft Trash (&lt;code&gt;TRASHED&lt;/code&gt;)&lt;/strong&gt;: Moves discarded ideas to the Trash section while preserving full provenance and allowing one-click restoration.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Permanent Purge (&lt;code&gt;DELETE_PERMANENT&lt;/code&gt;)&lt;/strong&gt;: Cascades deletion across categories, tags, processor runs, work tracks, external resources, and on-disk files with audit logging.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;3. UI Tab State Persistence&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Resolved UI focus jump regressions where triggering asynchronous workflow executions inadvertently reset the active tab to the first panel.&lt;/li&gt;
&lt;li&gt;Synchronized tab navigation with &lt;code&gt;window.location.hash&lt;/code&gt;, &lt;code&gt;sessionStorage&lt;/code&gt;, and &lt;code&gt;localStorage&lt;/code&gt;, providing persistent tab focus across page refreshes and asynchronous job updates.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
  <entry>
    <title>Project Incubation: Canonical Gitea Repositories under the ThinkStorm Organization</title>
    <id>https://www.labyricorn.com/projects/thinkstorm/devlog/gitea-project-repositories/</id>
    <link rel="alternate" href="https://www.labyricorn.com/projects/thinkstorm/devlog/gitea-project-repositories/" type="text/html" />
    <published>2026-08-20T00:00:00Z</published>
    <updated>2026-08-21T15:07:40Z</updated>
    <author>
      <name>Labyricorn</name>
    </author>
    <summary type="text">Transitioned idea dossiers to full-featured Gitea Git repositories under the dedicated thinkstorm organization, featuring automated file tree synchronization, executive READMEs, and Git clone workflows.</summary>
    <content type="html" xml:base="https://www.labyricorn.com/projects/thinkstorm/devlog/gitea-project-repositories/">&lt;h1&gt;Project Incubation: Canonical Gitea Repositories under the ThinkStorm Organization&lt;/h1&gt;
&lt;p&gt;While code snippets and gists provide quick sharing, fully incubating ideas requires the power of a complete Git repository with branches, Markdown rendering, file hierarchies, issue tracking, and clone capabilities. This milestone transformed ThinkStorm idea dossiers into native &lt;strong&gt;Gitea Project Repositories&lt;/strong&gt; housed under a centralized &lt;strong&gt;&lt;code&gt;thinkstorm&lt;/code&gt;&lt;/strong&gt; organization.&lt;/p&gt;
&lt;h2&gt;Architectural Architecture&lt;/h2&gt;
&lt;h3&gt;1. &lt;code&gt;thinkstorm&lt;/code&gt; Organization Namespacing&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;All idea repositories are automatically provisioned under the &lt;code&gt;thinkstorm&lt;/code&gt; organization on Gitea (&lt;code&gt;https://git.labyricorn.com/thinkstorm/ts-{id}&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Generates standard clone targets for both HTTPS (&lt;code&gt;git clone https://git.labyricorn.com/thinkstorm/ts-{id}.git&lt;/code&gt;) and SSH (&lt;code&gt;git clone ssh://git@git.labyricorn.com:22/thinkstorm/ts-{id}.git&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;2. Structured Dossier File Hierarchy&lt;/h3&gt;
&lt;p&gt;Each repository is populated with a standardized file tree:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;README.md&lt;/code&gt;: Rendered project landing page with executive summary, lifecycle state badge, prompt quotation, taxonomy tags, and project structure overview.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;metadata.json&lt;/code&gt;: Machine-readable metadata schema for automated tools and CI/CD pipelines.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;research/&lt;/code&gt;:&lt;ul&gt;
&lt;li&gt;&lt;code&gt;prior-art.md&lt;/code&gt;: Competitor discovery and alternative analysis.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;analysis.md&lt;/code&gt;: Deep technical synthesis and architecture evaluations.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;feasibility.md&lt;/code&gt;: Feasibility scoring, risk critique, and implementation constraints.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;outputs/&lt;/code&gt;: Multi-modal work track deliverables organized by track name (e.g. &lt;code&gt;article/&lt;/code&gt;, &lt;code&gt;coding-project/&lt;/code&gt;, &lt;code&gt;business-canvas/&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;&lt;code&gt;provenance/&lt;/code&gt;: Execution run telemetry, model policies, and token attribution records.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;3. Asynchronous File Tree Synchronization&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Built a multi-file synchronization engine in &lt;code&gt;GiteaAdapter&lt;/code&gt; utilizing Gitea's Contents API to commit or update file trees without wiping repository history.&lt;/li&gt;
&lt;li&gt;Integrated automated pushes into the idea intake pipeline and work track workflow executors.&lt;/li&gt;
&lt;li&gt;Added a one-click &lt;strong&gt;&lt;code&gt;🔄 Publish / Re-sync to Gitea&lt;/code&gt;&lt;/strong&gt; button on Tab 6 of the Idea Detail view.&lt;/li&gt;
&lt;/ul&gt;
</content>
  </entry>
</feed>
