Commit Graph

243 Commits

Author SHA1 Message Date
Nubenetes Bot
19b7b44e20 feat(v2): restore in-page search/tag filter & drop redundant Markdown TOC
Fix: the per-page resource search box with maturity tag-pills stopped
appearing after navigation.instant was enabled (DOMContentLoaded fires only
on first SPA load). Reworked v2_filter.js to init via Material's document$
observable with a DOMContentLoaded fallback, guard double-injection, bind the
clickable-tag delegation once, and add a no-results state. Cache-bust ?v=2.9.12.

Change: removed the duplicated Markdown "## Table of Contents" from all 156 V2
content pages and from v2_optimizer.py — it forced hundreds of links of scroll
on large pages. Replaced by Material's native sticky "On this page" TOC
(removed toc.integrate, added toc.follow). tags.md keeps its TOC (it is an index).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-19 18:49:15 +02:00
Nubenetes Bot
600dceff4e feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-19 14:38:39 +00:00
nubenetes-bot
ad62e46f9e style(cleaner): auto-correcting formatting & URL normalization 2026-06-19 14:25:24 +00:00
Nubenetes Bot
48e8f71b6d fix: populate Industry & Geo Intelligence Digest (España→Spain rename)
_get_entry_geo() called entry.get("url","") before the url key was
injected into the dict, so TLD inference always received an empty
string and all 304 geo-eligible entries were silently dropped.

Fix: add url= parameter to _get_entry_geo and pass the dict key from
generate_digest. Also renames España→Spain in DIGEST_CATEGORIES,
GEO_CATEGORIES, TLD map, and v2_optimizer geo_cats list.

news_digest.json now includes Americas/Europe/Spain/Asia-Pacific data
(star-based fallback; Gemini will re-rank on next Monday CI run).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 16:24:18 +02:00
Inaki
da96dbc08a Merge pull request #389 from nubenetes/feat/fix-readme-sync-push-loop
fix: readme-sync push loop — rebase → merge-based retry
2026-06-19 16:05:12 +02:00
nubenetes-bot
5eec0880f7 style(cleaner): auto-correcting formatting & URL normalization 2026-06-19 14:04:54 +00:00
Nubenetes Bot
b470c4acdb fix: escape pipe chars in digest table link titles
Titles containing ' | ' (e.g. "Neo, Now in the Terminal | Pulumi Blog")
broke the Markdown table renderer because the unescaped pipe was parsed
as a column separator.

Root cause: v2_optimizer.py escaped pipes in the 'why' column but not
in the link title — one-line fix adds `.replace("|", r"\|")` to `t`.

Also corrects the 4 already-rendered broken entries in tech-digest.md.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 16:04:21 +02:00
Nubenetes Bot
94ac0b73a2 feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-19 13:56:44 +00:00
Nubenetes Bot
47aec8ed87 feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-19 13:48:06 +00:00
Nubenetes Bot
6bed317cdc feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-19 13:30:54 +00:00
Nubenetes Bot
e95cd9dc56 fix: stop YouTube mosaic from rendering the entire inventory (index outage)
load_inventory_channels() selected entries via 'youtube_mosaic' in entry
(key presence). save_inventory() always writes a youtube_mosaic column
that the SQL round-trip materializes as an empty dict {} on EVERY entry,
so the filter matched all 18,647 inventory entries and emitted ~18.6k
inline <img> links on a single line. That produced a 4MB v2-docs/index.md
(and 2.9MB docs/index.md), hanging both V1 and V2 index pages in the
browser. A prior revert masked it; the next SQL-backed sync re-broke it.

