Topittaドキュメント
ENTopittaを開く

変更履歴

変更履歴

製品の変更です。この一覧は動きを書き、内部の設定は書きません。

2026-10-22

  • Product documentation and the changelog are published on the docs site. Entries describe product behavior.
  • Group settings shows that group's own usage for the last 30 days, and opens the usage page already scoped to the group. Shared organization work stays on the usage page.
  • A headline in a broadcast opens the topic page on that story, and the page scrolls to that card.
  • Digest broadcasts go out at each group's clock time, including while a collection is still running, and a failed channel post is retried.

2026-10-19

  • Overview, top stories, the governed weekly digest, the semantic graph, and the world map follow each group's current articles when the governed feed is missing or older, including groups that only have department keywords
  • Overview, top stories, the governed weekly digest, the semantic graph, and the world map read the migrated articles when an organization has no governed intelligence feed

2026-10-16

  • The keyword console shows the latest Intelligence run status, including how many articles are collected, in progress, or failed, while the topic page still shows the last published digest
  • Keyword crawls and digest schedules keep a stable offset of up to 15 minutes after their clock time, so jobs that share a default time no longer start together. The daily organization crawl also waits a short stable gap between companies
  • Each monitoring keyword has its own Send To menu. A send includes only stories that mention that keyword, not one digest for every keyword in the group
  • A tracked topic page shows the group's weekly digest and the articles that digest traces, which were previously left off that page
  • A higher plan can be added on top of the membership already on file: Stripe charges the price difference for the rest of the period, then the full new price on renewal
  • The footprint card spark still follows the pointer, and the profile photo sits above it so the glow no longer covers the picture
  • Share on the footprint pass copies only the profile URL, so the tagline is no longer pasted onto the link
  • A super admin on Ultra can still change the plan: Change plan opens the price table
  • A workspace already on the Essential trial sees Upgrade, which opens the price table; Choose a plan stays for a workspace that has not picked a plan
  • Choose a plan opens the starter price table, and that page scrolls so the plans are on screen
  • Organization billing actions run for a group manager, a group admin, or a higher role: choose a plan, open the Stripe portal, and see the card and invoices
  • Organization settings uses the same page header and section cards as Keyword & Schedule: profile, sign-in, billing, email, and usage, one section at a time
  • Group settings uses the same page header and section cards as Keyword & Schedule, so Profile, Intelligence, Wrap-up, and Channels share that page’s left edge
  • Keyword Proposals and Access Control use the same page header, section cards, and breadcrumb as Keyword & Schedule: suggestions or member requests, and members, invite, or add
  • Console settings open as Profile, Intelligence, Wrap-up, and Channels, and Keyword & Schedule is a three-step workspace whose breadcrumb, title, and content share one left edge with Access Control
  • Organization settings includes billing: the current plan, how a group manager or a higher role changes it, and Stripe’s portal for the card, invoices, and cancellation

2026-10-09

  • The profile card keeps the desktop settings column in place when switching between vertical and horizontal, and the holographic tilt is back on the card
  • The profile card follows the DevCard layout in vertical and horizontal, with a mint and teal aurora mesh that shifts from each member's reading habits
  • Organization and group profile saves share one draft lock: a group change updates only that department, an organization settings save keeps departments already stored, setup fields apply onto the latest draft, and a fast wrap-up language change waits so the last choice is the one saved
  • The top bar locale switch matches organization settings: a circular globe with the locale badge, then the theme button and avatar
  • The top bar bell, theme control, and language switcher share one height: a plain bell, a circular sun button, and a bordered language menu
  • A Topitta link pasted in a Slack channel that is already bound to a group shows a preview on that message only; other channels get no preview, and a wrap-up summary appears only when that wrap-up belongs to the bound group

2026-10-08

  • The user menu and organization header show the Organization settings label again
  • Organization and group settings show a short intelligence profile summary, and Reopen onboarding sits on that profile instead of the page title
  • Onboarding is a nine-step stepper shared with organization and group settings, so Update reopens the company profile or the group, Slack installs as an organization app, and members are added from Google contacts

2026-10-05

  • Organization usage uses the same section bar, width, and cards as the rest of organization settings
  • Organization settings leave the console, so that page no longer shows the group switcher or the console sidebar
  • The user menu lists organizations in place, with role and plan on the active one and a direct settings row, and organization settings opens with a section bar for profile, sign-in, email, and usage
  • The user menu organization switcher opens organization settings, those settings leave the console sidebar, and the audience is labeled Group instead of Team or Target Group
  • Intelligence Hub stays open when a scope is not published yet, and explains that inside the panel instead of closing itself
  • A disabled Google People API stays on the import panel with an explanation, instead of sending the user through Google consent and dropping them on Overview.
  • Console contact import lists the signed-in user's Google Workspace directory, and a super admin chooses the role for the people they add.
  • Overview shows Sleepy Blink when no breaking item is available
  • The index mascot follows the pointer with the Celebratory Spin gaze frames, and stays on the center frame for touch and reduced motion

