New
Apps 1,896Makers 1,891This week 1,504
Promote your app−30%
RadCalc screenshot 1
0views in
the last 30 days

RadCalc

Practical radiation calculators for radiation workers

Built with Claude Code

by aijhmin1031-eng · Unclaimed · from KRSouth Korea · added Oct 29, 2026
no ratings0 comments

radiation-calc — RadCalc

radiation-lab.com 우산의 셋째 lab. 방사선 실무 계산기 묶음이고 /calc/ 에 산다.

★ 위 배지는 개념 DOI 다 — 항상 최신 판본을 가리키므로 릴리스를 내도 낡지 않는다. 판본 DOI(릴리스마다 새로 발급)는 배지에 쓰지 않는다. 화면 정본은 brand.ts 의 DOI, 발급 절차와 밟은 함정은 docs/zenodo.md 4절.

우산 정본은 aijhmin1031-eng/radiation-lab, 절차는 radiation-meter-tester/docs/umbrella-setup.md.

★★★ 공통 셸 v3 — 머리글 · 꼬리말을 radiation-lab/public/shell 정본으로 (2026-10-28, T2)

계기. 소유주 「radiation-lab.com 이 사이트가 하나의 사이트처럼 보이게 해줘야 해. 지금 탑재된 pro 기능들이 별도로 구축된 것들이 있어 다른 사이트처럼 보이는 경향이 있어」. 네 오리진 17쪽 실측(우산 README 2026-10-28 절)에서 「Radiation Lab /」 글자 말고는 글꼴 · 배경 · 메뉴 · 꼬리말 · 로그인 입구가 제각각이었다. 이 lab 은 우산과 apex 를 같이 쓰므로 막대가 한 픽셀도 달라선 안 되는데, 그것을 SiteHeader.astro 가 우산 .hd/.tm 과 같은 모양을 제 CSS(.shdr-* · .tmenu-*)로 다시 그려 지키고 있었다 — 2026-09-16 절 「레포가 셋이라 공유 모듈을 둘 수 없다 — 같은 숫자를 세 곳에 적는다」의 사본 셋 중 하나. 인용하던 정본 C:\dev\rl\HEADER-SPEC.md 는 이 PC 에 없다. 설계 · 결정 기록: D:\Files\_작업\20261028_radiation-lab 사이트 개편\20261028_1240_…_공통 셸 명세·결정 기록·작업 분해_설계안.md §3.9 · §4 B행.

정본은 우산 public/shell/ (shell.json · render.mjs · shell.css · shell.js · fonts/ — https://radiation-lab.com/shell/, 2026-10-28 배포). 이 저장소는 그 사본 shell/ 을 든다 — npm run sync-shell(scripts/sync-shell.mjs)이 apex 에서 받아 온다(받은 것이 셸인지 검사한 뒤 쓴다 · 네트워크가 안 되면 사본을 두고 경고 · --from=<dir> 로 로컬 체크아웃 복사). 사본은 손으로 고치지 않는다 — 고칠 것은 우산에 고치고 다시 받는다. 빌드는 shell.json · render.mjs 만 쓴다(네트워크 없이 재현 가능); shell.css · shell.js · fonts 는 라이브에서 우산 Worker 가 내주고, 사본은 게이트의 로컬 서버만 쓴다.

자리 전 후
머리글 components/brand/SiteHeader.astro 마크업 60행 + CSS 75행 + 메뉴 스크립트 — 우산과 같은 숫자를 손으로 renderHeader(spec, { section: "calc", currentHref, apex: true }) 출력(set:html). 「현재」는 lib/shell-page.mjs 의 currentHrefFor — 구역 셋(/calc/nuclides/ · /calc/methods/ · /calc/validation/)은 뿌리를 넘겨 낱장에서도 켜지고(옛 startsWith 와 같은 뜻), 도구 쪽은 제 주소(Calculators 패널이 지금 도구를 표시). apex: true 라 apex 링크가 /calc/… 루트 상대 — check-output ② 그대로
테마 단추 · 계정 칩 ThemeToggle.astro(저장 · aria-pressed 스크립트) · AccountChip.astro(data-who + ::after)를 머리글 슬롯에 머리글 출력의 #thm · #acct — 동작은 /shell/shell.js(테마 저장 모양 {"state":{"mode","resolved"},"version":0} 그대로). 두 컴포넌트 삭제. 계정 상태(data-acct · data-acct-who, SB_REF)는 그대로 Base.astro 의 부팅 스크립트
그리기 전 테마 스크립트 저장된 선택이 있을 때만 data-theme 우산과 같은 것(renderHeadAssets(…, { withThemeBoot: true })): 저장이 없으면 OS 설정을 읽어 항상 세운다. 옛 방식은 shell.js 의 단추와 해·달 그림이 data-theme 만 보므로 OS 다크 + 저장 없음에서 해가 보이고 첫 클릭이 「다크 → 다크」가 됐다
꼬리말 Base.astro 도구 여덟 · Data sources · 면책 · Platform documents(링크 7) renderFooter(…) 출력 — 공유 줄 + About the site / Radiation Lab / Legal + 한 줄. 도구 여덟 · 출처 · 면책은 꼬리말 위의 aside.site-notes 로(<main> 밖 — 어수 검사가 둔해지지 않게; 도구 링크는 <nav> 라 check-notes 가 세지 않는다). Platform documents 일곱은 공통 열이 전부 든다 — 잃은 링크 0(내부 링크 4,036개 · 죽은 주소 0)
공유 줄 ShareRow.astro(본문 끝) 다섯 단추 + 복사 스크립트 삭제 — 공통 꼬리말 첫 줄이 같은 다섯이다(두 벌 금지). share={false}(저장 목록)와 404 는 이 쪽 대신 apex 홈을 권한다(shareFor, 우산 404 와 같은 처방)
색 토큰 styles/global.css 12–63행 --c-* 라이트 · 다크 두 블록(+ color-scheme) 삭제 — /shell/shell.css 가 같은 이름 · 값을 준다. Tailwind rgb(var(--c-x) / <alpha>) 그대로. 실측: --c-paper 232 234 230 / 18 21 23, body 배경 같은 값
head 테마 스크립트 /shell/shell.css?v=1 · /shell/shell.js?v=1(defer) — 같은 오리진의 루트 상대, 제3자 요청 0
압축 고정 바 #topbar 그대로(이번 범위 밖)
HEADER-SPEC.md 인용 주석 SiteHeader · check-platform · check-lockup · lucide.ts · tools.ts · brand.ts radiation-lab/public/shell/ (HEADER-SPEC v3)

실측(Playwright, dist/calc + 우산 public/shell, 4쪽 × 1280/390 × 라이트/다크 = 16, D:\Files\_작업\20261028_radiation-lab 사이트 개편\T2_캡처\실측.md): 머리글 56px(1280) · 90px(390) 16/16, 가로 넘침 0, JS · HTTP 오류 0, shell.css 200 · 적용, shell.js 동작(aria-pressed 선다), data-theme light/dark, 「현재」 Nuclide data · Methods(390 에서 Nuclides).

게이트

  • check-shell(신설, 체인 2번째, 정적 · 우산 것을 본뜸) — 산출물 101쪽 전부: header.site · footer.site 가 같은 호출의 render.mjs 출력과 바이트 동일(머리글 10,247자 · 꼬리말 2,870자 — Astro 의 compressHTML 이 set:html 을 건드리지 않는다는 것이 이것으로 확인됐다) · 꼬리말이 권하는 주소가 canonical 이고 글이 <title> 과 같다(홈을 권하는 쪽은 noindex 둘뿐) · head ?v= = shell.json version · 그리기 전 테마 스크립트 · 인라인 + _astro CSS/JS 에 옛 사본(--c-paper: · .shdr- · .tmenu- · .rmt-theme · 테마를 쓰는 스크립트 · 옛 컴포넌트 표식) 0 · aside 도구 8 · 출처 · 면책 · shell.json 절대 주소 53개 · 옆에 우산 체크아웃이 있으면 사본 대조(경고만 — CI 에는 우산이 없다). package.json 의 gate 와 ci.yml 두 자리에 적었다(check-gates ② 확인). · 잡은 것: 처음 <title> 의 &#39; 를 안 되돌려 /validation/mda/(MARSSIM's) 하나가 빨갰다 — 엔터티 되돌리기를 숫자 엔터티까지로.
  • 게이트 로컬 서버 11곳에 /shell/* 을 더했다(gate/shell-assets.mjs — SHELL_DIR 환경변수 → 없으면 vendored shell/). 없으면 check-render 가 전 쪽 「HTTP 404」, 다른 게이트는 벗은 쪽(토큰 · 막대 CSS 없음)을 잰다. CI 에는 우산이 없으므로 사본이 기본값 — 그래서 sync-shell 이 css · js · fonts 도 받는다(산출물에는 안 들어간다).
  • 고친 것: check-lockup [data-site-header] → header.site[data-shell](옛 표식은 「옛 막대」로 센다) · check-header 선택자(#thm · .thm-sun/.thm-moon · #acct · #acct-who 글자) + 칩은 늘 있다(셸의 일부 — 환경변수 없는 빌드는 상태 검사만 생략) · check-save 「켜짐」을 머리글 링크가 아니라 빌드의 SB_REF 로 읽고, 꺼진 빌드는 칩 밖의 저장 링크 0 을 요구 · check-sticky ⑥ 머리글 position static 또는 relative(shell.css 가 relative; z-index:40 을 준다 — 흐름 안이면 된다) · check-output 허용 목록에 /shell/shell.css · /shell/shell.js · check-gates · check-adsense 의 Windows 경로(E:\E:\…)를 fileURLToPath 로(CI 에는 차이 없음 — 로컬에서 돌리려고).
  • 로컬 결과 2026-10-28(Windows · PW_CHROMIUM · 환경변수 없는 빌드 = CI 와 같은 상태): check-gates · check-shell · check-output · check-render · check-lockup · check-inputs · check-save · check-sticky · check-header · check-platform(치수 · 색 · 메뉴 동작 — 한 픽셀도 안 움직였다) · check-a11y · check-nuclides · check-notes · check-progeny · check-og · check-lastmod · check-adsense · check-validation 전부 통과. tsc · astro check 0 오류(.mjs 의 서명은 shell/render.d.mts — 이 파일만 사본이 아니라 이 저장소 것).
  • 계정 켜진 빌드도 따로 확인했다(가짜 Supabase 값으로 빌드 — 커밋 아님): check-header 로그아웃 「Sign in」 · 로그인 이름 「알토리」 · 「Sign in」 숨김 · 전환 light→dark 저장, 1280/390 · check-save 「켜짐」(머리글 · 우측 레일 2곳 · 조작부 있음) · check-shell 그대로. 두 상태 모두 초록이다.

못 보는 것 · 다음

  • v2(같은 날 오후) — 위 정본 변경 요청 둘이 우산에 반영돼 사본을 v2 로 받았다(npm run sync-shell -- --from=…, 라이브 배포 뒤 네트워크 사본과 바이트 동일 확인 · 쪽 ?v=2). ① 띠 다섯(.hd · .tm · .ft · .crumbs · .back)의 좌우 여백이 토큰 --rl-gutter(32px, 셸 중단점 600px 아래 20px)가 됐고, 이 lab 의 본문 경계는 640px(px-5/sm:px-8)이라 global.css 가 600.02–639.98px 에서 20px 로 덮어쓴다. 실측(T2_캡처실측_600-640_여백.md, 3쪽 × 599/600/601/620/639/640/641/1280px): 머리글 .hd 안쪽 왼끝 = main 안쪽 왼끝 = 꼬리말 .ft 안쪽 왼끝 — 600–639 에서 20 = 20, 640 부터 32 = 32, 1280 에서 148 = 148, 전 폭 넘침 0. ② render.mjs 에 JSDoc typedef·@param 이 붙어 astro check 가 0 오류로 통과 → 이 저장소의 shell/render.d.mts 는 지웠다(사본 폴더에 사본 아닌 파일을 두지 않는다). sync-shell 의 --from 은 글자 파일을 LF 로 맞춘다(Windows 체크아웃은 CRLF — apex · git 과 같은 바이트가 되게). v2 빌드로 npm run gate 전체(18개)를 다시 돌렸다 — 결과는 위 「로컬 결과」 줄과 같다(전부 통과).
  • .tm 패널(z 50, 머리글의 z 40 안)과 #topbar(fixed z 40, DOM 뒤) — 메뉴를 연 채 스크롤해 바가 뜨면 바가 패널 위에 선다. 메뉴는 머리글과 함께 흘러가므로 겹치는 구간은 짧다. 실측 결함 아님.
  • 글꼴: shell.css 의 Saira 는 묶음 제목 · 꼬리말 열 제목 · 건너뛰기만 쓴다(막대 글자는 --body = system-ui). 이 lab 의 본문은 그대로 Tailwind sans.
  • 사본 shell/ 이 정본보다 뒤처지는 것은 check-shell ⑧ 이 옆에 우산이 있을 때만 경고한다. 정본의 version 이 오르면 각 저장소가 npm run sync-shell → 빌드 → 커밋해야 한다(자동이 아니다).
  • 하위 도메인 셋(T3 Field Pro · T4 RadiMeter · T5 M-Phreefiteq)은 각자 같은 방식으로 받는다 — 이 저장소의 scripts/sync-shell.mjs · gate/shell-assets.mjs · gate/check-shell.mjs 를 본뜨면 된다.

★★★ 계산기 하나, 도구 일곱 — 머리글 한 줄 · 허브는 apex 홈 · 이름은 「Radiation Lab」 (2026-10-06 ⑥)

소유주: 「여기 상단에 놓아두는 2가지 영역이 다르네… 하나의 계산기 안에 다양한 도구가 들어있는 형태로 구성해보자. 구조를 다시 잘 잡아봐」 → 시안(머리글 한 줄 · Tools 메뉴 · 홈의 도구 묶음 · 도구 쪽 왼쪽 목록) 승인 「고」. 정본 명세는 C:\dev\rl\HEADER-SPEC.md(네 레포 공통). 우산 쪽 짝은 radiation-lab ab49970.

★ 무엇이 문제였나 — 머리글이 두 막대였다. 위는 분야 칸 셋(Dose & shielding · Instrument testing · Disposal & transport)이 세 사이트를, 아래는 RadCalc + Calculators · Nuclides · Methods 가 한 사이트 안의 쪽을 가리켰다. 같은 모양의 칸이 다른 층을 말했고, 화면에 이름이 둘(Radiation Lab · RadCalc) 섰다. apex 가 RadCalc 하나가 된 뒤(⑤)로는 위 막대의 첫 칸과 아래 막대가 같은 곳을 두 번 말하고 있었다.

자리 전 후
머리글 플랫폼 막대 + lab 막대(두 줄) 한 줄 components/brand/SiteHeader.astro — 브랜드 Radiation Lab(→ https://radiation-lab.com/) · Tools ▾ · Nuclide data · Methods · Validation · 테마 · 계정(→ /calc/saved/). 치수는 우산 홈 .hd/.tm 와 같은 값
Tools 메뉴 없음 <details> — 두 묶음(선량·차폐 셋 / 방사능·계측 넷) · Lucide 아이콘 · 한 줄 설명 · 맨 아래 「More from Radiation Lab」(Instrument testing ↗ · Disposal & transport ↗ · Reference fields ↗ — 옛 셋째 Everyday tools 는 2026-10-13 도토리툴 분리로 뺐고, 2026-10-25 Field Pro pro.radiation-lab.com 을 셋째로 더했다). Esc(초점은 Tools 로) · 바깥 누르기로 닫힌다. JS 없이도 열린다
도구 쪽 왼쪽 목록 일곱 줄 한 덩어리, 손그림 표식 같은 두 묶음 · 같은 순서 · 같은 Lucide 아이콘(16px), 지금 도구는 accent-soft
도구 정본 lib/tools.ts 순서 = 만든 순서 명세 순서(감마·베타·ALARA / 환산·붕괴·질량·MDA) + group · icon · line 칸, TOOL_GROUPS·toolsIn·menuName
보이는 이름 RadCalc Radiation Lab — 제목 <쪽> · Radiation Lab · 공유 그림 95장 다시 구움(눈썹 「RADIATION LAB」, 밑줄 radiation-lab.com) · JSON-LD WebSite 는 apex 노드(#site). RadCalc 은 DOI 인용(CITATION_NAME) · 저장소 · 문서에만
/calc/ 허브 도구 카드 일곱 + 읽을 글 + 해설 없음 — deploy/_redirects /calc/ → / 301(배포가 dist/ 로 복사, 스모크가 301 을 잰다). 내용은 apex 홈이 든다(#tools · #notes · #method). 도구 주소는 그대로
읽을 글 일곱 허브에서 클릭 1회 /calc/methods/#notes 에서 클릭 1회(이 lab 안의 허브) — check-notes 의 HUB 를 옮겼다
빵부스러기 Calculators / … 도구 쪽 Tools / <묶음> / <이름>(Tools → /#tools), 그 밖 Home / …
압축 고정 바 lab 칸 셋 머리글과 같은 글자 넷(Tools → /#tools · Nuclide data · Methods · Validation, 좁은 화면 짧은 글자). 메뉴 판은 다시 싣지 않는다(쪽마다 같은 일곱 링크가 두 벌이면 겹침만 는다)
  • 걷은 것: brand/PlatformBar.astro · ToolIcon.astro · lib/tool-icons.ts(손그림 표식) · pages/index.astro(허브). 새것: Icon.astro · lib/lucide.ts(ISC, 마크업을 박았다 — 바깥 요청 0).
  • 공유 그림: 사이트맵에 / 가 없어 사이트맵 밖 쪽(404 · /saved/)의 대체 카드는 매니페스트 "*" 칸(home.png)이다 — make-og 가 굽고 Base 가 읽는다.
  • 쪽 수 98 → 97(허브 1), 사이트맵 96 → 95.

게이트

  • check-platform — 우산 레포의 게이트를 그대로 옮겼다(같은 PBAR 표 · 같은 측정 함수). 10폭 × 2테마 × 5쪽 + Tools 메뉴(묶음·도구·자매·패널 자리·Esc·바깥 누르기) 1280/390px. 역테스트 2종 — 게이트 표의 Methods 주소를 틀리게(100건) · 산출 /methods/ 메뉴에서 Beta 를 빼기(4건) — 둘 다 빨개졌다.
  • check-lockup — 두 막대 → 막대 하나(옛 [data-platform-bar]·[data-lab-bar] 0개) · 브랜드 → apex · 머리글에 「RadCalc」 글자 0 · 모바일 예산 110px(실측 97).
  • check-notes HUB → /methods/ · check-a11y 다크 쪽에서 /calc/ 를 뺐다.
  • 머리글은 흐름 안(static)에 둔다 — 처음에 position: relative 를 주었다가 check-sticky ⑥ 이 잡았다. 판의 쌓임은 판의 z-index 가 정한다.
  • 로컬(2026-10-06, Windows · Chromium 1243): output · render · lockup · inputs · save · sticky · header · platform · a11y · nuclides · notes · og · lastmod · adsense · progeny · validation 통과, npm test 143/143 · tsc 0 · astro check 0 오류. check-gates 7건은 Windows 의 gate\… 경로 자기 제외 오탐(HEAD 와 같은 7건).

우산이 함께 들어야 하는 것

  • 우산 cf/_redirects 의 /calc /calc/ 301 은 /calc / 301 로 바꿀 것 — 그대로면 /calc → /calc/ → / 로 두 번 돈다.
  • apex 홈의 #tools · #notes 가 이 레포의 빵부스러기·압축 바·저장 쪽 「Back to the tools」의 목적지다.

★★ Cloudflare Workers 로 옮겼다 — apex 의 주인공이 됐다 (2026-10-06)

애드센스가 2026-10-06 00:48 에 radiation-lab.com 을 「가치가 별로 없는 콘텐츠」로 돌려보냈다. 소유주 결정: apex 는 RadCalc 하나에 집중하고, RadiMeter · 처분 lab 은 하위 도메인(radimeter. · disposal.)으로 내보낸다. 그리고 광고가 실릴 두 층(우산 · RadCalc)을 Vercel Hobby(애드센스 금지) 에서 Cloudflare Workers Free 로 옮긴다.

무엇 전 후
배포 Vercel radiation-calc → 우산이 /calc/* 를 재작성 Worker radiation-lab-calc, 라우트 radiation-lab.com/calc/* (wrangler.jsonc)
배포 방아쇠 Vercel Git 연동 .github/workflows/deploy.yml — main 에 들어오면 빌드 → wrangler deploy → workers.dev 실측
계정 칩 우산 /account/(실제로는 RadiMeter 껍데기) /calc/saved/ — 로그인 단추 · 저장 목록 · 로그아웃(새로 넣음)
처분 lab 링크 /disposal/ https://disposal.radiation-lab.com/
  • ★ 세션은 이제 오리진별이다. apex 에서 로그인해도 하위 도메인은 따로 로그인한다. 자료는 같은 Supabase 프로젝트라 그대로다.
  • ★ 비밀값은 CLOUDFLARE_API_TOKEN 하나(radiation-lab 전용: Workers Scripts · Workers Routes · DNS, 존 radiation-lab.com). CLOUDFLARE_ACCOUNT_ID · VITE_SUPABASE_URL · VITE_SUPABASE_ANON_KEY 는 저장소 변수다(anon 키는 원래 브라우저에 실린다).
  • ★ 404 는 Worker 의 404-page 가 가장 가까운 404.html(dist/calc/404.html)을 낸다. copy-404 가 만드는 dist/404.html 은 Vercel 의 자리였고, Vercel 을 걷을 때 함께 걷는다.
  • ★ 끝 슬래시는 auto-trailing-slash — /calc/mda 는 307 로 /calc/mda/ 가 된다(정본은 슬래시 있는 쪽 그대로).
  • Vercel 프로젝트 radiation-calc 는 전환이 끝날 때까지 되돌릴 자리로 두고, 끝나면 Git 연동을 끊는다.

★★ 새 세션은 여기부터 (2026-09-20 기준)

현재 상태

main = 8ccbe00(2026-10-06 ④) + 그날 ⑤(아래 첫 절 — 플랫폼 상단 메뉴). 라이브 radiation-lab.com/calc/ · 산출 HTML 98쪽(핵종 낱장 70 · 사이트맵 96 · noindex 2) · npm test 143건 통과. ★★★ 핵종 참조 쪽은 70종에만 있다(2026-10-06 ④) — 검색 제외 77장을 지웠다. 자료와 계산기는 147종 그대로다(쪽 목록 정본 src/lib/nuclide-pages.ts, 핵종 이름은 components/NuclideRef.astro 로만 그린다 — 쪽이 없으면 링크 없이 이름만). 도구 7종 전부 유효성 평가가 서 있고 낱장 8쪽이 공개돼 있다(/validation/), 7건 모두 스스로 「All checks pass」를 선언한다(케이스 id 266개 대조).

★★ 머리글은 두 막대다(2026-10-06 ⑤) — 맨 위 플랫폼 막대(브랜드 Radiation Lab + 분야 칸 셋 Dose & shielding · Instrument testing · Disposal & transport + 테마·계정)는 네 곳(우산 · 세 lab)이 글자·순서·주소·치수까지 같고, 그 아래 lab 막대(RadCalc + Calculators · Nuclides · Methods)가 이 lab 의 칸이다. 정본 components/brand/PlatformBar.astro, 지키는 것은 check-platform(네 레포가 같은 숫자를 적는다). 잠금장치(Lockup)는 걷었다.

★★ 법무·연락 링크가 우산 루트를 가리킨다(2026-09-28). 그전에는 /radimeter/privacy|terms|contact/ 였다 — 2026-09-14 에 루트에 그 문서들이 없어서(라이브 404) 우회한 것인데, 2026-09-21 부터 루트에 실재한다(라이브 200 확인). 사이트의 79% 가 이 lab 인데 하단의 Privacy 를 누르면 RadiMeter 의 측정 데이터 설명이 나오고 있었고, 애드센스가 요구하는 광고 쿠키 고지는 루트 문서에만 있다. ★ 끝 슬래시를 붙이지 않는다 — 우산 쪽의 정본은 슬래시 없는 쪽이다(우산 꼬리말·사이트맵·canonical 일치). 붙이면 200 이지만 canonical 이 딴 곳을 가리키는 중복으로 보내게 된다.

★★ 없는 주소에 이 lab 의 404 쪽이 나간다(2026-10-03) — 그전에는 404.astro 자체가 없었고, Vercel 의 평문 NOT_FOUND(84 B) 가 나갔다. ★ 쪽을 만드는 것으로는 안 된다 — Astro 는 dist/calc/404.html 에 굽고 Vercel 은 산출 루트의 404.html 만 쓴다. scripts/copy-404.mjs 가 빌드 끝에 올리고 check-output ⑧ 이 잰다. ★★ 접근성 게이트가 섰다(2026-10-03, check-a11y) — 라이트 강조색이 종이 위에서 4.06:1 로 AA 미달이던 것을 143 78 0(5.32) 으로, 가로 스크롤 표·코드 59자리에 tabindex, <nav> 넷에 이름, 결과 카드의 라벨 색을 고쳤다.

핵종 낱장(그때 147장)의 되풀이 줄이기 ①~④ 가 끝났다(배포·라이브 확인 완료 — 아래 표는 147장 시절 값이다. 70장으로 줄인 뒤 실측은 2026-10-06 ④ 절):

시작 지금
산문 되풀이 몫 중앙 66.4% 27.9%
최악 80.6% 38.8%(cd-109)
숫자 뺀 낱말 겹침 31.9% 16.6%
제목 틀 겹침 75.0% 20.0%
147장 전부에 같은 제목 4개 0개
5-그램 겹침(옛 ④) 9.9% 4.4%
낱장 최소 어수 ~250 271

★★★ 애드센스가 2026-10-06 「가치가 별로 없는 콘텐츠」로 돌려보냈다 — 색인을 핵종 70장으로 줄였고(#63, 라이브 사이트맵 92 확인) 긴 글 넷을 더했다(읽을 글 3 → 7, 그날 ② 절). 같은 날 ④ 에서 색인에서 뺀 77장을 아예 지웠다(소유주 「불필요한 것들은 과감하게 잘라내자」).

★★ 147장 전부에 손글이 섰다(2026-10-04 26장 → 2026-10-05 나머지 121장, 아래 두 절). ★ 2026-10-06 ④ 부터 그려지는 것은 쪽이 있는 70장의 글이고, 나머지 77장의 글은 nuclide-notes.ts 에 자료로 남는다(쪽 목록에 넣으면 되살아난다). 되풀이를 내린 뒤에도 낱장은 한 틀에서 나온 자료 쪽이고 색인 쪽의 72% 다 — 애드센스 심사의 남은 불확실성 중 가장 큰 것. 「이 핵종이 실무에서 어디서 만나지고 무엇이 문제가 되는가」를 숫자 없이 세 문단씩, 쪽마다 그 쪽의 표를 띄워 놓고 썼다(src/data/nuclide-notes.ts, 합 약 26,000어). 147장 되풀이 몫 중앙 27.9% → 19.0%, 최악 38.6% → 26.5%, 산문 어수 중앙 316 → 484(최소 338). 지키는 것은 check-nuclides ④-3(그 쪽에 섰는가 · 숫자 없음 · 글 사이 8낱말 공유 없음). ★ 쓰다가 자료 결함 둘을 잡았다 (Pu-241·Nb-95m 의 붕괴 모드 표기, nuclides.ts 의 DECAY_FIX)와 자료 공백 열다섯(미결 6).

★★ 노출 상위 20쪽의 해설을 넓혔다(2026-10-28, T7 — 소유주 「상위 20쪽 고유 해설을 하자. 이거 중요하네」). Search Console 3개월 (9/910/25) 사이트 클릭 99 · 노출 4,048 중 핵종 쪽이 클릭 32 · 노출 1,864 이고 클릭 상위 10쪽이 전부 핵종 쪽이다 — 애드센스 10-06 거절의 가장 큰 후보가 같은 틀의 핵종 쪽이라, 지우지 않고 쪽마다 다른 해설을 단다. 노출 순 20종(nuclide-notes.ts 의 GSC_TOP20)의 손글을 **300600어**(문단만)로 늘리고 글 아래 출처 목록(IAEA Live Chart · ICRP 107 · NIST · EPA · WHO · CTBTO 등, 링크 둘 이상)을 달았다. 구조화 데이터(TechArticle)의 쪽 설명은 손글 첫 문장이다(meta description 은 nuclideSeo 의 수치 요약 그대로). 10-06 에 지운 U-236 · Ra-224 를 되살렸고(노출 103 · 64회, 그 주소는 404 였다) Ra-228 의 noindex 를 뗐다. 글은 여전히 숫자 없이 쓴다(④-3). 써 놓고 독립 검토로 사실을 대조했다 — 틀림 4 · 과장·부정확 30 을 고쳤다(그중 둘은 원래 있던 문단: Th-232 「우라늄 다음으로 많은 악티나이드」 → 우라늄보다 몇 배 많다, Ni-63 「증기발생기 세관에 재고가 가장 많다」 → 노심 구조물, 세관은 부착 부식막뿐). 지키는 것은 check-nuclides ④-4(300~600어 · https 출처 둘 이상 · TechArticle 설명 = 첫 문장 · 20편 사이 같은 문장 0 · noindex 아님). ★ 출처 이름표는 제목(h3)이 아니다 — 20쪽에 같은 「Sources」 제목이 서자 ④-2 제목 틀 중앙이 14.3% 로 상한 12% 를 넘었다. ★ 되살린 두 쪽의 공유 그림은 npm run make-og -- --only=/nuclides/u-236/,/nuclides/ra-224/ 로 그 둘만 구웠다.

★★ 해설 2차 20쪽 · 틀 문장 줄이기(2026-10-29, T10-② — 애드센스 재검토 준비 점검 T10-① 의 F2). 해설 없던 색인 40쪽은 쪽마다 문장의 「다른 쪽에도 있는 틀」(숫자를 지운 문장) 몫이 중앙 65% 였다. 애드센스는 「비슷한 쪽이 많으면 쪽마다 고유 내용으로 늘리거나 합쳐라」 (answer 10015918)이고, 소유주 결정은 지우지도 합치지도 noindex 하지도 않는다이므로 늘리고, 표를 되풀이하던 문장을 뺐다.

  • 틀 문장 — paragraphs() 와 「Read before relying on these figures」 목록에서 40~47쪽에 숫자만 바뀌어 서 있고 그 숫자가 이미 표 · 캡션에 있는 문장을 뺐다: 「1 GBq at 1 m reads … and 1 Ci …」(수치표) · 「N lines clear the 20 keV cutoff, but M of them carry 90%」 · 「The leading one is … which is also the highest」(방출선 표 첫 줄) · 목록의 「… mGy/h at a metre — bare point source」 · 「… mm of lead halves this spectrum」(차폐표) · 「Γ excludes …」(방출선 캡션과 같다). 남긴 것은 표를 한 줄씩 읽어서는 안 보이는 관계 하나 — 선량을 가장 많이 나르는 선이 가장 자주 나오는 선이 아닐 때(「The two columns of the line table disagree here …」). ★ 옛 판은 둘째 줄과만 비교해 Eu-152 에 「also the highest」라고 틀리게 적고 있었다(1408 keV 는 방출 확률 1위가 아니다) — 새 판은 모든 줄과 비교한다. 허브로 가는 한 줄 링크 · 데이터 출처 한 줄 · 표 · 수치 · 계산은 그대로다.
  • 해설 2차 20편(nuclide-notes.ts 의 NOTES_ROUND2, 틀 몫 상위 20) — T7 과 같은 방식: 기존 문단을 살리고 표가 못 드는 각도(만나는 자리 · 만드는 법 · 측정 함정 · 관리 맥락)를 더해 문단 370~390어, 숫자 없음, 출처 4~5(링크 4, 브라우저로 66개 전부 2xx). 쓴 뒤 독립 사실 대조 두 차례(편마다 1차 검증 → 고친 문장만 다시 2차 검증 — 2차가 1차의 고침에서 새로 생긴 틀림 셋과 이어 붙인 자리의 문법 손상을 잡았다). check-nuclides ④-4 가 1차 · 2차 40편을 함께 잰다(같은 문장 0 은 40편 전부 사이). ★ 옛 손글의 틀림도 고쳤다 — In-111 「소마토스타틴 수용체를 표지 펩타이드로 처음 영상한 핵종」(처음은 I-123 표지 옥트레오타이드), Pb-210 제목 「라돈 계열의 끝」(끝은 안정한 Pb-206) 등.
  • 전 → 후(같은 정의 — 쪽 본문 = main 에서 머리글 · 꼬리말 · nav 를 뺀 글, 여섯 낱말+ 문장, 숫자 지움): 2차 20쪽 틀 몫 중앙 69.6% → 43.5%(최대 85.2 → 56.7), 해설 있는 40쪽 65.2% → 42.9%(쌍별 같은 틀 최대 77.8 → 63.0), 해설 없는 20쪽 50.0% → 40.0%(틀 문장 줄이기만으로).
  • ★ 쓰다가 잡은 자료 결함 둘(이 판에서는 표 · 계산을 바꾸지 않았다 — 별도 작업): ① 쪽이 있는 β− 핵종 11종에 베타 가지 자료가 없다 (Cs-137 · Sb-124 · Cs-134 · Xe-133 · Lu-177 · Sm-153 · Re-188 · Eu-154 · K-40 · Au-198 · Ra-228 — 베타 사정거리 · 제동복사 표가 안 선다; Eu-152 는 β− 가지가 없다) ② Kβ X선을 두 번 센다 — Livechart 의 Kβ 묶음 줄과 그 구성 줄이 함께 들어와, 「묶음 = 구성 둘의 합」 꼴이 120 keV 아래 48종(I-125 · Cd-109 · Ce-139 · Cs-137 · I-131 · Tc-99m 등). → 둘 다 T11 에서 고쳤다(아래). 「48종」은 수치 짝을 대강 센 값이었고, 이름표로 다시 세니 79줄 · 70키다.

★★ 계산 자료 결함 수정 — Kβ 이중 계산 · β− 가지 누락(2026-10-29, T11). scripts/clean-dataset.mjs(npm run clean-dataset)가 src/data/nuclides.json 을 원문 그 자리에서 고친다(다시 수확하지 않는다 — 9-13 뒤 Live Chart 값이 갱신된 핵종이 있어 관계없는 수까지 바뀐다).

  • Kβ 이중 계산 79줄 뺌(70키, 쪽 29) — 판별은 Live Chart rad_types=x 의 껍질 이름표로 한다: 같은 준위 · 같은 원소(딸핵)에서 KB 가 K′β1 · K′β2 사이에 있고 세기가 그 합과 1% 안이면 묶음 줄이다. DDEP 표와 LARA 방출 목록은 I-125 · Cs-137 · Ba-133 · Ir-192 모두 K′β1 · K′β2 두 묶음만 싣고 Kβ 전체 줄이 없다 — 구성 줄이 맞는 표현이다. ★ 수치만으로 고르면 틀린다(무거운 원소는 Kα1 ≈ Kα2 + Kβ). ★ 첫 판이 가벼운 원소 13줄을 잘못 뺐다 — Kβ 가 갈리지 않는 원소는 원천이 KB 와 K′β1 을 같은 줄로 두 번 내고 수확이 이미 하나로 합쳐 두었다(Co-57 7.082 keV). 구성 줄이 별개의 줄일 때만 뺀다. ★ K′β1 만 자료에 있고 K′β2 가 0.001% 문턱에서 빠진 6키(Eu-152 의 Gd · Y-90 · Pu-239 · U-234 · Ba-133m · Nb-95m)는 KB 를 남기고 K′β1 을 뺐다 (KB 를 빼면 K′β2 몫이 사라지고, 두면 K′β1 을 두 번 센다). 그래서 79줄 = KB 73 + K′β1 6. harvest.py 에도 같은 규칙을 넣었다(부분 짝 포함). 임시 폴더에서 다시 수확해 대조 — 103키 중 81키는 줄 표가 글자까지 같고, 새 수확에서 KB 가 구성 줄 옆에 실린 경우 0. 나머지는 전부 9-13 뒤 원천 갱신이다(세기 45줄 · 새 줄 106 · 에너지 이동 2). ★ Eu-152 의 Gd 는 원천에 K′β2 가 새로 생겨 새 수확이 KB 를 빼고 K′β1 · K′β2 를 둔다 — 고친 자료(KB 남기고 K′β1 뺌)와 줄은 다르지만 둘 다 한 번씩만 센다.
  • Γ 변화(엔진, δ = 20 keV): Tl-201 −14.6% · I-125 −12.5% · Cd-109 −12.1% · Xe-133 −10.2% · Sm-153 −10.0% · Ra-223 −7.0% · Ce-139 −6.8% · In-111 −5.0% · Ba-133 −4.7% · Tc-99m −3.7% · Cs-137 −0.26% · Co-60 0. 문헌과 대조하니 고친 값이 가깝다 — I-125 TG-43U1 0.0355 에 전 +12.7% → 후 −1.4%, Tl

Description taken from the repository README.

Ratings

–
0 ratings
5 0
4 0
3 0
2 0
1 0

Rate this app

Sign in to rate

Comments 0

Sign in to comment

No comments yet.

Related apps

#radiation · #calculator · #physics