Fix: only treat an entry as a mosaic channel when youtube_mosaic is a
non-empty dict with a logo image (136 curated channels). Regenerated both
index files via reorganize_mosaic — docs/index.md is now byte-identical
to the last known-good state (52KB); v2-docs/index.md back to 41KB.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-19 15:24:00 +02:00
Nubenetes Bot
f85439c757 feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-19 12:59:44 +00:00
Nubenetes Bot
72bb3c5150 feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-19 11:58:46 +00:00
Nubenetes Bot
43fae0f9d0 docs: update Video Hub with high-fidelity metadata 2026-06-19 11:31:29 +00:00
nubenetes-bot
7f5fbe34ee style(cleaner): auto-correcting formatting & URL normalization 2026-06-19 11:20:45 +00:00
Nubenetes Bot
119bd4158f revert: restore v2.8.4 state — publisher deletions broke V2 portal
The publisher deleted ~30 v2-docs pages still referenced in v2-mkdocs.yml nav,
producing a broken MkDocs build. Rolling back to last known good state (v2.8.4).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 13:19:40 +02:00
Nubenetes Bot
1b56b77cbf feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-19 10:51:23 +00:00
Nubenetes Bot
16ad26f427 refactor: remove digest-preview list from index, keep trending cards only
The 5-item link list was redundant with the 6 trending cards block
that the publisher generates. Cleaner UX: hero card (amber) → trending
cards → /tech-digest/ for full 22-category view.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 11:05:41 +02:00
Nubenetes Bot
c8ca878f66 feat: add Intelligence Digest card to index hero and mini-preview block
- New hero card (amber color) between AI & MCP Agents and Agentic Video
  Hub, linking to /tech-digest/ with emoji icon and subtitle
- Dynamic digest-preview block above Agentic Pulse: shows top 1 link
  from 5 priority categories (Kubernetes, AI, Security, IaC, Observability)
  pulled from data/news_digest.json on each optimizer run
- New CSS: hero-badge-card--amber, hero-badge-icon, digest-preview
  component with category chips and hover states
- v2_optimizer now generates both the card and preview automatically

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 10:58:52 +02:00
Nubenetes Bot
6f34ac8569 fix: replace indented ## headings with bold text in digest pages (MD023 lint fix)
- Change `    ## Category` to `    **Category**` inside MkDocs Material
  tabs to avoid MD023 linter errors (headings must start at col 0)
- Sanitize pipe characters in "why" text to prevent broken markdown tables
- Regenerated tech-digest.md (1328 lines, 3 tabs: 333/443/552 lines)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 09:50:53 +02:00
Nubenetes Bot
b5b3dc3ce2 fix: differentiate digest periods (10/15/20 items), fix year fallback, fix NoneType stars
- Variable items per period: 3 months=10, 6 months=15, 12 months=20
  so each tab shows progressively more content
- Use year field as fallback in _is_within_period when discovered_at
  doesn't discriminate (backfilled entries)
- Fix NoneType comparison in _fallback_items for entries with null stars
- Regenerated digest: 3m=220, 6m=330, 12m=440 items across 22 categories
- tech-digest.md now 1353 lines with differentiated tabs (339/449/559 lines)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 09:44:44 +02:00
Nubenetes Bot
f90d66478f feat: generate first Intelligence Digest with real content (22 categories, 660 items)
- Generate news_digest.json from inventory using star-based ranking
  (no Gemini tokens consumed — fallback mode)
- tech-digest.md: 1022 lines with 22 categories across 3/6/12 month tabs
- industry-digest.md: placeholder (geo_region data will populate after
  next curator run with updated Gemini prompts)
- Add gitignore exception for data/news_digest.json
- 220 items per time period across Kubernetes, AI, DevOps, Security,
  IaC, Observability, Cloud Providers, and more

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 09:32:23 +02:00
Nubenetes Bot
13d51e8fa9 fix: remove offline plugin (.html suffix), add digest placeholder pages, enforce clean URL mandate
- Remove offline plugin from v2-mkdocs.yml — it forces .html suffixes
  on all URLs, breaking SEO and existing deep-links
- Add placeholder tech-digest.md and industry-digest.md pages to prevent
  404 errors before first Gemini digest generation run
- Add clean URL mandate to CLAUDE.md and GEMINI.md: offline plugin is
  permanently forbidden, use_directory_urls must always be true