2026-09-29

  • The console logo opens Overview directly, so leaving the console no longer bounces between the locale home and Overview
  • Overview's first load waits for the selected group before fetching feeds, and skips the invitation lookup, LLM summaries, and organization list until they are actually needed
  • The group rail lists groups only, and the user menu organization row switches among the organizations that member belongs to

2026-09-28

  • Local `bun run dev` resolves Tailwind from the client again: the repo-root package manifest that Next treated as the app root is gone, and QR code types live with the client
  • The profile card foil is a mint and teal shader: stripes, a soft cosmos field, and sparse stars slide across the surface as the card tilts
  • The profile card leans farther toward the pointer and eases there more slowly, so the tilt is easier to see
  • The profile card uses Topitta’s navy and mint, and tilts toward the pointer with a spring instead of a flat black face
  • Profile uses a SaaS settings layout: section nav, a large avatar, a contact card, and an account overview
  • Profile shows a holographic footprint card with a daily check-in streak, engagement counts, a behavior tagline, and share as a photo, QR code, or public link
  • Group managers can mute a publisher or turn a platform off for the selected group; feeds, digests, and new crawl matches follow that rule
  • Active Sources shows the top 10 publishers and a View more link; the sources page reveals the rest as you scroll
  • The sources page lists platform totals and publishers for the selected group, opened from the overview Active Sources widget
  • Returning members land on Overview: the first-load membership check no longer treats a missing count as "no organization", and sign-in no longer falls back to onboarding
  • Keyword proposals now use the workspace launcher and Intelligence Hub panel language: a circular mint trigger, a Pita proposal sheet, and mint review chips in Console
  • Overview, news cards, and the group rail keep their first-paint size while content loads, so the main column no longer jumps once images and groups arrive.

2026-09-25

  • Overview Discovery feed now uses only the governed discovery projection, dropping the leftover legacy feed that still referenced the old news payload

2026-09-20

  • Added a product MoSCoW for the current MVP horizon: Must is the crawl→digest→deliver loop, with three open gaps (topitta-ai cutover, Overview LCP/INP, one worker fleet)

2026-09-02

  • Super admins can create groups from the Overview rail and Console (sidebar + group switcher), and Console group settings now include a name/description profile editor; onboarding copy asks the founding super admin for the organization and first-group intelligence profile

2026-08-31

  • Console Usage compares each feature and user across 24-hour, 7-day, 30-day, and 90-day windows, with a tokens/cost/calls toggle and the selected range highlighted
  • Onboarding keeps “Create workspace” pinned at the bottom and derives the workspace id from the organization name, so users are not asked for a slug

2026-08-27

  • Embedding backfill stops when topitta-ai is unreachable instead of treating connection errors as empty articles

2026-08-24

  • Daily Slack digests join a public channel and retry when the bot is not a member, so a second group channel in the same workspace is no longer silent; connect also joins and tells admins to invite Topitta into private channels
  • Group channel settings now distinguish workspace install from this group's Slack binding, and the connect picker labels groups that are already linked

2026-08-21

  • Refresh root and client READMEs for the current product architecture: client, worker, and topitta-ai responsibilities, Intelligence Hub / Slack / LINE delivery, plans, and Console surfaces

2026-08-20

  • Slack shortcuts Share / Reject / Ask / Track Keyword plus Connect Channel and Open Topitta; opted-in shares embed as extra Intelligence Hub context

2026-08-19

  • Intelligence Hub drawer is wider on desktop (560px → 640px → 720px by breakpoint) by overriding the shared Sheet max-width cap
  • Intelligence Hub empty state keeps the generic quick prompts mounted and adds the role-aware ones as a separate "Tailored to you" group, so suggestions grow instead of being swapped out mid-render
  • Intelligence Hub answers now render opportunities, risks, and recommendations as interactive widgets with clickable citations that jump to the referenced article on its topic page
  • Intelligence Hub suggestions and AI follow-up actions now adapt to the signed-in user's role, profile preferences, organization, selected group, and tracked topics
  • Mobile lite mode: skip article/discovery/hero images on small screens, slow React Query polling on mobile, and pause refetch while the tab is hidden
  • Console Usage filters metrics to the selected target group and shows charts (token split, feature/user bars, daily trend) instead of tables only

