Skip to content

feat(schema): typed scope entries (schema 1.1) - #4

Merged
0xmanhnv merged 2 commits into
mainfrom
feat/typed-targets
Oct 10, 2026
Merged

0xmanhnv merged 2 commits into
mainfrom
feat/typed-targets

Conversation

@0xmanhnv

Copy link
Copy Markdown
Member

Stacked on #3 (its commit is included until #3 merges). Adds optional per-target fields asset_type (normalised enum from each platform's own asset types), ports, protocol, path_prefix, environment, instructions, requires. Parsed from the platform files where present; never guessed. JSON Schema, Go types, validation/normalisation, schema-match test, fixtures and README updated. Behaviour change: platform instruction text is now in instructions, no longer duplicated in notes. Readers validating with additionalProperties false need the 1.1 schema (the OpenCTEM importer must accept the new fields before this is released).

Nguyen Manh added 2 commits October 10, 2026 05:59
…; local-only --prev continues the sequence

The single 30s Client.Timeout failed the ~18 MB bounty-targets files. Keep header/connect/TLS timeouts, replace the whole-request timeout with a context deadline that dataset adapters raise to 5 min, and fail a body that stalls for 20s. build --local-only now accepts --prev <local bundle> (unsigned, snapshot-only, still local_only) so local sequences increase; signed and local bundles are refused as each other's prev.
…prefix, environment, instructions, requires)

Schema 1.1, additive and optional. Parsed from the bounty-targets-data platform files where present (asset_type mapped per platform, instructions, URL path); absent fields stay empty. Platform instruction text moves from notes to instructions.
@0xmanhnv
0xmanhnv merged commit 42bb069 into main Oct 10, 2026
1 check passed
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