- Update README with V2 URL Policy section

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19 09:28:50 +02:00
Nubenetes Bot
67092bc4d2 feat: implement recommendations #2, #3, and #5 for curation and tags performance 2026-06-18 16:52:16 +02:00
Nubenetes Bot
ced3553734 feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-18 13:57:45 +00:00
Nubenetes Bot
11aa0026c8 chore: rebuild site and v2-docs after CSS integration 2026-06-18 15:50:02 +02:00
Nubenetes Bot
852077cb5b merge remote 'origin/develop' 2026-06-18 15:43:56 +02:00
Nubenetes Bot
5b90fef67b style: implement modern browser-native CSS features (balanced headings, orphan controls, course touch targets, auto-sizing text areas) for V2 Elite 2026-06-18 15:43:38 +02:00
Nubenetes Bot
8171a464a5 feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-18 13:30:34 +00:00
Nubenetes Bot
f190c92645 chore: rebuild v2 docs and site assets post-merge 2026-06-18 15:23:14 +02:00
Nubenetes Bot
51907d4359 merge remote 'origin/develop' 2026-06-18 15:19:51 +02:00
Nubenetes Bot
617c700018 feat: integrate advanced AI developer tools (Cursor, Antigravity, Claude Code, Copilot) into V1/V2 and fix parsing regex 2026-06-18 15:19:19 +02:00
Nubenetes Bot
80c2c65a80 feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-18 09:53:54 +00:00
Nubenetes Bot
469276fbcd docs: update Video Hub with high-fidelity metadata 2026-06-18 09:50:03 +00:00
Nubenetes Bot
ed79499373 feat(about): improve V2 about page manifest context and add 12 automation tools 2026-06-18 11:47:02 +02:00
Nubenetes Bot
ab72d9c411 feat: configure V2 to serve at root and V1 at /v1/ 2026-06-18 11:26:10 +02:00
nubenetes-bot
f9e994778a style(cleaner): auto-correcting formatting & URL normalization 2026-06-18 09:19:31 +00:00
Nubenetes Bot
7afdcb8938 feat: render V2 Elite Portal with performance and tag styling improvements 2026-06-18 11:18:43 +02:00
nubenetes-bot
18cc8a4252 style(cleaner): auto-correcting formatting & URL normalization 2026-06-18 09:03:30 +00:00
Nubenetes Bot
378fbc948d feat: improve V2 index Maturity Taxonomy tags styling and optimize Technical Tags index page for usability and performance 2026-06-18 11:02:49 +02:00
nubenetes-bot
d5ae9c5692 style(cleaner): auto-correcting formatting & URL normalization 2026-06-18 08:52:35 +00:00
Nubenetes Bot
d17b812860 feat: improve V2 index Maturity Taxonomy UI and optimize Technical Tags index page for speed and usability 2026-06-18 10:51:56 +02:00
Nubenetes Bot
74c3e463fa docs: regenerate Video Hub overview page with clean directory URLs 2026-06-18 10:45:12 +02:00
Nubenetes Bot
512b7d67b0 feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-18 08:17:29 +00:00
Nubenetes Bot
bb360b1083 fix: restore inventory database from corruption and regenerate mosaics 2026-06-18 10:12:20 +02:00
Nubenetes Bot
44e607a83a feat: implement offline mock debate simulator and clickable tag filters sync 2026-06-18 03:17:22 +02:00
Nubenetes Bot
235d9d721b feat: implement Phase 3 tagging system, clickable tag filtering, custom color badges, and tags.md index generation 2026-06-18 02:36:51 +02:00
Nubenetes Bot
7f7861e3e8 feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-18 00:04:25 +00:00
Nubenetes Bot
8547f8ce56 docs: add multi-agent debate explanation and mermaid diagram to README 2026-06-18 02:00:47 +02:00
Nubenetes Bot
d952494b75 feat: sync V2 elite curated edition and README metrics [skip ci] 2026-06-17 23:51:22 +00:00