2026-08-18

  • LINE rich-menu artwork now uses a four-button grid with a dedicated `グループ` button alongside news, weekly wrap-up, and my news
  • Daily LINE digests send as Flex topic cards (headlines + open button) instead of a long text blob

2026-08-17

  • Complete the LINE ウィークリー and マイニュース rich-menu actions with stored completed wrap-ups, bookmarked/liked/viewed article cards, and visible fallback replies when command processing fails.

2026-08-13

  • Add `bun run richmenu` to render the LINE rich menu image with labels baked in (LINE draws no button text itself); bounds match template 04 tap areas
  • Rich menu buttons now route to real pages: `line-connect` is an optional catch-all that maps LIFF subpaths (overview/wrap-up/my-news) to Topitta pages and opens them in the external browser; bare LIFF URL still runs account linking

2026-08-14

  • LINE news answers in the chat itself instead of opening a webview: `action=news` replies with a Flex carousel of article cards (topic, title, summary, source/date, read button) plus a "see all" card deep-linking to LIFF
  • 24h digest shows LINE's typing indicator while generating rather than sending a throwaway "generating…" message
  • Unrecognized text from a linked user now replies with the menu instead of falling through to LINE's default auto-reply

2026-08-04

  • Keyword feedback trigger and sheet header use Lightbulb icon instead of Tags
  • Persist preferredLocale from header LanguageToggle; backfill from URL when profile locale is unset

2026-07-31

  • Onboarding: always set organizations.subscription_tier (free trial → free; fall back from subscriptions row if Checkout metadata missing)
  • Pricing UX: yearly/monthly toggle + paid-plan configure dialog (billing + optional add-ons) before Stripe; remove distracting add-on picker from plan grid
  • Pricing add-ons: drop À la carte label; fix overflow CTA; selectable add-ons on paid checkout; Stripe products per add-on; custom domain ¥2,500 / token-AI ¥4,000
  • Fix digests pagination: count only shown digests with a live topic (no empty next pages)
  • Digests page: list layout (not cards), ScrollText icon; only completed + shown digests for end users
  • Nav /starter link and Intelligence Hub trigger: use favicon.png instead of robot emoji

2026-07-30

  • Keyword feedback icons: use Tags (not Sparkles/MessageCirclePlus) on trigger, sheet, and mobile menu
  • Keyword feedback: modern sheet UI with real submit; FAB cleared from pagination; console Keyword Proposals review (approve → crawl task)
  • Bidirectional notification sync: REPLICA IDENTITY FULL for realtime UPDATEs; light 10s refetch on web + extension
  • Sync web notification badge when extension marks read/dismiss (realtime UPDATE on notifications)
  • Replace subscriptions page with post-checkout onboarding (org + first group); success redirects to /onboarding; user menu shows plan badge
  • Stripe Checkout: Free plan starts a 14-day trial (card required) that converts to Essential; paid plans checkout immediately
  • Starter pricing: add Free plan and redraw Essential / Pro / Ultra feature copy (Discovery & Wrap-up on Pro; Intelligence Hub on Ultra)
  • Pricing benefits only list supported features (no “No …” exclusions on Free/Essential)

2026-07-27

  • Profile preferences page: preferred locale, timezone, default group, muted notification types, theme
  • Soft-dismiss notifications (close without deleting shared rows); mute types filtered server-side
  • Notification panel: unread/all filters, this-group vs all-groups scope, click-to-navigate, unread badge count
  • Timezone-aware notification timestamps; group label chips; dismiss animation
  • i18n (en/ja) for profile preferences and notification UI
  • Preserve keyword `displayLanguage` when regenerating LLM summaries (no silent reset to `en`)
  • Fix Digest language column flash to `en` and row layout shift (use row summaries, stable button)

2026-07-15

  • Group-level weekly wrap-up delivery language setting (Console → Target Groups → Settings)
  • Digest headlines respect console rolling 3-day window (no out-of-window "latest")
  • Fix digest share enrichment: null publishedAt, topic_articles fallback, summary articlesIds
  • Slack digest: split sections + actions button (no mid-URL truncation)
  • Empty-news state for Slack / Google Chat / email when no headlines
  • Google Chat: per-item language, split widgets, localized header/button
  • Favicon
  • User menu trigger and extract the user profile logic
  • Update language control from console
  • Update the i18n
  • Update view count refetch and invalidation in the top stories today section
  • Browser Extension V0

2026-07-14

  • Server side send event as notification (crawl/summary/digest writers + Realtime bell)

2026-07-05

  • Update interface and type into organised and centralized style

2026-07-04

  • Fix slack block for message boardcasting

