Release Lopu assistant, Builder, and rich text to main - #668
Merged
Merged
Conversation
…ponent catalog - Drawer: Schemas moves out of Search into its own top-level item; new top-level Components item (🧩, /components). - New first-class `component` thing kind: registry schema + sanitizer (arg descriptors, savedArgs snapshots, render template reusing the schema render gate), reserved `component-` shareId prefix, projection pin. - /components (ComponentsBrowsePage): live template rendering through the sanitising allowlist renderers, per-card args tester (ttArg/ttMap/ttIf/ ttMerge/ttRepeat DSL resolved client-side), hidden Schema expander, react/ save decoration, and "Save version" → user-owned component thing. - API: GET /api/v1/components/browse (newest/oldest/popular/q + lib/category filters, cursor pagination) and admin POST/GET /api/v1/admin/components/seed (idempotent, self-healing system seed; fail-closed rate limit), registered in route file + import map + apiEndpointDocs. - components-db/: 1000-component folder database (25 archetypes × 8 libraries × 5 variants — Ant Design, Bootstrap, MUI, shadcn/ui, Untitled UI, daisyUI, React Flow, Thingtime), deterministic generator + validator + API seeder under scripts/components-db/. - Kind renderer for component things; verify-components.mjs (23 checks); FUNDAMENTALS §3 + TESTING.md + README + CHANGELOG updates. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…mmand (+120 → 1120) Catalog grows past the initial 1000: 3 new archetypes × 8 libraries × 5 variants, layered calc-clip star ratings, terminal/diff/kbd code blocks, and command-palette/search surfaces. Loop runbook in scripts/components-db/README.md; tranche accounting in catalog.mjs. Seeded: census 1120. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… (+120 → 1240) Messaging bubbles/threads/composer/typing/contact rows, audio/video/mini player chrome with playlist + volume clusters, and calendar/date-input/ time-picker/range/countdown temporals. Seeded: census 1240. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…a-viz (+120 → 1360) Product cards/cart/checkout/promo/payment rows, profile headers/user cards/follower rows/achievements/stat bands, and svg mini-charts (bar, line, donut, gauge, heatmap). Seeded: census 1360. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…dow-chrome (+120 → 1480) File rows/folder grids/upload zones/storage meters/toolbars, welcome/ tour/checklist/progress/invite onboarding surfaces, and browser/phone/ window/tab-strip/dock app-frame mockups. Seeded: census 1480. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…, designs click-through Owner feedback: library renditions read as duplicates. Every component now carries crystal.familyKey; /components groups one card per family with a designs pill row (server group=family aggregation, client collapse for q-search, family= roster fetch); cards' Docs buttons open the new /components/:key + /components/:key/docs detail pages (design switcher, args tester, deep links, API snippet, definition). Self-healing reseed stamped familyKey across the catalog; tranche-2 batch 5 (kanban, forms-advanced, gamification) rode along — census 1600. verify-components.mjs now 30 checks. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…0 → 1720) Settings rows/sections/danger-zones/API-keys/notification matrices, mail inbox/thread/compose/sidebar/attachment surfaces, and calendar-app views (events, agendas, week grids, availability, booking). Seeded: census 1720. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…i (+120 → 1840) Location/route/weather/itinerary/pin-cluster travel cards, balance/ transaction/transfer/credit-card/spending finance surfaces, and doc-site headers/TOCs/callouts/references/version pickers. Seeded: census 1840. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ocial-feed (+120 → 1960) Activity rings/workouts/sleep/nutrition/heart-rate cards, device tiles/ thermostat dials/light dimmers/camera feeds/energy meters, and feed posts/ stories/polls/share sheets/comment threads. Seeded: census 1960. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…livery (+120 → 2080) Commit diff-stats/CI pipelines/log viewers/env vars/PR cards, course cards/curricula/quizzes/certificates/learning paths, and menu items/ order trackers/reservations/reviews/courier cards. Seeded: census 2080. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ts, support-help (+120 → 2200) Price cards/candles/portfolios/swaps/order books, event cards/ticket stubs/seat maps/lineups/on-sale banners, and support tickets/FAQs/chat launchers/status banners/CSAT prompts. Seeded: census 2200. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…i-assistant (+120 → 2320) Masonry/lightbox/album/editor/filmstrip photo surfaces, job cards/ applicant rows/interview slots/offers/hiring funnels, and AI prompt bars/response cards/model pickers/usage meters/agent status. Batch survived a mid-flight session-limit pause (2 modules recovered intact, 1 re-authored). Seeded: census 2320. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ab, news-reading (+120 → 2440) Listing cards/spec sheets/mortgage calcs/agent cards/tour schedulers, multiplayer cursors/sticky notes/canvas toolbars/comment pins/zoom clusters, and headline stacks/article cards/reader controls/newsletter blocks/live blogs. Seeded: census 2440. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…oductivity-notes (+120 → 2560) Vehicle cards/EV batteries/trip computers/parking/service reminders, show posters/continue-watching/episode lists/audio-subs/watch parties, and notes/todos/pomodoro rings/habit trackers/snippet cards. Seeded: census 2560. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…mmunity, form-flows (+120 → 2680) 2FA setup/vault rows/permission dialogs/audit logs/VPN cards, donation pickers/fundraiser progress/volunteer shifts/impact bands/sponsor tiers, and wizard shells/review summaries/conditional reveals/signature pads/ two-column sections. Seeded: census 2680. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…batch 15 (→ 2800) - Seed stamps a provenance tag first on every catalog component so the per-definition tags can never squeeze it out; hand-built seed envelopes keep the display casing verbatim. - Cards and detail pages surface thing-level tags, attribution chip first (filled + sparkle) ahead of topical tags. - Batch 15 lands with it: logistics, sports-scores, accessibility (+120). The thingtime standings variant was over the 580-node render cap; cells now inherit fontSize/color/textAlign from their row instead of repeating them 30×. - Reseed: 2680 refreshed + 120 created = 2800/2800 tagged, 0 untagged. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…olved conflicts) Conflicted paths: remix/CHANGELOG.md Resolved by the resolve-pr-conflicts workflow: https://github.com/lopugit/thingtime/actions/runs/32104780935 Co-Authored-By: Claude <noreply@anthropic.com>
…olved conflicts) Conflicted paths: FUNDAMENTALS.md, remix/CHANGELOG.md Resolved by the resolve-pr-conflicts workflow: https://github.com/lopugit/thingtime/actions/runs/32442647472 Co-Authored-By: Claude <noreply@anthropic.com>
…olved conflicts) Conflicted paths: remix/app/routes.tsx Resolved by the resolve-pr-conflicts workflow: https://github.com/lopugit/thingtime/actions/runs/33160215788 Lopu-Conflict-Resolution: run=33160215788 pr=291 Co-Authored-By: Lopu <github-actions[bot]@users.noreply.github.com>
…olved conflicts) Conflicted paths: deprecated/api/src/index.js, raycast/src/commands/regexToReplacementConverter.tsx, remix/package.json Resolved by the resolve-pr-conflicts workflow: https://github.com/lopugit/thingtime/actions/runs/33231141951 Lopu-Conflict-Resolution: run=33231141951 pr=291 Co-Authored-By: Lopu <github-actions[bot]@users.noreply.github.com>
Structural `graphify update` completed (graphify 0.9.4); LLM semantic extraction failed, so the verified structural graph was preserved. Refreshed by the resolve-pr-conflicts workflow: https://github.com/lopugit/thingtime/actions/runs/33231141951 Lopu-Conflict-Resolution: run=33231141951 pr=291
…olved conflicts) Conflicted paths: README.md, deprecated/api/src/index.js, raycast/src/commands/regexToReplacementConverter.tsx, remix/package.json Resolved by the resolve-pr-conflicts workflow: https://github.com/lopugit/thingtime/actions/runs/33264184417 Lopu-Conflict-Resolution: run=33264184417 pr=291 Co-Authored-By: Lopu <github-actions[bot]@users.noreply.github.com>
Structural `graphify update` completed (graphify 0.9.4); LLM semantic extraction failed, so the verified structural graph was preserved. Refreshed by the resolve-pr-conflicts workflow: https://github.com/lopugit/thingtime/actions/runs/33264184417 Lopu-Conflict-Resolution: run=33264184417 pr=291
…olved conflicts) Conflicted paths: FUNDAMENTALS.md, README.md, TESTING.md, remix/CHANGELOG.md, remix/app/api/utils/components/browse.ts, remix/app/api/utils/components/seed.ts, remix/app/api/utils/rateLimit/config.ts, remix/app/api/utils/things/things.ts, remix/app/components/ComponentsLibrary/componentTemplate.test.ts, remix/app/components/ComponentsLibrary/componentTemplate.ts, remix/app/components/Kinds/kindRenderers.tsx, remix/app/components/Nav/Drawer/drawerMenu.tsx, remix/app/docs/apiDocs.ts, remix/app/hooks/useApi.tsx, remix/app/routes.tsx, remix/app/schemas/builtinSchemaProjection.test.ts, remix/app/schemas/registry.ts, remix/package.json, remix/server/routes/api/[...].ts Resolved by the resolve-pr-conflicts workflow: https://github.com/lopugit/thingtime/actions/runs/33310978476 Lopu-Conflict-Resolution: run=33310978476 pr=291 Co-Authored-By: Lopu <github-actions[bot]@users.noreply.github.com>
|
| GitGuardian id | GitGuardian status | Secret | Commit | Filename | |
|---|---|---|---|---|---|
| 36831149 | Triggered | Generic Password | 93e2fff | remix/scripts/verify-app-suites.mjs | View secret |
| 36961236 | Triggered | Generic Password | 6a4b330 | remix/app/components/Settings/PasskeysManager.tsx | View secret |
🛠 Guidelines to remediate hardcoded secrets
- Understand the implications of revoking this secret by investigating where it is used in your code.
- Replace and store your secrets safely. Learn here the best practices.
- Revoke and rotate these secrets.
- If possible, rewrite git history. Rewriting git history is not a trivial act. You might completely break other contributing developers' workflow and you risk accidentally deleting legitimate data.
To avoid such incidents in the future consider
- following these best practices for managing and storing secrets including API keys and other credentials
- install secret detection on pre-commit to catch secret before it leaves your machine and ease remediation.
🦉 GitGuardian detects secrets in your source code to help developers and security teams secure the modern development process. You are seeing this because you or someone else with access to this repository has authorized GitGuardian to scan your pull request.
This was referenced Sep 6, 2026
Merged
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
✅ Develop S3 preview ready
89352f94developThe alias passed the develop bucket CORS preflight and a final live PR/SHA fence.
Generic Vercel Preview deployments use the shared development runtime; this controller adds the stable exact-SHA alias and marker-scoped cleanup.
Summary
Integrate the user-selected Lopu assistant, component library, Builder suites and live details, and rich-text improvements into main. Includes the Watch release ancestry from #667; this is not a promotion of the entire develop branch.
Sources: #291 at 6c9a243, #578 at e87f9ff, #612 at b169d31, #592 at 2233103, #635 at ddf4658. Preserve main's component expansion limits and account-cache cleanup while combining new Builder scope/action behavior. Both native Watch and Lopu widget targets remain embedded; ActivityKit is excluded from the Watch target.
Integration corrections include safe signed-out Watch approval rendering, bounded nested component action data, Lopu composer mobile sizing, and finite PM2 lifecycle behavior.
Verification
Delivery
The user explicitly authorized these selected features to merge into lopugit/thingtime main. Main merge is pending required checks and exact-SHA deployment verification.
Local: http://localhost:17890 (HMR 17891, Nitro 17892). Tailscale/Funnel unavailable: the installed shim targets a missing Tailscale.app binary; no mapping changed.
Preview: pending the trusted Vercel preview controller; discover and verify its exact-SHA URL before final delivery.
Recording automation remains separate in #665; provider-backed audio acceptance and APNs integration are not claimed complete here.
Exact integration follow-up
Product fix 43d2401 and graph snapshot 89352f9 add safe style-tune initialization without crypto.randomUUID and border-box sizing. Integrated editor tests: 88 passed; Chrome 1280/390/320px initializes 16 fields and verifies Changes close/open and selection undo without page errors or horizontal overflow. The graph is structurally and semantically refreshed.
GitGuardian reports two historical generic-password occurrences in the combined ancestry: verify-app-suites.mjs at 93e2fff (old synthetic registration fixture, current implementation uses throwawayCredential()), and PasskeysManager.tsx at 6a4b330 (password-variable guard). No scanner disposition or credential/history rewrite was performed; the findings are not claimed resolved. Main release still awaits all required checks and exact-SHA preview.
Main release receipt (2026-09-06)
Merged to main at 2f94edb after all four required checks passed for 89352f9. Exact-SHA preview dpl_9Zmpa9y7p7K9iZPKmiUEgExiUHXL is READY and its Nitro/storage health is ready. Vercel Security Checkpoint prevented browser rendering on that preview; the integrated local browser checks are recorded above. Production deployment is being verified separately.