解讀鑑定卡的標籤:PSA、BGS、CGC 與其他鑑定公司
鑑定卡的標籤是一份摘要,印在上面的證書編號,則是通往鑑定公司那張卡紀錄的鑰匙。PSA 的保證是它的「assurance that we stand behind our opinions as to the authenticity and/or grade of each item we encapsulate, as reflected on each PSA label」(保證我們為封裝的每件物品在真偽及/或等級上所持的意見負責,一如每張 PSA 標籤所載);依我的解讀,標籤陳述的是那份意見,而用編號查詢,是買家確認這份意見仍然有效的方式。本文讀到的六家鑑定公司(PSA、Beckett、CGC、SGC、TAG 與 ACE)都提供以這個編號查詢的頁面;PSA 的保證涵蓋卡片的等級與真偽,但只有在提出索賠的人購買該卡時,卡片「had an active certification number on the cert lookup feature of the PSA website at the time it was purchased」(在 PSA 網站的證書查詢功能上有一個有效的證書編號),保證才適用。12 等級旁邊的字會改變數字的意義:PSA 的「Mint 9oc」是置中未達 9 分標準的 9 分;CGC 標籤上的 9.5,若不是舊制的 Gem Mint(CGC 如今算作 10 分),就是現制的 Mint+(低於 10 分);而量表頂端的措辭各家不同:CGC、SGC 與 TAG 把 Pristine 10 與 Gem Mint 10 分開評定,Beckett 唯一的 10 分是 Pristine,它的 Gem Mint 是 9.5,而它的黑標則把四項分項分數皆為 10 的 Pristine 10 與其他卡區分開來。3456789 編號本身也因公司而異:SGC 的編號在黑標上是 7 位數,在綠標與白標上是「11 characters (XXXXXXX-XXX)」(11 個字元);TAG 的是「typically 1 Letter followed by 7 Numbers」(通常是 1 個字母加 7 個數字);ACE 自己的紀錄則是六位數與五位數。10111213 我用自己的 app Kiradex 裡標籤讀取器的 Python 副本,跑了十六張依這些公開格式製作的合成標籤,其中兩張的版面沒有任何鑑定公司的頁面展示過:它完整讀出 16 張中的 3 張,把 2 個證書編號截短,另有 4 個鑑定盒完全沒有認出來,所有 ACE 標籤都在其中。1415 本文依各家自己的頁面描述每家鑑定公司的標籤,附上改版日期、收藏者要檢查什麼,以及修正讀取器的規格書。
摘要
- 鑰匙是編號,不是那張紙。 本文讀到的六家鑑定公司,每一家都提供以證書編號查詢的頁面。PSA 的保證要經過那個查詢,而且「does not apply to Items that arrive with tampered or counterfeit holders and/or labels (regardless of certification status)」(不適用於送達時鑑定盒及/或標籤遭竄改或偽造的物品,不論其認證狀態為何)。12
- 等級是一個數字,加上它旁邊的字。 PSA 定義了六個限定標記(OC、ST、PD、OF、MK、MC),以及一個沒有數字的「AUTHENTIC」結果;它九個無等級代碼中有七個,仍可能由鑑定師斟酌、應送件者要求,封裝成標示 Authentic 或 Authentic Altered 的鑑定盒;PSA 還說,基於技術原因,它「does not always print the term “Altered” on the label itself」(並不總是把「Altered」一詞印在標籤上)。16115 CGC 現行量表有自己的「Mint+ 9.5」,低於 Gem Mint 10;而它舊制的 Gem Mint 9.5 如今算作 10 分。45
- 標籤日期取自鑑定公司自己的公告。 PSA 有日期的變更是 2008年2月12日、2013年11月12日、2017年6月14日(LightHouse 標籤)、2019年1月1日、2024年5月14日(新鑑定盒)與 2024年6月19日(僅認證簽名物品的藍標);CGC 的新標籤於 2023年6月20日公布。在 psacard.com 上找不到任何日期為 2023 年的 PSA 標籤改版。17181920212223
- PSA 與 CGC 公布了防偽特徵;TAG 描述了一種掃描檢查。 PSA 列出遇溶劑即消失的油墨(fugitive ink)、UV 標誌圖樣、LightHouse 標誌與 QR code;CGC 列出「microprinting, UV ink, holographic foil and a unique certification number and barcode」(微縮印刷、UV 油墨、全像箔,以及獨一無二的證書編號與條碼);TAG 把 Proof Mark 放在 QR code 的背後。Beckett 只給了一句話,本文讀到的 SGC 頁面沒有描述任何特徵,ACE 的頁面只描述了網址檢查。242511262728
- Beckett 是從存檔副本讀的,而它的停擺比置中那篇文章說的更早開始。 狀態頁的日期是 2026年10月2日,但 2026年9月19日的一份存檔副本已經顯示 Beckett 的平台離線,而它的卡片查詢在 8月19日的副本裡仍在運作。293031
- 這對 Kiradex 意味著什麼。 規格書是:依每家鑑定公司公布的形狀讀取證書編號(SGC 的連字號、TAG 的字母、ACE 的五位數與六位數),保留等級旁邊的字(限定標記、名目標示、Pristine 或 Gem),把每家鑑定公司自己的查詢頁面當作連結提供、絕不自行抓取,清楚說明讀到了什麼、沒讀到什麼,並且只提供每家鑑定公司實際給出的等級。14323334
1. 標籤是做什麼用的
鑑定盒是一個密封的盒子,裡面裝著一張印好的標籤(在 TAG 則是直接印進盒子裡的文字);依我的解讀,標籤是一份簡短的摘要,摘要的是存放在鑑定公司那裡的一筆紀錄。有兩家鑑定公司明白說出編號只屬於一張卡。PSA 的詞彙表:「PSA gives every graded card a certification number」(PSA 給每一張鑑定過的卡一個證書編號),它的 FAQ 則把 Cert ID 稱為「the unique number found on your PSA-graded label」(您的 PSA 鑑定標籤上那個獨一無二的編號)。CGC 2020 年談鑑定盒的文章:「a unique certification number identifies a card」(一個獨一無二的證書編號標識一張卡),而它今天的標籤帶有「a unique certification number and barcode」(獨一無二的證書編號與條碼)。3353625 其他幾家說得比較少。TAG 的流程頁面在購買與送件那一步說「Unique ID numbers are assigned to both the cards and the order」(卡片與訂單都會分配獨一無二的 ID 編號),但沒有說這個 ID 就是證書編號;Beckett 的 FAQ 提到「a specific id and a bar coded serial number」(一個特定的 ID 與一個帶條碼的序號);本文讀到的 SGC 與 ACE 頁面則沒有說。3726 PSA 在卡片鑑定之前就貼上編號:它流程的第五步寫著「Order ID stickers with unique certification numbers are placed on each Card Saver in the order」(帶有獨一無二證書編號的訂單 ID 貼紙,會貼在該訂單的每個 Card Saver 上),之後才是查證、鑑定與印製標籤。38 我自己 app 裡的收藏卡編輯器,頁尾早已對收藏者說了同樣的事:「The certificate number is printed on the case’s label. It is that case’s alone.」(證書編號印在盒子的標籤上,只屬於這一個盒子。)34
鑑定公司說的三件事,讓該檢查的是編號,而不是那張紙。
PSA 的保證要經過查詢。 它適用的前提是「provided that the Card had an active certification number on the cert lookup feature of the PSA website at the time it was purchased」(前提是該卡在購買時,在 PSA 網站的證書查詢功能上有一個有效的證書編號),購買者指的是提出索賠的人;而且它「does not apply to Items that arrive with tampered or counterfeit holders and/or labels (regardless of certification status)」(不適用於送達時鑑定盒及/或標籤遭竄改或偽造的物品,不論其認證狀態為何)。1
鑑定公司直言鑑定盒會遭到攻擊。 PSA 的保證頁面:「some unscrupulous people occasionally try to defraud collectors by removing Items from PSA holders, replacing them with lower grade, altered, and/or counterfeit Items, and then resealing the holders. In some cases, they may also tamper with a genuine label and/or replace it with a fraudulent label altogether.」(一些不肖人士偶爾會試圖詐騙收藏者:把物品從 PSA 鑑定盒中取出,換成等級較低、經過改造及/或偽造的物品,再把鑑定盒重新封好。有時他們也會竄改真正的標籤,及/或乾脆換上一張偽造的標籤。)1 TAG 為它撤銷的編號設了一個頁面,上面寫著「This TAG Certification number is no longer active.」(這個 TAG 證書編號已不再有效。)並列出七個原因,其中包括「The slab was cracked, altered, or resealed.」(鑑定盒曾被撬開、改造或重新封裝。)與「The certification was voluntarily surrendered.」(該認證已自願放棄。)3915
每家鑑定公司都提供以編號檢查的方式。 PSA 的公告頁面(一則沒有日期的條目)說它的「online Certification Verification page and PSA app allow customers to scan the barcode on their item and verify its authenticity」(線上證書驗證頁面與 PSA app 讓顧客掃描物品上的條碼並驗證其真偽)。38 CGC 2020 年談鑑定盒的文章,請收藏者前往「CGCcards.com/verify」。36 ACE 的網站提供「Lookup an Ace Grading graded collectible by certification number」(以證書編號查詢 Ace Grading 鑑定過的收藏品),它的認證頁面則提醒掃描其標籤的收藏者「check the URL in your browser」(檢查瀏覽器裡的網址),並寫出那個網址:「https://acegrading.com」。4028 Beckett、SGC 與 TAG 各有自己的查詢頁面,下文逐家說明。311041
標籤上有哪些欄位
本文讀到的鑑定公司頁面,沒有一家完整列出自家標籤的每一個欄位。Beckett 的 FAQ 與 CGC 2023 年的公告各用一句話說明標籤上有什麼,其他幾家則是順帶提到某些欄位;所以下面這份清單,是依各家頁面提到的內容拼湊而成的,其中 PSA 的部分是我對它保證條款的解讀。1262312
- 年份與系列。 PSA 的保證把「mechanical errors」(機械性錯誤)排除在外,例如標籤上的日期「does not match the date printed on the Item」(與物品上印的日期不符),這表示標籤上有日期;Beckett 的 FAQ 說「Each label will feature the set name, the grade and a specific id and a bar coded serial number」(每張標籤都會載明系列名稱、等級,以及一個特定的 ID 與一個帶條碼的序號);ACE 的證書紀錄列出「Release Year」(發行年份)與「Set」(系列)。12612
- 卡片、卡號與版本。 同一條 PSA 條款也涵蓋「with respect to the Item’s specification, set, variation, or parallel」(在物品的規格、系列、變體或平行版本方面)的標示錯誤;CGC 2023 年的標籤「provides a detailed description of the card」(提供卡片的詳細描述);ACE 的紀錄列出「Name」(名稱)、「Number」(編號)、「Language」(語言)與「Variant」(版本)。12312
- 等級,以文字與數字呈現。 自 PSA 2008年2月12日的變更起,「the grade number (8) will now appear directly below the description of the grade (NM-MT) on the right side of the label」(等級數字(8)如今會直接出現在標籤右側等級描述(NM-MT)的正下方)。17
- 限定標記或名目標示。 PSA 的 OC、ST、PD、OF、MK 與 MC 跟著數字走,它的詞彙表把其中一個直接連在數字後面寫成「Mint 9oc」;ACE 的 Off-Center 限定標記意思是「appending OC to the grade」(在等級後面加上 OC);PSA 的「AUTHENTIC」出現在沒有給數字的位置;CGC 則「will print Authentic Altered in the grade box」(會在等級欄印上 Authentic Altered)。163424
- 證書編號與條碼。 Beckett 的標籤帶有「a bar coded serial number」(一個帶條碼的序號);CGC 的帶有「a unique certification number and barcode」(獨一無二的證書編號與條碼);PSA 的詞彙表談到證書編號時說「It can be found on the PSA label」(可以在 PSA 標籤上找到),它的 app 則掃描「the barcode on their item」(物品上的條碼)。2625338 編號印在標籤哪一面,只有一份存檔頁面說了:CGC 2020 年談鑑定盒的文章,「On the back of the label, a unique certification number identifies a card.」(在標籤背面,一個獨一無二的證書編號標識一張卡。)36 PSA 的頁面、Beckett 的 FAQ 與 CGC 現行的鑑定盒頁面都沒有說;TAG 則把編號放在「left of the QR code」(QR code 的左邊)。24262511
- 標籤背面的 QR code:PSA(自 2017 年的標籤起)有,CGC 現行的標籤依其鑑定盒頁面的描述也有;CGC 2020 年的文章提到了 QR code,但沒有說它在哪一面。242536
所以我把 PSA 標籤解讀為:除了等級與證書編號之外,至少還載有年份、系列、卡片及其版本;本文讀到的 PSA 頁面,沒有一頁給出欄位清單。143
鑑定公司自己的頁面提到的欄位,畫成通用的方框並填上佔位文字;TAG 是印在盒內,而不是印在紙上。44
2. 每家鑑定公司的標籤,取自它自己的頁面
我在 2026年10月5日閱讀並存下了每家鑑定公司自己的頁面;若某家的頁面是在瀏覽器裡由程式腳本產生文字(SGC),就用無頭瀏覽器算繪。置中那篇文章前一天存下的頁面在此沿用,日期標為 10月4日。45 引用之前,我先確認了每個頁面的發布者:PSA 的頁面印有「© 2026 Collectors Holdings, Inc.」;CGC 的印有「Certified Guaranty Company, LLC」與「CGC is part of the Certified Collectibles Group」(CGC 隸屬 Certified Collectibles Group);SGC 的印有「SGC, LLC」;TAG 的網站屬於 Technical Authentication & Grading;ACE 的屬於在英格蘭及威爾斯註冊的 Ace Grading Ltd。45 搜尋結果裡還出現了一些名稱類似鑑定公司的收藏者工具與賣家網站;它們只是線索,下文沒有任何內容以它們為依據。46
有四類頁面讀不到。Beckett 的網站離線,所以 Beckett 的部分取自它的狀態頁與 Wayback Machine 的存檔副本,每一份都註明日期。研究筆記記錄,PSA 的證書頁面與數量報告、CGC 的證書查詢,以及 ACE 的查詢索引與數量報告,都以 HTTP 403 與 Cloudflare 的機器人檢查回應自動化請求;我沒有做任何事去繞過它,所以那些頁面沒有讀到,資料夾裡也沒有保存那些挑戰回應的副本。存在 PSA 數量報告名下的那一個檔案,是另一種關卡:PSA 的登入頁面,下文會說明。SGC 的查詢表單帶有 reCAPTCHA;它的文字讀了,表單沒有使用。4547484910
PSA
一張卡如何得到它的標籤。 PSA 的流程,用它自己的步驟來說:「Order ID stickers with unique certification numbers are placed on each Card Saver in the order」(帶有獨一無二證書編號的訂單 ID 貼紙,會貼在該訂單的每個 Card Saver 上);「Your cards are researched so they can be properly identified on the PSA label」(您的卡會經過查證,以便在 PSA 標籤上正確標識);「PSA’s LightHouse labels are printed showing each card’s information and grade」(印出 PSA 的 LightHouse 標籤,顯示每張卡的資訊與等級);「The card and LightHouse label are sonically sealed in PSA’s tamper-evident holder」(卡片與 LightHouse 標籤以超音波封進 PSA 的防拆鑑定盒),以確保安全。38
等級用語。 PSA 的標準為每個數字配上一個簡短的描述詞,而 PSA 2008 年談標籤的文章,把其中一個連同數字展示在標籤上:「the grade number (8) will now appear directly below the description of the grade (NM-MT)」(等級數字(8)如今會直接出現在等級描述(NM-MT)的正下方)。所以我把下面這份清單解讀為 PSA 標籤上與數字一起印出的用語:161715
| PSA 等級 | 用語 |
|---|---|
| 10 | GEM-MT |
| 9 | MINT |
| 8 | NM-MT |
| 7 | NM |
| 6 | EX-MT |
| 5 | EX |
| 4 | VG-EX |
| 3 | VG |
| 2 | GOOD |
| 1.5 | FR |
| 1 | PR,另有第二個條目 PR-FR |
半級只存在於一個區間內:「Cards that exhibit high-end qualities within each particular grade, between PSA 2 and PSA 9, may achieve a half-point increase.」(在 PSA 2 到 PSA 9 之間,於各自等級中展現高端品質的卡,可以獲得半級的提升。)16 我把這句解讀為 PSA 沒有 9.5;FR 1.5 則是上表中一個獨立的等級。16
六個限定標記。 PSA 定義了六個兩字母的限定標記,其中四個共用同一條規則。1615
- OC,置中偏移:「Cards that are off center will either by designated “OC” or will have a numerical grade that reflects the minimum centering allowed for the grade.」(置中偏移的卡,要嘛標上「OC」,要嘛給出一個反映該等級所容許最低置中的數字等級。)16
- ST,污漬:「Cards with staining will either by designated “ST” or will have a numerical grade that reflects the minimum staining allowed for the grade.」(有污漬的卡,要嘛標上「ST」,要嘛給出一個反映該等級所容許最低污漬標準的數字等級。)16
- PD,印刷瑕疵:「Cards with printing defects will either be designated “PD” or will have a numerical grade that reflects the minimum print defects allowed for the grade.」(有印刷瑕疵的卡,要嘛標上「PD」,要嘛給出一個反映該等級所容許最低印刷瑕疵標準的數字等級。)16
- OF,失焦:「Cards that are out of focus or out of register with either be designated “OF” or will have a numerical grade that reflects the minimum focus standards allowed for the grade.」(失焦或套印不準的卡,要嘛標上「OF」,要嘛給出一個反映該等級所容許最低對焦標準的數字等級。)16
- MK,記號:「Any and all cards with writing, ink marks, pencil marks, etc. or evidence of the impression left from the act of writing will be designated “MK.”」(凡有書寫、墨水痕、鉛筆痕等,或有書寫壓痕跡象的卡,一律標上「MK」。)16
- MC,裁切錯誤:「Any and all cards that exhibit an atypical cut for the issue, which may result in portions of the subject card being cut off or more than one card being visible, will be designated “MC.”」(凡裁切方式不同於該版正常裁切、可能導致卡片部分被切掉或看得到不只一張卡的卡,一律標上「MC」。)16
PSA 自己的原文在「by」與「be」之間並不一致,引文照原樣保留。詞彙表把帶限定標記的等級寫成字母緊接著數字:一張符合 Mint 9 標準、但置中不足的卡,「would be designated Mint 9oc」(會標為 Mint 9oc)。3 它沒有說標籤上怎麼排間距。依我把規則前後兩半合起來的解讀,帶 OC 的 PSA 9 與不帶 OC 的 PSA 9 是兩種不同的陳述:一般的 9 分符合 9 分的置中標準,帶 OC 的卡則不符合。16
沒有數字的時候。 PSA 的標準列出兩種不帶數字等級的結果:16
- AUTHENTIC(等級代碼 N0):「This means that PSA is only certifying that the item is genuine, without a numerical grade.」(這表示 PSA 只證明該物品是真品,不給數字等級。)同一條目也列出可能的原因:「This may be due to the existence of an alteration, one with malice or otherwise, a major defect or the original submitter may have requested that PSA encapsulate the card without a grade.」(這可能是因為存在改造,無論是否出於惡意;或有重大瑕疵;或原送件者要求 PSA 不給等級直接封裝該卡。)並總結這張標籤的意思:「The “Authentic” label means that the item, in our opinion, is real but nothing more.」(「Authentic」標籤表示,依我們的意見,該物品是真的,但僅此而已。)16
- ALTERED AUTHENTIC(AA):「This means that while PSA is certifying that the item is genuine, due to the existence of alterations, the item cannot receive a numerical grade.」(這表示 PSA 雖然證明該物品是真品,但由於存在改造,該物品無法獲得數字等級。)這類物品是「genuine with the presence of some type of alteration」(真品,但帶有某種改造),而這個標示「is used on a case-by-case basis, space permitting, and “AA” must be listed on the submission form as the desired minimum grade」(逐案使用,視空間許可,且送件單上必須把「AA」填為期望的最低等級)。16
九個無等級代碼,以及每一個代碼讓卡片可能得到什麼結果。 PSA 列出九個代碼,從 N1 Evidence of Trimming(有修邊跡象)到 N9 Don’t Grade(不予鑑定),全都放在同一個標題下:「If your card is returned without a numeric grade in a card saver sleeve, that determination was made based on one of the following reasons」(如果您的卡裝在 card saver 卡套裡、沒有數字等級就退回,那個判定是基於以下原因之一)。所以每個代碼都是卡片未經鑑定退回的一個原因。接著,每個代碼自己的文字說明卡片是否仍可封裝,九個代碼分成四類:1615
- **五個可以封裝為 Authentic Altered:**N1 Evidence of Trimming、N2 Evidence of Restoration、N3 Evidence of Recoloration、N5 Altered Stock 與 N7 Evidence of Cleaning,每一個都說「this designation can qualify for encapsulation as “Authentic Altered”」(此標示可符合以「Authentic Altered」封裝的資格),條件是「at the grader’s discretion and if “AA” is listed on the submission form as the desired minimum grade」(由鑑定師斟酌,且送件單上把「AA」填為期望的最低等級)。
- **兩個可以封裝為 Authentic:**N6 Minimum Size Requirement,即「significantly undersized according to factory specifications」(依原廠規格明顯尺寸不足)的卡,「can qualify for encapsulation as “Authentic” only」(只能符合以「Authentic」封裝的資格);以及 N8 Miscut,即「the factory cut is abnormal for the issue」(原廠裁切對該版而言不正常)的卡,「can qualify for encapsulation as “Authentic”」(可符合以「Authentic」封裝的資格);兩者的條件都是「at the grader’s discretion and if “Auth” is listed on the submission form as the desired minimum grade」(由鑑定師斟酌,且送件單上把「Auth」填為期望的最低等級)。
- **一個絕不可以:**N4 Questionable Authenticity,即「appears to be counterfeit」(看起來是偽造)的卡,「would never qualify for encapsulation under any circumstance」(在任何情況下都不符合封裝資格)。
- **一個不可以,除非判定被推翻:**N9 Don’t Grade「does not qualify for encapsulation」(不符合封裝資格),但「If additional information from two or more verified or hobby-approved resources are provided for the issue, the decision could be reversed upon resubmittal.」(如果針對該版提供了來自兩個以上經查證或為收藏界認可之來源的補充資訊,重新送件時這項決定可能被推翻。)
PSA 的 FAQ 給出同一批代碼的預設處理:因修邊、修復、重新上色、真偽存疑、紙材改造或清潔而被退件的物品「will be returned not encapsulated」(會以未封裝的狀態退回),而得到 N6、N8 或 N9 的物品「will not be charged grading」(不收鑑定費)。35 標準頁面補上了 FAQ 沒提的那條路:依九個代碼中七個退回的卡,只要鑑定師判斷許可、送件者在送件單上提出要求,仍可以進入鑑定盒。兩個頁面都沒有說這種標籤上是否會印出代碼本身。1635
依 PSA 自己的話,AUTHENTIC 或 AUTHENTIC ALTERED 標籤因此可能代表什麼。 AUTHENTIC 標籤是一張 PSA 稱為「real but nothing more」(是真的,但僅此而已)的卡,原因則是 PSA 文字中列出的某一項:「an alteration, one with malice or otherwise」(存在改造,無論是否出於惡意)、「a major defect」(重大瑕疵)、送件者要求「that PSA encapsulate the card without a grade」(PSA 不給等級直接封裝該卡),或者經由 N6 與 N8,一張「significantly undersized according to factory specifications」(依原廠規格明顯尺寸不足)的卡,或一張「factory cut is abnormal for the issue」(原廠裁切對該版而言不正常)的卡。16 AUTHENTIC ALTERED 標籤則是一張 PSA 判定為「genuine with the presence of some type of alteration」(真品,但帶有某種改造)的卡,也就是 N1、N2、N3、N5 與 N7 留下的那條路。16 而前者可以代表後者。PSA 的保證「does not differentiate between the “Authentic” and “Authentic Altered” designations」(不區分「Authentic」與「Authentic Altered」兩種標示),因為「PSA does not always print the term “Altered” on the label itself for technical reasons (e.g., such as character and spacing limitations)」(基於技術原因,例如字元與間距的限制,PSA 並不總是把「Altered」一詞印在標籤上),它並說標為「Authentic」的物品「must be viewed as potentially interchangeable with “Authentic Altered”」(必須視為可能與「Authentic Altered」互通)。1 標準頁面去掉了「potentially」(可能),但保留了適用範圍:就 PSA 保證而言,僅標「Authentic」的標示「is to be considered interchangeable with “Authentic Altered”」(應視為與「Authentic Altered」互通)。16 所以單憑一張 AUTHENTIC 標籤,收藏者無從得知卡片是否經過改造;而依我的解讀,標準頁面為 AA 寫的「space permitting」(視空間許可)與保證頁面寫的「character and spacing limitations」(字元與間距的限制),是兩個頁面給出的同一個理由。161
PSA 如何為寶可夢系列命名。 我沒有找到 PSA 公布的命名規則,所以這是我對它三個頁面的解讀。505152
- CardFacts 把 Base Set 的條目標為「1999 Nintendo Pokemon Game」,而該系列中一張卡的頁面帶有一個全大寫的標題,開頭是「1999 POKEMON GAME 74」,後面接著卡名與 1ST EDITION:年份、遊戲、卡號、卡片、版本。頁面沒有稱它為標籤文字;我把它解讀為標籤上會印的措辭。50
- 日文系列在系列名稱裡帶有「Japanese」,而 PSA 自己的頁面上有兩種拼法:CardFacts 的「2011 Nintendo Pokemon Japanese Black & White Psycho Drive」,以及價格指南的「2020 Pokémon Japanese S Promo」。5152
- 所以,依我對它 CardFacts 標題的解讀,PSA 標籤上的系列文字並不是該系列印在卡上的名稱:以 Base Set 來說,會是「Pokemon Game」,而不是「Base Set」。一個拿標籤的系列文字去比對英文系列名稱的 app,在這些系列上會找不到,第 6 節會在 app 的程式碼裡追查這一點。5053
標籤世代,取自 PSA 註明日期的文章。171819202122
| 日期(PSA 的文章) | PSA 所說的變更 |
|---|---|
| 2008年2月12日 | 新標籤,「to distinguish cards graded after the new half-point system launch from those graded previously」(用來區分新半級制度推出後鑑定的卡與之前鑑定的卡);它們「contain the same general information」(載有相同的基本資訊),等級數字直接放在右側等級用語的正下方 |
| 2013年11月12日 | 新的鑑定盒,上蓋「envelops the bottom」(包覆底座);內襯標籤的背面以「a reflective hologram」(反光全像圖)取代「the simple, silver foil stamp」(簡單的銀色燙箔) |
| 2017年6月14日 | LightHouse 標籤:「The front of the label still features a red border」(標籤正面仍保留紅色邊框),標籤文字後方印有「fugitive ink」(遇溶劑即消失的油墨);正面的 PSA 全像圖「has been upgraded to proprietary Lighthouse」(已升級為專有的 Lighthouse)技術(「Gone are the days of standard holograms」,標準全像圖的時代已經過去);背面有 UV 標誌圖樣與 QR code |
| 2019年1月1日(2019年2月15日的文章) | PSA/DNA 在「20 years of using blue labels」(使用藍標 20 年)之後,改為「red labels across the board」(全面使用紅標);經 PSA/DNA 認證的物品「will receive a red label with only a generic description of the item (i.e., TRADING CARD)」(會得到一張只帶物品通用描述,例如 TRADING CARD,的紅標) |
| 2024年5月14日 | 新的標準鑑定盒,「Starting with sports card submissions this May with plans for a wider rollout」(從今年 5 月的運動卡送件開始,並計畫擴大推行):新的聚合物、「20% heavier」(重 20%)、「no Mylar, no sleeve」(沒有 Mylar 膜,沒有卡套);文章沒有說標籤有所改變 |
| 2024年6月19日(2024年6月5日的文章) | 僅認證簽名物品的藍標:「Blue PSA Label : autograph-only authentication and grading. Red PSA Label : item authentication and grading (Dual Service included).」(藍色 PSA 標籤:僅簽名的認證與鑑定。紅色 PSA 標籤:物品的認證與鑑定,含雙重服務。) |
標籤的顏色說明認證了什麼。 紅色是物品及其等級;藍色,自 2024年6月19日起,是只認證簽名。22 2019年1月1日以前,PSA/DNA 封裝的簽名物品也用藍標,所以依我的解讀,一張藍色 PSA 標籤的意義取決於它是什麼時候製作的。2022 PSA 2019 年的文章另外給了一個判斷法,依我的解讀,適用於 2019年1月1日起、到 2024年6月19日藍標開始之前製作的紅標:「If they see an autographed card with the designation ‘trading card’ on the LightHouse label, that means that PSA has only authenticated the autograph.」(如果他們看到一張簽名卡,LightHouse 標籤上的標示是「trading card」,那表示 PSA 只認證了簽名。)20
2008 年以前。 我找到的 PSA 頁面沒有一頁描述更早的標籤;2008 年的文章只說新標籤「contain the same general information」(載有相同的基本資訊)。17
PSA 公布的防偽特徵。 PSA 的安全頁面列出 LightHouse 標籤正面的「PSA LightHouse logo with on/off illumination effect」(帶有明暗發光效果的 PSA LightHouse 標誌)、「Classic PSA red trim connects to LightHouse」(經典的 PSA 紅色飾邊與 LightHouse 相連),以及「Fugitive ink graphic pattern to prevent label washing」(防止標籤遭洗刷的遇溶劑即消失油墨圖樣);背面則有「PSA logo with UV logo pattern」(帶 UV 標誌圖樣的 PSA 標誌)、LightHouse 標誌、遇溶劑即消失的油墨,以及「QR Code for instant access to Cert Verification」(可立即進入證書驗證的 QR Code)。24 2017 年的文章解釋了那種油墨:「The same technology used on checks to prevent check washing, fugitive ink will dissolve and wash away when exposed to cleaning chemicals. Each label is adorned both front and back with this fugitive ink.」(這與支票防止遭洗刷所用的是同一種技術:fugitive ink 一接觸清潔化學品就會溶解、被洗掉。每張標籤的正反兩面都印有這種油墨。)它還說「These features come in addition to other covert security features」(這些特徵之外還有其他隱藏的防偽特徵),但沒有說明是哪些。19 安全頁面為標籤的升級標上日期:「In 2017, PSA enhanced the security features found on the label used inside the PSA holder.」(2017 年,PSA 強化了 PSA 鑑定盒內所用標籤上的防偽特徵。)24
鑑定盒。「Tamper-evident means that if someone does attempt to violate the holder, it will leave some evidence that the holder has been compromised.」(防拆的意思是,如果有人試圖破壞鑑定盒,就會留下鑑定盒遭破壞的痕跡。)PSA 說「Since 1991, PSA has utilized a tamper-evident holder」(自 1991 年起,PSA 一直使用防拆鑑定盒)來封裝收藏品。35
紀錄上的照片。 PSA 會為卡片拍攝影像並上傳「to its online Certification Verification site」(到它的線上證書驗證網站),它稱這對「extremely useful for collectors looking to verify the details of an item, including its cert number, before making a purchase」(想在購買前核對物品細節,包括證書編號的收藏者,極為有用)。35
查詢一個編號。 查詢頁面是 psacard.com/cert,本文存下的 23 個 PSA 頁面中有 22 個連到它;第 23 個是下文說明的數量報告檔案,裡面完全沒有連結。245415 PSA 自己的頁面以 /cert/<number> 的形式連結單一證書:一張 Base Set 卡的 CardFacts 頁面,在它的成交紀錄表中以這種形式連結了 231 次,涵蓋 201 個不同的編號,每一個都是八位數。505415 這是一個存檔頁面上的計數,不是 PSA 公布的格式。另一種較長的形式 https://www.psacard.com/cert/<number>/psa 出現在搜尋索引的結果中,這些結果沒有存檔,也沒有出現在任何存下的 PSA 頁面上。研究筆記記錄,查詢頁面與一個較長形式的網址在 2026年10月5日都以 HTTP 403 與 Cloudflare 的機器人檢查回應自動化請求;兩者的回應都沒有保存副本,本文也沒有讀到任何證書紀錄。47 PSA 還提供一個公開 API,只回答一個問題:「We currently offer access to data from Cert Verification for single item searches by cert number.」(我們目前提供以證書編號進行單件查詢的證書驗證資料存取。)它需要一個由使用者自己的 PSA 登入產生的權杖;它的範例編號是八個字元的 00000000;而一個「containing non-numeric or too few characters」(含有非數字或字元過少)的編號,會得到「Invalid CertNo」(無效的證書編號)。55
標籤錯誤免費更正。「PSA will correct any mislabeled item(s) free of charge」(PSA 會免費更正任何標示錯誤的物品),途徑是提出標籤更正申請(Label Correction Request)。35 保證本身「does not cover clerical errors, or what we call “mechanical errors,”」(不涵蓋文書錯誤,也就是我們所稱的「機械性錯誤」),所以標籤錯了是要申請更正,不是提出索賠。1
數量報告。 PSA 自己的描述,出自 Joe Orlando 一篇沒有日期的市場報告:「a tally of every single card we have ever graded and encapsulated」(我們鑑定並封裝過的每一張卡的統計),按「by set, player and grade」(系列、球員與等級)細分。以及它的限度:「The population numbers do not represent ALL CARDS IN EXISTENCE, they merely represent the ones that have been graded by PSA. The numbers also do not include all the cards that have been rejected for evidence of alteration, restoration or questionable authenticity.」(數量並不代表「世上存在的所有卡」,只代表經 PSA 鑑定過的卡。這些數字也不包括所有因有改造、修復跡象或真偽存疑而被退件的卡。)56 報告本身位於 psacard.com/pop,沒有讀到。研究筆記記錄它以 HTTP 403 與 Cloudflare 的機器人檢查回應自動化請求。存在它名下的那一個檔案,既不是那個回應,也不是報告:它是 PSA 的登入頁面。它自己的內容就這麼說:它帶有的路由是登入頁面,signin?b=psa&r= 後面接著編碼過的 psacard.com/pop 網址,我把它解讀為登入後要返回的網址;它載入的頁面腳本是登入頁面的;它沒有標題,也沒有任何可見文字。所以那份報告要嘛如研究筆記所記錄,擋在機器人檢查後面,要嘛如存下的檔案所示,擋在登入後面;無論哪一種,它都沒有被讀到。47
Beckett (BGS)
網站離線,所以 Beckett 的部分從存檔讀取。 Beckett 的狀態頁日期為 2026年10月2日,上面說「we detected suspicious technical activity and, out of caution, took our platforms offline」(我們偵測到可疑的技術活動,出於謹慎,已讓平台離線),說「The extended downtime reflects the time needed to conduct a thorough forensic investigation」(停擺時間延長,反映的是進行徹底鑑識調查所需的時間),並說「Core certification, grade records, and historical population databases remain intact and uncompromised」(核心認證、等級紀錄與歷史數量資料庫仍然完整,未遭入侵)。29 服務分階段恢復,查詢功能在第一階段:「Phase 1: Customer Accounts, Online Submission Center, Certificate Look-up and Pop Reports」(第一階段:客戶帳戶、線上送件中心、證書查詢與數量報告)。29 10月5日對 Beckett 鑑定量表與卡片查詢的請求,都被轉址到那個維護網站。2945 因此下面每一項 Beckett 的事實都來自 Wayback Machine 的存檔副本,並以日期標明,網站恢復後可能有所不同。
標籤上寫了什麼。 Beckett 的 FAQ,2025年3月26日的存檔副本:「A label will run partially across the top of the holder. Each label will feature the set name, the grade and a specific id and a bar coded serial number.」(標籤會橫跨鑑定盒頂端的一部分。每張標籤都會載明系列名稱、等級,以及一個特定的 ID 與一個帶條碼的序號。)26 總等級是由「the 4 sub grades on the front label of the card holder」(卡盒正面標籤上的 4 項分項分數)算出來的,所以依我的解讀,一張帶分項分數的 Beckett 標籤上有五個數字,而總分就是等級。26
標籤錯誤是 Beckett 唯一受理的申訴。「Disputed grades on cards are limited to typographical errors on the label (i.e., the wrong set name).」(卡片等級的申訴僅限於標籤上的打字錯誤,例如系列名稱錯誤。)26
防偽方面,用 Beckett 自己的話,只有一句:「Extreme precautions have been taken to prevent counterfeiting of the label and the holder.」(我們已採取極嚴密的措施,防止標籤與鑑定盒遭到偽造。)存下的 Beckett 頁面沒有一頁描述那些特徵。26
黑標,自 2014年11月28日起。 Beckett 當天的文章,取自 2022年8月16日的存檔副本:「A card worthy of four “10” subgrades is worthy of a special label. Starting today, each card that reaches this quad-10 level will receive a special black label showing that the ultimate grade has been reached.」(一張值得四項「10」分項分數的卡,值得一張特別的標籤。從今天起,每一張達到四項 10 分水準的卡,都會得到一張特別的黑標,表示已達到最高等級。)文章接著說:「The black label is for modern cards only」(黑標僅適用於現代卡),以及「not valid for any BVG cards (1980 and older)」(不適用於任何 BVG 卡,即 1980 年及更早的卡)。9 文章把它和「the elusive BGS Pristine 10」(難以取得的 BGS Pristine 10)相提並論,而 Beckett 的量表沒有其他 10 分:最高的兩個等級是「Pristine 10」與「Gem Mint 9.5」。98 所以依我的解讀,Beckett 在頂端的區分,是同一個等級上的兩種標籤:四項分項分數皆為 10 的 Pristine 10 用黑標,其他的 Pristine 10 用標準標籤。98
金標與銀標。 在存下的 Beckett 頁面上,黑色以外的標籤顏色只出現在一串留言裡,不在文章本身:在 2014 年那篇黑標文章下方,一則署名「Mike」、日期為 2014年11月29日的留言說「BGS 9.5’s and 10’s will always be Gold」(BGS 的 9.5 與 10 永遠是金標),除非一張 10 分卡有四項 10 分的分項分數,那就用黑標。頁面沒有說明留言者的身分;同一個名字在那串留言裡署名了三則,其中一則回答 BGS 重新換標的問題,另一則稱讚 BGS。除了那則留言,金標只出現在第三方網站的描述裡,而存下的 Beckett 頁面沒有一頁提到銀標,所以本文不為 Beckett 其他等級列出顏色規則。946
開放的鑑定服務,見於維護頁面的兩份存檔。 對於「Which grading services are currently available?」(目前提供哪些鑑定服務?),2026年9月19日的存檔副本回答:「Base (with subgrades), Standard, and Express are currently available through the temporary submission form.」(Base(含分項分數)、Standard 與 Express 目前可透過臨時送件表單使用。)並補充「Availability may change」(服務可能變動)。30 同一個頁面在 2026年10月4日存下的版本,那時 beckett.com 的鑑定頁面都轉址到它,對同一個問題的回答是:「Express is currently available through the temporary submission form」(Express 目前可透過臨時送件表單使用),而對於為什麼 Base 與 Standard 無法使用,回答是「Base and Standard card grading submissions are temporarily paused as we focus on existing orders and maintaining estimated turnaround times」(Base 與 Standard 的卡片鑑定送件暫停,因為我們正專注處理既有訂單並維持預估的處理時間)。57 所以在 10月4日,只有 Express 接受新的送件。兩份副本都沒有說 Standard 與 Express 的標籤是否帶有分項分數。3057
查詢一個編號。 卡片查詢頁面,在 2026年8月19日的存檔副本中仍在運作:「Verify the validity of Beckett certificates by entering the cert number」(輸入證書編號以驗證 Beckett 證書的有效性),可選擇 BGS、BVG 或 BCCG,並邀請賣家:「You can link directly to this page from your auction ads of eBay and other auction sites.」(您可以從 eBay 及其他拍賣網站的拍賣廣告直接連結到這個頁面。)31 這個頁面是一張表單,原始碼中的欄位名稱為 item_type 與 item_id;本文讀到的 Beckett 頁面,沒有一頁給出帶證書編號的網址。31
編號的格式與位置:「a specific id and a bar coded serial number」(一個特定的 ID 與一個帶條碼的序號)。本文讀到的 Beckett 頁面沒有一頁給出它的長度,FAQ 也沒有說它在標籤的哪一面。26(我 app 裡的測試用的是一個十位數的佔位編號。)58
數量報告,見於 2025 年的 FAQ:「Our Population Report is available at no extra charge. Cards graded by Beckett Grading Services can be verified on our Graded Card Look Up site.」(我們的數量報告不另收費。經 Beckett Grading Services 鑑定的卡,可以在我們的鑑定卡查詢網站上驗證。)以及:「It is updated daily」(每天更新)。26
等級,依 2026年5月3日存檔的鑑定量表,從「Poor 1」到「Pristine 10」,「Gem Mint 9.5」是頂端之下的那一級;Beckett 沒有 Gem Mint 10。黑標不是一個獨立的等級,而是給四項 10 分分項分數的一種標籤。89
CGC Cards
2023 年的標籤。 2023年6月20日,Certified Collectibles Group 宣布「In July, CCG will combine CGC Trading Cards® and Certified Sports Guaranty® (CSG®) into CGC Cards」(7 月,CCG 將把 CGC Trading Cards® 與 Certified Sports Guaranty®(CSG®)合併為 CGC Cards),並推出「a sleek new label that blends seamlessly with cards」(一張與卡片渾然一體的流線型新標籤)。這張標籤「provides a detailed description of the card, along with its grade, its unique CGC certification number and a QR code to facilitate quick verification」(提供卡片的詳細描述,以及它的等級、獨一無二的 CGC 證書編號,和一個方便快速驗證的 QR code)。23
Pristine 10 標籤。 同一份公告為 Pristine 10 承諾了「a lux, gold label worthy of the chase grade」(一張配得上這個夢幻等級的奢華金標)。23 今天的量表:「All cards that merit a CGC Pristine 10 grade will receive a special CGC Cards Pristine 10 label.」(所有值得 CGC Pristine 10 等級的卡,都會得到一張特別的 CGC Cards Pristine 10 標籤。)4
CGC 在同一個頁面上用兩種方式描述它的 Pristine 10。 標籤那一段說這張標籤是給「cards that are flawless under 10-times magnification」(在 10 倍放大下毫無瑕疵的卡);等級文字則說「A Pristine 10 is a virtually flawless card to the naked eye.」(Pristine 10 是一張肉眼看來幾乎毫無瑕疵的卡。)兩句都在存下的鑑定量表頁面上;我照原文引用,不加調和。4
隨標籤而來的等級變更。「Cards previously graded Gem Mint 9.5 are exactly equivalent to Gem Mint 10 under the updated grading scale」(之前鑑定為 Gem Mint 9.5 的卡,在更新後的鑑定量表下完全等同於 Gem Mint 10);「The Perfect 10 grade, which was seldom used, will no longer be assigned」(很少使用的 Perfect 10 等級,將不再給出);「Sub-Grades will also no longer be offered.」(也將不再提供分項分數。)23 量表保留了一份舊制對照表:「CGC Trading Cards Gem Mint 9.5」與「CSG Gem Mint 9.5」對應到「CGC Cards Gem Mint 10」,而兩種 Perfect 10 都是「Retired grade; retains Perfect 10 status」(已退役的等級;保留 Perfect 10 的地位)。4
所以一張較舊的 CGC 標籤可能寫著 9.5,意思卻是 10。 CGC 的說明中心說收藏者可以保留他們的 Gem Mint 9.5,「and they will be considered Gem Mint 10s in Verify CGC Cards Certification, the CGC Cards Population Report and the CGC Cards Registry」(而它們在 CGC Cards 證書驗證、CGC Cards 數量報告與 CGC Cards 登錄中都會被視為 Gem Mint 10),不必重新換盒。5
而一張現行的 CGC 標籤也可能寫著 9.5,意思卻是另一回事。 今天的量表有自己的 Mint+ 9.5,「a card that displays premium eye appeal for a Mint card」(一張就 Mint 卡而言具有優異視覺觀感的卡),低於 Gem Mint 10。4 所以 CGC 標籤上的「9.5」若不是 Gem Mint(如今是 10 分),就是 Mint+(低於 10 分)。在標籤本身上,旁邊的字 GEM MINT 或 MINT+ 會說明是哪一種;依我的解讀,標籤的種類也會說明:Gem Mint 9.5 屬於 CGC Trading Cards 與 CSG 的標籤,CGC 說這些標籤「are no longer being offered」(已不再提供),而它 2023 年的公告說,換到新 CGC Cards 標籤的 Gem Mint 9.5「will receive the CGC Cards Gem Mint 10 grade」(會得到 CGC Cards Gem Mint 10 的等級)。523 CGC 現行的標準卡二十個等級:415
| 用語 | 數字 |
|---|---|
| Pristine | 10 |
| Gem Mint | 10 |
| Mint+ | 9.5 |
| Mint | 9 |
| NM/Mint+、NM/Mint | 8.5、8 |
| Near Mint+、Near Mint | 7.5、7 |
| Ex/NM+、Ex/NM | 6.5、6 |
| Excellent+、Excellent | 5.5、5 |
| VG/Ex+、VG/Ex | 4.5、4 |
| Very Good+、Very Good | 3.5、3 |
| Good+、Good | 2.5、2 |
| Fair | 1.5 |
| Poor | 1 |
2020 年的標籤。 CGC Trading Cards 2020年7月13日談鑑定盒的文章:「If requested, CGC Trading Cards provides Sub-Grades, which give a more nuanced description of a card’s condition」(如有要求,CGC Trading Cards 會提供分項分數,更細緻地描述卡片的狀態);「On the back of the label, a unique certification number identifies a card」(在標籤背面,一個獨一無二的證書編號標識一張卡);「A QR code enables you to quickly look up a card and its images at CGCcards.com/verify.」(一個 QR code 讓您在 CGCcards.com/verify 快速查詢卡片及其影像。)36 依我的解讀,2020 年到 2023 年變更之間貼標的 CGC 鑑定盒可能帶有分項分數,之後貼標的則沒有。2020 年的文章是存下的 CGC 頁面中唯一說明證書編號在哪一面的;2023 年的公告與今天的鑑定盒頁面提到了編號,但沒有說它的位置。362325
以名目標示代替數字。「Authentic AU」是「used for cards that are authentic and unaltered but cannot receive a numeric grade」(用於真品且未經改造、但無法獲得數字等級的卡);至於「Authentic Altered AA」,「CGC Cards will print Authentic Altered in the grade box if a card is authentic but has been altered」(如果一張卡是真品但經過改造,CGC Cards 會在等級欄印上 Authentic Altered);「Authentic ART」則是「used for cards with custom art applied to the surface」(用於表面加上客製藝術的卡)。4
標籤的顏色承載著保證。 CGC 的保證說收藏品「has not been overgraded」(沒有被評高),而同一條款依標籤顏色設了一個例外:「Grade is NOT guaranteed for cards encapsulated with CGC’s green Qualified Grade Label」(以 CGC 綠色 Qualified Grade Label 封裝的卡,其等級不受保證)。(保證還列出其他除外事項,簽名的等級也在其中。)59
CGC 公布的防偽特徵。「To prevent against counterfeiting, the CGC Cards label features microprinting, UV ink, holographic foil and a unique certification number and barcode.」(為防止偽造,CGC Cards 標籤具備微縮印刷、UV 油墨、全像箔,以及獨一無二的證書編號與條碼。)盒子是「ultrasonically-welded」(超音波焊接)的,並且「resists impacts and tampering」(耐撞擊、防竄改),而「On the back of the label, a QR code enables you to quickly look up a card and its images on the CGC Cards website.」(在標籤背面,一個 QR code 讓您在 CGC Cards 網站上快速查詢卡片及其影像。)25
查詢一個編號。 查詢工具位於 https://www.cgccards.com/certlookup/,單一證書在搜尋索引中以 https://www.cgccards.com/certlookup/<number>/ 的形式出現,一個搜尋索引標題中有一個十位數的例子(這個標題是在搜尋結果中看到的,不在存下的頁面上)。研究筆記記錄,兩者在 2026年10月5日都以 HTTP 403 與 Cloudflare 的機器人檢查回應自動化請求;沒有讀到。48 本文讀到的 CGC 頁面沒有一頁給出證書格式。43
數量報告針對集換式卡牌遊戲,依「by game, era and set」(遊戲、時代與系列)編排。它的免責聲明:「Census / Population Reports only reflect the quantities and types of collectibles previously graded by the CCG Companies, and are not an indicator of value or rarity.」(統計/數量報告只反映 CCG 旗下公司之前鑑定過的收藏品數量與類型,並非價值或稀有度的指標。)60 當一張卡在那裡找不到時,CGC 說要在它的驗證工具輸入證書編號,在那裡「Below the card images, you will find a link to see your card in the CGC Cards Population Report.」(在卡片影像下方,您會找到一個連結,可以在 CGC Cards 數量報告中查看您的卡。)61
SGC
兩種證書格式,依標籤顏色而定。 SGC 的查詢頁面:「For black labels, enter all 7 digits. For green and white labels, enter all 11 characters (XXXXXXX-XXX).」(黑標請輸入全部 7 位數字。綠標與白標請輸入全部 11 個字元(XXXXXXX-XXX)。)10
查詢頁面是一張帶 reCAPTCHA 的表單,位於 gosgc.com/cert-code-lookup,本文讀到的 SGC 頁面沒有一頁給出帶證書代碼的網址。10 SGC 的 app 提供同樣的檢查:「Use the Cert Verification feature to access high-resolution images and look up important information about your SGC cards.」(使用證書驗證功能,取得高解析度影像並查詢您 SGC 卡片的重要資訊。)62
標籤欄位與防偽特徵:本文讀到的 SGC 頁面沒有描述。 我算繪了 SGC 的量表、服務、app、客服與數量報告頁面,沒有一頁列出標籤上印什麼或有什麼保護。除了查詢頁面提到的黑、綠、白三色之外,對 SGC 鑑定盒與標籤顏色的描述只見於第三方網站,本文不予採用。2746
等級用語。 SGC 的量表把它的等級命名為「10 PRI」(Pristine)、「10 GM」(Gem)、「9.5」(MINT+)、「8.5」(NM/MT+)、「7」(NRMT)等等;它的兩個 10 分是兩個不同的等級。6
數量報告是一個系列搜尋,附有一則說明:「With over 28 years of data included in the SGC Pop Report, inconsistencies may be present.」(SGC 數量報告收錄了超過 28 年的資料,可能存在不一致之處。)63
TAG
沒有紙標籤。「Say goodbye to distracting paper flips. Instead, the TAG grades and data are permanently inscribed directly inside the slab.」(告別礙眼的紙標籤。TAG 的等級與資料改為直接永久刻印在鑑定盒內。)64 TAG 的流程頁面稱之為「UV-cured text inside the slab, as well as the QR code to access the card’s DIG report and Proof Authentication features for authenticity verification」(鑑定盒內以 UV 固化的文字,以及用來取得該卡 DIG 報告與 Proof Authentication 真偽驗證功能的 QR code)。37
編號在哪裡、長什麼樣子。「Simply locate the card’s CERT# (left of the QR code)」(只要找到卡片的 CERT#(在 QR code 的左邊)),以及「The CERT# format is typically 1 Letter followed by 7 Numbers.」(CERT# 的格式通常是 1 個字母加 7 個數字。)11 證書搜尋頁面說「Enter any card’s 8 digit CERT # below」(在下方輸入任一張卡的 8 位 CERT #)。41 TAG 的說明中心則說:「All TAG Grading certification numbers are a mix of numbers and letters which are generated randomly.」(所有 TAG Grading 的證書編號都是隨機產生的數字與字母組合。)65 這三種描述都出自 TAG 自己,而它們並不完全一致:一個字母加七個數字是八個字元,但不是八位數字;而「a mix」(組合)也容許其他排列方式。114165
查詢網址。 TAG 的證書搜尋頁面在它自己的腳本裡組出這個網址:const TAG = "https://my.taggrading.com/card/";,後面接著輸入的編號。41 本文沒有抓取任何紀錄。
檢查鑑定盒本身。「Locate the Proof Mark on the back of the slab, directly behind the QR code」(找到鑑定盒背面、正好在 QR code 後方的 Proof Mark),再用免費的 Proof Authentication app 掃描;「Every Proof Mark is confirmed & scanned before leaving the TAG facility.」(每一個 Proof Mark 在離開 TAG 廠區之前都經過確認與掃描。)11
撤銷的編號會明說。「This TAG Certification number is no longer active.」(這個 TAG 證書編號已不再有效。)頁面列出七個原因,從「The slab was tampered with or compromised.」(鑑定盒曾遭竄改或破壞。)到「The certification was voluntarily surrendered.」(該認證已自願放棄。)3915
兩個 10 分,以及一個 1,000 分的量表;依我的解讀,每一張卡都以它評分,而完整分數只在一種報告等級中顯示。 TAG 的量表給 Pristine 10 的分數是 990 到 1000,Gem Mint 10 是 950 到 989,並說「Half points are included on every grade level except for between 9 and 10.」(除了 9 與 10 之間,每個等級都有半級。)7 TAG 把它的鑑定系統描述為以 1,000 分的量表評分:它「scores on a precise 1000 point scale & translates into an industry standard 1-10 Grade」(以精確的 1000 分量表評分,並換算為業界標準的 1 到 10 等級),它的流程頁面則說系統會產生「overall scores for the card on a 1-10 and 1000-point TAG Score scale」(卡片在 1 到 10 與 1000 分 TAG Score 量表上的總分)。6437 擁有者拿到什麼,取決於報告等級,用首頁自己的話來說:「Standard DIGs focus on the core defects that impacted the grade, aka the “DINGS.” DIG Plus Reports breakdown the card into further detail with precise 3 digit scoring.」(標準 DIG 著重於影響等級的核心瑕疵,也就是所謂的「DINGS」。DIG Plus 報告則以精確的 3 位數評分,把卡片拆解得更詳細。)同一個頁面說「Slabs graded with DIG Report Plus receive a precise 1000 pt TAG Score」(以 DIG Report Plus 鑑定的鑑定盒會得到精確的 1000 分 TAG Score),而 DIG 頁面說排行榜名次「is only available to cards which have been graded via the TAG S service as a 3 digit score is needed」(只提供給經由 TAG S 服務鑑定的卡,因為需要 3 位數的分數)。6466 TAG 並沒有明白說每一張卡都有評分,也沒有說標準報告會隱藏分數;這兩點都是我對那些句子的解讀。
數量報告位於 my.taggrading.com/pop-report,存下的 taggrading.com 頁面連到其中的寶可夢類別;沒有抓取。67
ACE
三種標籤。 ACE 列出「Standard」、「Colour Match」與「Ace」三種標籤,並說「Ace Labels are hand drawn exquisite addons for cards, which enhance the overall appearance of a collectible.」(Ace 標籤是為卡片手繪的精緻附加物,能提升收藏品的整體外觀。)它的證書頁面依標籤種類列出數量。4012
一筆證書紀錄裡有什麼。 ACE 的紀錄頁面列出「Label」(標籤)、「Name」(名稱)、「Release Year」(發行年份)、「Set」(系列)、「Number」(編號)、「Language」(語言)與「Variant」(版本)(宣傳卡則為「Additional Information」,補充資訊),等級及其用語(一筆是「MINT 9」,另一筆是「GEM MINT 10」),以及 Surface、Centering、Edges 與 Corners(表面、置中、邊緣與四角)四項分項分數。1213
ACE 的編號很短。 讀到的兩筆紀錄分別是六位數與五位數,第二筆前面補零:#242548 與 #02289。本文讀到的 ACE 頁面沒有一頁說明格式。121343
查詢一個編號。 ACE 的網站提供「Lookup an Ace Grading graded collectible by certification number」(以證書編號查詢 Ace Grading 鑑定過的收藏品)。紀錄網址是 https://acegrading.com/cert/<number>,兩筆紀錄都正常回應。研究筆記記錄,索引頁面 /cert 以 HTTP 403 與 Cloudflare 的機器人檢查回應自動化請求,/pop 也是如此,兩者都沒有讀到。401249
檢查掃描到的標籤。「Please check the URL in your browser」(請檢查瀏覽器裡的網址),後面接著那個網址「https://acegrading.com」,適用於「When scanning our authentication labels」(掃描我們的認證標籤時)。讀到的頁面沒有描述其他防偽特徵。28
ACE 的限定標記列在它的鑑定量表中,該標題下分成兩組:MC 與 OC,是封入鑑定盒的卡可以帶有的;A、C 與 QA(Altered、Counterfeit、Questionable Authenticity,即改造、偽造、真偽存疑),則用於它以未封裝狀態退回的卡。42 置中偏移:「The Off-Center modifier is given to a card where the grade for centering is 2 grades or more below the overall card grade. The Off-Center qualifier means that the overall grade isn’t affected as much, instead appending OC to the grade.」(Off-Center 修飾標記給予置中分數比卡片總分低 2 級以上的卡。Off-Center 限定標記意味著總分不會受到那麼大的影響,而是在等級後面加上 OC。)42 裁切錯誤:「Sometimes a miscut card can not fit in the Ace slab」(有時裁切錯誤的卡放不進 Ace 的鑑定盒),而當一張卡「cannot be encapsulated due to a miscut」(因裁切錯誤而無法封裝)時,「it will be sent back raw」(會以未封裝狀態退回);頁面沒有說放得進去的裁切錯誤卡如何標示。42 ACE 另外三個限定標記,Altered、Counterfeit 與 Questionable Authenticity,結尾都相同:「The card will not be encapsulated and will be returned raw.」(該卡不會被封裝,並會以未封裝狀態退回。)42 所以依我的解讀,ACE 的量表不給改造過的卡任何進入鑑定盒的途徑,而 PSA 的量表給了它五個無等級代碼一條路。4216 它的量表列出 10 到 1 的整數等級,沒有半級。42
3. 六家並列,以及什麼時候改了什麼
| 標籤 | 編號在哪裡 | 編號格式,用鑑定公司自己的話 | 以網址查詢 | 2026年10月5日的機器人檢查,依研究筆記所記錄 | |
|---|---|---|---|---|---|
| PSA | 紙質內襯:紅色(物品)或藍色(自 2024年6月19日起,僅簽名) | 「on the PSA label」(在 PSA 標籤上);沒有說在哪一面;QR code 在背面(2017 年的標籤) | 讀到的頁面沒有給卡片標籤的格式(PSA/DNA 的簽名貼紙帶有「a unique, six-digit, alphanumeric certification number」,一個獨一無二的六位英數字證書編號);API 的範例是 00000000;一個存下的 CardFacts 頁面連到 201 個編號,全部都是八位數 |
psacard.com/cert/<n>,PSA 自己的 CardFacts 頁面就是這樣連結的 |
Cloudflare 挑戰(存下的數量報告檔案是一個登入頁面) |
| BGS | 橫跨頂端的紙標籤;分項分數在正面;四項分項分數皆為 10 的 Pristine 10 用黑標(自 2014年11月28日起) | 標籤上的「a bar coded serial number」(一個帶條碼的序號);沒有說在哪一面 | 讀到的頁面上沒有 | 沒有;一張可選 BGS、BVG 或 BCCG 的表單 | 網站離線 |
| CGC | 紙標籤;Pristine 10 用金標(自 2023 年起);綠色是 Qualified 標籤 | 2020 年的標籤在標籤背面;今天的頁面提到編號但沒有說位置;QR code 在背面 | 讀到的頁面上沒有;索引中的例子是十位數 | cgccards.com/certlookup/<n>/ |
Cloudflare 挑戰 |
| SGC | 黑、綠或白 | 讀到的 SGC 頁面沒有說 | 「7 digits」(7 位數字,黑標);「11 characters (XXXXXXX-XXX)」(11 個字元,綠標、白標) | 沒有;一張帶 reCAPTCHA 的表單 | 沒有(只有表單的小工具) |
| TAG | 沒有紙:盒內的文字與 QR code | 「left of the QR code」(QR code 的左邊) | 「typically 1 Letter followed by 7 Numbers」(通常是 1 個字母加 7 個數字);「8 digit」(8 位);「a mix of numbers and letters」(數字與字母的組合) | my.taggrading.com/card/<n> |
沒有 |
| ACE | Standard、Colour Match 或 Ace | 讀到的 ACE 頁面沒有說 | 讀到的頁面上沒有;它自己的紀錄上是 5 位與 6 位數 | acegrading.com/cert/<n> |
在查詢索引與數量報告上有;兩個紀錄頁面正常回應 |
出處:第 2 節引用的頁面。222433555544726931292359253648106411416540121349
每家鑑定公司的證書形狀,逐字元對照我 app 的讀取器要找的 7 到 10 位數字串,以及讀取器對每一個的結果。1444
標籤的變更,附鑑定公司自己的日期
第 2 節的表格列出了 PSA 六次有日期的變更。加上 Beckett 與 CGC 的變更,就構成下面這條時間軸;鑑定公司自己的頁面上沒有日期的變更不列入,而 2008年2月12日之前沒有任何 PSA 的日期。17181920212293623
依鑑定公司自己的公告標上日期的標籤變更;Beckett 的依其文章的存檔副本。44
為什麼標籤日期需要鑑定公司自己的說法。 本文的寫作計畫最初把 PSA 的 LightHouse 標籤說成 2023 年的變更。PSA 自己的文章把它的日期定在 2017年6月14日,PSA 的安全頁面也說「In 2017, PSA enhanced the security features found on the label used inside the PSA holder.」(2017 年,PSA 強化了 PSA 鑑定盒內所用標籤上的防偽特徵。)1924 我在 psacard.com 上找不到任何日期為 2023 年的 PSA 標籤改版;PSA 在 2024 年的變更是新的鑑定盒(2024年5月14日)與僅認證簽名物品的藍標(6月5日公布,2024年6月19日生效)。2122 2023 年的改版屬於 CGC,於 2023年6月20日公布,7 月實施。23 有些收藏者指南為 PSA 的「label styles」(標籤樣式)編號,或給出其他日期;我只把它們當作線索。46
置中那篇文章依據的十個鑑定公司頁面沒有改變
置中那篇文章依據的是 2026年10月4日存下的鑑定公司頁面。其中十個我與 10月5日存下的副本逐行比對:PSA 的鑑定標準(一般頁面)與詞彙表、CGC 的鑑定量表與它的「other grading topics」(其他鑑定主題)FAQ、TAG 的評分表、量表與 DIG 頁面、ACE 的鑑定量表、SGC 算繪後的量表,以及 Beckett 的狀態頁,結果全都是「unchanged」(未變更),十對中十對。6815 有一部分沒有重新檢查:PSA 各等級的文字存放在一個腳本套件裡,沒有再次算繪,而一般頁面只顯示 PSA 10 那一張投影片。68 置中那篇文章存下的其他頁面也沒有比對,包括 PSA 的置中指南、CGC 的 FAQ 與 TAG 的詞彙表,本文都沒有引用;兩篇文章都讀了的 Beckett FAQ 與量表是存檔副本,由日期固定。68268
關於置中那篇文章的兩項發現
這是本文的發現;置中那篇文章本身沒有修改。69
Beckett 的停擺早於 10月2日的公告。 置中那篇文章把 Beckett 的停擺從那則公告算起(「Beckett’s site has been offline since a notice dated October 2, 2026」,Beckett 的網站自一則日期為 2026年10月2日的公告起就處於離線狀態)。69 Wayback Machine 在 2026年9月19日對 Beckett 維護頁面的存檔副本已經寫著:「Beckett’s digital platforms, including Beckett.com and the Beckett mobile app, remain temporarily offline while we complete infrastructure enhancements.」(Beckett 的數位平台,包括 Beckett.com 與 Beckett 行動 app,在我們完成基礎設施強化期間仍暫時離線。)30 它的卡片查詢在 2026年8月19日的存檔副本中仍在運作。31 所以網站是在這兩份存檔之間的 31 天內某個時間點離線的,至少比公告早 13 天,而 10月2日的公告給出的是它所稱「The extended downtime」(延長的停擺)的原因。2915 沒有任何 Beckett 頁面標出開始的日期;這個時間範圍是依兩份存檔副本推得的。3031
TAG 的系統以 1,000 分的量表評分;依我的解讀,每一張卡都以它評分,而擁有者只在一種報告等級中看到完整分數。 置中那篇文章說 TAG「scores out of 1,000 to answer “how strong of a 10 is this”」(以 1,000 分評分,來回答「這是多強的一個 10 分」)。69 TAG 自己的頁面就是這樣描述這個系統的:它「scores on a precise 1000 point scale & translates into an industry standard 1-10 Grade」(以精確的 1000 分量表評分,並換算為業界標準的 1 到 10 等級),產生「overall scores for the card on a 1-10 and 1000-point TAG Score scale」(卡片在 1 到 10 與 1000 分 TAG Score 量表上的總分)。6437 擁有者拿到什麼,與報告等級綁在一起(本文不引用其價格):「Standard DIGs focus on the core defects that impacted the grade」(標準 DIG 著重於影響等級的核心瑕疵),而「DIG Plus Reports breakdown the card into further detail with precise 3 digit scoring」(DIG Plus 報告以精確的 3 位數評分,把卡片拆解得更詳細);「Slabs graded with DIG Report Plus receive a precise 1000 pt TAG Score」(以 DIG Report Plus 鑑定的鑑定盒會得到精確的 1000 分 TAG Score);而名次「is only available to cards which have been graded via the TAG S service as a 3 digit score is needed」(只提供給經由 TAG S 服務鑑定的卡,因為需要 3 位數的分數)。6466 所以依我的解讀,每一張 TAG 卡都以 1,000 分的量表評分,完整分數則隨 Plus 報告顯示;TAG 並沒有明白說標準報告不含分數。這是對置中那篇文章的補充限定,而不是反駁:它引用的 TAG 頁面,也就是評分表、量表與 DIG 頁面,都在那十個頁面之中,而且沒有改變。6869
4. 手上拿著鑑定盒時如何解讀,以及如何檢查
以下把鑑定公司自己的說法,按收藏者手拿鑑定盒時遇到它們的順序排列。順序是我排的;每一步的內容都出自鑑定公司。
1. 找出鑑定公司與證書編號,到那家鑑定公司查詢這個編號。 這是每家鑑定公司都提供的步驟,也是 PSA 的保證所依賴的步驟:卡片在提出索賠的人購買時,必須擁有「an active certification number on the cert lookup feature of the PSA website at the time it was purchased」(購買時在 PSA 網站證書查詢功能上的一個有效證書編號)。1 在標籤上找編號:PSA 的詞彙表只說「It can be found on the PSA label」(可以在 PSA 標籤上找到),Beckett 的 FAQ 稱它為「a bar coded serial number」(一個帶條碼的序號),CGC 現行的頁面把它和條碼並列但沒有說在哪一面,CGC 2020 年的標籤則把它印在背面。TAG 把它放在盒內「left of the QR code」(QR code 的左邊),SGC 的查詢要求黑標輸入全部七位數字,綠標與白標輸入全部十一個字元,連字號也算在內。32625361110 鑑定公司若在紀錄上附有照片,就拿來和您手上的卡比對:PSA 稱它附影像的紀錄對「extremely useful for collectors looking to verify the details of an item, including its cert number, before making a purchase」(想在購買前核對物品細節,包括證書編號的收藏者,極為有用),SGC 的 app 也在檢查中提供「high-resolution images」(高解析度影像)。3562
2. 看紀錄怎麼說,而不只看標籤。 一個已撤銷的 TAG 編號會顯示「This TAG Certification number is no longer active.」(這個 TAG 證書編號已不再有效。)39 CGC 說它的證書查詢把舊制的 Gem Mint 9.5 算作 Gem Mint 10。5 Beckett 的查詢已離線,它說自己的「Core certification, grade records, and historical population databases remain intact and uncompromised」(核心認證、等級紀錄與歷史數量資料庫仍然完整,未遭入侵),並把查詢列在恢復的第一階段。29
3. 讀數字旁邊的字。 在 PSA 標籤上,OC、ST、PD、OF、MK 或 MC 會改變數字所說的內容。AUTHENTIC 表示 PSA「only certifying that the item is genuine」(只證明該物品是真品),用 PSA 的話說,是一張「real but nothing more」(是真的,但僅此而已)的卡,而且它可能代表一張改造過的卡,因為 PSA「does not always print the term “Altered” on the label itself」(並不總是把「Altered」一詞印在標籤上);PSA 針對改造的無等級代碼中有五個,仍可能進入 Authentic Altered 的鑑定盒。161 在 CGC 標籤上,9.5 需要看它旁邊的字:GEM MINT(如今是 10 分)或 MINT+(低於 10 分)。45 在 CGC、SGC 與 TAG,10 分也需要看字:Pristine 或 Gem Mint。467 Beckett 的字分法不同:它唯一的 10 分是 Pristine,Gem Mint 是它的 9.5,而黑標標示四項分項分數皆為 10 的 Pristine 10。89 在 ACE,等級後面加上 OC,表示置中分數「2 grades or more below the overall card grade」(比卡片總分低 2 級以上)。42
4. 在鑑定公司賦予顏色意義的地方,讀標籤的顏色。 PSA:紅色是物品,自 2024年6月19日起藍色是僅簽名(而 2019年1月1日以前,PSA/DNA 的封裝也用藍色)。2220 Beckett:黑色是四項 10 分的分項分數。9 CGC:金色是 Pristine 10,綠色是 CGC 不保證的 Qualified 等級。2359 SGC:黑標帶七位數編號,綠標與白標帶十一個字元。10
5. 檢查鑑定公司公布的特徵,而且只檢查那些。 PSA 描述它現行標籤上有「with on/off illumination effect」(帶明暗發光效果)的 LightHouse 標誌、「Fugitive ink graphic pattern to prevent label washing」(防止標籤遭洗刷的遇溶劑即消失油墨圖樣)、背面的「PSA logo with UV logo pattern」(帶 UV 標誌圖樣的 PSA 標誌),以及一個連到查詢頁面的 QR code;它的鑑定盒是防拆的,PSA 的定義是會留下「some evidence that the holder has been compromised」(鑑定盒遭破壞的某種痕跡)。2435 CGC 列出「microprinting, UV ink, holographic foil and a unique certification number and barcode」(微縮印刷、UV 油墨、全像箔,以及獨一無二的證書編號與條碼),以及一個「resists impacts and tampering」(耐撞擊、防竄改)的盒子。25 TAG 的檢查是它的 Proof Mark,用它自己的 app 掃描:「Locate the Proof Mark on the back of the slab, directly behind the QR code.」(找到鑑定盒背面、正好在 QR code 後方的 Proof Mark。)11 ACE 的檢查是掃描標籤後開啟的網址,應該是「https://acegrading.com」。28 Beckett 存檔的 FAQ 只給了一句話、沒有清單,本文讀到的 SGC 頁面也沒有描述任何特徵,所以手上拿著這兩家鑑定盒的收藏者,從鑑定公司那裡能用的只有查詢,別無其他。2627 本文描述的內容不超出鑑定公司公布的範圍,也完全不談標籤或盒子可能如何被偽造。
6. 知道標籤日期能告訴您什麼。 等級數字在等級用語下方的 PSA 標籤,是 2008年2月12日或之後的;帶遇溶劑即消失油墨的 LightHouse 標籤,是 2017年6月14日起的;僅認證簽名的藍標是 2024年6月19日起的,但光憑藍色無法判定日期:「Prior to January 1, 2019, PSA/DNA used blue labels」(2019年1月1日以前,PSA/DNA 使用藍標)認證簽名,所以一張藍標可能是 2019 年以前的,也可能是 2024年6月19日以後的。17192220 CGC Cards 標籤是 2023 年變更之後的,帶分項分數的 CGC Trading Cards 標籤則是變更之前的。2336 這是我對鑑定公司註明日期之公告的解讀;本文讀到的頁面,沒有一頁是判定標籤年代的指南。
7. 把數量報告當作鑑定盒的計數來讀。 PSA 的報告計算的是「every single card we have ever graded and encapsulated」(我們鑑定並封裝過的每一張卡),不是「ALL CARDS IN EXISTENCE」(世上存在的所有卡),也不包括那些「for evidence of alteration, restoration or questionable authenticity」(因有改造、修復跡象或真偽存疑)而被退件的卡;CGC 稱它的報告「not an indicator of value or rarity」(並非價值或稀有度的指標);SGC 則提醒「inconsistencies may be present」(可能存在不一致之處)。566063 本文沒有任何內容構成理財建議:它描述的是鑑定公司印出與公布的內容,不對任何鑑定盒的價值做出任何主張。
8. 查詢頁面拒絕自動化請求,代表那個頁面在正常運作。 這些查詢頁面有好幾個在腳本前面設了檢查。研究筆記記錄,PSA 的證書頁面與數量報告、CGC 的查詢,以及 ACE 的查詢索引與數量報告,都以 HTTP 403 與 Cloudflare 挑戰回應我的請求;為 PSA 數量報告存下的那一個檔案是 PSA 的登入頁面,所以那份報告也擋在登入後面;SGC 的表單則帶有 reCAPTCHA。我的腳本就停在那裡,那些頁面沒有讀到。用手機瀏覽器打開同樣頁面的收藏者,正是這些頁面要服務的使用者;至於每個頁面接著是否會顯示紀錄,本文沒有檢查。47484910
5. 這門手藝,化為附數字的規則
以下是前面各節所支持的規則,每一條都附上出處。它們陳述的是鑑定公司公布的內容與實測結果;它們不是鑑定建議。
| 要素 | 規則 | 出處 |
|---|---|---|
| 鑰匙 | 證書編號是標籤的鑰匙。PSA 為它的意見負責,「as reflected on each PSA label」(一如每張 PSA 標籤所載);依我的解讀,用編號查詢是買家確認這份意見仍然有效的方式。PSA 的保證涵蓋卡片的等級與真偽,需要購買時有「an active certification number」(一個有效的證書編號),並排除遭竄改或偽造的標籤,「regardless of certification status」(不論認證狀態為何) | PSA 保證;我的解讀 |
| 檢查 | 在依賴標籤之前,先用編號查詢鑑定盒;本文讀到的六家鑑定公司都提供查詢;PSA、CGC、TAG 與 ACE 另外加上 QR code 或掃描檢查,TAG 還有放在 QR code 後方的 Proof Mark | 六家鑑定公司的頁面 |
| 證書形狀 | SGC:黑標 7 位數字,綠標與白標 11 個字元(XXXXXXX-XXX)。TAG:「typically 1 Letter followed by 7 Numbers」(通常是 1 個字母加 7 個數字)。ACE:它自己的紀錄上是 5 位與 6 位數。本文讀到的 PSA 頁面沒有給卡片標籤的格式(它的 FAQ 說 PSA/DNA 的簽名貼紙帶有「a unique, six-digit, alphanumeric certification number」,一個獨一無二的六位英數字證書編號),Beckett 的也沒有;PSA 的 API 範例是 8 個字元,一個存下的 PSA CardFacts 頁面連到 201 個編號,全部 8 位數(是計數,不是公布的格式);看到的 CGC 編號是 10 位數 | SGC、TAG、ACE、PSA FAQ、API 與 CardFacts 連結、CGC(搜尋索引) |
| 10 分不只一個等級 | CGC 的 Pristine 10 與 Gem Mint 10 分開,Pristine 用金標(自 2023 年起);SGC 的 10 PRI 與 10 GM 分開;TAG 分數 990 到 1000 的 Pristine 與 950 到 989 的 Gem Mint 分開。Beckett 唯一的 10 分是 Pristine(它的 Gem Mint 是 9.5),而它的黑標標示四項分項分數皆為 10 的 Pristine 10(自 2014年11月28日起) | CGC、SGC、TAG、Beckett(存檔) |
| 在 CGC,9.5 不只一個等級 | 舊制的 Gem Mint 9.5 等同於今天的 Gem Mint 10;今天的 Mint+ 9.5 在它之下 | CGC 量表、CGC 說明中心 |
| 半級 | PSA 的半級在「between PSA 2 and PSA 9」(PSA 2 到 PSA 9 之間),另有 FR 1.5,所以沒有 9.5;TAG 跳過「between 9 and 10」(9 與 10 之間);ACE 只列整數等級;Beckett 有 9.5 | PSA、TAG、ACE、Beckett(存檔) |
| 數字旁邊的字母 | PSA:OC、ST、PD、OF、MK、MC,以及沒有數字的 AUTHENTIC 或 ALTERED AUTHENTIC。CGC:AU、AA、ART,以及一張等級「is NOT guaranteed」(不受保證)的綠標。ACE:置中「2 grades or more below the overall card grade」(比卡片總分低 2 級以上)時在等級後加上 OC,並把 MC 列為限定標記 | PSA、CGC、ACE |
| PSA 的 Authentic | 「Real but nothing more」(是真的,但僅此而已),而且可能是一張改造過的卡:基於技術原因,PSA「does not always print the term “Altered” on the label itself」(並不總是把「Altered」一詞印在標籤上)。PSA 九個無等級代碼中,有五個仍可封裝為 Authentic Altered、兩個可封裝為 Authentic,條件是由鑑定師斟酌、送件者在送件單上提出要求;N4 絕不可以,N9 除非判定被推翻否則不可以 | PSA 保證、標準與 FAQ |
| PSA 的顏色 | 紅色:物品。藍色,自 2024年6月19日起:僅簽名;2019年1月1日以前,藍色也用於 PSA/DNA 的封裝 | PSA,2019 年與 2024 年 |
| PSA 有日期的變更 | 2008年2月12日(等級在等級用語下方)、2013年11月12日(內襯背面的全像圖)、2017年6月14日(LightHouse、遇溶劑即消失的油墨、UV、QR)、2019年1月1日(所有封裝都用紅色)、2024年5月14日(新鑑定盒,從運動卡開始)、2024年6月19日(藍色僅用於簽名) | PSA 文章 |
| CGC 有日期的變更 | 2020年7月13日(CGC Trading Cards 標籤,應要求提供分項分數);2023年6月20日(7 月實施的 CGC Cards 標籤、金色 Pristine 10、不再有分項分數、Gem Mint 9.5 如今是 10 分) | CGC 文章 |
| 公布的防偽 | PSA:LightHouse 標誌、正反面遇溶劑即消失的油墨、UV 標誌圖樣、QR、防拆鑑定盒。CGC:微縮印刷、UV 油墨、全像箔、證書編號與條碼、超音波焊接。TAG:Proof Mark。Beckett:一句話。SGC:讀到的頁面上沒有。ACE:只有網址檢查 | 鑑定公司的頁面 |
| 數量報告 | 計算的是鑑定盒,不是卡片:PSA 的不是「ALL CARDS IN EXISTENCE」(世上存在的所有卡),也不含被退件的卡;CGC 的「not an indicator of value or rarity」(並非價值或稀有度的指標);SGC 的可能有「inconsistencies」(不一致之處) | PSA、CGC、SGC |
| PSA 的系列名稱 | 它自己的命名:Base Set 是「1999 Pokemon Game」,日文系列名稱中帶有「Japanese」,所以標籤上的系列文字不是印在卡上的系列名稱 | PSA CardFacts 與價格指南;我的解讀 |
| app,實測 | 在十六張依公開格式製作的合成標籤中(其中兩張的版面沒有任何鑑定公司頁面展示過),我 app 的讀取器完整讀出 3 張;6 張的等級(或沒有等級)正確,但掉了一個會改變意義的字;7 張讀錯:1 張掉了等級,2 個證書被截短,4 個鑑定盒沒認出來 | 讀取器的 Python 副本 |
表格出處:PSA 的保證、標準、FAQ、詞彙表與文章;116353171819202122 PSA 的安全頁面、API、CardFacts 連結與數量文章;24555456 PSA 的系列頁面;505152 Beckett 的存檔頁面;2698 CGC;45233659256048 SGC;1066327 TAG;11741 ACE;12132842 以及實測。1415
這些規則中有兩條承擔了大部分的分量。鑰匙那條規則,說明了為什麼無論用眼睛還是相機讀到的標籤,都只是一個指標:PSA 為它的意見負責,「as reflected on each PSA label」(一如每張 PSA 標籤所載),而依我的解讀,用編號查詢是買家確認這份意見仍然有效的方式。1 字母那條規則,則說明了為什麼等級從來不只是一個數字:PSA 標籤上同樣的「9」,帶不帶 OC 是兩種不同的陳述;CGC 標籤上同樣的「9.5」,依旁邊的字不同,是兩個不同的等級。164
6. Apple 的做法:Kiradex 的標籤讀取器現在做什麼
Kiradex 是我的集卡 app,它的掃描器從相機讀取鑑定盒的標籤,並把鑑定公司、等級與證書編號存在收藏中那張卡的收藏卡紀錄上。以下先說明我在 2026年10月5日讀到的工作目錄中,程式碼做了什麼,再說明它對照鑑定公司公布的格式時哪裡做對、哪裡做錯。程式碼是讀過的,沒有在手機或 Simulator 上執行;下面的實測是用讀取器的 Python 副本跑打字輸入的文字,這是本節能夠主張的誠實界限。3214
讀取文字
掃描器把每一格相機畫面交給 Vision。一個 VNRecognizeTextRequest 以 .accurate 辨識等級執行,語言為英文(日文型錄則為日文加英文),並關閉語言校正;註解說明了原因:「Card names are not dictionary words, and a “corrected” collector number is a wrong one.」(卡名不是字典裡的詞,而一個被「校正」過的收藏編號就是錯的編號。)它找到的每一行,都附帶文字、高度與位置傳回。70 之後的一切,都是對這些行做字串處理。
找出鑑定公司、編號與等級
六家鑑定公司。 app 的 Grader 型別有六個 case,psa, bgs, cgc, sgc, tag, ace,分別顯示為「PSA」、「BGS」、「CGC」、「SGC」、「TAG」與「ACE」。32
鑑定公司,依名稱判斷。 每家鑑定公司都有一組「marks」(標記詞),以完整單字比對:畫面的文字在任何非字母、非數字、非句點的地方切開,每一段再經過折疊處理,去掉大小寫、重音符號與句點。標記詞是 psa;beckett 或 bgs;cgc;sgc;taggrading 或 tag;acegrading 或 ace。因為卡片本身就印有「TAG TEAM」與「ACE SPEC」,TAG 與 ACE 帶有一個旗標 isAlsoCardText,設定在整家鑑定公司上,它的註解寫著「Such a name only means a grader beside a certificate number.」(這樣的名稱只有在證書編號旁邊時才代表鑑定公司。)在程式碼中,條件是畫面中任何地方有一個證書編號(certNumber != nil),而且它適用於該鑑定公司的每一個標記詞,acegrading 與 taggrading 也包括在內。依這個順序第一個通過的鑑定公司勝出。3253
證書編號,依長度判斷。「The certificate: the longest run of 7 to 10 digits」(證書編號:最長的一串 7 到 10 位數字),由樣式 (?:^|\D)(\d{7,10})(?!\d) 找出。32
等級,依它的用語判斷。「The grade: a number from 1 to 10, on or right beside a line with a grade word (“GEM MT 10”); failing that, the tallest such number.」(等級:一個 1 到 10 的數字,在帶有等級用語的那一行上或緊鄰它(「GEM MT 10」);若找不到,就取這類數字中最高的那個。)等級用語是 gem, mint, mt, nm, ex, vg, good, fair, poor, pristine;SGC 的 gm 與 pri 不在其中。數字前面不能是字母、數字、底線、句點、斜線或 #,後面不能是字母、數字、底線、句點或斜線,這就是為什麼「9OC」讀不出等級。3214
多次觀看,合併結果。 一張標籤會跨越不只一格畫面讀取:「A label is small print, and often read a look late」(標籤是小字,常常晚一次觀看才讀到),所以一張被確定讀出的卡會再多得到 looksForALabel = 2 次觀看,快速模式才會把它當成未鑑定卡。後來的讀取會補上先前漏掉的部分,保留較晚的等級與較長的證書編號,而且只在鑑定公司相同時才這麼做。7172
標籤幫忙找出卡片。 PSA 式的「#4」算作一個鬆散的編號(「Numbers given without a set size: a grading label’s “#4”」,沒有附系列總數的編號:鑑定標籤上的「#4」),而印出的最晚年份會依年份為系列加分。系列名稱只有在文字中含有索引裡的英文系列名稱時才加分(日文型錄則是它的日文名稱)。53
它保留什麼,又提供什麼
三個欄位。 一張收藏卡儲存 graderRaw(未鑑定卡為空)、grade(「1 to 10 in halves; 0 when there is none」,1 到 10,以半級為單位;沒有時為 0)與 certNumber,CloudKit 的結構描述也帶有同樣三個:CD_graderRaw、CD_grade、CD_certNumber。3373 標籤上的其他內容都不保留:沒有限定標記、沒有名目標示、沒有分項分數、沒有標籤種類或顏色、沒有 Pristine 或 Gem、沒有日期。33
編輯。 收藏卡編輯器的等級選擇器,對每一家鑑定公司都提供「Grades as labels print them: 10 down to 1, in halves」(標籤印出的等級:從 10 到 1,以半級為單位),外加「Not noted」(未註明),而證書欄位會打開數字鍵盤。34
每家鑑定公司一個查詢連結,或者沒有。 verificationURL(cert:) 為 PSA 傳回 https://www.psacard.com/cert/<cert>,為 CGC 傳回 https://www.cgccards.com/certlookup/<cert>/,對 BGS、SGC、TAG 與 ACE 則什麼都不傳回;它的註解說,一家鑑定公司只有在「if it has a public page that takes the number in its address」(它有一個在網址中接受編號的公開頁面)時才會得到連結。編輯器只在連結存在時,才顯示一個帶鑑定公司名稱的「Look Up at」按鈕。3234
重複。 如果一張收藏卡的鑑定公司與證書編號,已經屬於同一張卡的另一筆收藏卡,就會被拒絕,並顯示一則組成為 "\(grader.name) \(details.certNumber) is already registered." 的提示訊息。這項檢查只看一張卡的收藏卡紀錄,不跨越整個收藏。3374
掃描結果面板顯示什麼。 等級與編號,如 UI 測試中的「PSA 10」與「49392218」,而已鑑定的收藏卡沒有置中那一行,因為「a case hides the card’s edges」(盒子會遮住卡片的邊緣)。7576
已證明的部分。 以打字文字做的單元測試涵蓋一張 PSA、一張 Beckett 與一張 CGC 標籤、未鑑定卡,以及「TAG TEAM」與「ACE SPEC」的防護;一個 UI 測試掃描一張繪製的測試用標籤,上面印有「2026 KIRA BASE」、「PSA」、「GEM MT」、「10」與「49392218」。58777876 在手機上,路線圖說得很直白:「Focus distance, zoom, speed, glare on foil, and slabs behind plastic are all unproven; the Simulator has no camera.」(對焦距離、變焦、速度、閃卡上的反光,以及塑膠後面的鑑定盒,全都未經證明;Simulator 沒有相機。)79
它錯在哪裡,實測結果
跑了什麼。 一個 Python 腳本逐行複製 SlabLabel.init?(reading:) 與 Grader.verificationURL(cert:)。在做任何事之前,它先用 app 自己的測試檢查自己。那些測試在兩個測試檔案中讀取標籤八次,其中一次讀取「TAG TEAM」在兩個檔案裡都有,所以腳本跑七個不同的讀取:PSA、Beckett 與 CGC 的標籤、未鑑定卡、「TAG TEAM」、「ACE SPEC」,以及一張帶七位數編號的 ACE 標籤(對這一張,app 的測試只斷言鑑定公司是 ACE,腳本也只比對這一點)。七個全部通過。那些檔案中的另外兩項預期不在這項檢查之內:PSA 測試斷言的 PSA 查詢網址,以及一個比對經由掃描器讀出之完整標籤的測試。接著它依公開格式製作十六張合成標籤,其中兩張的版面沒有任何鑑定公司頁面展示過(PSA 的 OC 與數字分開寫,而詞彙表是連著寫的;以及下面第三張 ACE 標籤):鑑定公司的名稱、「CARD NAME」、「SET NAME」、該鑑定公司措辭下的等級(PSA 的 GEM MT 10,照它 CardFacts 頁面的寫法;詞彙表的「Mint 9oc」;CGC、TAG 與 ACE 的等級名稱;以及 SGC 的 10 GM,還有它的 8 分,因為等級名稱中沒有字母,就用旁邊的品質用語,NM/MT 8),以及一個符合該鑑定公司形狀的證書編號,使用 PSA 的 API 範例、十位數的 CGC 例子、SGC 的兩種格式、兩種 TAG 形狀(其中一個是自行編造的字母數字混合,因為 TAG 公布的是沒有固定順序的「a mix of numbers and letters」,數字與字母的組合),以及 ACE 公布的兩筆紀錄。第三張 ACE 標籤另外在單獨一行加上網站名稱 ACEGRADING.COM;ACE 的認證頁面把那個網址列為掃描標籤後應開啟的網址,沒有說標籤上印有它,所以那個版面是一個假設。141550628 三項限制:這是 Python 副本,不是 Swift;輸入是打字的文字,彷彿相機完美讀出了每個字元,而不是相機的讀數;每家鑑定公司如何排版標籤並未公布,所以各行的順序是合理推測的,不是實測的。14 腳本另外帶有一個獨立的區段,跑規格書提議之規則(第 7 節)的草稿,與今天讀取器的實測分開。它的每一次執行,除了 10月15日那幾次以外都在 2026年10月5日,並且全部列在註腳中,今天的讀取器對十六張標籤都傳回相同的讀數。14
| 合成標籤(格式來源) | app 讀出 | 判定 |
|---|---|---|
PSA,GEM MT 10,00000000(PSA 的 API 範例) |
PSA,10,00000000 |
正確 |
PSA,MINT 9OC(詞彙表的「Mint 9oc」) |
PSA,無等級,00000000 |
等級遺失;OC 遺失 |
PSA,MINT 9 OC |
PSA,9,00000000 |
OC 遺失 |
PSA,AUTHENTIC |
PSA,無等級,00000000 |
AUTHENTIC 被存成「無等級」 |
CGC,PRISTINE 10,十位數 |
CGC,10,3732635008 |
Pristine 遺失:存得跟 Gem Mint 10 一樣 |
CGC,GEM MINT 10,十位數 |
CGC,10,3732635008 |
正確 |
CGC,GEM MINT 9.5(舊制,如今是 10 分) |
CGC,9.5 | 存得跟現制的 Mint+ 9.5 一樣 |
CGC,MINT+ 9.5(現制) |
CGC,9.5 | 存得跟舊制的 Gem Mint 9.5 一樣 |
CGC,AUTHENTIC ALTERED |
CGC,無等級 | 名目標示被存成「無等級」 |
SGC 黑標,10 GM,1234567 |
SGC,10,1234567 |
正確 |
SGC 綠標或白標,NM/MT 8,1234567-001 |
SGC,8,1234567 |
證書被截短 |
TAG,A1234567 |
TAG,10,1234567 |
證書的字母被丟掉 |
TAG,混合代碼 K4X93B27 |
沒有 | 鑑定盒漏認:沒有 7 到 10 位的數字串,所以 TAG 被當成卡片文字 |
ACE,MINT 9,242548 |
沒有 | 鑑定盒漏認:沒有 7 到 10 位的數字串,所以 ACE 無論以哪個標記詞出現,都被當成卡片文字 |
ACE,GEM MINT 10,02289 |
沒有 | 鑑定盒漏認,原因相同 |
ACE,MINT 9,242548,另有單獨一行的 ACEGRADING.COM(假設的版面) |
沒有 | 鑑定盒漏認,原因相同;網址不會改變結果 |
出處:measure_slab_parser.out.txt,最後一次重跑於 2026年10月15日。14
十六張依公開格式製作的合成標籤(其中兩張是假設的版面),跑過 app 讀取器的 Python 副本:3 張完整,6 張掉了一個會改變意義的字,7 張錯誤。141544
計數,用同一個分母。 十六張中,3 張(18.75%)完整讀出:鑑定公司、證書編號、等級,以及每一個會改變等級意義的字。9 張(56.25%)的鑑定公司、證書編號與等級(或者,對兩個名目標示而言,等級的缺席)正確,其中 6 張掉了一個會改變數字意義的字:OC、AUTHENTIC、PRISTINE、舊制 9.5 上的 GEM MINT、現制 9.5 上的 MINT+,以及 AUTHENTIC ALTERED。7 張(43.75%)錯誤:1 張掉了等級,2 個證書被截短,4 個鑑定盒(25%)完全沒被認成鑑定盒。15 腳本自己的摘要行用不同的方式計算同一次執行,結果一致:「9 of 16 read grader, cert and grade number as the label states; 7 did not; 7 cases lose a qualifier or designation the label prints」(16 張中有 9 張照標籤所載讀出鑑定公司、證書與等級數字;7 張沒有;7 個案例掉了標籤上印的限定標記或名目標示),第七個是連寫的「9OC」,它同時也掉了等級。1415
- **PSA,4 張標籤:**1 張完整;2 張等級正確但掉了一個字(OC 分開寫、AUTHENTIC);1 張掉了等級(OC 連寫,詞彙表的寫法)。每一個 PSA 證書都讀對了。讀到的頁面沒有公布 PSA 把 OC 連在數字後面還是分開印,所以兩種拼法都跑了。14
- **Beckett:**沒有跑,因為本文讀到的 Beckett 頁面沒有一頁給出證書格式;app 自己的 Beckett 測試(十位數、分項分數在同一行、9.5 是最高的數字)在副本中通過。1458
- **CGC,5 張標籤:**1 張完整(Gem Mint 10);4 張數字正確、但掉了賦予它意義的字(Pristine、舊制 Gem Mint 9.5、Mint+ 9.5、Authentic Altered)。每一個 CGC 證書都讀對了。14
- **SGC,2 張標籤:**黑標完整;綠標或白標的證書被截到只剩前七位數字。14
- **TAG,2 張標籤:**字母加七位數的代碼被截到只剩數字;混合代碼沒被讀成鑑定盒。14
- **ACE,3 張標籤:**沒有一張被讀成鑑定盒。14
第 3 節的證書形狀圖逐字元畫出同樣的失敗:陰影帶,也就是一串 7 到 10 位數字,是讀取器唯一保留的形狀。1444
被截短的證書比缺少的證書更糟。 SGC 與 TAG 的失敗都會傳回一個編號,而且是錯的編號。14
- SGC 綠標與白標:
1234567-001被讀成1234567。SGC 說要「enter all 11 characters」(輸入全部 11 個字元)。app 會存下七個,而由於它的重複檢查比對的是儲存的編號,依我的解讀,同一張卡的兩個不同綠標鑑定盒,只要七位數的前段相同,就會被當成同一個盒子而遭拒絕。1033 - TAG:
A1234567被讀成1234567。TAG 說格式「typically 1 Letter followed by 7 Numbers」(通常是 1 個字母加 7 個數字),所以用儲存的編號去查詢,查的不會是這張卡的編號。11 - 收藏卡編輯器顯示錯誤的編號,沒有任何警告,上方還有一行頁尾告訴收藏者,這個編號「is printed on the case’s label」(印在盒子的標籤上)。34
每一個帶五位或六位數編號的 ACE 鑑定盒(ACE 自己的兩筆紀錄都是如此),都被讀成未鑑定卡,原因是編號的長度。 ACE 頁面上的編號是五位與六位數;讀取器只保留一串七到十位的數字。畫面中任何地方都沒有這樣的數字串,certNumber 就是 nil,而那個防止「ACE SPEC」卡被讀成 ACE 鑑定盒的防護設定在整家鑑定公司上,於是無論 ACE 以哪個標記詞出現,都會被拒絕。Python 副本中三張 ACE 標籤遇到的正是這種情況,而即使網址沒有被折疊,結果也一樣:在比對到哪個標記詞變得重要之前,防護就已經拒絕了 ACE。12133214 折疊處理是第二道、較小的障礙。它去掉句點,所以「ACEGRADING.COM」變成 acegradingcom,這並不是完整單字 acegrading;這只有在一張標籤印了網址、沒有單獨的「ACE」、而且編號是讀取器接受的長度時才會有影響,而本文讀到的 ACE 頁面根本沒有說它的標籤印有網址。325328 在快速模式下,經過再多兩次觀看之後,這樣的卡會被登錄為未鑑定卡,帶著掃描器對未鑑定卡設定要註明的任何狀態,還可能帶著一個隔著盒子量得的置中讀數。717475
「1999 POKEMON GAME」在索引中對應不到任何系列。 依我對它 CardFacts 標題的解讀,PSA 的標籤把 Base Set 稱為「Pokemon Game」,而 app 只有在文字中出現索引的英文系列名稱時才依名稱為系列加分,所以 PSA 標籤只能給比對器它的年份與它的鬆散編號。5053 app 自己的測試記錄了結果:一張 Base Set 第 4 號卡的 PSA 標籤並不確定,而「The name, the number and the year together put Base Set first.」(名稱、編號與年份合起來,把 Base Set 排在第一位。)58 依我的解讀,這對一張名稱與編號都只屬於某一個 1999 年系列的 1999 年卡片行得通,無法區分同一年中名稱與編號都相同的兩種印刷,而且沒有一份從 PSA 系列名稱對應到索引系列的對照表可以退而求其次;PSA 的系列清單也無法讀來建立這份對照表,因為它的數量報告沒有讀到(研究筆記中是機器人檢查,存下的檔案中是登入頁面)。5347
一個數字,兩張標籤。 儲存的模型是一家鑑定公司、一個等級與一個證書編號,所以下列印出的等級會在其中相互碰撞。摘要行是鑑定公司的名稱加上數字,沒有數字時就只有名稱,所以每一對中的兩者讀起來都一樣,例如 CGC 10、CGC 9.5 或 PSA 9。3314
- CGC Pristine 10 與 CGC Gem Mint 10,儘管 CGC 給前者一張專屬的金標。23
- CGC 舊制的 Gem Mint 9.5 與現制的 Mint+ 9.5:一個如今是 10 分,另一個低於 10 分。4
- SGC 10 PRI 與 SGC 10 GM。6
- TAG Pristine 10(990 到 1000)與 TAG Gem Mint 10(950 到 989)。7
- 四項分項分數皆為 10 的 Beckett Pristine 10,即黑標,以及不是如此的 Beckett Pristine 10。9
- PSA MINT 9 與 PSA MINT 9 OC,PSA 的規則讓它們成為兩種不同的陳述。16
- PSA AUTHENTIC 與一張未註明等級的 PSA 收藏卡;CGC AUTHENTIC ALTERED 與一張未註明等級的 CGC 收藏卡也是如此。每一對都儲存它的鑑定公司與等級 0,摘要只有鑑定公司的名稱。1643314
選擇器提供了鑑定公司不給的等級。 對照每家鑑定公司自己的量表,依我的解讀:PSA 沒有 9.5,它的半級落在「between PSA 2 and PSA 9」(PSA 2 到 PSA 9 之間);ACE 只列整數等級;CGC、SGC 與 TAG 各有兩個 10 分,選擇器無法區分;TAG 沒有 9.5(「Half points are included on every grade level except for between 9 and 10」,除了 9 與 10 之間,每個等級都有半級);Beckett 的 9.5 是 Gem Mint,它唯一的 10 分是 Pristine,而黑標是一種標籤,不是一個等級。1642467834
連結,逐家說明。
- **PSA:**app 組出
https://www.psacard.com/cert/<n>,而 PSA 自己的頁面也用這種形式:本文存下的 CardFacts 頁面,在它的成交紀錄表中連到/cert/<n>231 次,涵蓋 201 個不同的編號,而且沒有一個連結加上/psa。325415 較長的形式https://www.psacard.com/cert/<n>/psa只在搜尋索引的結果中看到,這些結果沒有存檔。研究筆記記錄兩種形式都以 Cloudflare 挑戰回應腳本,所以兩者在手機瀏覽器中是否會顯示紀錄,都沒有檢查。47 - **CGC:**app 的
https://www.cgccards.com/certlookup/<n>/符合索引中的形式,研究筆記記錄這個形式對腳本也擋在挑戰後面。3248 - TAG:
https://my.taggrading.com/card/<n>是由 TAG 自己的頁面組出的;app 沒有 TAG 的連結。4132 - ACE:
https://acegrading.com/cert/<n>提供了讀到的兩筆紀錄;app 沒有 ACE 的連結。1232 - **SGC:**一張帶 reCAPTCHA 的表單,沒有接受編號的網址;app 沒有 SGC 的連結。10
- **Beckett:**一張可選 BGS、BVG 或 BCCG 並輸入編號的表單,自 2026年9月19日之前就已離線;app 沒有 Beckett 的連結。3130
它的成本
未經測量。本文沒有任何東西在手機上執行,所以沒有每張標籤的耗時、沒有電量數據,也沒有相機準確度的數據。本文只讀了 app 自己的測試,沒有執行。唯一針對 app 邏輯執行的是 Python:讀取器的副本與規格書規則的草稿。其他腳本是在存下的頁面與輸出上執行的,不是在 app 上:算術、連結計數、頁面比對與繪圖腳本。141554684479
7. 規格書:Kiradex 要做什麼,以及必須通過的檢查
本文寫成之後,工作目錄有了變動。 以下全部是對照 commit 5a344e3f(2026年10月5日)的讀取器寫成的,每一句說「今天」的話,指的都是那個版本;最新的 commit fc9d4876(10月15日)仍帶著同一個 SlabLabel.swift。10月15日,Kiradex 的工作目錄中有對讀取器尚未 commit 的修改,實現了這份規格書的一部分:每家鑑定公司各自的證書形狀(TAG 為 [A-Z]\d{7},SGC 為 \d{7}(?:-\d{3})?,ACE 為 \d{4,7},PSA 為 \d{7,9}),以及一個位於 acegrading.com/cert/ 的 ACE 查詢連結;還有超出這份規格書的一個 read(code:),用來讀取標籤的 QR code。它的 ACE 形狀是四到七位數,比第 1 項要求的五或六位更寬;它的 TAG 形狀只接受一個字母加七位數字,所以第 1 項的混合代碼檢查(K4X93B27)對它不會通過;它的 PSA 形狀是七到九位數,而第 1 項保留七到十位。它的 verificationURL 也只為符合該鑑定公司自身形狀的編號提供連結,而第 3 項是對任何已註明的編號都顯示按鈕,把形狀交給第 4 項的頁尾處理。未 commit 的程式碼仍可能改變,也可能永遠不會發布,所以這份規格書照樣保留,作為所要求內容的紀錄與驗收檢查;一旦有某個版本實現了這項變更,會再加上一個附日期與截圖的段落。80
標籤讀取器的工作,是把鑑定公司自己的用語準確地帶進收藏,然後把收藏者送到鑑定公司的紀錄那裡。它無法判斷一個鑑定盒是不是真的,也絕不應該聽起來像是它判斷過。PSA 的保證涵蓋卡片的等級與真偽,前提是索賠者購買時,該編號在 PSA 的查詢上是有效的,而 PSA 為它的意見負責,「as reflected on each PSA label」(一如每張 PSA 標籤所載);依我的解讀,查詢是買家確認這份意見仍然有效的方式,而 app 只是讀了文字。1 以下共六項,每一項都附上它要修改的檔案,以及一項單元測試、UI 測試或腳本可以執行的檢查。新的測試使用通用的佔位文字(CARD NAME、SET NAME),不用任何寶可夢的名字;既有測試中的卡名維持原樣。提議的措辭以程式碼字型呈現,與引文區隔。
1. 依鑑定公司、依該公司公布的形狀讀取證書編號,並讓收藏者可以自行輸入
先找出鑑定公司,再在 Kiradex/Scanner/SlabLabel.swift 中依那家鑑定公司的形狀找編號:101165121332
| 鑑定公司 | 接受 | 出處 |
|---|---|---|
| SGC | 優先找 \d{7}、一個連字號與 \d{3},任何破折類符號都視為連字號,前後允許空格;否則找一個是 \d{7}、且後面在空格或破折類符號之後沒有接更多數字的單元 |
「For black labels, enter all 7 digits. For green and white labels, enter all 11 characters (XXXXXXX-XXX).」(黑標請輸入全部 7 位數字。綠標與白標請輸入全部 11 個字元。) |
| TAG | 一串 8 個字元的字母與數字,兩者至少各一,優先找 [A-Z]\d{7} |
「typically 1 Letter followed by 7 Numbers」(通常是 1 個字母加 7 個數字);「a mix of numbers and letters」(數字與字母的組合) |
| ACE | 一串在該行單獨出現的 5 或 6 位數字 | ACE 的紀錄 #02289 與 #242548 |
| PSA、CGC、BGS | 今天的 7 到 10 位數字 | 讀到的頁面上沒有格式 |
每一種形狀都要和它所在的整個單元比對,絕不能只比對其中一部分。對 SGC,先把相機可能傳回的每一種破折類符號(U+2010 到 U+2015,以及減號 U+2212)都讀成連字號,並且把七位數字、一個連字號與三位數字當成同一個代碼,即使連字號前後有空格也一樣,儲存為 1234567-001。SGC 的黑標形狀七位數字,正是它綠標形狀的開頭,所以七位數字後面在空格或破折類符號之後還接著更多數字的,就不是黑標代碼:1234567 001 與 1234567-0012 都不屬於任何一種形狀;一行以七位數字結尾、下一行以破折類符號開頭,或以三位數字開頭且沒有第四位的情況也不屬於,那是同一個代碼被傳回成兩行;在這些情況下,編號都不讀取,由掃描結果面板請收藏者輸入(第 4 項),而不是存成 1234567,因為那不是標籤上的編號。這條規則有兩個副作用:同一行中等級接在後面的黑標編號(1234567 10),或下一行以三位數系列編號(025/198)開頭的黑標編號,也都不會被讀取。本文讀到的標籤沒有一張出現這兩種情況。1014 證書編號一律以字串保存,前導零與連字號都保留。相機把 0 讀成 O、把 1 讀成 I 的情況,只在一串已判定為證書的字元內部才做折疊修正;而依我對 TAG「a mix of numbers and letters」(數字與字母的組合)的解讀,在 TAG 代碼內部絕不這麼做,因為那裡的 O 或 I 可能就是它看起來的那個字母。6553
防護跟著原因走。 今天,每一張編號像 ACE 自己紀錄那樣的 ACE 標籤都會遺失,因為那些五位與六位數的編號不是一串 7 到 10 位數字,所以 certNumber 是 nil,而 isAlsoCardText 防護無論 ACE 以哪個標記詞出現都會拒絕它(第 6 節)。保留這個防護,因為卡片上印有「ACE SPEC」與「TAG TEAM」,但改用每家鑑定公司自己的形狀:當某一行單獨帶有 5 或 6 位數字、且提到 ACE 的那一行沒有 SPEC 時,ACE 才算數;當它的 8 字元代碼出現時,TAG 才算數。3214
不修改折疊後的單字比對。 在折疊後的單字(acegradingcom)中比對 acegrading,不屬於這一項。有了上面的防護,實測中的每一張 ACE 標籤即使沒有這項修改也都讀得出來,包括印有網址的那一張,因為每一張也都印著「ACE」;而且本文讀到的 ACE 頁面沒有一頁說它的標籤印有網址,所以這項修改會是為一個沒有人展示過的版面而做的。它不納入。如果真的出現一張印了網址、卻沒有單獨「ACE」的 ACE 標籤,那張標籤就是撰寫這項修改時要對照的測試。2814
證書欄位接受字母與連字號。 收藏卡編輯器的證書欄位會打開數字鍵盤(Kiradex/Views/Card/CopyEditor.swift 中的 copy-certificate 欄位,帶 .keyboardType(.numberPad)),所以收藏者打不出 TAG 的字母或 SGC 的連字號,而第 4 項與重點整理卻要收藏者自己輸入編號。把它改成 .keyboardType(.asciiCapable),加上 .textInputAutocapitalization(.characters) 與 .autocorrectionDisabled()。341110
檢查(除非另行指明,都是 KiradexTests/ScannerTests.swift 中的新測試)。下面每一張檢查用標籤也都帶有一行 CARD NAME,與草稿的做法相同。實測輸出的第 4 區段,為下面每一項讀取器檢查並列印出今天的讀數與規格書的讀數:SGC 綠標、TAG 與 ACE 那幾行在今天的讀取器下失敗,SGC 黑標與卡片文字那幾行則已經通過,列在那裡是為了確保它們繼續通過。14
- 編號的形狀,SGC:SGC + 10 GM + 1234567-001 得出證書 1234567-001;SGC + 10 GM + 1234567 得出 1234567。
- 格式錯誤的 SGC 代碼不讀取:SGC + NM/MT 8 + 1234567-0012 得出鑑定公司 SGC、等級 8、沒有證書,1234567-01 也是如此。今天的讀取器對兩者都存下 1234567。1014
- 以另一種破折類符號或帶空格讀出的綠標代碼,仍是同一個代碼:SGC + NM/MT 8 + 以 en dash(U+2013)連接的 1234567 與 001 得出 1234567-001,1234567 - 001 也是如此;1234567 001 得出沒有證書,1234567 而下一行是 -001 的也是如此。今天的讀取器對這四者都存下 1234567。1014
- 編號的形狀,TAG:TAG + GEM MINT 10 + A1234567 得出鑑定公司 TAG 與證書 A1234567;TAG + GEM MINT 10 + K4X93B27 得出鑑定公司 TAG 與證書 K4X93B27。
- 編號的形狀與防護,ACE:ACE + MINT 9 + 242548 得出鑑定公司 ACE、等級 9、證書 242548;ACE + GEM MINT 10 + 02289 得出 02289,零保留。
- 防護對卡片文字仍然有效:既有的 wordsCardsPrintAreNotGraders 案例仍傳回 nil,以佔位文字寫成:CARD NAME + ACE SPEC + 153/162,以及 CARD NAME + TAG TEAM + 33/181。77
- 一項既有的預期會改變。 同一個測試的第三項預期(KiradexTests/ScanSessionTests.swift 中的 wordsCardsPrintAreNotGraders),預期從 ACE + 10 + GEM MINT + 一個卡名 + 1234567 得出鑑定公司 ACE。在新的 ACE 規則下,七位數字不是 ACE 的證書,所以那次讀取傳回 nil,這一行照原樣寫會失敗。它的編號改成 242548,也就是 ACE 的六位數紀錄,單獨成行,並保留預期鑑定公司為 ACE。7712
- 鍵盤,在 KiradexUITests/KiradexUITests.swift 中一個獨立的新測試方法 testTheCertificateFieldTakesLettersAndAHyphen,以與 testScanningAGradedCardKeepsItsLabel 相同的參數啟動(-fixtureCatalog、-scanFixture kira1-2、-scanSlab YES):它點選 Scan,像那個測試一樣等待找到卡片(scan-found-name,然後 scan-found-details),接著點選 scan-details,清空 copy-certificate,輸入 A1234567 並斷言欄位的值是 A1234567;然後清空,輸入 1234567-001 並斷言那個值;就此結束,絕不點選 scan-have,所以輸入的任何內容都不會被登錄。它不放進 testScanningAGradedCardKeepsItsLabel:掃描結果面板開啟的編輯器綁定的是面板自己的 details(ScanResultPanel 把 $details 傳給 CopyEditor),scan-have 會登錄那些 details 中的任何內容,而那個測試之後會斷言登錄的收藏卡那一列含有 49392218,在掃描到的編號上輸入新編號就會破壞這一點。這項檢查不會改變任何既有預期。這項檢查只涉及鍵盤的修改:欄位的值不會經過讀取器。它沒有執行過;如果它在修改之前就通過,表示這次執行不是透過螢幕鍵盤輸入的,這項檢查需要換一種形式。76757434
- 這些規則與第 2 項規則的 Python 草稿,以獨立區段的形式加入實測腳本(measure_slab_parser.out.txt 的第 4 區段,與今天讀取器的實測分開),對 16 張標籤中的 16 張都正確讀出鑑定公司、證書與等級數字(今天的讀取器:16 張中 9 張),第 1 項與第 2 項中全部 39 張檢查用標籤都照這份規格書所說讀出,第 2 項寫出的 15 個摘要字串都符合它的摘要規則,並且照第 2 項所說合併了它全部 10 組連續觀看。在它之下,移植檢查執行的 7 項既有預期中有 6 項成立,第七項就是上面那項會改變的 ACE 預期;在它另外執行的兩項既有預期中,有一項會改變,如第 2 項所說。草稿不是 app:Swift 的修改必須自己通過上面的測試。1415
2. 保留數字旁邊的字
在 SlabLabel,以及 CopyDetails 與 CardCopy 中加入三個欄位,每一個都帶預設值,這是 CloudKit 的要求;docs/cloudkit-schema.ckdb 中的結構描述也加入它們,並在發布前部署:3373
gradeWords:照印出的、轉為大寫的等級用語:等級那一行去掉數字與該鑑定公司列出的任何限定標記之後的內容(GEM MT、PRISTINE、MINT+、SGC 的PRI或GM),或者在數字單獨成行時,取旁邊那一行等級用語;沒有讀到時為空。讀取器的等級用語,變成六家鑑定公司存下的量表頁面上印出之等級名稱中的每一個字:今天的十個,加上excellent、fr、gm、near、nrmt、perfect、pr、pri與very。這樣一來,CGC 舊制在10上方的PERFECT,以及 PSA 在1上方的PR,都能保留它們的用語,而今天的清單會把它們弄丟。新增字中有四個只在量表使用它們的地方才算數,以免系列那一行的小數字變成等級:near只在mint之前,very只在good之前,而 PSA 的PR與FR只在作為整行描述詞,或直接位於 PSA 給它們的數字 1 與 1.5 之前時。系列那一行中EX旁邊的小數字,今天會被讀成帶用語的等級,之後仍然如此;本文讀到的標籤沒有一張出現這種情況。3216846742qualifier:對 PSA,是 OC、ST、PD、OF、MK 或 MC 之一;對 ACE,是 OC 或 MC,也就是它列出的限定標記中,封入鑑定盒的卡可以帶有的那兩個;在與數字一起印出時讀取,連寫(9OC)或分開(9 OC)皆可。連寫的代碼只從本身帶有等級用語的那一行中的單元讀取,像MINT 9OC那樣;在其他地方,一個後面連著字母的數字根本不是等級,和今天的讀取器一樣,所以1ST EDITION那一行的1ST(app 自己測試中的 PSA 讀數就帶有這一行),既不是等級 1,也不是限定標記 ST。而在同一行或相鄰行中帶有用語的單獨等級數字,優先於連著代碼的數字,所以一行被相機把1ST EDITION連到GEM MT的讀數,仍然得出 10;單獨的MINT 9OC仍讀成 9 帶 OC。在同一行中連著代碼的數字之間,直接接在等級用語後面的那個勝出,所以在一行把1ST EDITION連到MINT 9OC的讀數中,MINT 9OC勝過1ST。ACE 說它會把「OC to the grade」(OC 加到等級後面);MC 如何印出沒有說明,所以基於一項假設,MC 也以同樣方式讀取。其他鑑定公司沒有限定標記清單,因為本文讀到的它們的頁面沒有一頁給出。某家鑑定公司沒有列出的代碼,例如 CGC 標籤上的 OC,對那家鑑定公司而言不是限定標記,但也不會被丟掉:無論它連在數字後面還是分開印,都留在gradeWords中,只去掉數字,所以等級那一行印的東西不會遺失。163425032designation:AUTHENTIC、ALTERED AUTHENTIC 或 AUTHENTIC ALTERED、AUTHENTIC ART,在沒有印數字的地方讀取。164
CopyDetails.summary 照儲存的樣子顯示它們,以讀到的大寫呈現,絕不轉成首字母大寫:首字母大寫會把 PSA 的 GEM MT 變成 Gem Mt、把 SGC 的 NM/MT 變成 Nm/Mt,這些拼法沒有一個存下的鑑定公司頁面使用過,而且掃描結果面板的標題本來就以大寫呈現(ScanResultPanel 中的標題帶有 .textCase(.uppercase))。順序是固定的:鑑定公司、等級用語、數字、限定標記;沒有印數字的地方,則是鑑定公司與名目標示。所以摘要會是 PSA MINT 9 OC、CGC PRISTINE 10、CGC MINT+ 9.5 與 PSA AUTHENTIC;這個順序是 app 的,不是每張標籤的,所以 SGC 的 10 GM 讀作 SGC GM 10。不做任何推斷,也不改寫任何內容:舊制 CGC 的 GEM MINT 9.5 讀作 CGC GEM MINT 9.5,附上註記 CGC now counts this as Gem Mint 10,這是 CGC 自己的舊制對照,而且絕不會被改成 10。4575506
這些用語跟著標籤走,經過四個地方,每一個地方都必須帶著它們:33727134
Kiradex/Models/CardCopy.swift中的CopyDetails.init(label:),從標籤複製這三個新欄位。Kiradex/Scanner/Sighting.swift中的merged(with:),在較晚的一次觀看補上較早的一次時,從鑑定公司、等級與證書重建標籤。照今天的寫法,只要第二次觀看一合併進來,它就會丟掉第一次觀看讀到的用語。新欄位不是逐一合併的:等級的陳述,也就是它的數字、gradeWords、qualifier與designation,作為一個整體移動。一次既沒讀到數字、也沒讀到名目標示的較晚觀看,並沒有讀到這份陳述,就讓較早的那份保持完整。一次數字不同的較晚觀看,或在較早的有數字時讀到名目標示,或反過來,讀到的是一份不同的陳述,四個欄位就全部採用它的值,空值也包括在內,所以MINT 9 OC之後接GEM MT 10是PSA GEM MT 10,絕不會是PSA GEM MT 10 OC。一個包含較早名目標示、或被它包含的較晚名目標示,保留較長的那個:一次只讀到AUTHENTIC的觀看,接在讀到ALTERED AUTHENTIC的觀看之後,是漏讀了一個字,而不是讀到另一種結果。一個既不包含、也不被較早名目標示包含的名目標示,例如AUTHENTIC ALTERED之後的AUTHENTIC ART,是一份不同的陳述,就取代它。一次數字相同、或名目標示相同的較晚觀看,在它讀到用語與限定標記的地方保留自己的,在它什麼都沒讀到的地方保留較早觀看的:讀取器無法分辨一次漏讀了OC的觀看,和一張印出時就沒有 OC 的標籤,而一次讀到同一數字旁字母的觀看,被視為較完整的讀數。證書編號和今天一樣保留較長的讀數,setText(第 6 項)則保留第一次的。CardCopy.swift中CopyDetails的成員初始化器,加入這三個參數,預設值為空。- 同樣在
CardCopy.swift中的CardCopy.details,是一個計算屬性,它的 getter 透過那個初始化器從儲存的欄位建立一個CopyDetails,setter 則把它們寫回去。兩者都要加入這三個新的儲存欄位。檢視器中一張收藏卡那一列顯示的是copy.details.summary,它的識別碼是copy-加上那個摘要(Kiradex/Views/Card/CopyEditor.swift中的CopiesSection),所以如果 getter 維持原樣,一張存下的PSA GEM MT 10會變回PSA 10。
檢查:
- PSA + MINT 9OC + 00000000 得出等級 9、限定標記 OC,以及摘要 PSA MINT 9 OC;PSA + MINT 9 OC + 00000000 得出同樣的結果。
- PSA + AUTHENTIC + 00000000 得出沒有等級、名目標示 AUTHENTIC,以及摘要 PSA AUTHENTIC。
- CGC + PRISTINE 10 與 CGC + GEM MINT 10(都帶 3732635008)得出不同的 gradeWords 與不同的摘要,CGC PRISTINE 10 與 CGC GEM MINT 10,都沒有註記。
- CGC + GEM MINT 9.5 + 3732635008 得出摘要 CGC GEM MINT 9.5 並附上舊制註記;CGC + MINT+ 9.5 + 3732635008 得出 CGC MINT+ 9.5,沒有註記。
- SGC + 10 PRI 與 SGC + 10 GM(都帶 1234567)得出不同的 gradeWords(PRI、GM)與摘要 SGC PRI 10 與 SGC GM 10,所以 SGC 的兩個 10 分保持分開。
- ACE + MINT 9 OC + 242548 得出等級 9 與限定標記 OC,ACE + MINT 9OC + 242548 也是如此。實測的十六張中沒有帶 OC 的 ACE 標籤,而今天的讀取器在限定標記派上用場之前就會漏掉它,因為它讀不出任何帶 ACE 自己五位或六位數編號的 ACE 標籤;Python 草稿則照這項檢查所說讀出兩者。4214
- ACE + MINT 9 MC + 242548 得出限定標記 MC,基於上面關於 ACE 如何印出它的假設;CGC + MINT 9 OC + 3732635008 得出等級 9、沒有限定標記,因為 CGC 沒有列出任何限定標記,gradeWords 為 MINT OC,摘要為 CGC MINT OC 9;CGC + MINT 9OC + 3732635008 得出同樣的結果。這些字母對 CGC 而言不是限定標記,但也不會被丟掉:它們留在等級用語中,只去掉數字,所以摘要的固定順序把它們放在數字之前。42414
- PSA + CARD NAME + 1ST EDITION + GEM MT 10 + 00000000 得出等級 10、沒有限定標記、gradeWords 為 GEM MT,以及摘要 PSA GEM MT 10;CGC + CARD NAME + 1ST EDITION + MINT 9 + 3732635008 得出等級 9、沒有限定標記、gradeWords 為 MINT,以及摘要 CGC MINT 9。PSA 為一張初版卡寫的 CardFacts 標題以 1ST EDITION 結尾,而 app 測試輸入的 PSA 讀數也帶有同一行,在它與等級用語之間還有 #4,所以那些測試碰不到這個情況。一個從任何數字取連寫代碼的讀取器,會把兩張標籤都讀成等級 1,PSA 那張還帶限定標記 ST;今天的讀取器兩張都讀對,因為它的等級樣式不接受數字後面的字母,而 Python 草稿照這項檢查所說讀出兩者。50583214
- 如果相機把兩欄連在一起讀,單獨的數字仍然勝出:PSA + CARD NAME 1ST EDITION GEM MT 10 + 00000000 得出等級 10、沒有限定標記,PSA + 1ST EDITION GEM MT + 10 + 00000000 也是如此。若只有連寫代碼的規則,兩行都帶有等級用語,1ST 就會算數,而兩個同樣高的數字中保留第一個,所以兩者都會讀成等級 1 帶限定標記 ST;今天的讀取器對兩者都得出 10。這項檢查只斷言等級與限定標記:在連在一起的那一行中,gradeWords 保存的是該行讀到的其餘部分,卡片文字也包括在內。相機是否真的會把 PSA 標籤的兩欄讀成一行,沒有測量過。3214
- 在帶限定標記的等級旁連在一起時,接在等級用語後的代碼勝出:PSA + CARD NAME 1ST EDITION MINT 9OC + 00000000 得出等級 9 與限定標記 OC。沒有那條規則的話,就沒有單獨的數字可以優先,1ST 是兩個連著代碼、同樣高的數字中的第一個,標籤就會讀成等級 1 帶限定標記 ST;今天的讀取器從它讀不出任何等級,因為它不接受數字後面的字母。3214
- CGC + CARD NAME + PERFECT + 10 + 3732635008 得出 gradeWords 為 PERFECT,以及摘要 CGC PERFECT 10;PSA + CARD NAME + PR + 1 + 00000000 得出 gradeWords 為 PR,以及 PSA PR 1。兩者都把用語單獨放在數字上方的一行,也就是 app 自己 PSA 測試讀數的版面。4165814
- 系列那一行的小數字不是等級:PSA + 2007 POKEMON POP SERIES 5 + CARD NAME VERY + #4 + NM-MT + 8 + 00000000 得出等級 8 與 gradeWords 為 NM-MT,而 PSA + 2019 POKEMON PR 5 + CARD NAME + #4 + MINT + 9 + 00000000 得出等級 9 與 gradeWords 為 MINT,和今天的讀取器一樣。如果 very 與 pr 無論出現在哪裡都算數,兩者都會讀成等級 5。14
- 連續觀看,在 merged(with:) 的單元測試中,每一對都用同一個證書:PSA MINT 9 OC 之後接 PSA GEM MT 10 得出沒有限定標記的 PSA GEM MT 10;GEM MT 10 之後接 MINT 9 OC 得出 PSA MINT 9 OC;MINT 9 OC 之後接 MINT 9 得出 PSA MINT 9 OC;GEM MT 10 之後接單獨的 10 保留 GEM MT;MINT 9 OC 之後接一次沒讀到等級的觀看保留 PSA MINT 9 OC;MINT 9 之後接 AUTHENTIC 得出沒有等級、名目標示 AUTHENTIC 與 PSA AUTHENTIC;AUTHENTIC 之後接 GEM MT 10 得出沒有名目標示的 PSA GEM MT 10;ALTERED AUTHENTIC 之後接 AUTHENTIC 保留 PSA ALTERED AUTHENTIC;CGC AUTHENTIC ALTERED 之後接 CGC AUTHENTIC ART 得出 CGC AUTHENTIC ART;CGC GEM MINT 10 之後接 CGC PRISTINE 10 得出 CGC PRISTINE 10。沒有任何合併後的標籤同時帶有等級與名目標示。Python 草稿跑了全部十組;在這條規則所取代的規則下,也就是較晚觀看有值的欄位各自保留,MINT 9 OC 之後接 GEM MT 10 會得出 PSA GEM MT 10 OC,另有兩組會在等級旁存下名目標示,而 ALTERED AUTHENTIC 那一組會掉了 ALTERED。7214
- 儲存後再讀回,在 KiradexTests/CopyTests.swift 中:一張以 addCopy(of:details:) 從標籤 PSA + MINT 9OC + 00000000 加入的收藏卡,透過同一個記憶體內容器上的第二個 ModelContext 讀回後,得出 gradeWords 為 MINT、限定標記 OC 與摘要 PSA MINT 9 OC;一張從 PSA + AUTHENTIC + 00000000 加入的,得出名目標示 AUTHENTIC 與摘要 PSA AUTHENTIC。這就是確認 CardCopy.details 會儲存並傳回這些用語的檢查。8133
- 修改之前存下、新欄位為空的收藏卡,仍讀作 PSA 10:KiradexTests/CopyTests.swift 中 aRawCopyKeepsItsCentring 既有的摘要預期,不經修改即通過。8114
- 會改變的既有預期。 KiradexTests/ScanSessionTests.swift 中的 aGradedCardCarriesItsLabel,把整張標籤與一張由鑑定公司、等級與證書建立的標籤比對;它的讀數印有 GEM MT 10,所以在這一項之下,標籤還會帶有 gradeWords 為 GEM MT,預期的標籤也要加上它們(草稿跑了這一項,結果確實如此改變)。在 KiradexUITests/KiradexUITests.swift 的 testScanningAGradedCardKeepsItsLabel 中,測試用標籤在 10 旁邊印有 GEM MT。如果讀取器把它們當作等級用語,正如這一項的用意,它的兩項預期就會改變。掃描結果面板的標題(scan-found-details),測試預期它含有 PSA 10,會讀作 PSA GEM MT 10 · Cert 49392218,所以預期的文字變成 PSA GEM MT 10。收藏卡那一列的識別碼是由摘要組成的,會變成 copy-PSA GEM MT 10,所以測試要找的按鈕也變成這個。它預期 scan-found-readings 不存在的那一項不會改變:第 4 項讓已鑑定收藏卡的那一行保持空白。草稿沒有模擬繪製的測試用標籤,因為它的行序取決於相機如何讀取那張圖。777634757814
3. 提供每家鑑定公司的查詢頁面,當作連結,而且只當作連結
修改 Grader.verificationURL(cert:) 與收藏卡編輯器的 Look Up at 按鈕(在 Kiradex/Views/Card/CopyEditor.swift 中,今天只在連結存在時顯示):3234
| 鑑定公司 | 連結 | 按鈕 |
|---|---|---|
| PSA | https://www.psacard.com/cert/<n>,不變:PSA 自己的 CardFacts 頁面所連結的形式 |
Look Up at PSA |
| CGC | https://www.cgccards.com/certlookup/<n>/,不變 |
Look Up at CGC |
| TAG | https://my.taggrading.com/card/<n> |
Look Up at TAG |
| ACE | https://acegrading.com/cert/<n> |
Look Up at ACE |
| SGC | https://www.gosgc.com/cert-code-lookup |
Copy Number, Open SGC Look-Up(先複製代碼) |
| BGS | https://www.beckett.com/grading/card-lookup |
Copy Number, Open Beckett Look-Up |
連結的出處:PSA 自己的 CardFacts 連結、CGC 在索引中的形式、TAG 自己的證書搜尋腳本、ACE 的紀錄頁面、SGC 的查詢頁面,以及 Beckett 存檔的查詢頁面。544841121031
除非手機顯示 PSA 的連結失效,否則保留它。 app 的 PSA 連結是 https://www.psacard.com/cert/<n>,也就是 PSA 自己的 CardFacts 頁面為它連結的每一個證書所使用的形式(231 個連結、201 個編號,沒有一個在編號後面加上 /psa)。325415 /cert/<n>/psa 這個形式只依據沒有存檔的搜尋索引結果。研究筆記記錄兩種形式都以機器人檢查回應腳本,所以兩者都沒有被看到連到紀錄。47 除非手機上的檢查顯示目前的形式失效,否則什麼都不改:在手機的 Safari 中,用收藏者擁有的一個編號打開 https://www.psacard.com/cert/<n>;如果它顯示紀錄,連結就維持原樣;只有在它不顯示、而 /cert/<n>/psa 顯示時,連結才切換。Beckett 的連結在它的查詢於「Phase 1」(第一階段)恢復之前,都會轉址到它的維護頁面。29
app 在瀏覽器中打開鑑定公司的頁面,絕不自行抓取。 研究筆記記錄 PSA、CGC 與 ACE 的查詢前面都有機器人檢查;為 PSA 數量報告存下的檔案是一個登入頁面;SGC 的表單有 reCAPTCHA;而 PSA 的 API 需要一個由收藏者自己的 PSA 登入產生的權杖。4748491055 基於同樣的理由,app 不顯示任何屬於它自己的「已驗證」狀態:它什麼都沒有查過。
檢查:
- 按鈕的動作是一個函式 Grader.lookUp(cert:),它傳回要打開的頁面,以及要複製的文字(如果有的話);按鈕先把那段文字寫進剪貼簿,再打開頁面。那個函式的單元測試,為一個範例編號斷言每家鑑定公司的頁面,包括 02289(ACE,零保留)與 A1234567(TAG);斷言 SGC 與 BGS 的頁面不帶編號,而它們要複製的文字就是原樣的證書(1234567-001、0012345678);並斷言其他四家鑑定公司什麼都不複製。只要註明了編號,無論形狀為何按鈕都會顯示,測試也要斷言這一點:一個屬於別家鑑定公司形狀的編號,例如 SGC 之下的 49392218,仍然得到 SGC 的頁面,並照原樣複製。標記形狀錯誤的編號,是第 4 項的頁尾的工作,不是按鈕的。
- 一個獨立的新 UI 測試 testTheGraderPickerOffersEachGradersLookUp,以與 testScanningAGradedCardKeepsItsLabel 相同的參數啟動(-fixtureCatalog、-scanFixture kira1-2、-scanSlab YES),點選 Scan,像那個測試一樣等待找到卡片(scan-found-name,然後 scan-found-details),接著點選 scan-details,此時測試用標籤的 PSA 標籤已經把 49392218 填進證書欄位(查詢按鈕只在註明了編號時才顯示),把 Grader 選擇器設為 SGC,並斷言存在一個標題為 Copy Number, Open SGC Look-Up 的按鈕;然後設為 BGS,並斷言 Copy Number, Open Beckett Look-Up。它絕不點選 scan-have,所以收藏卡不會被登錄。它不放進 testScanningAGradedCardKeepsItsLabel,理由見第 1 項的鍵盤檢查:選擇器寫入的是掃描結果面板自己的 details,所以那個測試會登錄一張 BGS 收藏卡,而它尋找 copy-PSA GEM MT 10 那一列(第 2 項)就會失敗。這項檢查不會改變任何既有預期。它不點選那個按鈕:點選會透過 openURL 打開頁面,把 app 送到瀏覽器,所以複製了什麼,是在上面的單元測試中斷言的,而不是在 UI 測試中從剪貼簿讀回。767534
- 一項腳本檢查:只要 Kiradex/ 下有任何 Swift 檔案以鑑定公司的主機(psacard.com、beckett.com、cgccards.com、gosgc.com、taggrading.com、acegrading.com)呼叫 URLSession,就判定失敗。
- PSA 的連結維持 https://www.psacard.com/cert/<n>(KiradexTests/ScannerTests.swift 中 aPSALabelGivesGraderGradeAndCertificate 既有的連結斷言,不經修改即通過);改用 /cert/<n>/psa 的修改,只有在修改說明中附上一則註記、寫明手機檢查、檢查日期、目前形式失效且另一種形式顯示了紀錄時,才能發布。58
4. 說明讀到了什麼、沒讀到什麼
每一個新字串都只有一個位置,而且沒有一個重複它所在畫面已經顯示的內容。掃描結果面板的讀數那一行維持今天的樣子,只給未鑑定卡用:ScanResultPanel 的 readings 對任何有鑑定公司的收藏卡都傳回 nil,所以已鑑定收藏卡的字串不放在那裡。每一個字串都來自視圖呼叫的一個函式,就像編輯器的置中頁尾今天來自 CenteringNote.text(for:) 那樣,讓單元測試可以斷言它。75347471
| 情況 | 放在哪裡 | 說什麼 | 理由 |
|---|---|---|---|
| 一張帶編號的已鑑定收藏卡,編號為讀到或輸入的 | 收藏卡編輯器中已鑑定收藏卡的頁尾,接在它今天顯示的那句話之後 | Check the number at PSA before you rely on the label. 掃描結果面板的標題已經顯示等級與編號(PSA MINT 9 OC · Cert 00000000),所以這個字串不重複它們 |
PSA 的保證要經過查詢 |
| 讀到鑑定公司,沒讀到編號 | 掃描結果面板的標題,接在摘要之後、原本編號的位置 | PSA 10 · Cert not read. Type it from the label, or hold the case closer. |
編號是鑰匙 |
| 讀到鑑定公司與編號,既沒讀到等級也沒讀到名目標示 | 掃描結果面板的標題,接在編號之後 | PSA · Cert 00000000 · Grade not read. Pick it as the label prints it. |
連寫的「9OC」今天會掉了等級 |
| 一個已註明的編號,形狀不是該鑑定公司使用的 | 收藏卡編輯器中已鑑定收藏卡的頁尾 | This number doesn't match TAG's certificate format (8 letters and numbers, typically a letter and 7 numbers). Check it against the label. 判斷依據是第 1 項為該鑑定公司定的形狀,所以頁尾只對讀取器也會拒絕的編號顯示:對 TAG 而言,就是 8 個字母與數字、兩者至少各一以外的任何東西 |
TAG 公布的形狀:「typically」(通常)是一個字母加 7 個數字,以及「a mix of numbers and letters」(數字與字母的組合) |
| 尋找標籤的觀看結束後什麼都沒讀到 | 未鑑定收藏卡在掃描結果面板上的讀數那一行,接在置中那一行之後(置中那一行採用置中規格書給它的措辭),時機是尋找標籤的觀看(ScanSession.looksForALabel)都已結束、卻一無所獲時 |
No grading label read. If this card is in a case, add the grader and number by hand. |
今天的 ACE 鑑定盒 |
| 一個已經登錄在另一張卡上的編號 | ScanView 今天為已登錄編號顯示的警告提示訊息,取代它的措辭 |
PSA 00000000 is already on CARD NAME in your collection. |
重複檢查只看一張卡 |
理由的出處:PSA 的保證、實測、TAG 的 TAGD 頁面,以及 app 的重複檢查。1141133
既有的 UI 測試看到什麼。 在測試用標籤上,等級與編號都讀得到,所以這一項不會在它的標題上增加任何內容。在 testScanningAGradedCardKeepsItsLabel 中,對 scan-found-details 的預期只依第 2 項所說的方式改變,而預期 scan-found-readings 不存在的那一項維持原樣。在一張未鑑定卡的 testScanningACardRegistersIt 中,對 scan-found-readings 的兩項預期要求它含有 up to a 10 與 not judged。第一項是置中規格書要改的,不是這份規格書:那份規格書從 app 的字串中刪掉「Allows up to a」與「ceiling」,掃描結果面板那一行也在其中,並以鑑定公司公布的正面數字取而代之,所以這份規格書採用那份措辭作為那一行,預期就變成 front figure,這個詞出現在那份規格書取代「Allows up to a 9」的措辭中(「Inside PSA’s and SGC’s published front figure for a 9」,在 PSA 與 SGC 公布的 9 分正面數字之內),也出現在它為 10 分寫的措辭中(「within PSA’s published 55/45 front figure for a 10」,在 PSA 公布的 10 分 55/45 正面數字之內),那份規格書用它取代「PSA 10 centering」;至於 10 分的措辭就是一張畫在正中央的卡會帶的那一行,這是我的解讀。not judged 的預期保留:那份規格書沒有刪掉它。無論那一行的措辭是什麼,這一項的句子都接在它之後,而且不會為已鑑定收藏卡的面板增加任何內容。69 第 1 項與第 3 項新的 UI 檢查不會改變上述任何一項,因為每一個都是自己獨立的測試方法,而且從不登錄收藏卡;這份規格書在 testScanningAGradedCardKeepsItsLabel 中加入的唯一一項檢查,也就是第 6 項的,只讀取一個欄位,不輸入任何東西。7675
讓「verified」、「authentic」、「genuine」與「certified」不出現在 app 自己的話語中,除了它從標籤上引用的名目標示之外:app 讀的是文字,不是查過紀錄。也讓任何關於價值的內容不出現在其中。
檢查:
- 單元測試從合成讀數或收藏卡 details 建立每一種情況,並斷言放置它的函式所傳回的字串。
- 一項腳本檢查:在 Kiradex/ 下任何 Swift 字串常值中,只要出現完整單字「verified」或「authentic」,不分大小寫,就判定失敗,只有一個指名的例外:Kiradex/Scanner/SlabLabel.swift 中讀取器自己的名目標示清單,第 2 項把 AUTHENTIC、ALTERED AUTHENTIC、AUTHENTIC ALTERED 與 AUTHENTIC ART 放在那裡。這項檢查只讀字串常值,不讀程式碼:單純的逐行搜尋會被 Kiradex/Services/PatronStore.swift 中 StoreKit 的 .verified case 絆倒,那是程式碼,不是文案。82 摘要顯示的名目標示來自儲存的欄位,不是來自常值,而選擇器中的 Authentic 項目(第 5 項)放在內附資料中,不在 Swift 裡。依 2026年10月5日對工作目錄(commit 於 5a344e3f)的搜尋,今天 Kiradex/ 下沒有任何 Swift 字串常值含有這兩個字之一。10月15日的工作目錄加入了常值 "Professional Sports Authenticator",也就是 PSA 的全名,完整單字比對會放行它,子字串比對則不會;對那個工作目錄做完整單字搜尋,兩個字都找不到。80
- isRegistered 增加一個變體,在每一個 CardCopy 中搜尋該鑑定公司與編號;一項測試在一張卡上登錄 PSA 00000000,並預期在另一張卡加入同一個編號時出現警告。33
5. 提供每家鑑定公司實際給出的等級
收藏卡編輯器的等級選擇器(CopyEditor.swift 中的 Grade 選擇器,今天對每一家鑑定公司都提供 CopyEditor.grades,從 10 到 1、以半級為單位)改從鑑定公司取得它的清單:34
- **PSA:**10、9、8.5 到 2,然後是 1.5 與 1,沒有 9.5,外加 Authentic 與 Altered Authentic,也就是第 2 項讀作名目標示的兩種結果。16
- **BGS:**1 到 10 的半級,10 名為 Pristine,9.5 名為 Gem Mint,照 Beckett 量表的命名;黑標不是等級,不列入清單。89
- **CGC:**它二十個標準卡等級,Pristine 10 與 Gem Mint 10 分開;名目標示 AU、AA 與 ART;以及舊制對照表的等級,CGC Trading Cards 與 CSG 的 Gem Mint 9.5(CGC 算作 Gem Mint 10)與 Perfect 10(「Retired grade; retains Perfect 10 status」,已退役的等級;保留 Perfect 10 的地位),每一個都標為舊制,讓較舊的標籤能照印出的樣子輸入,舊制的 9.5 也絕不會被硬塞進 Mint+ 9.5 或 Gem Mint 10。4
- **SGC:**它量表上的等級,10 PRI 與 10 GM 分開。6
- **TAG:**半級但沒有 9.5,Pristine 10 與 Gem Mint 10 分開。7
- **ACE:**1 到 10 的整數等級。42
把這些清單作為內附資料保存,附上來源網址與閱讀日期,就像置中規格書保存它的容許值那樣,讓量表一旦改變,只需修改一筆資料並加上一項測試。69
*檢查:*一項測試載入資料並斷言:PSA 沒有 9.5,並有它的兩種名目標示;ACE 沒有半級;CGC、SGC 與 TAG 各有一個 Pristine 10 與一個 Gem Mint 10,作為不同的項目(CGC 還有它兩個舊制的 Perfect 10,CGC Trading Cards 的與 CSG 的);CGC 有 AU、AA 與 ART,它的舊制項目都標為舊制;而每一份清單都有一個 source 與一個 read 日期。
6. 照印出的樣子保留 PSA 的系列文字
比對器暫時不改。每當讀到一張 PSA 標籤,就把標籤上的系列文字逐字記錄在收藏卡既有的 notes 欄位中(CopyDetails.notes 與 CardCopy.notes),以便日後能從真實標籤建立一份從 PSA 系列名稱對應到索引系列的對照表。不要從第三方清單建立那份對照表。50533346
哪一行是系列文字。 讀數中第一個以四位數年份、一個空格與一個字母開頭的行(^\d{4} [A-Z])。在測試用標籤上,那是 2026 KIRA BASE,它繪製的六行中的第一行;測試用標籤的證書 49392218 也以四位數字開頭,但後面不是空格,所以不算數。在 app 測試輸入的 PSA 標籤上,那是 1999 POKEMON GAME。沒有這樣一行的標籤,什麼都不記錄。785877
它如何到達收藏卡。 SlabLabel 把那一行帶作 setText,僅限 PSA;CopyDetails.init(label:) 把它寫進 notes;而 merged(with:) 在較晚的觀看沒有它時保留第一次觀看的,就像第 2 項為用語所做的那樣。不新增任何儲存欄位。CopyEditor 中的 Notes 欄位今天沒有無障礙識別碼;這項修改給它 copy-notes,供下面的檢查使用。由於 aGradedCardCarriesItsLabel 比對整張標籤,而它的讀數以 1999 POKEMON GAME 開頭,它預期的標籤除了第 2 項的用語之外,還要加上那個 setText。Python 草稿沒有模擬這一項。3372347714
這條規則在每一張 PSA 標籤上都會觸發,不只在比對不確定時,這樣下面的檢查就不取決於測試用標籤的比對有多確定。依我對 CardIndex.match(_:) 的解讀,當依編號讀到的卡中恰好只有一張也讀到了名稱時,比對就是確定的,而測試用卡片的名稱與完整收藏編號都畫在卡上,所以會確定比對成功;一條只限於不確定比對的規則,在它身上永遠不會觸發。這個解讀沒有執行驗證。5378
*檢查:*以 -scanSlab YES 掃描測試用標籤,會把 2026 KIRA BASE 放進掃描到的收藏卡的 notes;UI 測試 testScanningAGradedCardKeepsItsLabel 在它已經打開 details(scan-details)並檢查證書欄位的那個時間點,也斷言 copy-notes 欄位保存著 2026 KIRA BASE。它只讀取欄位,不輸入任何東西,也不點選其他任何東西,所以那個測試接著登錄的收藏卡,就是掃描器讀到的那一張,而它之後尋找那一列時所依據的摘要,並不包括 notes。767834
不在本規格書之內
- 從 app 內部抓取任何鑑定公司的紀錄。機器人檢查、一個登入頁面、一個 reCAPTCHA 與帳戶權杖,擋在 PSA、CGC 與 SGC 的查詢前面,而 Beckett 的已經離線;ACE 的兩筆紀錄正常回應,TAG 的紀錄則沒有嘗試,而這份規格書對這兩家鑑定公司一視同仁,都當作連結。474810552912
- 判斷一個鑑定盒或一張標籤是不是真的。app 能說出它讀到了什麼,並把收藏者送到鑑定公司那裡。
Grader中六家以外的鑑定公司;沒有為它們讀過任何頁面。- app 中的價格或數量計數。用 CGC 的話來說,數量報告計算的是鑑定盒,不是卡片,而且「not an indicator of value or rarity」(並非價值或稀有度的指標)。60
- 鑑定公司的標誌、標籤顏色或鑑定盒圖片,無論在 app 中,還是在它顯示的任何東西中。
重點整理
如果您是收藏者
- 每一個鑑定盒都要到製作它的鑑定公司,用證書編號查詢。PSA 為它的意見負責,「as reflected on each PSA label」(一如每張 PSA 標籤所載);依我的解讀,查詢是買家確認這份意見仍然有效的方式,而 PSA 的保證要求索賠者購買該卡時,這個編號在 PSA 的查詢上是有效的。12
- 讀那些字,而不只讀數字。PSA 的 OC、ST、PD、OF、MK 與 MC 會改變數字所說的內容;AUTHENTIC 可能是一張改造過的卡;CGC 的 9.5 若不是舊制的 Gem Mint(如今是 10 分),就是現制的 Mint+(低於 10 分);CGC、SGC 與 TAG 把 Pristine 10 與 Gem Mint 10 分開評定;而在 Beckett,唯一的 10 分是 Pristine、Gem Mint 是 9.5,黑標標示四項分項分數皆為 10 的 Pristine 10。161456789
- 輸入完整的編號。SGC 的綠標與白標要輸入全部十一個字元,連字號也算在內,而 TAG 的編號帶有一個字母。1011
- 只檢查鑑定公司公布的東西:PSA 的 LightHouse 標誌、遇溶劑即消失的油墨與 UV 圖樣;CGC 的微縮印刷、UV 油墨與全像箔;TAG 的 Proof Mark 加上它的 app;ACE 掃描標籤後開啟的網址。對 Beckett 與 SGC 而言,查詢就是檢查。242511282627
- 把數量報告當作鑑定盒的計數來讀,不是卡片的計數,也不是價值的計數。5660
如果您在開發這個 app
- 先找出鑑定公司,再依那家鑑定公司的形狀讀取編號,並讓證書欄位接受字母與連字號;今天的讀取器在十六張依公開格式製作的合成標籤中完整讀出 3 張,而它單一的「7 to 10 digits」(7 到 10 位數字)規則會截短 SGC 與 TAG 的編號,而且由於 ACE 自己的紀錄比較短,凡是編號像那些紀錄的 ACE 鑑定盒,它全部都會漏認。14153234
- 錯誤的證書比缺少的證書更糟:證書一律以字串保存,零與連字號都保留,並標記形狀不是該鑑定公司使用的編號。141011
- 把等級用語、限定標記與名目標示存在數字旁邊;一家鑑定公司、一個數字與一個證書,分不出 Pristine 10 與 Gem Mint 10,也分不出 PSA 的 9 與它的 9 OC。3314
- 連結到每家鑑定公司自己的查詢頁面,絕不自行抓取:機器人檢查、一個登入頁面、一個 reCAPTCHA 與帳戶權杖,擋在 PSA、CGC 與 SGC 的查詢前面,而 Beckett 的已經離線。4748105529
- 標籤變更的日期只依鑑定公司自己的公告:本文自己的計畫把 PSA 的 LightHouse 標籤定在 2023 年,而 PSA 的文章把它的日期定在 2017年6月14日;2023 年的改版是 CGC 的。1923
常見問題
如何驗證 PSA、CGC 或 Beckett 的鑑定盒?
到製作那個鑑定盒的鑑定公司,查詢它的證書編號。PSA 的查詢位於 psacard.com/cert,它的 app 可以掃描標籤上的條碼;CGC 的位於 cgccards.com/certlookup,它標籤上的 QR code 會在 CGC 的網站上查詢那張卡;Beckett 的卡片查詢是一張可選 BGS、BVG 或 BCCG 的表單,撰寫本文時處於離線狀態,預定在 Beckett 恢復的第一階段回來。PSA 的保證取決於索賠者購買該卡時,這個編號在它的查詢上是有效的,並排除遭竄改或偽造的鑑定盒與標籤,「regardless of certification status」(不論認證狀態為何)。38242531291
PSA 標籤上的 OC 是什麼意思?
置中偏移(off center)。PSA 的標準說,置中偏移的卡「will either by designated “OC” or will have a numerical grade that reflects the minimum centering allowed for the grade」(要嘛標上「OC」,要嘛給出一個反映該等級所容許最低置中的數字等級),它詞彙表的例子是一張除了置中之外都符合 Mint 9 標準的卡,「would be designated Mint 9oc」(會標為 Mint 9oc)。PSA 另外定義了五個:ST(污漬)、PD(印刷瑕疵)與 OF(失焦),適用同一條二擇一的規則;以及 MK(記號)與 MC(裁切錯誤),適用於帶有書寫或非典型裁切的「Any and all cards」(凡是這類的卡)。163
鑑定卡標籤上的「Authentic」是什麼意思?
在 PSA,「AUTHENTIC」的意思是「PSA is only certifying that the item is genuine, without a numerical grade」(PSA 只證明該物品是真品,不給數字等級);用 PSA 的總結來說,該物品「is real but nothing more」(是真的,但僅此而已)。PSA 列出一張卡可能得到它的原因:改造、「a major defect」(重大瑕疵),或送件者的要求。它針對尺寸不足的卡(N6)與原廠裁切錯誤(N8)的無等級代碼也可能導致這個結果,另外五個,針對修邊、修復、重新上色、紙材改造與清潔的代碼,則可能導致「Authentic Altered」;每一種情況都只在鑑定師斟酌、且送件者在送件單上提出要求時才成立。PSA 的保證說,標為「Authentic」的物品「must be viewed as potentially interchangeable with “Authentic Altered,”」(必須視為可能與「Authentic Altered」互通),因為 PSA「does not always print the term “Altered” on the label itself」(並不總是把「Altered」一詞印在標籤上);它的標準頁面就那份保證而言,稱僅標「Authentic」的標示與 Authentic Altered「interchangeable」(互通),沒有「potentially」(可能)一詞。在 CGC,「Authentic AU」用於真品且未經改造、但無法得到數字等級的卡,而 Authentic Altered 會印在等級欄中。在 ACE,依它的量表,改造過的卡根本不會被封裝:它「will be returned raw」(會以未封裝狀態退回)。161442
CGC 的 9.5 和 CGC 的 10 一樣嗎?
取決於它旁邊的字。來自 CGC Trading Cards 或 CSG 的舊制「Gem Mint 9.5」,在 CGC 更新後的量表下「exactly equivalent to Gem Mint 10」(完全等同於 Gem Mint 10),而 CGC 的查詢、數量報告與登錄都把它算作 10 分。現制的「Mint+ 9.5」則是比 Gem Mint 10 低一級的等級。2354
PSA 什麼時候改過它的標籤?
PSA 自己的文章標出六次變更的日期:2008年2月12日(等級數字移到等級用語下方)、2013年11月12日(內襯背面的全像圖,搭配新的鑑定盒)、2017年6月14日(LightHouse 標籤,帶遇溶劑即消失的油墨、UV 標誌圖樣與 QR code)、2019年1月1日(PSA/DNA 的封裝也改用紅標)、2024年5月14日(新的鑑定盒,從運動卡開始)與 2024年6月19日(僅認證簽名物品的藍標)。我找不到任何日期為 2023 年的 PSA 標籤改版。171819202122
TAG、SGC 或 ACE 的證書編號有幾位?
SGC:「For black labels, enter all 7 digits. For green and white labels, enter all 11 characters (XXXXXXX-XXX).」(黑標請輸入全部 7 位數字。綠標與白標請輸入全部 11 個字元。)TAG:「typically 1 Letter followed by 7 Numbers」(通常是 1 個字母加 7 個數字),而它的說明中心說它的編號「are a mix of numbers and letters which are generated randomly」(是隨機產生的數字與字母組合)。本文讀到的 ACE 頁面沒有一頁給出格式;它自己的紀錄是六位數與五位數,第二筆前面補零。1011651213
為什麼 Beckett 的證書查詢停擺了?
Beckett 的狀態頁日期為 2026年10月2日,上面說它「detected suspicious technical activity and, out of caution, took our platforms offline」(偵測到可疑的技術活動,出於謹慎,已讓平台離線),並說「Core certification, grade records, and historical population databases remain intact and uncompromised」(核心認證、等級紀錄與歷史數量資料庫仍然完整,未遭入侵);查詢功能在它恢復的第一階段。存檔副本顯示,網站在 2026年9月19日已經離線,而它的查詢在 8月19日仍在運作。293031
本站相關文章:卡片置中如何評定,又該如何自己測量 是談同樣六家鑑定公司的姊妹篇,說明它們公布的置中容許值,以及 Kiradex 中測量它們的量規;寶可夢卡牌的稀有度與系列符號:英文版與日文版 解讀卡片自己的底線,也就是標籤上的系列與編號所摘要的那一部分;為 iPhone Duo 準備您的 App 是介紹 Kiradex 的那篇逐步說明;而 iPhone 上的像素藝術世界、像素藝術人物:iPhone 上的角色與角色創建器 與 像素藝術建築:iPhone 上的房屋、廳堂與室內 介紹的是 Kiradex World,也就是收藏所在的像素小鎮。
參考資料
-
Collectors Holdings(PSA),「PSA Guarantee」(財務保證),https://www.psacard.com/financialguarantee,2026年10月5日抓取,並以
psa-guarantee.txt存於作者為本文建立的證據資料夾。開頭段落載有 PSA 的「assurance that we stand behind our opinions as to the authenticity and/or grade of each item we encapsulate, as reflected on each PSA label」(保證我們為封裝的每件物品在真偽及/或等級上所持的意見負責,一如每張 PSA 標籤所載);並載有「active certification number on the cert lookup feature」(證書查詢功能上的有效證書編號)這項條件、對遭竄改或偽造之鑑定盒與標籤的排除「regardless of certification status」(不論認證狀態為何)、「unscrupulous people」(不肖人士)那一段、「mechanical errors」(機械性錯誤)條款(標籤日期「does not match the date printed on the Item」,與物品上印的日期不符;「specification, set, variation, or parallel」,規格、系列、變體或平行版本的標示錯誤),以及「Authentic」與「Authentic Altered」那一段(保證「does not differentiate between」,不區分兩者,而標為「Authentic」的物品「must be viewed as potentially interchangeable with “Authentic Altered”」,必須視為可能與「Authentic Altered」互通)。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
本文讀到的六家鑑定公司查詢頁面:PSA,https://www.psacard.com/cert(本文存下的 23 個 PSA 頁面中有 22 個連到它,只有數量報告檔案沒有;由
r1_psa_cert_links.py計數);Beckett,https://www.beckett.com/grading/card-lookup(Wayback Machine 2026年8月19日的存檔副本);CGC,https://www.cgccards.com/certlookup/;SGC,https://www.gosgc.com/cert-code-lookup(2026年10月5日算繪);TAG,https://taggrading.com/pages/cert-search;ACE,https://acegrading.com/cert/。每一個都在下文以它自己的頁面引用。 ↩↩↩ -
Collectors Holdings(PSA),「Collecting Lingo」詞彙表,https://www.psacard.com/Resources/Lingo,2026年10月5日抓取(
psa-lingo-20261005.txt;與置中那篇文章使用的 10月4日副本完全相同)。載有 OC 條目及其例子「would be designated Mint 9oc」(會標為 Mint 9oc),以及 Certification Number 條目「PSA gives every graded card a certification number. It can be found on the PSA label」(PSA 給每一張鑑定過的卡一個證書編號,可以在 PSA 標籤上找到),該條目沒有說在哪一面。 ↩↩↩↩↩↩↩↩↩↩ -
CGC Cards,「Grading Scale」,https://www.cgccards.com/card-grading/grading-scale/,2026年10月5日抓取(
cgc-grading-scale-20261005.txt;與 10月4日副本完全相同)。載有 Pristine 10 標籤那一段(「flawless under 10-times magnification」,在 10 倍放大下毫無瑕疵)與等級文字(「virtually flawless card to the naked eye」,肉眼看來幾乎毫無瑕疵的卡)、含 Mint+ 9.5 的二十個標準卡等級、名目標示 Authentic AU、Authentic Altered AA 與 Authentic ART,以及 Legacy Grade Key(舊制等級對照表)。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
CGC Cards 說明中心,「CGC Cards Merger」FAQ,https://www.cgccards.com/about/help-center-faqs/about-cgc-cards/cgc-cards-merger/,2026年10月5日抓取(
cgc-faq-merger.txt)。第 210 行載有「the original CGC Trading Cards and CSG labels are no longer being offered」(原本的 CGC Trading Cards 與 CSG 標籤已不再提供),以及這類卡「must be reholdered with the CGC Cards label」(必須換成 CGC Cards 標籤的鑑定盒);並載有「they will be considered Gem Mint 10s in Verify CGC Cards Certification, the CGC Cards Population Report and the CGC Cards Registry」(它們在 CGC Cards 證書驗證、CGC Cards 數量報告與 CGC Cards 登錄中都會被視為 Gem Mint 10)。 ↩↩↩↩↩↩↩↩↩↩ -
SGC,「Grading Scale」,https://gosgc.com/card-grading/scale,二十個頁籤全部由置中那篇文章的
render_sgc_tabs.py點開並存下(sgc-grade-tabs.txt,2026年10月5日 05:22 UTC 算繪);算繪後的頁面與 10月5日的第二次算繪(sgc-scale-20261005.rendered.txt)比對,沒有改變。載有等級名稱「10 PRI」(Pristine)、「10 GM」(品質「GEM」)、9.5 MINT+、8.5 NM/MT+、品質為 NM/MT 的 8、7 NRMT 等等。 ↩↩↩↩↩↩↩↩↩↩↩ -
TAG Grading,「Grading Scale」,https://taggrading.com/pages/scale,2026年10月5日抓取(
tag-scale-20261005.txt;與 10月4日副本完全相同),並參照評分表的分數區間(tag-rubric-extracted.txt,取自 https://taggrading.com/pages/rubric,2026年10月4日)。載有 Pristine 10 為 990 到 1000、Gem Mint 10 為 950 到 989,以及「Half points are included on every grade level except for between 9 and 10.」(除了 9 與 10 之間,每個等級都有半級。) ↩↩↩↩↩↩↩↩↩ -
Beckett Grading Services,「Grading Scale」,https://www.beckett.com/grading/scale,取自 Wayback Machine 2026年5月3日的存檔副本 https://web.archive.org/web/20260503161916/https://www.beckett.com/grading/scale,由置中那篇文章存下(
bgs-grading-scale-wayback-20260503.txt)。載有「Pristine 10」與「Gem Mint 9.5」為最高的兩個等級,沒有其他 10 分,一路到「Poor 1」。 ↩↩↩↩↩↩↩↩↩↩↩ -
Beckett,「Introducing BGS Black」(日期為 2014年11月28日的新聞文章),https://www.beckett.com/news/introducing-bgs-black/,取自 Wayback Machine 2022年8月16日的存檔副本 https://web.archive.org/web/20220816001507/https://www.beckett.com/news/introducing-bgs-black/(
bgs-news-introducing-black-wayback-20220816.txt)。載有「the elusive BGS Pristine 10」(難以取得的 BGS Pristine 10)、四項 10 分的黑標、「for modern cards only」(僅適用於現代卡),以及「not valid for any BVG cards (1980 and older)」(不適用於任何 BVG 卡,即 1980 年及更早的卡)。它的留言串在存下文字的第 451 行有一則署名「Mike」、日期為 2014年11月29日的留言:「BGS 9.5’s and 10’s will always be Gold」(BGS 的 9.5 與 10 永遠是金標),除非一張 10 分卡有四項 10 分的分項分數,那則留言稱之為黑標。頁面沒有說明留言者的身分;同一個名字在第 405 行與第 423 行署名了留言,前者回答 BGS 重新換標的問題,後者稱讚 BGS。沒有任何存下的 Beckett 頁面提到銀標。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
SGC,「Cert Code Lookup」,https://www.gosgc.com/cert-code-lookup,2026年10月5日 14:14 UTC 以無頭 Chromium 算繪(
sgc-cert-lookup.rendered.txt與.html;HTML 中帶有 reCAPTCHA 小工具,表單沒有使用)。載有「For black labels, enter all 7 digits. For green and white labels, enter all 11 characters (XXXXXXX-XXX).」(黑標請輸入全部 7 位數字。綠標與白標請輸入全部 11 個字元。)頁尾:「SGC, LLC」。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
TAG Grading,「TAGD」頁面(標題為「YOUR CARDS ARE TAG’D」),https://taggrading.com/pages/tagd,2026年10月5日抓取(
tag-tagd.txt)。載有「locate the card’s CERT# (left of the QR code)」(找到卡片的 CERT#,在 QR code 的左邊)、「The CERT# format is typically 1 Letter followed by 7 Numbers」(CERT# 的格式通常是 1 個字母加 7 個數字),以及 Proof Mark 的步驟,包括「Every Proof Mark is confirmed & scanned before leaving the TAG facility.」(每一個 Proof Mark 在離開 TAG 廠區之前都經過確認與掃描。) ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
ACE Grading,證書紀錄 #242548,https://acegrading.com/cert/242548,2026年10月5日抓取,回應正常(
ace-cert-242548.txt)。載有紀錄欄位「Label」、「Name」、「Release Year」、「Set」、「Number」、「Language」與「Variant」,等級「MINT 9」、四項分項分數,以及依標籤種類(Standard、Colour Match、Ace)列出的數量。紀錄上的卡名在此不予轉載。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
ACE Grading,證書紀錄 #02289,https://acegrading.com/cert/02289,2026年10月5日抓取,回應正常(
ace-cert-02289.txt)。載有一個五位數、前面補零的編號、等級「GEM MINT 10」、四項分項分數,以及宣傳卡用來取代「Variant」的「Additional Information」。 ↩↩↩↩↩↩↩↩ -
實測:
measure_slab_parser.py,輸出measure_slab_parser.out.txt,存於作者為本文建立的證據資料夾。這是SlabLabel.init?(reading:)與Grader.verificationURL(cert:)的逐行 Python 副本(Kiradex 儲存庫的Kiradex/Scanner/SlabLabel.swift,第 54 到 102 行與第 41 到 49 行;本註提到的每一行 Kiradex 程式碼,都在 2026年10月5日 16:53 與 17:15 PDT 重新讀過,當時 HEAD 位於 commitcf3beb1e,並在 17:28 與 17:29 PDT 再讀一次,HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f,每一行都沒有改變,而那天工作目錄正在修改中),先以 app 的測試檢查:KiradexTests/ScannerTests.swift(第 243 到 277 行)與KiradexTests/ScanSessionTests.swift(第 196 到 201 行)合計讀取標籤八次,而 TAG TEAM 讀數兩個檔案都有(ScannerTests 第 276 行,ScanSessionTests 第 199 行),所以腳本執行七個不同的讀數,全部通過。不在那項檢查之內的:ScannerTests 第 250 行斷言的查詢網址,以及aGradedCardCarriesItsLabel(ScanSessionTests 第 192 行)的標籤預期,它比對經由掃描器讀出的整張標籤;輸出的第 4d 區段在規格書的規則下執行了那一項。腳本接著執行十六張依每家鑑定公司公布的證書格式與等級措辭製作的合成標籤,使用「CARD NAME」與「SET NAME」佔位文字。它的執行紀錄:2026年10月5日,研究的第一次執行;為草稿重跑一次,與存下的輸出完全相同(以cmp檢查);以及若干次重跑:對 ACE 預期只比對鑑定公司,因為ScanSessionTests.swift第 200 行只斷言?.grader == .ace;給兩張 SGC 標籤用 SGC 自己的等級名稱(10 GM、NM/MT 8);加入第 4 區段,也就是規格書第 1 項與第 2 項的 Python 草稿,與第 1 到 3 區段分開,附它的摘要規則與檢查;為兩項關於整張標籤或摘要的既有預期加入第 4d 區段;並寫出鑑定公司未列出之兩字母代碼的規則。2026年10月15日,重跑檢查了規格書後來的規則:連寫代碼與1ST EDITION那一行,包括相機連在一起讀的行;以格式錯誤的尾段、另一種破折類符號或空格讀出,或被傳回成兩行的 SGC 代碼;從六家鑑定公司存下的量表頁面讀取、且只在那些量表使用之處才算數的等級用語;以及合併連續觀看的第 4e 區段。腳本及其輸出的每一個較早版本都保存在旁邊,而自加入第 4 區段起的每一次執行,都從一份暫存副本重跑,輸出逐位元組相同。在草稿之下:16 張標籤中 16 張正確,規格書全部 39 張檢查用標籤都如它所說,15 個摘要字串中 15 個,10 組連續觀看中 10 組照規格書所說合併,移植檢查的 7 項預期中 6 項成立(第七項是第 200 行的那項變更),而在第 4d 區段,第 192 行的預期改變,CopyTests.swift第 175 行則成立。今天的讀取器對十六張標籤傳回的結果,在每一次執行中都相同。Swift 沒有執行;輸入是打字的文字,不是相機讀數;標籤版面沒有公布,所以行序是假設的。K4X93B27是 TAG「a mix of numbers and letters」(數字與字母的組合)的一個自行編造的例子。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
作者的算術:
arith.py,輸出arith.out.txt,存放在本文草稿旁邊,2026年10月5日執行,2026年10月15日重跑。它從磁碟上的檔案推導出本文的每一個計數與比例,讀取器那次執行用同一個明示的分母(十六張合成標籤):3 張完整(18.75%)、9 張的鑑定公司、證書與等級正確(56.25%)、其中 6 張掉了一個會改變意義的字、7 張錯誤(43.75%:1 張掉了等級、2 個證書被截短、4 個鑑定盒漏認,25%),以及照輸出所列的逐家結果;它也斷言輸出自己的摘要行與此一致。從存下的頁面,它計算了 PSA 的六個限定標記與九個無等級代碼、PSA 的十二個等級描述詞、CGC 的二十個標準卡等級、TAG 的七個撤銷原因(tag-decertified.html中的清單項目),以及十對沒有改變的頁面;並計算了有日期之事件間的間隔(Beckett 8月19日與 9月19日兩份存檔之間 31 天;從 9月19日到 10月2日的公告 13 天)。它也依每個代碼文字的內容為 PSA 的九個無等級代碼分類(5 個可封裝為「Authentic Altered」、2 個可封裝為「Authentic」、1 個絕不可以、1 個除非判定被推翻否則不可以),從實測輸出的第 4 區段重新讀取規格書規則的計數(4a 與 4d 分開;39 張檢查用標籤,第 1 項 16 張、第 2 項 23 張;15 個摘要字串;4e 中 10 組連續觀看檢查),並只計算第 1 區段中的移植檢查。最後一次執行於 2026年10月15日;它的輸出在雜湊種子 0、1 與 7 之下完全相同。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Collectors Holdings(PSA),「PSA Grading Standards」,https://www.psacard.com/gradingstandards。等級清單是一個輪播元件;它的文字存放在頁面載入的一個訊息套件中,由置中那篇文章於 2026年10月4日存下(
psa-grade-messages-1.json,一個由 psacard.com 提供的 Next.js chunk),再由extract_psa_messages.py把限定標記、無等級、「Authentic」與半級的文字印到psa-qualifiers-extracted.txt(2026年10月5日重跑兩次,每一次的 SHA-256 都與任何重跑之前存下的副本逐位元組相同)。等級描述詞(GEM-MT 到 PR,以及 PR-FR)是套件中的descriptor值。10月5日抓取的一般頁面(psa-gradingstandards-20261005.txt,與 10月4日相比沒有改變)載有同樣九個無等級代碼 N1 到 N9,以及同樣的封裝條款。載有 AUTHENTIC(N0)條目及其原因、「real but nothing more」(是真的,但僅此而已),以及就 PSA Financial Grade Guarantee 而言,僅標「Authentic」的標示「is to be considered interchangeable with “Authentic Altered”」(應視為與「Authentic Altered」互通)這句話(套件中的authentic.description1與description2);帶「space permitting」(視空間許可)的 ALTERED AUTHENTIC(AA)條目;標題「If your card is returned without a numeric grade in a card saver sleeve」(如果您的卡裝在 card saver 卡套裡、沒有數字等級就退回);以及逐一代碼的「can qualify for encapsulation as “Authentic Altered”」(可符合以「Authentic Altered」封裝的資格,N1、N2、N3、N5、N7)、「as “Authentic”」(以「Authentic」,N6、N8)、「would never qualify」(絕不符合,N4),以及帶「could be reversed upon resubmittal」(重新送件時可能被推翻)的「does not qualify」(不符合,N9)。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
PSA,「UPDATE: New PSA Labels」,2008年2月12日,https://www.psacard.com/articles/articleview/5242/update-new-psa-labels,2026年10月5日抓取(
psa-article-5242-new-labels.txt)。載有這次變更的半級理由、「the same general information」(相同的基本資訊),以及等級數字「directly below the description of the grade (NM-MT) on the right side of the label」(直接位於標籤右側等級描述(NM-MT)的正下方)。 ↩↩↩↩↩↩↩↩↩ -
PSA,「PSA Introduces Safety and Security Improvements to Its Holders」,2013年11月12日,https://www.psacard.com/Articles/ArticleView/7946/psa-introduces-safety-security-improvements-its-holders,2026年10月5日抓取(
psa-article-7946-holder-security.txt)。載有上蓋「envelops the bottom」(包覆底座)的鑑定盒,以及內襯標籤以「reflective hologram」(反光全像圖)取代「the simple, silver foil stamp」(簡單的銀色燙箔)。 ↩↩↩↩↩ -
PSA,「PSA Labels Get New Look, New Technology」,2017年6月14日,https://www.psacard.com/articles/articleview/9234/psa-labels-get-new-look-technology,2026年10月5日抓取(存為
psa-label-2023-article.txt,這個檔名早於日期查核;文章自己的日期是 2017年6月14日)。載有保留的紅色邊框、「fugitive ink」(遇溶劑即消失的油墨)、正面全像圖升級為 Lighthouse 技術(「Gone are the days of standard holograms」,標準全像圖的時代已經過去)、UV 標誌圖樣、背面的 QR code、遇溶劑即消失油墨的說明,以及「other covert security features」(其他隱藏的防偽特徵)。 ↩↩↩↩↩↩↩↩↩ -
Terry Melia,PSA,「PSA News Update: PSA Moves to Red Labels Across the Board」,2019年2月15日,https://www.psacard.com/articles/articleview/9801/psa-news-update-moves-red-labels-across-board,2026年10月5日抓取(
psa-red-labels.txt)。載有在「20 years of using blue labels」(使用藍標 20 年)之後、自 2019年1月1日起生效的變更、「generic description of the item (i.e., TRADING CARD)」(物品的通用描述,例如 TRADING CARD),以及「trading card」的判斷法。 ↩↩↩↩↩↩↩↩↩ -
PSA,「Meet The New Standard」,2024年5月14日,https://www.psacard.com/articles/articleview/11060/meet-the-new-standard,2026年10月5日抓取(
psa-article-11060-new-holder.txt)。載有「Starting with sports card submissions this May with plans for a wider rollout」(從今年 5 月的運動卡送件開始,並計畫擴大推行,第 61 行)、新的聚合物、「20% heavier」(重 20%)與「no Mylar, no sleeve」(沒有 Mylar 膜,沒有卡套);文章沒有描述標籤的變更。 ↩↩↩↩↩↩ -
PSA,「New Blue PSA Label for Autograph-Only Authentication」,2024年6月5日,https://www.psacard.com/articles/articleview/11062/new-blue-psa-label-for-autograph-only-authentication,2026年10月5日抓取(
psa-article-11062-blue-label.txt)。載有「Beginning June 19」(自 6月19日起)以及紅標與藍標的定義。 ↩↩↩↩↩↩↩↩↩↩↩ -
Certified Collectibles Group,「CGC Trading Cards and CSG Will Combine to Become the World’s Second-largest Card Grading Service」,2023年6月20日,https://www.cgccomics.com/news/article/11754/cgc-cards-merger/(存下頁面的標準網址在 cgcgrading.com 上),2026年10月5日抓取(
cgc-merger-2023.txt)。載有「In July」(7 月)、「sleek new label」(流線型新標籤)、標籤提供的內容、Pristine 10 金標、Gem Mint 9.5「exactly equivalent to Gem Mint 10」(完全等同於 Gem Mint 10)、Perfect 10 與分項分數的終止,以及換盒方案,依此「any cards with a grade of Gem Mint 9.5 will receive the CGC Cards Gem Mint 10 grade」(任何等級為 Gem Mint 9.5 的卡都會得到 CGC Cards Gem Mint 10 的等級,第 75 行)。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Collectors Holdings(PSA),「PSA Security」,https://www.psacard.com/security,2026年10月5日抓取(
psa-security.txt)。載有 LightHouse 標籤正反面的特徵、「In 2017, PSA enhanced the security features found on the label used inside the PSA holder」(2017 年,PSA 強化了 PSA 鑑定盒內所用標籤上的防偽特徵),以及連到 psacard.com/cert 的連結。 ↩↩↩↩↩↩↩↩↩↩↩↩ -
CGC Cards,「Holder and Label」,https://www.cgccards.com/card-grading/holder-label/,2026年10月5日抓取(
cgc-holder-label.txt)。載有「microprinting, UV ink, holographic foil and a unique certification number and barcode」(微縮印刷、UV 油墨、全像箔,以及獨一無二的證書編號與條碼)、「resists impacts and tampering」(耐撞擊、防竄改)的「ultrasonically-welded」(超音波焊接)盒子,以及標籤背面的 QR code;它沒有說證書編號在哪一面。 ↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Beckett Grading Services,「Grading FAQ」,https://www.beckett.com/grading/faq,取自 Wayback Machine 2025年3月26日的存檔副本 https://web.archive.org/web/20250326181354/https://www.beckett.com/grading/faq,由置中那篇文章存下(
bgs-faq-wayback-20250326.txt)。載有標籤的描述、「the 4 sub grades on the front label of the card holder」(卡盒正面標籤上的 4 項分項分數)、打字錯誤的申訴規則、一句話的防偽說明,以及數量報告那一段。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
2026年10月5日算繪、為了標籤欄位與防偽特徵而閱讀、但一無所獲的 SGC 頁面:鑑定量表(
sgc-scale-20261005.rendered.txt)、TCG 服務(sgc-tcg-services.rendered.txt)、卡片鑑定(sgc-card-grading.rendered.txt)、app 頁面(sgc-app.rendered.txt)、收藏者支援(sgc-collector-support.rendered.txt)與數量報告(sgc-pop-report.rendered.txt)。 ↩↩↩↩↩ -
ACE Grading,「Authentication」,https://acegrading.com/auth,2026年10月5日抓取(
ace-auth.txt)。載有「Please check the URL in your browser」(請檢查瀏覽器裡的網址)、「https://acegrading.com」與「When scanning our authentication labels」(掃描我們的認證標籤時)。它列出掃描標籤後應開啟的網址;沒有說標籤上印有那個網址。 ↩↩↩↩↩↩↩↩↩ -
Beckett,「Tech Updates」,日期為 October 2nd, 2026,https://maintenance.beckett.com/techupdates,2026年10月5日抓取(
bgs-techupdates-20261005.txt;與 10月4日副本相比沒有改變)。載有「suspicious technical activity」(可疑的技術活動)那一句、「The extended downtime」(延長的停擺)、完整的認證與數量紀錄,以及三個階段,第一階段為「Customer Accounts, Online Submission Center, Certificate Look-up and Pop Reports」(客戶帳戶、線上送件中心、證書查詢與數量報告)。 ↩↩↩↩↩↩↩↩↩↩↩↩ -
Beckett 維護頁面,https://maintenance.beckett.com/,取自 Wayback Machine 2026年9月19日的存檔副本 https://web.archive.org/web/20260919125301/https://maintenance.beckett.com/,在存檔網站對第一個抓取工具設下頻率限制之後以 curl 抓取,再由
html2txt.py轉換(bgs-maintenance-wayback-20260919.txt)。載有「Beckett’s digital platforms, including Beckett.com and the Beckett mobile app, remain temporarily offline while we complete infrastructure enhancements」(Beckett 的數位平台,包括 Beckett.com 與 Beckett 行動 app,在我們完成基礎設施強化期間仍暫時離線),以及在「Which grading services are currently available?」(目前提供哪些鑑定服務?)之下的「Base (with subgrades), Standard, and Express are currently available through the temporary submission form」(Base(含分項分數)、Standard 與 Express 目前可透過臨時送件表單使用),附「Availability may change」(服務可能變動)。它沒有說 Standard 與 Express 的標籤是否帶有分項分數。 ↩↩↩↩↩↩↩ -
Beckett,「Beckett Graded Card Lookup - BGS | BVG | BCCG」,https://www.beckett.com/grading/card-lookup,取自 Wayback Machine 2026年8月19日的存檔副本 https://web.archive.org/web/20260819092524/https://www.beckett.com/grading/card-lookup(
bgs-card-lookup-wayback-20260819.txt與.html,其表單欄位為item_type與item_id)。載有「Verify the validity of Beckett certificates by entering the cert number」(輸入證書編號以驗證 Beckett 證書的有效性)、BGS、BVG 與 BCCG 的選項,以及邀請賣家從拍賣廣告連結的那段話。 ↩↩↩↩↩↩↩↩↩↩↩ -
Kiradex,
Kiradex/Scanner/SlabLabel.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 4 到 21 行(六家鑑定公司及其名稱)、第 23 到 33 行(標記詞)、第 35 到 39 行(isAlsoCardText,對整個 TAG 與整個 ACE 為 true,附其註解)、第 41 到 49 行(verificationURL(cert:),只有 PSA 與 CGC)、第 54 到 102 行(SlabLabel與init?(reading:))、第 60 到 61 行(等級用語)、第 73 行(文字在字母、數字或句點以外的任何地方切開,然後折疊)、第 75 到 79 行(證書樣式)、第 81 到 84 行(第一個有標記詞的鑑定公司勝出,而 TAG 或 ACE 只在certNumber != nil時)、第 87 到 101 行(等級;第 95 行是它的樣式,不接受數字後面的字母、數字、句點或斜線,第 101 行是最高的帶用語數字,相等時保留第一個;第 54 到 102 行於 2026年10月15日依 commit5a344e3f的內容,從儲存庫的物件中重新讀取,沒有執行任何 git 指令)。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Kiradex,
Kiradex/Models/CardCopy.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 64 行(CopyDetails.notes)、第 69 到 73 行(CopyDetails.init(label:),複製鑑定公司、等級與證書)、第 75 到 86 行(CopyDetails的成員初始化器)、第 91 到 106 行(CopyDetails.summary,「PSA 10」;第 95 行組出鑑定公司的名稱與數字,或只有名稱)、第 110 到 113 行(gradeText)、第 133 到 138 行(graderRaw、grade「1 to 10 in halves; 0 when there is none」(1 到 10,以半級為單位;沒有時為 0)、certNumber與notes)、第 153 到 175 行(CardCopy.details:getter 在第 154 到 164 行,透過成員初始化器從儲存的欄位建立一個CopyDetails,setter 在第 165 到 174 行,把它們寫回去)、第 189 到 194 行(isRegistered,只看一張卡的收藏卡紀錄)。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Kiradex,
Kiradex/Views/Card/CopyEditor.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 9 行(@Binding var details)、第 16 到 17 行(grades,10 到 1,以半級為單位)、第 41 到 45 行(Grader選擇器,綁定details.grader)、第 46 到 51 行(Grade選擇器與「Not noted」)、第 52 到 54 行(證書欄位,第 53 行為.keyboardType(.numberPad),第 54 行為識別碼copy-certificate)、第 55 到 59 行(「Look Up at」按鈕,只在註明了編號且連結存在時顯示,呼叫openURL)、第 70 到 74 行(頁尾,已鑑定收藏卡的那句話在第 73 行)、第 86 到 87 行(Notes 欄位,沒有無障礙識別碼)、第 117 到 122 行(CenteringNote.text(for:),置中頁尾的文字)、第 124 到 195 行(CopiesSection)、第 156 與 166 行(每一張收藏卡那一列顯示copy.details.summary,識別碼是copy-加上那個摘要)、第 158 到 161 行(那一列的「Cert」與編號)。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Collectors Holdings(PSA),「FAQ」,https://www.psacard.com/support/faq,2026年10月5日抓取(
psa-faq.txt)。載有防拆的定義與「Since 1991」(自 1991 年起)、為卡片拍攝影像並上傳「to its online Certification Verification site」(到它的線上證書驗證網站)、免費更正標籤、app 以文字搜尋「the unique number found on your PSA-graded label」(您的 PSA 鑑定標籤上那個獨一無二的編號)、PSA/DNA 帶有「a unique, six-digit, alphanumeric certification number」(一個獨一無二的六位英數字證書編號)的簽名貼紙(第 223 行),以及「No Grade」條目:因 N1 到 N5 或 N7 被退件的物品「will be returned not encapsulated」(會以未封裝的狀態退回),而 N6、N8 或 N9 的物品「will not be charged grading」(不收鑑定費)。 ↩↩↩↩↩↩↩↩↩↩ -
CGC Trading Cards,「CGC Trading Cards Holder」,2020年7月13日,https://www.cgccards.com/news/article/8436/cgc-trading-cards-holder/(標準網址在 cgcgrading.com 上),2026年10月5日抓取(
cgc-tc-holder-2020.txt)。載有「If requested」(如有要求)提供的分項分數、「On the back of the label, a unique certification number identifies a card」(在標籤背面,一個獨一無二的證書編號標識一張卡;這是存下的 CGC 頁面中唯一說明編號在哪一面的),以及通往「CGCcards.com/verify」的 QR code。 ↩↩↩↩↩↩↩↩↩↩↩ -
TAG Grading 說明中心,「What Are The Steps of TAG’s Grading Process?」,https://help.taggrading.com/en/articles/10091666-what-are-the-steps-of-tag-s-grading-process,2026年10月5日抓取(
tag-help-process.txt)。在購買與送件那一步載有「Unique ID numbers are assigned to both the cards and the order in this step」(這一步會為卡片與訂單分配獨一無二的 ID 編號;它沒有說這個 ID 就是證書編號);「UV-cured text inside the slab」(鑑定盒內以 UV 固化的文字)及其 QR code;以及產生「overall scores for the card on a 1-10 and 1000-point TAG Score scale」(卡片在 1 到 10 與 1000 分 TAG Score 量表上的總分)的影像處理階段。 ↩↩↩↩ -
Collectors Holdings(PSA),公告頁面,https://www.psacard.com/communication,2026年10月5日抓取(
psa-communication.txt)。載有鑑定流程的步驟(訂單 ID 貼紙、查證、印出 LightHouse 標籤、超音波封裝),以及一則沒有日期的條目,說證書驗證頁面與 PSA app「allow customers to scan the barcode on their item and verify its authenticity」(讓顧客掃描物品上的條碼並驗證其真偽)。 ↩↩↩↩↩ -
TAG Grading,「Decertified」,https://taggrading.com/pages/decertified,2026年10月5日抓取(
tag-decertified.txt與.html)。載有「This TAG Certification number is no longer active.」(這個 TAG 證書編號已不再有效。)以及一份七個原因的清單。本文的研究筆記數成六個;存下頁面的清單有七項,「Ownership disputed or flagged as stolen」(所有權有爭議或被標記為失竊)也在其中,本文以頁面為準。 ↩↩↩ -
ACE Grading,首頁,https://acegrading.com/,2026年10月5日抓取(
ace-home.txt)。載有 Standard、Colour Match 與 Ace 標籤、「Ace Labels are hand drawn exquisite addons for cards, which enhance the overall appearance of a collectible」(Ace 標籤是為卡片手繪的精緻附加物,能提升收藏品的整體外觀),以及選單項目「Lookup an Ace Grading graded collectible by certification number」(以證書編號查詢 Ace Grading 鑑定過的收藏品)。 ↩↩↩↩ -
TAG Grading,「Cert Search」,https://taggrading.com/pages/cert-search,2026年10月5日抓取(
tag-cert-search.txt與.html)。載有「Enter any card’s 8 digit CERT #」(輸入任一張卡的 8 位 CERT #),以及頁面自己的腳本中的const TAG = "https://my.taggrading.com/card/";。沒有抓取任何紀錄。 ↩↩↩↩↩↩↩↩ -
ACE Grading,「Grading Scale」,https://acegrading.com/grading-scale,2026年10月4日由置中那篇文章抓取(
ace-grading-scale.txt),10月5日再次抓取(ace-grading-scale-20261005.txt,沒有改變)。載有從「10 - GEM MINT」到「1 - POOR」的整數等級;限定標記 MC 與 OC,Off-Center 修飾標記「appending OC to the grade」(在等級後面加上 OC),以及「can not fit in the Ace slab」(放不進 Ace 鑑定盒)的裁切錯誤卡會被「sent back raw」(以未封裝狀態退回);還有 Altered、Counterfeit 與 Questionable Authenticity 三種結果,每一種都「will not be encapsulated and will be returned raw」(不會被封裝,並會以未封裝狀態退回)。 ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
2026年10月5日找不到或無法取得的項目,取自本文的研究筆記:PSA 標籤的欄位清單(欄位是從 PSA 的保證、2008 年的文章與一個 CardFacts 標題推斷的);PSA 的系列命名規則;PSA 卡片標籤的證書格式(PSA 的 FAQ 只為 PSA/DNA 的簽名貼紙給了格式),以及 Beckett、CGC 或 ACE 的證書格式;Beckett 的證書長度、黑色以外的標籤顏色(除了它黑標文章下的一則 2014 年留言之外),以及目前的版面;SGC 的標籤欄位與防偽特徵;ACE 網址檢查以外的標籤防偽;任何日期為 2023 年的 PSA 標籤變更;以及 2008年2月12日之前任何 PSA 標籤的日期。 ↩↩↩
-
圖:由
make_figures.py(搭配svgkit.py)繪製,這些繪圖腳本存放在本文草稿旁邊,2026年10月5日。欄位示意圖在繪製之前,會用存下的鑑定公司頁面中逐字的片段核對每一個欄位的出處,缺一個就停止;讀取器網格與證書形狀網格是從measure_slab_parser.out.txt解析出來的;時間軸用鑑定公司頁面中逐字的片段核對每一個日期,它的註記把 PSA 2019年1月1日的變更標為在 2019年2月15日的文章中報導,也就是那篇文章所帶的日期,而不是當作公告日期。沒有使用任何標誌、標籤圖樣、鑑定盒照片、卡片圖片或真實卡名;每一張標籤都是通用的方框與佔位文字。 ↩↩↩↩↩↩ -
本文的研究筆記,2026年10月5日彙整:當天(UTC)抓取的每一個頁面,都存成 HTML 與文字,若頁面是以腳本產生文字(SGC),則以無頭 Chromium 算繪;置中那篇文章存下的頁面沿用它們 10月4日的日期;引用之前,從每個頁面的頁尾或法律文字查核發布者身分(PSA「© 2026 Collectors Holdings, Inc.」;CGC「Certified Guaranty Company, LLC」與「CGC is part of the Certified Collectibles Group」;SGC「SGC, LLC」;TAG「Technical Authentication & Grading, LLC」;ACE「Ace Grading ® Ltd」,在英格蘭及威爾斯註冊);以及抓取當時記錄的每一個請求的 HTTP 狀態,包括 10月5日 beckett.com 的鑑定頁面轉址(302)到 maintenance.beckett.com(置中那篇文章在 10月4日以
bgs-live-maintenance.txt存下了同樣的轉址)。 ↩↩↩↩ -
只是線索,本文沒有任何事實以它們為依據:搜尋傳回的、名稱類似鑑定公司的收藏者工具與賣家網站(其中包括 cardgrade.io、pregradecards.com、figoca.com、blacklabelgrading.com、banktcg.com 與 allvintagecards.com)、對 Beckett 金標與銀標的第三方描述(https://allvintagecards.com/beckett-card-grading-guide/)、對 SGC 鑑定盒與標籤的第三方描述(https://hobbycardindex.com/guides/sgc-grading-guide/),以及一位收藏者為 PSA「label styles」(標籤樣式)所做的編號(https://www.banktcg.com/tools/psa-label-museum),全部於 2026年10月5日看到。 ↩↩↩↩↩
-
PSA 的證書與數量頁面,2026年10月5日請求:https://www.psacard.com/cert、https://www.psacard.com/cert/92176757/psa(搜尋結果中看到的那種形式的網址,標題為「Cert Verification」加上該處的編號)與 https://www.psacard.com/pop,依研究筆記的記錄,都以 HTTP 403 與一個 Cloudflare 挑戰頁面回應;沒有做任何事去繞過它,那些頁面沒有讀到。資料夾裡沒有保存任何一個挑戰回應的副本。存在數量報告名下的那一個檔案
psa-pop.html(21,219 位元組),既不是報告,也不是挑戰頁面:依它自己的內容,它是 PSA 的登入頁面。它的路由器狀態帶有路由signin?b=psa&r=,後面接著經過兩次 URL 編碼的 https://www.psacard.com/pop;它載入頁面腳本app/(auth)/signin/page-3fb4febd59cd3148.js與一個SignInLayout;它沒有標題,也沒有任何可見文字;它是唯一一個沒有連到 /cert 的存下 PSA 頁面。把r參數解讀為登入後要返回的網址,是作者的解讀。從資料夾無法判斷筆記記錄的那一刻,/pop 是回應了 403 還是轉址到登入頁;無論哪一種,報告都沒有讀到。 ↩↩↩↩↩↩↩↩↩↩↩ -
CGC Cards 的查詢,2026年10月5日請求:https://www.cgccards.com/certlookup/ 與 https://www.cgccards.com/certlookup/3732635008/(搜尋索引中看到的那種形式的網址,標題為「Verify Trading Card Certification」),依研究筆記的記錄,都以 HTTP 403 與 Cloudflare 挑戰回應;沒有讀到。十位數的例子與網址形狀來自一個搜尋索引標題。 ↩↩↩↩↩↩↩↩↩↩
-
ACE Grading 的查詢索引與數量報告,2026年10月5日請求:https://acegrading.com/cert 與 https://acegrading.com/pop,依研究筆記的記錄,都以 HTTP 403 與 Cloudflare 挑戰回應;沒有讀到。兩個紀錄頁面正常回應並已存下。 ↩↩↩↩↩
-
PSA CardFacts,「1999 Nintendo Pokemon Game」第 74 號卡(1st Edition)的頁面,https://www.psacard.com/cardfacts/non-sports-cards/1999-nintendo-pokemon-game/item-finder-1st-edition-74/605468,2026年10月5日抓取(
psa-cardfacts-item-finder.txt)。載有系列標題「1999 Nintendo Pokemon Game」,以及一個全大寫、以「1999 POKEMON GAME 74」開頭、接著卡名與 1ST EDITION 的標題(頁面沒有稱它為標籤文字),還有一張成交紀錄表,其 Cert 欄把每個鑑定盒的編號連結為/cert/<n>(由r1_psa_cert_links.py計數;沒有使用頁面上的任何價格或成交資料)。 ↩↩↩↩↩↩↩↩↩↩↩ -
PSA CardFacts,「2011 Nintendo Pokemon Japanese Black & White Psycho Drive」,https://www.psacard.com/cardfacts/non-sports-cards/2011-nintendo-pokemon-japanese-black-white-psycho-drive/32712,2026年10月5日抓取(
psa-cardfacts-jp-psycho-drive.txt)。 ↩↩↩ -
PSA 價格指南,「2020 Pokémon Japanese S Promo」,https://www.psacard.com/priceguide/non-sports-tcg-card-values/2020-poke-mon-japanese-s-promo/3370,2026年10月5日抓取(
psa-priceguide-jp-s-promo.txt)。只為了系列名稱而閱讀;沒有使用其中的任何價格。 ↩↩↩ -
Kiradex,
Kiradex/Scanner/CardIndex.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 291 到 297 行(fold,只保留字母與數字,所以句點會被去掉)、第 394 行(match(_:))、第 415 到 432 行(其中,當依編號讀到的卡中恰好只有一張也讀到了名稱時,比對即為確定)、第 559 到 595 行(系列依它的標記、依它的英文名稱「as a grading label gives it」(如鑑定標籤所給的那樣),或日文型錄依它的日文名稱,以及依印出的最晚年份加分)、第 625 到 629 行(鬆散編號,「a grading label’s “#4”」,鑑定標籤上的「#4」)、第 677 到 681 行(#編號樣式)。 ↩↩↩↩↩↩↩↩↩ -
實測:
r1_psa_cert_links.py,輸出r1_psa_cert_links.out.txt,存於作者為本文建立的證據資料夾,2026年10月5日執行,並由arith.py(第 9 區段)重新推導。它讀取每一個存下的 PSA 頁面(psa-*.html,23 個檔案),計算連到 psacard.com/cert路徑的連結。CardFacts 單品頁面(psa-cardfacts-item-finder.html)有 231 個/cert/<n>形式的連結,涵蓋 201 個不同的編號,全部八位數,沒有一個是/cert/<n>/psa形式;23 個頁面中有 22 個連到查詢頁面本身,而psa-pop.html什麼都沒有連結。這是存下頁面上的連結計數,不是 PSA 公布的證書格式。沒有抓取任何頁面,也沒有使用 CardFacts 頁面上的任何價格或成交資料。 ↩↩↩↩↩↩↩↩ -
Collectors Holdings(PSA),「PSA Public API Documentation」,https://www.psacard.com/publicapi/documentation,2026年10月5日抓取(
psa-publicapi-docs.txt)。載有只限單一證書的搜尋、以登入為基礎的存取權杖、範例編號00000000,以及對「non-numeric or too few characters」(非數字或字元過少)的「Invalid CertNo」回應。 ↩↩↩↩↩↩ -
Joe Orlando,「Market Report: Population Perspective」,PSA,存下的副本上沒有日期,https://www.psacard.com/articles/articleview/3631/market-report-population-perspective,2026年10月5日抓取(
psa-article-3631-pop.txt)。載有數量報告計算什麼、不計算什麼。 ↩↩↩↩ -
Beckett,維護網站,https://maintenance.beckett.com/,2026年10月4日在 beckett.com 的鑑定頁面轉址到它時所提供的版本,由置中那篇文章存下(
bgs-live-maintenance.txt,標題為「Express Submissions Remain Open」,Express 送件仍然開放)。在「Which grading services are currently available?」(目前提供哪些鑑定服務?,第 33 行)之下載有「Express is currently available through the temporary submission form」(Express 目前可透過臨時送件表單使用,第 35 行),在「Why are Base and Standard temporarily unavailable?」(為什麼 Base 與 Standard 暫時無法使用?,第 38 行)之下載有「Base and Standard card grading submissions are temporarily paused」(Base 與 Standard 的卡片鑑定送件暫停,第 40 行)。它沒有說 Express 的標籤是否帶有分項分數。 ↩↩ -
Kiradex,
KiradexTests/ScannerTests.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 241 到 285 行(第 243 行的aPSALabelGivesGraderGradeAndCertificate,它的讀數在第 245 行以「1999 POKEMON GAME」開頭,在「GEM MT」之前有「1ST EDITION」,然後是「#4」(2026年10月15日依 commit5a344e3f的內容,從儲存庫的物件中重新讀取,沒有執行任何 git 指令),查詢網址在第 250 行斷言;Beckett 與 CGC 的標籤測試;未鑑定卡的測試,TAG TEAM 在第 276 行;以及 PSA 標籤的鬆散編號,附「The name, the number and the year together put Base Set first.」(名稱、編號與年份合起來,把 Base Set 排在第一位。))。本文沒有執行。 ↩↩↩↩↩↩↩↩ -
Certified Collectibles Group,「Guarantee」,https://www.cgcgrading.com/legal/guarantee/,2026年10月5日抓取(
cgc-guarantee.txt)。載有收藏品「has not been overgraded」(沒有被評高)的條款及其例外「Grade is NOT guaranteed for cards encapsulated with CGC’s green Qualified Grade Label」(以 CGC 綠色 Qualified Grade Label 封裝的卡,其等級不受保證),以及其他除外事項,簽名的等級也在其中。 ↩↩↩↩ -
CGC Cards,「Population Report」,https://www.cgccards.com/population-report/,2026年10月5日抓取(
cgc-pop.txt)。載有「by game, era and set」(依遊戲、時代與系列)的編排,以及免責聲明「not an indicator of value or rarity」(並非價值或稀有度的指標)。 ↩↩↩↩↩ -
CGC Cards 說明中心,「CGC Cards Pop Report」FAQ,https://www.cgccards.com/about/help-center-faqs/cgc-cards-website/cgc-cards-pop-report/,2026年10月5日抓取(
cgc-faq-pop.txt)。載有從驗證工具到數量報告的路徑。 ↩ -
SGC,「SGC Grading App」,https://gosgc.com/sgc-grading-app,2026年10月5日 14:15 UTC 算繪(
sgc-app.rendered.txt)。載有證書驗證功能及其「high-resolution images」(高解析度影像)。 ↩↩ -
SGC,「Pop Report」,https://gosgc.com/pop-report,2026年10月5日 14:15 UTC 算繪(
sgc-pop-report.rendered.txt)。載有「With over 28 years of data included in the SGC Pop Report, inconsistencies may be present.」(SGC 數量報告收錄了超過 28 年的資料,可能存在不一致之處。) ↩↩↩ -
TAG Grading,首頁,https://taggrading.com/,2026年10月5日抓取(
tag-home.txt)。載有「Say goodbye to distracting paper flips」(告別礙眼的紙標籤)、「permanently inscribed directly inside the slab」(直接永久刻印在鑑定盒內)的等級、「Slabs graded with DIG Report Plus receive a precise 1000 pt TAG Score」(以 DIG Report Plus 鑑定的鑑定盒會得到精確的 1000 分 TAG Score)、「scores on a precise 1000 point scale & translates into an industry standard 1-10 Grade」(以精確的 1000 分量表評分,並換算為業界標準的 1 到 10 等級)的鑑定系統,以及在 DIG Reports 之下的「Standard DIGs focus on the core defects that impacted the grade, aka the “DINGS.” DIG Plus Reports breakdown the card into further detail with precise 3 digit scoring.」(標準 DIG 著重於影響等級的核心瑕疵,也就是所謂的「DINGS」。DIG Plus 報告則以精確的 3 位數評分,把卡片拆解得更詳細。) ↩↩↩↩↩↩ -
TAG Grading 說明中心,「Are sequential TAG Grading certification numbers available?」,https://help.taggrading.com/en/articles/10566747-are-sequential-tag-grading-certification-numbers-available,2026年10月5日抓取(
tag-help-sequential.txt)。載有「All TAG Grading certification numbers are a mix of numbers and letters which are generated randomly.」(所有 TAG Grading 的證書編號都是隨機產生的數字與字母組合。) ↩↩↩↩↩↩ -
TAG Grading,「DIG」頁面,https://taggrading.com/pages/dig,2026年10月5日抓取(
tag-dig-20261005.txt;與 10月4日副本完全相同)。載有名次「is only available to cards which have been graded via the TAG S service as a 3 digit score is needed」(只提供給經由 TAG S 服務鑑定的卡,因為需要 3 位數的分數)。 ↩↩ -
TAG Grading 數量報告,https://my.taggrading.com/pop-report/Pok%C3%A9mon,2026年10月5日存下的 taggrading.com 頁面連到它(例如
tag-cert-search.html);沒有抓取。 ↩ -
實測:
measure_page_drift.py,輸出measure_page_drift.out.txt,存於作者為本文建立的證據資料夾;2026年10月5日執行,並為草稿重跑一次,輸出完全相同。它以非空白的文字行,比對 10月4日存下的十個鑑定公司頁面與 10月5日存下的副本:PSA 的鑑定標準(一般抓取)與詞彙表、CGC 的鑑定量表與「other grading topics」(其他鑑定主題)FAQ、TAG 的評分表、量表與 DIG 頁面、ACE 的鑑定量表、SGC 算繪後的量表,以及 Beckett 的狀態頁;十個全部「unchanged」(未變更)。PSA 各等級的套件沒有重新算繪,置中那篇文章存下的其他頁面(其中包括 PSA 的置中指南、CGC 的 FAQ 與 TAG 的詞彙表)也沒有比對。 ↩↩↩↩↩ -
Blake Crosley,「How Card Centering Is Judged, and How to Measure It」,blakecrosley.com,2026年10月5日,https://blakecrosley.com/blog/how-card-centering-is-judged,2026年10月5日閱讀。它的 FAQ 把 Beckett 的停擺從 10月2日的公告算起(「Beckett’s site has been offline since a notice dated October 2, 2026」,Beckett 的網站自一則日期為 2026年10月2日的公告起就處於離線狀態),它的 TAG 一節說 TAG「scores out of 1,000」(以 1,000 分評分),而它的規格書把鑑定公司的容許值作為內附資料保存,附上出處與閱讀日期。它的規格書也從掃描結果面板中刪掉「Allows up to a」與「ceiling」,改為對 9 分說「Inside PSA’s and SGC’s published front figure for a 9」(在 PSA 與 SGC 公布的 9 分正面數字之內),對 10 分說「within PSA’s published 55/45 front figure for a 10」(在 PSA 公布的 10 分 55/45 正面數字之內),並加上一項檢查,它「searches the app’s Swift sources for the same four phrases in string literals」(在 app 的 Swift 原始碼的字串常值中搜尋同樣四個詞組;已發布檔案的第 495、498 與 505 行,2026年10月15日再次閱讀)。它引用的 TAG 頁面是評分表、量表與 DIG 頁面。本文沒有修改它。 ↩↩↩↩↩↩
-
Kiradex,
Kiradex/Scanner/CardReader.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 10 到 15 行(每個型錄的辨識語言),以及第 28 到 45 行(VNRecognizeTextRequest、.accurate、辨識語言、關閉語言校正及其註解,以及每一行的文字、高度與位置)。 ↩ -
Kiradex,
Kiradex/Scanner/ScanSession.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 42 到 45 行(looksForALabel = 2與「A label is small print, and often read a look late」,標籤是小字,常常晚一次觀看才讀到),以及第 133 到 136 行(較晚的讀數合併進標籤,在第 135 行)。 ↩↩↩↩ -
Kiradex,
Kiradex/Scanner/Sighting.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 37 行(整個讀數傳給SlabLabel(reading:))、第 100 行(較晚的觀看合併進標籤),以及第 131 到 143 行(merged(with:),第 134 到 142 行,從鑑定公司、等級與證書重建標籤:較晚的等級、較長的證書、只限同一家鑑定公司)。 ↩↩↩↩ -
Kiradex,
docs/cloudkit-schema.ckdb,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 8、12 與 13 行(CD_certNumber、CD_grade、CD_graderRaw)。 ↩↩ -
Kiradex,
Kiradex/Views/Scan/ScanView.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 76 到 83 行(快速模式在looksForALabel次觀看後登錄一張未鑑定卡)、第 286 行(面板的have呼叫register(found.card, details: $0, …))、第 299 到 300 行(重複檢查及其警告提示訊息「is already registered」,已經登錄),以及第 304 行(register以交給它的 details 加入一張收藏卡)。 ↩↩↩↩ -
Kiradex,
Kiradex/Views/Scan/ScanResultPanel.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 24 行(面板自己的details,一個@State)、第 52 到 57 行(沒有標籤時,收藏卡得到狀態與置中)、第 79 到 83 行(scan-have,其動作為第 80 行的have(details))、第 96 到 98 行(details 面板:第 97 行的CopyEditor(card: card, details: $details),所以編輯器編輯的是面板自己的 details)、第 168 到 172 行(以大寫呈現的標題,第 171 行的.textCase(.uppercase),識別碼scan-found-details在第 172 行)、第 174 到 180 行(讀數那一行,識別碼scan-found-readings在第 179 行)、第 196 到 203 行(標題:摘要,然後是「Cert」與編號,在第 200 行)、第 205 到 214 行(readings:對任何有鑑定公司的收藏卡為 nil,在第 207 行,第 209 到 210 行的註解為「a case hides the card’s edges」(盒子會遮住卡片的邊緣);對未鑑定卡則是置中及其所容許的等級)。 ↩↩↩↩↩↩↩↩ -
Kiradex,
KiradexUITests/KiradexUITests.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令);這個檔案當天最後修改於 10:32:第 783 到 820 行(testScanningACardRegistersIt,一張未鑑定卡,它在第 798 到 800 行對scan-found-readings的預期要求它含有「up to a 10」與「not judged」)、第 822 到 858 行(testScanningAGradedCardKeepsItsLabel,註解在第 822 到 823 行;第 825 行以-fixtureCatalog、-scanFixture kira1-2與-scanSlab YES啟動;第 833 行斷言「PSA 10」(不分大小寫),第 834 行斷言「49392218」,第 835 行斷言沒有讀數那一行;在第 839 到 842 行它打開 details(scan-details)並讀取copy-certificate欄位;第 844 行點選Done,第 846 行點選scan-have,登錄這張收藏卡;第 854 行以copy-PSA 10尋找這張收藏卡那一列,第 856 行斷言那一列的標籤含有「49392218」);在這一切之前,第 826 行點選Scan,第 828 到 832 行等待scan-found-name最多 20 秒、scan-found-details最多 10 秒(第 825 到 832 行於 2026年10月15日依 commit5a344e3f的內容,從儲存庫的物件中重新讀取,沒有執行任何 git 指令)。本文沒有執行。 ↩↩↩↩↩↩↩ -
Kiradex,
KiradexTests/ScanSessionTests.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 188 到 201 行(aGradedCardCarriesItsLabel,它的讀數在第 190 行以「1999 POKEMON GAME」開頭,第 192 行的預期比對整張標籤;wordsCardsPrintAreNotGraders,ACE SPEC 在第 198 行,TAG TEAM 在第 199 行,七位數的 ACE 那一行在第 200 行)。本文沒有執行。 ↩↩↩↩↩↩ -
Kiradex,
Kiradex/Scanner/FixtureScan.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 32 到 50 行(繪製的測試用標籤,共六行:一欄中第 35 行的「2026 KIRA BASE」、第 36 行的卡名與第 37 行的「49392218」;另一欄中第 41 到 43 行的「PSA」、「GEM MT」與「10」),以及第 14 行與第 56 到 63 行(卡名與它的編號,以三位數疊在三位數上的方式畫在卡片本身上)。 ↩↩↩↩↩ -
Kiradex,
docs/ROADMAP.md,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令);這個檔案當天在 16:09 修改,17:29 又修改一次,介於最後兩次查核之間,而引用的這幾行在兩次都相同:第 72 到 73 行(「Run it on a phone」(在手機上執行),塑膠後面的鑑定盒也在未經證明的項目之中)。 ↩↩ -
作者對 Kiradex 工作目錄的解讀,2026年10月15日:在 commit
fc9d4876(refs/heads/main,當天太平洋時間 17:45 commit)之上的未 commit 修改,而該 commit 的Kiradex/Scanner/SlabLabel.swift與5a344e3f中的檔案逐位元組相同(兩者都從儲存庫的物件中讀取,沒有執行任何 git 指令)。工作目錄中的SlabLabel.swift與 commit 的檔案不同,在太平洋時間 22:51 複製到作者的證據資料夾,存為SlabLabel.swift.worktree-20261015(8,938 位元組;SHA-25611984a36f2ce8ddcf85e438057965ef4f765c191a927d6db708faf33c26284e5,記錄在它旁邊)。那份副本在第 76 到 81 行帶有各鑑定公司的證書樣式(PSA 為#/\d{7,9}/#,SGC 為#/\d{7}(?:-\d{3})?/#,TAG 為#/[A-Z]\d{7}/#,ACE 為#/\d{4,7}/#),第 109 行為URL(string: "https://acegrading.com/cert/\(cert)"),第 117 行為static func read(code: String) -> (grader: Grader, cert: String)?。閱讀時這些都還沒有 commit。那份副本在第 30 行還帶有字串常值"Professional Sports Authenticator";10月15日太平洋時間 23:58 對工作目錄中Kiradex/下的 Swift 檔案進行搜尋,沒有找到任何以「verified」或「authentic」為完整單字的字串常值,只找到這一個在較長單字中含有「authentic」的常值。本文其他對 Kiradex 的讀取都是針對 commit5a344e3f,並已註明日期。 ↩↩ -
Kiradex,
KiradexTests/CopyTests.swift,2026年10月5日 16:44 到 16:53 PDT 之間閱讀,17:15 PDT 在 HEAD 位於 commitcf3beb1e時重新查核,並在 17:28 與 17:29 PDT、HEAD 分別位於其後的兩個 commit1a2c2e9d與5a344e3f時再次查核,此處引用的每一行都沒有改變(那天工作目錄正在修改中,所以這些行是那次閱讀時的樣子;只讀取,沒有執行任何 git 指令):第 11 到 17 行(emptyContext(),一個記憶體內的ModelContainer),以及第 163 到 176 行(aRawCopyKeepsItsCentring,它的第 175 行預期一張已鑑定收藏卡的摘要是「PSA 10」)。本文沒有執行。 ↩↩ -
Kiradex,
Kiradex/Services/PatronStore.swift,依 commit5a344e3f的內容,2026年10月16日從儲存庫的物件中讀取,沒有執行任何 git 指令:第 31、63 與 73 行比對到 StoreKit 的.verifiedcase(if case .verified(let transaction) = update、guard case .verified(let transaction) = result),那是程式碼,不是字串常值。 ↩