2026-07-01

  • Infinite scrolling for topic page
  • Fix today's news count in console
  • Fix the zero member count in the GroupWidget

2026-06-30

  • Update the logic of user and member invitation to the group
  • Update the group selector UXUI in mobile version
  • Enhance mobile-aware UI for intelligence hub and keywordFeedback
  • Update documentations in console
  • Update the source name and origin source extraction logic in crawl for new news articles and backfill, present the detail active source in active source widget
  • Add like table and its implementation, mutation and api and hooks

2026-06-25

  • Update the server side action folder structure
  • Update the daily update logic to feed user 1-3 news per keyword

2026-06-18

  • Add Access control for group user in Console
  • Add last3DaysNews and todayNews counter in Console
  • Remove the auto llm summary trigger upon topic promotion
  • Add the source tracking in overview and console
  • Update the NavigationWrapper to show the actual figure of each topics count per group
  • Separate the invite for new user to add existing org member to the group
  • Research on the RAG
  • Update intelligence to digest the embedding with free model and send the request with the input parameter to allow the openai llm to answer the question (RAG)

2026-06-12

  • **Modular Widget Architecture**: Refactored the monolithic `ProtectedHomePage` and deprecated older layout components (`AIDigests`, `TopGreetingSection`, `TopRelatedNewsArticle`).
  • **Timezone Formatting**: Updated timestamp rendering in feed items to utilize local time formats.

2026-06-08

  • Update the group partitioning logic that splitting the articles and crawl jobs based on the group

2026-06-04

  • **Exponential Backoff for 429s**: Retry count raised from 2 → 4. Wait times are now computed as `15s × 2^(attempt-1)` (15s → 30s → 60s → 120s) instead of a flat 30s delay.
  • **HNSW Index (halfvec cast)**:
  • **Update the i18n that support the updates of digest UI**
  • **Update email that support for taskId and wrapId without re-building another email handler**
  • **Update slack that support for taskId and wrapId without re-building another slack handler**
  • **Update google-chat that support for taskId and wrapId without re-building another google-chat handler**
  • **Update en.json and ja.json to support i18n for the weekly wrapup**

2026-06-02

  • **Propogate the Wrap Up to use the existing tool integrations**

2026-06-01

  • **Email**: Verify the email domain and allow sending the email to multiple users in the group with resend
  • **LlmSummaryProvider Stabilization**: Refactored the `LlmSummaryProvider` context to remove duplicate query fetching and internal state bugs. It now utilizes global query invalidation, ensuring UI language toggles sync and save instantly without race conditions.
  • **Provider Scope Fix**: Correctly wrapped `ArticlesPage` with `LlmSummaryProvider` to resolve missing context runtime errors.

2026-05-26

  • **Persistence Across Navigation**: Fixed the bug where the `GroupSelector` disappeared after navigating to the Rankings page and returning to Overview. The component now remains persistently mounted in the layout shell across all sub-pages under the protected route group.

2026-05-25

  • **News UI**: Added loading skeleton, error handling, and graceful fallback for LLM summaries when a newly promoted topic has no summary yet.
  • **User experience**: Prevents blank “Start your research” placeholder and shows informative messages.

2026-05-21

  • **Group Selector**: Updated a UI of group selector and leverage the useGroup hook to control the swiching of group.
  • **UserTopicKeywordFeedback**: Updated the UI of UserTopicKeywordFeedback.

2026-05-20

  • **SchedulerPopover Propagation**: Integrated `SchedulerPopover` across the Digest and Delivery configuration sections for dynamic schedule assignments.
  • **Console Reorganization**: Restructured console routing, migrating keywords and scheduling into a dedicated `articles` module.
  • **UI Enhancements**: Added new components including `AIDigests`, `GroupSelector`, `TopGreetingSection`, `TopRelatedNewsArticle`, and `UserTopicKeywordFeedback`.

2026-05-15

  • **Topics Summaries**: Added a new component to display topic summaries.
  • **I18n**: Added i18n for topic summaries, newsDateTimeSelector, ranking,
  • **Server Side Language Filter**: API side to control the i18n for myNews aka api/bookmarks GET
  • **Google Chat Tool Integration**: Google Chat keyword collection tool integration and route with testing in the google chat channel
  • **Notification**: Template notification component

2026-05-14

  • **Auto Summary**: Fixed auto summary to automatically generate summaries for new articles.
  • **Localisation Update**: Fixed the hardcoding of "jp" to "ja" in the localization settings.

2026-05-13

  • **Manual Discovery Vectoring**: Implemented a strict manual-only model—replaced stochastic AI auto-detection with an interface where Super Admins select precisely which sectors (Tech, Science, etc.) are monitored.
  • **Optimized Discovery Pipeline**:

2026-05-11

  • **UI Localization Resilience**: Improved the news feed's handling of multi-language content.

2026-04-23

  • **Improved i18n Coverage**: Added localization strings for the Starter page in both English and Japanese dictionaries.
  • **Starter Access**: Integrated the Starter page into the main navigation for easy discovery.
  • **TypeScript & Motion Stability**:
  • **Middleware Hardening**:
  • **Dependency Updates**: Updated `motion` library to version `12.38.0`.
  • **UI/UX Polish**:

2026-04-06

  • **Automated Intelligence Sync**: Implemented a full news discovery pipeline that syncs viral news from NewsData.io and automatically generates tracking topics.
  • **Admin Console Expansion**: Added a new **Topic Discovery** tab to the Console.
  • **Optimized Discovery Pipeline**:
  • **i18n**: Added comprehensive English and Japanese localization for the new discovery and promotion workflows.

2026-03-25

  • **UI Alignment**: Synchronized the design of the "Schedule" tab with the "Keyword Collection" tab.
  • **Task Scheduling UX**: Introduced `SchedulerPopover` component for easier crawl schedule management.
  • **Enhanced Selectors**: Integrated improved `TopicSelector` and `RankingTypeSelector` into the Industry and Rankings pages.
  • **Table Management**: Updated `ManagedDataTable` to support refined metadata and action flows.
  • **Dictionary Expansion**: Added localized strings for scheduling (status: completed, pending, processing, failed), filters, and action buttons in both `en.json` and `jp.json`.

2026-03-23

  • **Dynamic i18n Routing**: Implemented `[lang]` based routing for the entire application.
  • **Localized Components**: Refactored core UI components (News, Sidebar, Navigation) to use the new i18n system.
  • **Console Sidebar**: Updated `AppSidebar` with support for multi-language labels and refined the console navigation structure.
  • **Consolidated Keywords Management**: Refined `useKeywordsManagement` and related components to align with the new i18n structure.
  • **Visual Improvements**: Integrated brand assets (Slack, Line, Teams, Google Chat icons) for integration displays.

2026-03-09

  • **Reusable News Components**: Extracted `NewsArticlesList` into a standalone component.
  • **Navigation Cleanup**: Updated `NavigationList` labels and commented out legacy `ConsoleTrigger` for a cleaner sidebar interface.
  • **Industry Logic**: Built initial keyword-based "Matching Engine" for industry discovery, with planned future migration to Vector-based semantic search.
  • Updated top navigation behavior:
  • Changed default console landing:
  • Stabilized topic LLM summary generation UX:
  • Expanded LLM prompt/output contracts for summary visuals:
  • Hardened summary image rendering:
  • Fixed desktop feed viewport and paging visibility issues:
  • Added DB client lifecycle guard for dev/hot-reload:

2026-02-27

  • Fixed repeated/infinite client render/mutation loops in topic summary generation by removing effect-driven retriggers.
  • Updated News layout to split summary/articles panes, keep paging controls visible in viewport, and reposition bookmark/view controls to card bottom-right.
  • Updated navigation tab styles (`News`, `Rankings`, `Industry's News`, `My News`) to consistent button/link states.
  • Updated articles API filtering/sorting to use stable date fallback behavior and return non-null publish date fields.

2026-02-26

  • Added mobile UI for topic selector
  • Tested the content can be retrieved from RSS feed
  • Update the NewsDateTimeSelector that support different time selection
  • Update the useArticle hook to support different time selection with articles api

2026-02-24

  • **Protected Layout Navigation Reuse**:
  • **Topics and Schedule Payload Improvements**:
  • **Articles Pagination and Topic Selection Logic**:
  • **Bookmarks Alignment with Topic Filtering**:
  • **Client Feed UX (News Component)**:
  • **Immediate Bookmark UI Feedback**:
  • **Select/Dropdown Visual Fixes**:
  • **Desktop vs Mobile Scroll Behavior**:

2026-02-22

  • **Topics API Security & Scoping**:
  • **Schedule Model Integration**:
  • **Keyword Collection Console Refactor**:
  • **Crawl Task Lifecycle Tracking**:

2026-02-06

  • **Bookmarking System**: Added a personalized bookmarking feature using a many-to-many relationship. Users can now save articles to their "My News" page.
  • **Improved Crawler**:
  • **Performance & LCP Optimization**:
  • **Infrastructure & Deployment**:
  • **UI/UX Improvements**:

2026-01-30

  • Setup access control to access the topitta

2026-01-28

  • Added boilerplate