Skip to content

[blogger-refresh] strengthen namuthaj محضر winner for adjacent long-tails - #129

Merged
Smetools merged 1 commit into
mainfrom
hassan/blogger-20260713
Jul 13, 2026
Merged

[blogger-refresh] strengthen namuthaj محضر winner for adjacent long-tails#129
Smetools merged 1 commit into
mainfrom
hassan/blogger-20260713

Conversation

@Smetools

@Smetools Smetools commented Jul 13, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • namuthaj-mahdar-ijtimaa-ar confirmed its first WIN at day 15 (10 non-brand clicks / 2,736 impr / avg pos 6.5, still climbing) — first win since the SEO-engine rewrite.
  • Live SERP check shows it already ranks page-1 (~pos 8) for the adjacent query "كيف تكتب محضر اجتماع احترافي" — writing a new page for that exact query would cannibalize our own winner.
  • Two other net-new candidates were live-SERP-tested and rejected: محضر اجتماع قصير وسهل (100% template/PDF-download SERP, same intent bucket this page already owns) and محضر اجتماع مجلس الإدارة (SERP = real NGOs' own published board-minutes archives + a gov template — navigational, not informational). A fourth candidate (متابعة قرارات الاجتماع, decision-tracking) had zero measurable Google Ads volume.
  • This PR refreshes the winner instead of fragmenting authority with a new page:
    • New H2 "ما الذي يجعل محضر الاجتماع احترافياً؟" — a citable passage targeting the adjacent "احترافي" long-tail on-page.
    • New H2 "نموذج محضر اجتماع قصير وسهل" + a worked example — genuinely new short-form guidance, targets the "قصير وسهل" long-tail (vol 70, low comp).
    • New FAQ entry for the same short-form query.
    • Fixed the agenda↔minutes cross-link to be two-way (jadwal-aamal-ijtimaa-ar already linked here; this page didn't link back) — added related_pages frontmatter + RELATED_LABELS entries so both posts show in each other's "Related" block.

Fact-check

Ran a Codex fact-flag pass on the diff: no ship-blocking issues. One minor day-of-week/date mismatch in the new worked example was caught and fixed before this PR (the illustrative dates now correctly fall on Tuesdays in 2026).

Test plan

  • /blog/namuthaj-mahdar-ijtimaa-ar renders the two new sections + new FAQ entry correctly in RTL Arabic
  • "Related" block now shows both namuthaj ↔ jadwal-aamal cross-links
  • No broken links / build passes

🤖 Generated with Claude Code

https://claude.ai/code/session_01PctRre9jyDDFkr3JuSZoGH

Summary by CodeRabbit

  • New Features

    • Added related links between Arabic meeting-template blog posts for easier navigation.
    • Expanded the Arabic meeting-minutes article with guidance on professional minutes, a short template example, and a new FAQ section.
    • Added a related link for the meeting agenda and updated article reading-time information.
  • Content Updates

    • Added a new article tag and improved section organization.
    • Refined instructions for creating meeting minutes in seven steps.

…ails

namuthaj-mahdar-ijtimaa-ar confirmed its first WIN at day 15 (10 non-brand
clicks, pos 6.5) and already ranks page-1 for the adjacent query "كيف تكتب
محضر اجتماع احترافي". Rather than launch a competing net-new page on that
query (self-cannibalization) or on two other SERP-tested candidates that
turned out template-saturated or navigational, this refresh deepens the
winner instead:

- New H2 "ما الذي يجعل محضر الاجتماع احترافياً؟" — citable passage
  targeting the adjacent "احترافي" long-tail directly on-page.
- New H2 "نموذج محضر اجتماع قصير وسهل" + worked example — targets the
  "قصير وسهل" long-tail with genuinely new short-form guidance.
- New FAQ entry for the same short-form query.
- Fixed the agenda<->minutes cross-link to be two-way (jadwal-aamal already
  linked here; this page didn't link back) + added related_pages entries
  + RELATED_LABELS so both show in each other's "Related" block.

Codex fact-flag pass: no ship-blocking issues; fixed a day-of-week/date
mismatch in the new worked example.
@vercel

vercel Bot commented Jul 13, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
knowcap-landing Ready Ready Preview, Comment Jul 13, 2026 1:14pm

Request Review

@coderabbitai

coderabbitai Bot commented Jul 13, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

Arabic meeting blog metadata and content are expanded with related-page links, improved instructional sections, and an FAQ addition. The blog page also adds localized labels for the new related-post slugs.

Changes

Arabic meeting blog content

Layer / File(s) Summary
Article metadata and instructional content
app/content/blog/jadwal-aamal-ijtimaa-ar.md, app/content/blog/namuthaj-mahdar-ijtimaa-ar.md
Related-page metadata, tags, reading time, agenda linking, professional-minutes guidance, a short template example, and FAQ content are updated.
Related-link display labels
app/app/blog/[slug]/page.tsx
Localized labels are added for two Arabic meeting blog slugs used by related-post links.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title is related to the PR’s main goal of strengthening the Arabic meeting-minutes page for adjacent long-tail queries.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch hassan/blogger-20260713

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@app/content/blog/namuthaj-mahdar-ijtimaa-ar.md`:
- Line 23: Remove the ineffective read_minutes frontmatter change, since the
blog parser’s readMinutes derivation does not consume it. Keep the existing
read-time calculation in the parser unchanged.
- Line 73: Update the sentence in the worked example so its line-count wording
matches the example: replace “أربعة أسطر” with “عدة أسطر” while preserving the
rest of the sentence.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 4785d3d1-b225-4769-a608-64b95cdcccc7

📥 Commits

Reviewing files that changed from the base of the PR and between 75d9158 and 9a5d063.

📒 Files selected for processing (3)
  • app/app/blog/[slug]/page.tsx
  • app/content/blog/jadwal-aamal-ijtimaa-ar.md
  • app/content/blog/namuthaj-mahdar-ijtimaa-ar.md

related_pages: ["/blog/jadwal-aamal-ijtimaa-ar"]
source_knowcap_ids: []
read_minutes: 8
read_minutes: 10

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

read_minutes is not consumed by the parser.

app/lib/blog.ts, Lines 249–271, derives readMinutes from the body word count and never reads data.read_minutes, so changing this frontmatter value cannot update the displayed reading time. Either make the parser honor this field with validation/fallback, or remove this ineffective change.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@app/content/blog/namuthaj-mahdar-ijtimaa-ar.md` at line 23, Remove the
ineffective read_minutes frontmatter change, since the blog parser’s readMinutes
derivation does not consume it. Keep the existing read-time calculation in the
parser unchanged.

> - مراجعة الميزانية المعدَّلة قبل الاجتماع القادم (خالد، ٢١ يوليو)
> الاجتماع القادم: الثلاثاء ٢١ يوليو

أربعة أسطر، لكنها تجيب عن السؤالين اللذين يهمّان لاحقاً: ماذا قرّرنا، ومن يتابعه. هذا هو جوهر المحضر القصير — لا نقصٌ في الشكل، بل تركيزٌ في المضمون.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win

Keep the worked-example count consistent.

The example above contains six quoted lines, but this sentence says “أربعة أسطر”. Change it to “عدة أسطر” or revise the example to actually contain four lines.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~73-~73: ف "اللذين" اسم موصول للمثنى، و"الذين" اسم موصول لجمع الذكور
Context: ...ليو أربعة أسطر، لكنها تجيب عن السؤالين اللذين يهمّان لاحقاً: ماذا قرّرنا، ومن يتابعه....

(AR_SIMPLE_REPLACE)


[typographical] ~73-~73: لأنه من الأخطاء الشائعة كتابة التنوين على الألف، والصحيح أن تُكتب على الحرف الذي قبل الألف؛ لأن التنوين نون ساكنة والألف ساكنة، فلا يجتمع ساكنان
: "لاحقًا"

Context: ...ر، لكنها تجيب عن السؤالين اللذين يهمّان لاحقاً: ماذا قرّرنا، ومن يتابعه. هذا هو جوهر ا...

(typo_000_tanwin_nasb)


[grammar] ~73-~73:
الفرق بين لا الناهية ولا النافية، لا الناهية تأتي مع ضمائر المخاطب فقط. لذا فإن لا النافية لا تجزم الفعل المضارع أتقصد؟

    "لا نقاص", "لا نقص", "لا نقصى", "لا نقصي", "لا نقيص", "لا ننقص", "لا نوقص"

Context: ...ومن يتابعه. هذا هو جوهر المحضر القصير — لا نقصٌ في الشكل، بل تركيزٌ في المضمون. ## الع...

(grammar_0011_notjazem_lam_nafia)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@app/content/blog/namuthaj-mahdar-ijtimaa-ar.md` at line 73, Update the
sentence in the worked example so its line-count wording matches the example:
replace “أربعة أسطر” with “عدة أسطر” while preserving the rest of the sentence.

@Smetools
Smetools merged commit 2163b73 into main Jul 13, 2026
3 checks passed
Smetools added a commit that referenced this pull request Jul 19, 2026
…uthaj (#131)

Adds the illustrative comparison graphic Hassan asked for on the "قصير
وسهل" (short & easy) section added in the previous refresh (PR #129) --
a split illustration contrasting the full formal template (seal, gavel)
against the short-form note (clock, checkmarks). Generated via
gen-image.py (Gemini), no baked-in text, brand navy/blue.
Smetools added a commit that referenced this pull request Aug 4, 2026
…inner for رسمي/جاهز long-tails (#145)

* [growth-manager/blogger][blogger-20260804] strengthen namuthaj for رسمي/جاهز long-tails

Two consecutive empty blogger windows were caused by the seo worker's
content-brief generator mislabeling US search volume as MENA (found
2026-07-22). This run re-verifies every محضر اجتماع family candidate live
via DataForSEO with explicit Saudi Arabia/Egypt/UAE location targeting
before picking anything, per Hassan's 2026-07-22 STEERING direction.

Real MENA numbers (location queried alongside each):
- نموذج محضر اجتماع رسمي word: SA 390 / EG 170 (clears the >=100 gate)
- نموذج محضر اجتماع جاهز: SA 210 / EG 110 (clears the gate)
- نموذج محضر اجتماع مجلس إدارة: SA 70 / EG 70 (under gate)
- نموذج محضر اجتماع لجنة: SA 70 / EG 70 (under gate)
- محضر جلسة: SA 20 / EG 40 / UAE 10 (under gate)
- كيفية كتابة محضر اجتماع مجلس إدارة: 10/10/10 (under gate)
- نموذج محضر اجتماع حكومي: 20/10 (under gate)
- محضر اجتماع قصير وسهل: 70/40 (under gate, already known saturated 07-13)
- محضر لجنة تدقيق / محضر اجتماع لجنة التدقيق: no measurable volume

Cannibalization check (live serp_organic_live_advanced, KSA/ar): the only
two candidates that clear the volume gate are BOTH already won by
namuthaj-mahdar-ijtimaa-ar -- organic page-1 for "نموذج محضر اجتماع رسمي
word" (rank_absolute 7) and "نموذج محضر اجتماع جاهز" (rank_absolute 6),
just behind Canva/WHO/uqu.edu.sa authority giants, not yet #1. Every other
variant fails the >=100 volume gate this pipeline enforces.

No net-new page shipped -- this refresh deepens the confirmed winner
instead, on demand it's already partially capturing:
- New H2 "الفرق بين محضر اجتماع رسمي ونموذج جاهز للتحميل" (~150 words,
  exact-phrase-matches both newly-verified queries).
- New FAQ sweeping the مجلس إدارة/لجنة sub-100-vol variants into the hub
  page instead of fragmenting authority onto weak standalone pages.

Verified against PR #129's actual diff this doesn't duplicate the prior
refresh (which targeted احترافي/قصير وسهل, different long-tails).

Flagged, not fixed (outside content lane): app/lib/blog.ts:235 extractFaqs()
requires heading "FAQ"/"الأسئلة الشائعة" for FAQPage schema; both namuthaj
and jadwal use "## أسئلة شائعة" (no ال) and don't match -- FAQPage JSON-LD
has likely never fired on either page. Recommend /bug-creator.

Codex fact-flag pass attempted, timed out after 2 min -- manually reviewed:
no new statistics/factual claims added, only standard KSA board-governance
process guidance (quorum, session numbering, vote record) consistent with
the page's existing voice.

Odoo: n/a (content refresh, no ticket -- ticket-gate exempts content-only
blog PRs per existing precedent, e.g. PR #133/#117)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

* chore(blogger): record refresh_pr URL for namuthaj-mahdar-ijtimaa-ar

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant