fix: retain PSL in compact catalogs
This commit is contained in:
parent
3b6966c81a
commit
d7e4964eb6
7 changed files with 16 additions and 5 deletions
|
|
@ -1,5 +1,10 @@
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 0.6.2 - 2026-09-22
|
||||||
|
|
||||||
|
- Retain the PSL normalization fact in compact catalogs and exercise the review
|
||||||
|
queue against the compact runtime rather than only the full writer projection.
|
||||||
|
|
||||||
## 0.6.1 - 2026-09-22
|
## 0.6.1 - 2026-09-22
|
||||||
|
|
||||||
- Accept complete Common Crawl domain-rank releases containing provider rows
|
- Accept complete Common Crawl domain-rank releases containing provider rows
|
||||||
|
|
|
||||||
4
Cargo.lock
generated
4
Cargo.lock
generated
|
|
@ -78,14 +78,14 @@ checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "argand-atomic"
|
name = "argand-atomic"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"tempfile",
|
"tempfile",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "argand-site-registry"
|
name = "argand-site-registry"
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"argand-atomic",
|
"argand-atomic",
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ resolver = "3"
|
||||||
members = ["crates/argand-atomic", "crates/argand-site-registry"]
|
members = ["crates/argand-atomic", "crates/argand-site-registry"]
|
||||||
|
|
||||||
[workspace.package]
|
[workspace.package]
|
||||||
version = "0.6.1"
|
version = "0.6.2"
|
||||||
authors = ["Nic Weyand"]
|
authors = ["Nic Weyand"]
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
license = "AGPL-3.0-or-later"
|
license = "AGPL-3.0-or-later"
|
||||||
|
|
|
||||||
|
|
@ -616,7 +616,8 @@ pub(crate) fn compact_runtime(db: &Connection) -> anyhow::Result<()> {
|
||||||
INSERT OR IGNORE INTO runtime_facts SELECT fact FROM names;
|
INSERT OR IGNORE INTO runtime_facts SELECT fact FROM names;
|
||||||
INSERT OR IGNORE INTO runtime_facts SELECT fact FROM popularity;
|
INSERT OR IGNORE INTO runtime_facts SELECT fact FROM popularity;
|
||||||
INSERT OR IGNORE INTO runtime_facts SELECT fact FROM rejected;
|
INSERT OR IGNORE INTO runtime_facts SELECT fact FROM rejected;
|
||||||
INSERT OR IGNORE INTO runtime_facts SELECT item.value FROM edges,json_each(edges.facts) item;",
|
INSERT OR IGNORE INTO runtime_facts SELECT item.value FROM edges,json_each(edges.facts) item;
|
||||||
|
INSERT OR IGNORE INTO runtime_facts SELECT id FROM facts WHERE predicate='psl';",
|
||||||
)?;
|
)?;
|
||||||
db.execute(
|
db.execute(
|
||||||
"DELETE FROM facts WHERE NOT EXISTS(SELECT 1 FROM runtime_facts r WHERE r.id=facts.id)",
|
"DELETE FROM facts WHERE NOT EXISTS(SELECT 1 FROM runtime_facts r WHERE r.id=facts.id)",
|
||||||
|
|
|
||||||
|
|
@ -267,6 +267,9 @@ fn compact_generation_keeps_runtime_results_and_authenticates_cold_history() ->
|
||||||
serde_json::to_value(full.lookup("Facebook", 20)?.candidates)?,
|
serde_json::to_value(full.lookup("Facebook", 20)?.candidates)?,
|
||||||
serde_json::to_value(compact.lookup("Facebook", 20)?.candidates)?
|
serde_json::to_value(compact.lookup("Facebook", 20)?.candidates)?
|
||||||
);
|
);
|
||||||
|
let compact_queue =
|
||||||
|
argand_site_registry::queue::review_queue(&compact, common::timestamp()?, 100, 1_000)?;
|
||||||
|
assert!(!compact_queue.items.is_empty());
|
||||||
assert!(
|
assert!(
|
||||||
std::fs::metadata(compact_path.join("registry.sqlite"))?.len()
|
std::fs::metadata(compact_path.join("registry.sqlite"))?.len()
|
||||||
< std::fs::metadata(root.path().join("full/registry.sqlite"))?.len()
|
< std::fs::metadata(root.path().join("full/registry.sqlite"))?.len()
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,7 @@ source attribution and application-specific malware/content policy.
|
||||||
|
|
||||||
## Current contracts
|
## Current contracts
|
||||||
|
|
||||||
Code version 0.6.1 uses writer schema 5 and `argand.site-rules/v4`.
|
Code version 0.6.2 uses writer schema 5 and `argand.site-rules/v4`.
|
||||||
New compact `COMPLETE.json` files use `argand.site-registry/v3` and bind:
|
New compact `COMPLETE.json` files use `argand.site-registry/v3` and bind:
|
||||||
|
|
||||||
- authenticated `registry.sqlite` bytes;
|
- authenticated `registry.sqlite` bytes;
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,8 @@ Patch release 0.6.1 additionally replays the real provider-shaped
|
||||||
accounting but is not retained as a DNS target. The following valid
|
accounting but is not retained as a DNS target. The following valid
|
||||||
`com.facebook` row is retained at its original `row:2` coordinate. Schema and
|
`com.facebook` row is retained at its original `row:2` coordinate. Schema and
|
||||||
numeric corruption continue to fail closed.
|
numeric corruption continue to fail closed.
|
||||||
|
The compact-generation lifecycle now also executes the review queue, proving its
|
||||||
|
PSL normalization input remains in the runtime catalog.
|
||||||
|
|
||||||
The evaluation contract was written before implementation. The new Common Crawl
|
The evaluation contract was written before implementation. The new Common Crawl
|
||||||
domain-rank integration passed five default integration tests; its sixth test is
|
domain-rank integration passed five default integration tests; its sixth test is
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue