Files
skill-seekers-reference/docs/UML/html/index.html/contents/ea087b89af05225e59d0a4f985ac8a71.html
yusyus b259ec2c4f docs: re-export all UML diagrams (PNG + HTML)
Fresh export of all 20 diagrams as PNG and full HTML documentation
site after the Grand Unification UML sync.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 22:53:40 +03:00

529 lines
11 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>ChangeDetector</title>
<link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,700,300italic,400italic,700italic|Source+Code+Pro:300,400,700' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="../assets/css/bootstrap.css">
<link rel="stylesheet" href="../assets/css/jquery.bonsai.css">
<link rel="stylesheet" href="../assets/css/main.css">
<link rel="stylesheet" href="../assets/icon-font/icons.css">
<script type="text/javascript" src="../assets/js/jquery-2.1.0.min.js"></script>
<script type="text/javascript" src="../assets/js/bootstrap.js"></script>
<script type="text/javascript" src="../assets/js/jquery.bonsai.js"></script>
<script type="text/javascript" src="../assets/js/imageMapResizer.min.js"></script>
</head>
<body>
<div>
<!-- Name Title -->
<h1>ChangeDetector</h1>
<!-- Type and Stereotype -->
<section style="margin-top: .5em;">
<span class="alert alert-info">
<span class="node-icon staruml-icon icon-UMLClass"></span>
UMLClass
</span>
</section>
<!-- Path -->
<section style="margin-top: 10px">
<span class="label label-info"><a href='cf9c8b720f3815adeccaf3ef6e48c6c4.html'><span class='node-icon staruml-icon icon-Project'></span>Skill Seekers</a></span>
<span>::</span>
<span class="label label-info"><a href='6a4361334e8b649314ed681b9e6798c3.html'><span class='node-icon staruml-icon icon-UMLModel'></span>skill_seekers</a></span>
<span>::</span>
<span class="label label-info"><a href='8d93060f6d7a7c6803e67fc2ec0f4522.html'><span class='node-icon staruml-icon icon-UMLPackage'></span>Sync</a></span>
<span>::</span>
<span class="label label-info"><a href='ea087b89af05225e59d0a4f985ac8a71.html'><span class='node-icon staruml-icon icon-UMLClass'></span>ChangeDetector</a></span>
</section>
<!-- Diagram -->
<!-- Description -->
<section>
<h3>Description</h3>
<div>
<p>Detects changes in documentation pages. Uses multiple strategies: content hashing (SHA-256), Last-Modified headers, ETag headers, and content diffing.</p>
</div>
</section>
<!-- Specification -->
<!-- Directed Relationship -->
<!-- Undirected Relationship -->
<!-- Classifier -->
<!-- Interface -->
<!-- Component -->
<!-- Node -->
<!-- Actor -->
<!-- Use Case -->
<!-- Template Parameters -->
<!-- Literals -->
<!-- Attributes -->
<section>
<h3>Attributes</h3>
<table class="table table-striped table-bordered">
<tr>
<th>Visibility</th>
<th>Name</th>
<th>Type</th>
<th>Description</th>
</tr>
<tr>
<td>public</td>
<td><a href="b99e7554ec614098ff9e08f70a26e1ec.html">timeout</a></td>
<td><span class='label label-info'>none</span> </td>
<td></td>
</tr>
<tr>
<td>private</td>
<td><a href="479340e4434c2b7860404acfd6203ecb.html">test_attr</a></td>
<td>int </td>
<td></td>
</tr>
<tr>
<td>public</td>
<td><a href="5da945fc607e3afee89bcc9824273db6.html">timeout</a></td>
<td>int </td>
<td></td>
</tr>
</table>
</section>
<!-- Operations -->
<section>
<h3>Operations</h3>
<table class="table table-striped table-bordered">
<tr>
<th>Visibility</th>
<th>Name</th>
<th>Description</th>
</tr>
<tr>
<td>public</td>
<td><a href="08c6a1e6dfd23011c9f97fc41749fcbf.html">compute_hash()</a></td>
<td></td>
</tr>
<tr>
<td>public</td>
<td><a href="872107c655b64222a5fcbbe78191fdab.html">fetch_page()</a></td>
<td></td>
</tr>
<tr>
<td>public</td>
<td><a href="6d9b563d0a2ceccbebde91c2d6976d9f.html">check_pages()</a></td>
<td></td>
</tr>
<tr>
<td>public</td>
<td><a href="c5a9ab76d63b366866ceeedb57edb125.html">compute_hash(content: str): str()</a></td>
<td></td>
</tr>
<tr>
<td>public</td>
<td><a href="652d2134d4b4a3161786510e5274ea98.html">fetch_page(url: str): tuple[str, dict]()</a></td>
<td></td>
</tr>
<tr>
<td>public</td>
<td><a href="137ad1783cc7f455239915618dcfbbfb.html">check_page(url: str, old_hash: str, generate_diff: bool, old_content: str): PageChange()</a></td>
<td></td>
</tr>
<tr>
<td>public</td>
<td><a href="8d1837a81cf65833c01333219ee1e01e.html">check_pages(urls: list[str], previous_hashes: dict, generate_diffs: bool): ChangeReport()</a></td>
<td></td>
</tr>
<tr>
<td>public</td>
<td><a href="e92a84ba4f083924de5481b970693c8f.html">generate_diff(old_content: str, new_content: str): str()</a></td>
<td></td>
</tr>
<tr>
<td>public</td>
<td><a href="998c1c3018b16e96777b62320a15130a.html">generate_summary_diff(old_content: str, new_content: str): str()</a></td>
<td></td>
</tr>
<tr>
<td>public</td>
<td><a href="7debdfb42a195fb83f2ffd92b85231b1.html">check_header_changes(url: str, old_modified: str, old_etag: str): bool()</a></td>
<td></td>
</tr>
<tr>
<td>public</td>
<td><a href="728ba0c9856a59b22a40f8391ecea617.html">batch_check_headers(urls: list[str], previous_metadata: dict): list[str]()</a></td>
<td></td>
</tr>
</table>
</section>
<!-- Receptions -->
<!-- Extension Points -->
<!-- Parameters -->
<!-- Diagrams -->
<!-- Behavior -->
<!-- Action -->
<!-- Interaction -->
<!-- CombinedFragment -->
<!-- Activity -->
<!-- State Machine -->
<!-- State Machine -->
<!-- State -->
<!-- Vertex -->
<!-- Transition -->
<!-- Data Model (ERD) -->
<!-- Columns (ERD) -->
<!-- Related Entities (ERD) -->
<!-- Data Flows (DFD) -->
<!-- Flows (Flowchart) -->
<!-- Properties -->
<section>
<h3>Properties</h3>
<table class="table table-striped table-bordered">
<tr>
<th width="50%">Name</th>
<th width="50%">Value</th>
</tr>
<tr>
<td>name</td>
<td>ChangeDetector</td>
</tr>
<tr>
<td>stereotype</td>
<td><span class='label label-info'>null</span></td>
</tr>
<tr>
<td>visibility</td>
<td>public</td>
</tr>
<tr>
<td>isAbstract</td>
<td><span class='label label-info'>false</span></td>
</tr>
<tr>
<td>isFinalSpecialization</td>
<td><span class='label label-info'>false</span></td>
</tr>
<tr>
<td>isLeaf</td>
<td><span class='label label-info'>false</span></td>
</tr>
<tr>
<td>isActive</td>
<td><span class='label label-info'>false</span></td>
</tr>
</table>
</section>
<!-- Tags -->
<!-- Constraints, Dependencies, Dependants -->
<section class="element-list">
<h3>Dependencies</h3>
<ul class="nav nav-list">
<li><a href='33bbdec27a17b8bd242093abf45232c9.html'><span class='node-icon staruml-icon icon-UMLDataType'></span>PageChange</a></li>
<li><a href='bd9ab2cd7440ceed6d93de7efc261d6c.html'><span class='node-icon staruml-icon icon-UMLDataType'></span>ChangeReport</a></li>
</ul>
</section>
<section class="element-list">
<h3>Dependants</h3>
<ul class="nav nav-list">
<li><a href='b981ba669c0e879541c2cf16c5fc41b1.html'><span class='node-icon staruml-icon icon-UMLClass'></span>SyncMonitor</a></li>
</ul>
</section>
<!-- Relationships -->
<section class="element-list">
<h3>Relationships</h3>
<ul class="nav nav-list">
<li><a href='252337c625b14499b0123e98a2b0f71b.html'><span class='node-icon staruml-icon icon-UMLDependency'></span>(ChangeDetector→PageChange)</a></li>
<li><a href='57109a4eea39512ca642b319d20103dd.html'><span class='node-icon staruml-icon icon-UMLDependency'></span>(ChangeDetector→ChangeReport)</a></li>
<li><a href='9d83d1b61b8db7d48a9ea552102409af.html'><span class='node-icon staruml-icon icon-UMLDependency'></span>(SyncMonitor→ChangeDetector)</a></li>
</ul>
</section>
<!-- Owned Elements -->
<section class="element-list">
<h3>Owned Elements</h3>
<ul class="nav nav-list">
<li><a href='252337c625b14499b0123e98a2b0f71b.html'><span class='node-icon staruml-icon icon-UMLDependency'></span>(ChangeDetector→PageChange)</a></li>
<li><a href='57109a4eea39512ca642b319d20103dd.html'><span class='node-icon staruml-icon icon-UMLDependency'></span>(ChangeDetector→ChangeReport)</a></li>
</ul>
</section>
<!-- Diagrams -->
<section class="element-list">
<h3>Diagrams</h3>
<ul class="nav nav-list">
<li><a href='9c77d89de8418c23e57114f6d0c155a3.html'><span class='node-icon staruml-icon icon-UMLClassDiagram'></span>Sync</a></li>
</ul>
</section>
<!-- Image Map Resizer (https://github.com/davidjbradshaw/image-map-resizer) -->
<script>
imageMapResize();
</script>
</div>
</body>
</html>