-
Notifications
You must be signed in to change notification settings - Fork 0
CXF-274: narrow the skills' prose to what the code actually requires #19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -58,7 +58,19 @@ is trimmed by selection, never by editing the vendored document. | |
| Emit the `sourcing` and `park_evidence` halves of the pre1.json artifact: | ||
|
|
||
| - `sourcing`: `{spec_url, fetched_at, authority_rung, spec_bytes}`. | ||
| - `spec_url` (string) and `fetched_at` (string, ISO-8601). | ||
| - `authority_rung` (string, NOT a number) - the ladder rung as a string, | ||
| e.g. `"1"` for an official published spec. | ||
| - `spec_bytes` (integer) - from `wc -c`; above 0 and under 1048576. | ||
| - `park_evidence`: `{spec_version_checked, missing_paths, vendor_doc, revisit_trigger}`. | ||
| - `spec_version_checked` (string) - the provider's bare version value and | ||
| nothing else, e.g. `"1.2.0"`. Not a sentence, and not a composite carrying | ||
| hashes, byte counts, or fetch timestamps; those belong in `sourcing`. | ||
| - `missing_paths` (array of strings) - the literal OpenAPI path templates | ||
| that are absent, e.g. `["/v1/users", "/v1/groups", | ||
| "/v1/groups/{groupId}/members"]`. Not prose descriptions of the missing | ||
| capability families. | ||
| - `vendor_doc` (string) and `revisit_trigger` (string), both non-empty. | ||
|
Comment on lines
+69
to
+73
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🟡 Suggestion: P4 also rejects an empty |
||
|
|
||
| ## Exit criteria | ||
|
|
||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -27,6 +27,10 @@ rule: when the served guide conflicts with any other doc, the served guide wins. | |
| 3. Slot identity is by JS reference - never re-call `slot()`. | ||
| 4. The bundle targets ES5 - no `u` regex flag; goja quirks apply. | ||
| 5. Import only from `@baton/runtime`, `@baton/types`, `@baton/helpers` (`@baton/*` resolution). | ||
| 6. Provisioning: emit `provisioningResponse.grant({grants: [...]})` / `.revoke({})`; | ||
| that `Grant` is `@baton/types`' (NO `"@type"`), not the proto-shaped `sdk-types` | ||
| one. Attach the walkers under `provisioning: {grant, revoke}` - the runtime-facing | ||
| `RuntimeResourceTypeSpec` carries only that nesting. | ||
|
Comment on lines
+32
to
+33
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🟡 Suggestion: the |
||
|
|
||
| Worked skeletons: `examples/http/connector.ts` (transport + offset | ||
| pagination + users/groups/membership grants), `examples/static/connector.ts` (zero-config), and the lifecycle doc's Okta worked example (pin in SOURCES.md). | ||
|
|
@@ -183,6 +187,8 @@ Taught as contract rules, not eval-gaming literals: | |
| - WithExternalID is DEPRECATED - never required. | ||
| - Do not write plaintext secrets into `connector.ts`. | ||
| - Do not claim the build schema-validates `capabilities.json`. | ||
| - Do not put a proto-JSON `"@type"` in a `provisioningResponse.grant` grant - | ||
| that `Grant` has no discriminator. | ||
|
|
||
| ## Blocker protocol | ||
|
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🟡 Suggestion: the string-not-number typing is right (
stages.ts:489usesnonEmptyString), but the example value"1"diverges from the repo's own golden artifacts, which all use the descriptive rung name —"official published spec at a stable URL"inevals/runner/drivers/tier0/canned-pre1-directory-proceed/pre1.json:26,score.test.ts:239, andstages.test.ts:307. Both forms pass P3, so nothing breaks, but a skill that is being written to match the scorer will now teach an encoding no fixture uses. Considere.g. "official published spec at a stable URL" for rung 1(or"1" — official published spec at a stable URL) so prose and fixtures agree. (confidence: high on the divergence, medium on which form you want as canonical)