Skip to content

fix: two skills taught resources the platform does not have - #80

Merged
stxkxs merged 1 commit into
mainfrom
fix/skills-name-deleted-resources
Aug 5, 2026
Merged

fix: two skills taught resources the platform does not have#80
stxkxs merged 1 commit into
mainfrom
fix/skills-name-deleted-resources

Conversation

@stxkxs

@stxkxs stxkxs commented Aug 5, 2026

Copy link
Copy Markdown
Member

fab's skills are the regeneration source — read into the preamble of every factory session, shaping every artifact an agent produces. A skill naming something nonexistent doesn't just mislead a reader; it re-emits the defect into the next generated tenant.

Two instances, both live.

eks-agent-platform-curation.md — a deleted CRD, taught as current

Listed BatchJob in the agents.nanohype.dev group and defined it as "a Bedrock batch inference run over an S3 prefix". No control plane serves that kind. An agent curating against this skill authors a CR the API server rejects.

kubernetes-engineering.md — a namespace nothing creates

Taught a NetworkPolicy whose ingress admits the observability namespace. The observability addons land in monitoring — which is what the Kyverno exclusion lists and the operator both name. Verified: no ApplicationSet places anything in observability.

A policy generated from this example admits traffic from a namespace that does not exist, so the rule matches nothing and the ingress it was meant to permit is silently dropped. Renders clean, lints clean, passes every policy gate.

This is the same defect already fixed at four other sites — and this file is where those four were generated from, so leaving it would have restored them on the next generation.

What is deliberately not fixed here

There is no gate over fab/skills, and these are the second and third instances found in one campaign. The obstacle is real rather than an oversight:

fab vendors two nanohype standards (language-toolchain, llm-policy) and neither enumerates the platform's CRD kinds. platform-tenant-contract.json has no machine-readable kind list either. So a check needs a new vendoring channel for the kind list, not a regex.

Filed with that scope rather than approximated with a weaker check that would pass on the next instance.

npm run lint clean; 502 tests across 33 files pass.

fab's skills are the regeneration source — they are read into the preamble of
every factory session and shape every artifact an agent produces. A skill that
names something nonexistent does not just mislead a reader; it re-emits the
defect into the next generated tenant.

Two instances, both live:

`eks-agent-platform-curation.md` listed BatchJob in the agents.nanohype.dev API
group and defined it as "a Bedrock batch inference run over an S3 prefix". No
control plane serves that kind. An agent curating against this skill would
author a CR the API server rejects.

`kubernetes-engineering.md` taught a NetworkPolicy whose ingress admits the
`observability` namespace. Nothing creates that namespace — the observability
addons land in `monitoring`, which is also what the Kyverno exclusion lists and
the operator both name. A policy generated from this example admits traffic from
a namespace that does not exist, so the rule matches nothing and the ingress it
was meant to permit is silently dropped.

The second is the same defect already fixed at four other sites; this file is
where those four were generated from, so leaving it would have restored them.

─── Not fixed here ───

There is no gate over fab/skills, and these are the second and third instances
found in one campaign. The obstacle is real rather than an oversight: fab
vendors two nanohype standards (language-toolchain, llm-policy) and neither
enumerates the platform's CRD kinds, so a check would need a new vendoring
channel for the kind list rather than a regex. Filed with that scope rather than
approximated with a weaker check that would pass on the next instance.
@stxkxs
stxkxs force-pushed the fix/skills-name-deleted-resources branch from e246e71 to 4f18d38 Compare August 5, 2026 20:47
@stxkxs
stxkxs merged commit 9af57e2 into main Aug 5, 2026
10 checks passed
@stxkxs
stxkxs deleted the fix/skills-name-deleted-resources branch August 5, 2026 20:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant