From 479c5dcbb3f2ab2ff82457ac945f265c3662e5ca Mon Sep 17 00:00:00 2001 From: daniel Date: Mon, 23 Feb 2026 00:33:23 +0000 Subject: [PATCH] Populate README.md with knowledge base overview, scope, conventions, and folder structure --- .automate/.improve-state.tsv | 1 + .automate/continuous-improve.log | 9 ++++++ .automate/improve-history.log | 3 ++ .factbase/factbase.db-shm | Bin 0 -> 32768 bytes .factbase/factbase.db-wal | Bin 0 -> 78312 bytes README.md | 52 ++++++++++++++++++++++++++++++ logs/mcp-puppeteer-2026-02-23.log | 2 ++ 7 files changed, 67 insertions(+) create mode 100644 .factbase/factbase.db-shm create mode 100644 .factbase/factbase.db-wal diff --git a/.automate/.improve-state.tsv b/.automate/.improve-state.tsv index 5ff3fe2..a96208c 100644 --- a/.automate/.improve-state.tsv +++ b/.automate/.improve-state.tsv @@ -35,3 +35,4 @@ 70f24f 1771806451 7207df 1771806513 75b7d0 1771806672 +785e2c 1771806758 diff --git a/.automate/continuous-improve.log b/.automate/continuous-improve.log index ca729e5..4e610fe 100644 --- a/.automate/continuous-improve.log +++ b/.automate/continuous-improve.log @@ -5873,3 +5873,12 @@ To https://gitea.home.everyonce.com/daniel/factbase-ancient-history.git [?25h status: UPDATED | Persian Empire (Achaemenid) | changes: Fixed duplicate # heading; added territorial extent (~5.5 million km²) and ~20 satrapies count to Key Facts; added Cambyses II and Artaxerxes I to Notable Rulers; expanded Achievements with Cyrus Cylinder scholarly caveat (modern debate on "human rights" framing), relay rider detail on Royal Road, Persepolis construction date, and standardized coinage (daric/siglos); added Decline note on Seleucid continuity; added Taagepera (1979) as footnote [^3] for territorial extent; all existing review answers preserved +[main 4d56008] improve: Persian Empire (Achaemenid) + 5 files changed, 123 insertions(+) + delete mode 100644 .factbase/factbase.db-shm + delete mode 100644 .factbase/factbase.db-wal +[2026-02-23 00:32:38] ✅ Committed: improve: Persian Empire (Achaemenid) +[2026-02-23 00:32:38] Done (79s) — UPDATED +[2026-02-23 00:32:43] [30/66] Next up... +[2026-02-23 00:32:43] ━━━ [] (78a490) reviews=0 garbage=0 ━━━ +[2026-02-23 00:32:43] 🔍 Enrichment + review pass diff --git a/.automate/improve-history.log b/.automate/improve-history.log index 530a6b5..89b4ec2 100644 --- a/.automate/improve-history.log +++ b/.automate/improve-history.log @@ -109,3 +109,6 @@ [2026-02-23T00:31:12+00:00] 75b7d0 | Troy status: UPDATED | Troy | changes: Applied 24 review answers; fixed duplicate heading; fixed malformed @t[=000 BCE] tag → @t[~3000 BCE..~400 CE]; fixed mangled footnote separator; added proper temporal tags for all layers and UNESCO designation; added Hittite name variants (Wiluša/Taruiša); added Frank Calvert (1863) as first excavator; added Rüstem Aslan to excavator list; added new section on 2025 excavations (sling stones, destruction layer, Legacy for the Future Project) with [^3] citation; added stratigraphy/archaeological layer/destruction layer terms to definitions file; filed bug #101 for apply_review_answers inlining ambiguous answers into bullet text duration: 151s +[2026-02-23T00:32:38+00:00] 785e2c | Persian Empire (Achaemenid) + status: UPDATED | Persian Empire (Achaemenid) | changes: Fixed duplicate # heading; added territorial extent (~5.5 million km²) and ~20 satrapies count to Key Facts; added Cambyses II and Artaxerxes I to Notable Rulers; expanded Achievements with Cyrus Cylinder scholarly caveat (modern debate on "human rights" framing), relay rider detail on Royal Road, Persepolis construction date, and standardized coinage (daric/siglos); added Decline note on Seleucid continuity; added Taagepera (1979) as footnote [^3] for territorial extent; all existing review answers preserved + duration: 79s diff --git a/.factbase/factbase.db-shm b/.factbase/factbase.db-shm new file mode 100644 index 0000000000000000000000000000000000000000..6955ee9f3e6f98cf67060ebfac87e407765b350a GIT binary patch literal 32768 zcmeI*J4ypl6b9fM-*2NfseF_wK}0JnTT8cL?*c5uWCb=_iQr}|EOY^aix3MvH&~?9 zKxUGe@4%mdFmum6-vaJ!y|+`YiAW=*=0-g4=2N=rK0d!b99>*~-G6pI4sKuGj<4I@ z##8H`@8`91<#oUNs`qE#PxMaHkKwj6~pX0&xhqB2ZI-d}h8PP)~uG zdX7E7)awI$009Ek5Ll_k7^WaVfB*pk1WFW`?cF0;;s&%PP@2G8X`MA5 dmca6`7Ovd7alx-5K!5;&nh7k_Y~JF={Q<4qFRuUq literal 0 HcmV?d00001 diff --git a/.factbase/factbase.db-wal b/.factbase/factbase.db-wal new file mode 100644 index 0000000000000000000000000000000000000000..cc2e110c8444a2460a6e8df83b2e6585e7d88c89 GIT binary patch literal 78312 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

E118X+8` zgp_|r?-eLbeu=+?6^6Uw6rI$jLa(X71wg}jy57?`db(o9eohG&1oavzoB+)e;(Zu` zvBi2t=75`~8qrE=dceiF{n`+LjE1>5x4}Jmm5qIRtysUf%01%551uA!JoHQ`kO^o(zUvR6tn7vJIuCyKN2{t&qrXM`&0VeoV@e*XVhaZ=@`9c1j+#3 z^2YP5N)lLK2h=nkE~?A4#pDXi!4PZSkMIVyM+_VF0LHl%{6Sux77*hsNaJ9OVxd|@ z#XjKT|BzbcGK#4~t@`oA;_Qau>7IvVRtbFq?a>1n(-nP8Knv=j|{=B);;s2!~!_RWrTkvc?LK?%VL z+*7V>58Y#W{C`vCQDaNlancf7Ls}36B$M6^X>JL(*A=}39sH05 zv>JVR0k+m#mQOZjARj{jYC|%{@M==6(|#py1|QH&j4rW$T!7V10ouqh0-b|!fE9yh zTC>oNt@h$;N9QN_ZJ6$QK+91H%aM?Zpqw`}M~hr&g6;AWwRMyp8!?6;%Rsbez*mj( zho4TU#g7=VS*n7$l&7Hg!H12MW8j3DZ)(HaX*YD3y=k0V)64~SP?O=yT8uVvKr1zP zoKBkN8stwPxjvGdtqX}n;QyxWh-8wV2|%SH&S8n6}`$=4`v^cAlRKc4@zw<$4af4~5QPnvvXz>>Sz3)zPHXbG<{($Gw<~#Z zyE&2WNLIFWkJnZ=)js8&(iyZ~-TY3O-Nns}bFHhnORK5e@SzPMr#>~n`B&0Nj-jir z^)wXCygPY>EUFR`)35GxUUe)xlB}81ZgZv-u!0EwVy$oL2s;nMZLugNhN7V=cOjZ= zu@hl;7x)3dBBFpLIMHx*IOzW! z19;~GfA{mB{@i+Xb3YvWuVdrkUmT16hyCZV$;e+s|0()6PJi^r;a}K)8vWzgS^M`Q zR_sjlcVfSY{dMfmVn2v|6Wfm6w#%a5bKW?sks15D&Tl)7k&N?Kj%~koejMG8{LnsT zKZ!2e{~5g&?TLJ2-;b6?tw>$0#h$i@BL5!w2m7C$e~J7A7>U-%?>he&c^-KX3p?{M z%l_L>-&iPw7J8u21BD(a^gy8p3O!KhfkF=ydf>BrpvjsJ{qG3JDl6jyej+iSeT@73 z?3xk?j@=jI9DWG!GHL)XW3|?hFXvEt>M-VI)Ug_U{{c0{5To6pGONQp1BxKX zra>-6M;Y}XP6LuJ^D$)E>YmY1^ttqu?$NsG}Z!ePwThy-tp2R{+pSar<(xr88W_M*zWY&cK5YCc{>Z zZxp|st!KM-Fo2~|!MyhN?s)+3m!lRW4j zN^t(V<~MU#sm731~C$kqmHHj`T^i;*%ib%jBBmsak;*>wf#|e4fltJqM975xu=gh46owB_K>T`xk?5% zxt6VD*)W(_uTB-5gEs=)@}-q>F2)OzK`A>NBKX%*$%?_W`R2uoty16ZomkMS#BAL@ zh?Go_ ze)=chQ%^I0^!IXK!1v&o?}2m9IrrJxwh-|%df@k)eDRvfM&(S`|0p>(7xW(sYLNbB zc5O=!OZVn-Up6z;ms%a@UFsc7^<;bdGlS_g{0yuPtYlaEmY3n^KDD?wFx0=C8CdB_ zEoBCm7gL$l{=uc*q5i&}j5iggj6=_(uzn8(HPVz!3LuXW{KL8$iDdG8xWEfg-~~7> zXv_jHfM)#Eh-0h?z+V}_bb%LuNf-*e011u0G*VIE1z21GBS_9LF7N^rcmcqxQ{V*< zG&bPz1zrHgIe&`rLlEVMfc}Ce&p)FB3%mfIL3vZ)1?c*J$_tQArTdeqbTXZuPp5`^ q)5E=k-F>~8bf$l>H`SR+4X08cMac}O`nnOLZ?I<|Wuo~0?SBBon_Aic literal 0 HcmV?d00001 diff --git a/README.md b/README.md index 6c5f4cc..69a9443 100644 --- a/README.md +++ b/README.md @@ -1 +1,53 @@ +# Ancient History Knowledge Base + +## Overview + +A structured knowledge base covering ancient history from the earliest civilizations through the fall of the Western Roman Empire @t[..=0476]. The knowledge base spans roughly 3,000 years of human history across Eurasia, North Africa, and the Mediterranean world. + +## Scope + +This knowledge base documents: + +- **Civilizations** — empires, kingdoms, and city-states (Sumer, Akkad, Egypt, Assyria, Persia, Greece, Rome, Carthage, Maurya, Han China, and more) +- **Rulers** — kings, pharaohs, emperors, and generals (Alexander the Great, Hammurabi, Ramesses II, Augustus, Cyrus the Great, and others) +- **Battles** — major military engagements and their strategic significance (Marathon, Thermopylae, Gaugamela, Cannae, Actium, Adrianople) +- **Cities** — major urban centers and archaeological sites (Rome, Athens, Babylon, Alexandria, Ur, Pompeii, Troy) +- **Treaties** — diplomatic agreements and peace settlements (Treaty of Kadesh, Peace of Nicias, Treaty of Apamea) +- **Religions** — belief systems and their development (Greek religion, Egyptian religion, Zoroastrianism, Mesopotamian religion, early Christianity, Roman religion) +- **Technologies** — engineering and material innovations (bronze-working, iron smelting, Roman concrete, aqueducts, roads) +- **Trade routes** — commercial networks and their cultural impact (Silk Road, Incense Route, Amber Road) +- **Legal codes** — foundational law texts (Code of Hammurabi, Code of Ur-Nammu, Twelve Tables) +- **Writing systems** — scripts and literacy (cuneiform, Phoenician alphabet, Egyptian hieroglyphics) +- **Cultural movements** — intellectual and artistic traditions (Greek philosophy, Hellenism) +- **Definitions** — glossary of terms, acronyms, and conventions used throughout + +## Conventions + +- Dates use BCE/CE notation throughout (not BC/AD) +- Temporal tags use factbase syntax: `@t[=331 BCE]` for exact events, `@t[~2560 BCE]` for approximate dates, `@t[305 BCE..30 BCE]` for ranges +- Approximate dates (common in ancient history) are marked with `~` +- Contested chronologies are noted inline with scholarly variants cited +- Every factual claim cites a source — primary ancient texts or modern archaeological scholarship +- Cross-references link rulers ↔ civilizations ↔ battles ↔ cities where relevant + +## Folder Structure + +| Folder | Document Type | Contents | +|---|---|---| +| `battles/` | battle | Military engagements | +| `cities/` | city | Urban centers and archaeological sites | +| `civilizations/` | civilization | Empires, kingdoms, and cultures | +| `cultural-movements/` | cultural-movement | Intellectual and artistic traditions | +| `definitions/` | definition | Glossary and term definitions | +| `legal-codes/` | legal-code | Law texts and governance documents | +| `religions/` | religion | Belief systems and religious history | +| `rulers/` | person | Individual rulers and leaders | +| `technologies/` | technology | Engineering and material innovations | +| `trade-routes/` | trade-route | Commercial and cultural exchange networks | +| `treaties/` | treaty | Diplomatic agreements | +| `writing-systems/` | writing-system | Scripts and literacy systems | + +## Sources + +Primary sources include Herodotus, Thucydides, Livy, Polybius, Plutarch, Strabo, and cuneiform tablets. Secondary sources draw on peer-reviewed archaeology, university publications, and established encyclopedias such as the Oxford Classical Dictionary and the Cambridge Ancient History series. \ No newline at end of file diff --git a/logs/mcp-puppeteer-2026-02-23.log b/logs/mcp-puppeteer-2026-02-23.log index cccf893..c5c357e 100644 --- a/logs/mcp-puppeteer-2026-02-23.log +++ b/logs/mcp-puppeteer-2026-02-23.log @@ -64,3 +64,5 @@ {"level":"info","message":"Starting MCP server","service":"mcp-puppeteer","timestamp":"2026-02-23 00:31:20.281"} {"level":"info","message":"MCP server started successfully","service":"mcp-puppeteer","timestamp":"2026-02-23 00:31:20.286"} {"level":"info","message":"Puppeteer MCP Server closing","service":"mcp-puppeteer","timestamp":"2026-02-23 00:32:36.001"} +{"level":"info","message":"Starting MCP server","service":"mcp-puppeteer","timestamp":"2026-02-23 00:32:47.226"} +{"level":"info","message":"MCP server started successfully","service":"mcp-puppeteer","timestamp":"2026-02-23 00:32:47.229"}