Skip to content

feat(guides): first three deep explainers — screening, qabd, attestation - #71

Merged
eaitbrahim merged 1 commit into
mainfrom
feat/guides-explainers-12
Aug 22, 2026
Merged

feat(guides): first three deep explainers — screening, qabd, attestation#71
eaitbrahim merged 1 commit into
mainfrom
feat/guides-explainers-12

Conversation

@eaitbrahim

Copy link
Copy Markdown
Contributor

Closes #12

CONTENT-CALENDAR items 2–4: the first three deep explainer guides, EN + AR, served under /en/guides/<slug>/ + /ar/guides/<slug>/ — a minimal article variant inside the existing guides lane (same sidebar, prev/next chained), not a new section.

The three guides

Guide Slugs Words (EN / AR)
How Shariah crypto screening actually works how-shariah-crypto-screening-works 1,468 / 1,254
Qabd (constructive possession) in spot crypto, explained qabd-constructive-possession-spot-crypto 1,440 / 1,212
Attestation is not a fatwa attestation-is-not-a-fatwa 1,457 / 1,200

All six in the 1,200–1,800 band (lede + sections + honest box + footnote counted per locale; AR tracks EN at the natural MSA density ratio ~0.83–0.85). Definition-first ledes throughout; every guide carries the honest-context box, the not-a-fatwa / not-financial-advice line, fiqh-basis links, and FR-8 rev markers on the AR twins (تُرجمت هذه المقالة عن المراجعة الإنجليزية 2026-08-21.1).

Machinery (minimal, same lane)

  • src/i18n/guides/explainers.ts — the article content model (sections/bullets, honest box, footnote, rev/translatedFromRev) + all six texts.
  • src/i18n/guides/lane.ts — combined lane reading order; sidebar order == prev/next order. The last Get Started guide's "Next" now continues into the explainers.
  • src/components/pages/ArticlePage.astro — locale-aware article renderer (breadcrumb, honest box via the existing HonestBox, AR rev marker, EN↔AR cross-link, Article JSON-LD, en/ar hreflang alternates, no fr alternate since no FR page ships).
  • DocsSidebar.astro — new "Deep explainers" group (شروحات معمّقة) after Get Started; AR sidebar links the AR twins, Get Started stays EN as before.
  • src/pages/en/guides/index.astro — lists the three explainers (with AR-twin links) and extends the ItemList JSON-LD.
  • Six page stubs under src/pages/{en,ar}/guides/.

Zero client JS added. No guides-UI redesign — reuses docs-content/prose/docs-pager/honest-box styles.

Factual grounding

Every fiqh/compliance claim traces to the engine docs rendered under /docs (fetched via npm run fetch): the tri-sourced §65.4 possession test, rail 17 mechanics (7-day TTL, entries-only, "silence is not evidence of possession"), the screen's four attested axes + the single waivable criterion (history), §66.6 school divergence, the §71.1 IIFA 237 non-ruling premise caveat, the no-review ratchet, and the outreach note's "attested, never inferred, enforced deterministically". Results mirror the engine's honest posture exactly: no shipped rule family net-positive at the venue taker fee (~1.2%/side; 0/90 and 0/82 matrices; 14.9% vs 14.88% break-even inside the fee-free allowance).

Verification

  • npx astro check — 0 errors (1 pre-existing hint in scripts/render-tui-shots.mjs, untouched).
  • npm run build — 50 pages; all six guide URLs present in dist and in sitemap-0.xml; en/ar hreflang + x-default verified.
  • Docs sidebar (EN + AR) lists the three explainers; EN guides index links them; compliance-attest's pager now chains into the first explainer.
  • Puppeteer @390px (all six pages): document.scrollWidth == 390 on every page — no horizontal overflow (only the standard off-canvas a.skip-link flags the naive element scan, as on every existing page).

Follow-ups (not in this PR)

  • The three Discussions announcement posts are the distribution and are deliberately not part of this PR — to be posted on merge (issue Guides lane: first three explainers (EN + AR) #12's "Publish = PR; the announcement is the distribution").
  • Measurement gate: <10 GSC impressions/30d on a guide → revise title/H2s before writing calendar item 5.

…ion (#12)

CONTENT-CALENDAR items 2-4: three long-form explainer guides in the guides
lane, EN + AR, 1,200-1,800 words each, definition-first ledes, honest-context
boxes, FR-8 rev markers on the AR twins.

- How Shariah crypto screening actually works — computed vs attested,
  fail-closed, absence != pass, the one waivable criterion, the premise
  caveat (IIFA 237 non-ruling).
- Qabd (constructive possession) in spot crypto — the tri-sourced §65.4
  operative test in plain words, withdrawal capability as its one practical
  proxy, rail 17 mechanics (7-day TTL, entries-only), what the rail does
  not claim.
- Attestation is not a fatwa — the governance boundary: where rulings live,
  the review that has not happened, what a reviewer would and would not
  endorse, how to disagree.

Machinery: a minimal article variant beside the step-model Get Started
guides — same lane, same sidebar, prev/next chained across the whole lane
(the last Get Started guide now continues into the explainers). Sidebar
gains a "Deep explainers" group (AR links to the AR twins); the EN guides
index lists them; explainers carry en/ar hreflang alternates and Article
JSON-LD. Every fiqh/compliance claim traces to the engine's glossary and
fiqh-basis docs; result claims mirror the honest posture (no rule family
net-positive at venue taker fees). Zero client JS.
@sonarqubecloud

Copy link
Copy Markdown

@eaitbrahim
eaitbrahim merged commit a2b9b98 into main Aug 22, 2026
2 checks passed
@eaitbrahim
eaitbrahim deleted the feat/guides-explainers-12 branch August 22, 2026 01:09
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.

Guides lane: first three explainers (EN + AR)

1 participant