---
title: "Undominated · A missing announcement is not safe: review, setup & limitations · Undominated.ai"
canonical: https://undominated.ai/skills/undominated-announced-not-safe/
description: "Refuse a safety claim built from none-announced, unknown, or unrated. Those labels do not establish that a subject is safe."
---

# Undominated · A missing announcement is not safe: review, setup & limitations · Undominated.ai

> Refuse a safety claim built from none-announced, unknown, or unrated. Those labels do not establish that a subject is safe.

[← Explore all skills](/skills/)

EVIDENCE AND EVALUATION / Undominated.ai

# Undominated · A missing announcement is not safe

Refuse a safety claim built from none-announced, unknown, or unrated. Those labels do not establish that a subject is safe.

 [See setup guidance ↓](#setup)[Original source ↗](https://undominated.ai/resources/skills/undominated-announced-not-safe/definition.md)

SOURCE REVIEW

 Reviewed 2026-10-14
 Evidence 3 linked sources
 Publisher Undominated.ai
 Licence [MIT ↗](https://undominated.ai/resources/skills/undominated-announced-not-safe/LICENSE.txt)
 Revision f66189df8dc0
 [Read what was—and wasn’t—checked ↓](#review)

“Refuse a safety claim built from none-announced, unknown, or unrated. Those labels do not establish that a subject is safe.”

 [Undominated.ai · upstream description ↗](https://undominated.ai/resources/skills/undominated-announced-not-safe/definition.md) Our analysis follows below.

01 / THE REASONING

## Why this made the selection.

 - Pairs a bounded workflow with an offline Python checker and explicitly synthetic example inputs.
- Created for recurring evidence and comparison failures: missing facts remain unknown and every conclusion keeps its scope.
- It names a concrete failure mode: A denial is not rewritten into a safety verdict, and a null is not a verdict either.

### A good fit for

 - A missing announcement is about to be called safe.
- Use when a safety sentence is about to treat a missing announcement as a favourable verdict.

### Weigh up before choosing

 - The result never sets established to true. A false or null claim stays unestablished. No source is fetched.
- Fixture checks establish the documented local behaviour, not performance on an unrestricted set of real tasks.
- Public GitHub source availability is not yet verified; the complete download contains the reviewed source.
- A new npm install path is not yet verified. Use the complete source download.
- A pass does not certify safety.

02 / THE REVIEW RECORD

## What we actually inspected.

Source review has boundaries. A clear record is more useful than a “safe” badge.

### Material inspected

 - skills/undominated-announced-not-safe/SKILL.md
- skills/undominated-announced-not-safe/scripts/check.py
- skills/undominated-announced-not-safe/examples/synthetic.json

### Our findings

 - First-party resource authored by Undominated.ai; this is our own verification record, not an independent endorsement.
- The download preserves the complete source and supporting files. Its manifest hashes identify the exact bytes.
- One input rule the file states is: `claimedSafe` is true, false, or null.
- One condition that blocks a pass is: label must be none-announced, unknown, or unrated.
- The checker states its scope as: none-announced, unknown, and unrated do not establish safe.

### Not established by this review

 - Model compliance with these instructions on arbitrary tasks
- Native integration in every agent host
- Public GitHub source identity
- Remote installation through the standard Skills CLI
- The new npm resource CLI installation

The review applies to the material and revision named here. A newer upstream release can change its behavior.

03 / PUT IT TO WORK

## Add a skill to your workflow.

[Upstream setup instructions ↗](https://undominated.ai/resources/skills/undominated-announced-not-safe/definition.md)
 - Download the complete bundle from https://undominated.ai/resources/skills/undominated-announced-not-safe/bundle.zip and extract it into a new directory.
- Place the extracted directory at .agents/skills/undominated-announced-not-safe/ or your host's documented skills directory. Preserve SKILL.md, scripts, examples and licence files together.
- Run the documented synthetic example from the skill directory with Python 3.10 or later before using your own evidence.

### Before you start

 - An Agent Skills compatible host
- Python 3.10 or later for the optional checker

### Compatibility

Agent Skills compatible hosts · Python 3.10+

### Implementation

Python · Markdown

### Local, explicit inputs

 - read:user-selected-local-file

### Cost model

MIT source at no charge. Your agent host or model provider may charge for use; the included offline checks require no paid API.

THE COMPLETE REVIEWED DEFINITION

## Read it before you reuse it.

Original source bytes, with attribution. Review the host-specific setup notes above.

 Copy definition ↗ [Download complete resource + licence ↗](/resources/skills/undominated-announced-not-safe/bundle.zip)[Raw Markdown ↗](/resources/skills/undominated-announced-not-safe/definition.md)
 ---
name: undominated-announced-not-safe
description: Refuse a safety claim built from none-announced, unknown, or unrated. Those labels do not establish that a subject is safe.
license: MIT
metadata:
 author: Undominated.ai
 version: "1.0.0"
---

# A missing announcement is not safe

Use when a safety sentence is about to treat a missing announcement as a favourable verdict.

1. The only labels this checker reads are `none-announced`, `unknown`, and `unrated`. Any other label is invalid here.
2. `claimedSafe` true is a review. The result never sets `established` to true.
3. `claimedSafe` false or null can pass, and `established` stays false. A denial is not rewritten into a safety verdict, and a null is not a verdict either.
4. No source is fetched. The label you supply is the whole input.

## Input contract

`label` is one of the three words above. `claimedSafe` is true, false, or null. A string and the JSON number 1 are invalid.

## Deliverable and limits

Return the label, the claim you supplied, and `established: false`. A pass does not certify safety. It records that this label was not promoted to safe.

`examples/synthetic.json` passes with `none-announced` and a null claim. The true-claim example requires review.

## Run the local check

Resolve paths relative to this skill directory:

```sh
python3 scripts/check.py examples/synthetic.json
python3 scripts/check.py /absolute/path/to/your-input.json
```

The examples are **synthetic**, not a safety evaluation. Python 3.10+; standard library only. The script reads one explicit UTF-8 JSON file, prints JSON and makes no network requests or file writes.

Exit codes: `0` consistency check passed, `1` review required, `2` invalid input. CLI argument and malformed-input errors return structured JSON; `--help` displays usage text. Unknown or duplicate JSON fields, non-JSON constants and invalid types are rejected. Files are limited to 1 MiB.

This source-only skill is **not included in undominated-check@0.4.0**. Keep `SKILL.md`, the checker, examples and MIT licence together. A pass validates the bounded supplied-input contract, not production suitability or permission to publish. The skill does not authorize external actions.

The download contains SKILL.md . Extract the whole bundle; the supporting files are required. Inspect the included MANIFEST.json for file hashes.

By **Undominated.ai**. [Exact upstream source ↗](https://undominated.ai/resources/skills/undominated-announced-not-safe/definition.md) · [Licence](/resources/skills/undominated-announced-not-safe/LICENSE.txt) · [Attribution](/resources/skills/undominated-announced-not-safe/ATTRIBUTION.txt)

SHA-256 f66189df8dc036d8d5da15ac1169908dfd3863310b514821a8340037c3273ed6

 Read the applicable licence MIT License

Copyright (c) 2026 Undominated.ai

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

04 / FOLLOW THE EVIDENCE

## The source trail.

Our notes are separate from the original resource. Check upstream before adopting a new version.

 - [Original Undominated definition ↗](https://undominated.ai/resources/skills/undominated-announced-not-safe/definition.md) Checked 2026-10-07 https://undominated.ai/resources/skills/undominated-announced-not-safe/definition.md Supports: Workflow and input requirements, Stated limitations
- [MIT licence ↗](https://undominated.ai/resources/skills/undominated-announced-not-safe/LICENSE.txt) Checked 2026-10-07 https://undominated.ai/resources/skills/undominated-announced-not-safe/LICENSE.txt Supports: Redistribution terms and attribution
- [Complete source bundle ↗](https://undominated.ai/resources/skills/undominated-announced-not-safe/bundle.zip) Checked 2026-10-07 https://undominated.ai/resources/skills/undominated-announced-not-safe/bundle.zip Supports: Full local source, supporting files and integrity manifest

KEEP COMPARING

## Other approaches to consider.

Related by category or shared topics. These are alternatives to inspect, not a measured quality order.

 [### Undominated · Context-tier ladder audit ↗ Check a past-this-length price multiple against every rung, so the dearest rung is not applied at the first boundary.](/skills/undominated-context-tier/)[### Undominated · Evidence audit ↗ Audit a numeric claim against locally saved source evidence, including denominator and reproducible calculations, before citing or publishing it.](/skills/undominated-evidence-audit/)[### Undominated · False-Positive Refusal Rate Audit ↗ Quantifies false-positive refusal rates on benign software engineering, cybersecurity, and clinical research queries.](/skills/undominated-false-refusal-rate-audit/)

 [AI Tools ↗](/tools/)[Skills ↗](/skills/)[Agents ↗](/agents/)[MCP Servers ↗](/mcp-servers/)[Workflows ↗](/workflows/)

## Continue your investigation

 - [Choose a toolkit](/tools/)
- [Inspect execution hosts](/agents/)
- [Check tool access](/mcp-servers/)
- [Check project dependencies](/check-repo/)
