Skip to content

DUPLOAI-3817: Add AI-use disclosure to Agent-mode extension forms - #28

Merged
aboutte merged 7 commits into
duplocloud:devfrom
shreyas-duplo:feature/DUPLOAI-3817-ai-disclosure
Oct 8, 2026
Merged

aboutte merged 7 commits into
duplocloud:devfrom
shreyas-duplo:feature/DUPLOAI-3817-ai-disclosure

Conversation

@shreyas-duplo

Copy link
Copy Markdown
Contributor

Overview

DuploCloud is ISO 42001 certified and must disclose AI use at the point of use. Agent-mode extension forms open a
Helpdesk ticket that an AI agent processes, but the user filling the form never saw a disclosure. This makes the
duplo-extension-dev skill and its scaffold ship the disclosure on every Agent-mode Add/Edit form by default
(DUPLOAI-3817).

Summary of changes

This PR does the following:

  • Library: vendors ng-common-lib 0.4.0, which adds <app-ai-disclosure> ("This platform uses AI. See documentation
    for more details."; text and link overridable from the deployment's custom config). Both copies are updated (samples'
    packages/ and the template's vendor/), along with every sample and template package.json and lockfile
  • Scaffold: the helloworld template's Add/Edit form ends with the disclosure, so the next Agent-mode extension gets it automatically
  • Samples: every Agent-mode form gets it: helloworld, parent-child (parent and child), and the network-stack wizard
    through a new [aiDisclosure] stepper input. Worker and Passthrough samples are unchanged
  • Skill:
    • SKILL.md: the Add/Edit convention, the Agent wiring step, the Phase 1 UX walkthrough, and the Worker/Passthrough/No-provision conversion (remove it)
    • Reference 14: a new "AI-use disclosure (Agent mode)" section covering single-page, wizard and modal placement, plus a polish-checklist bullet
    • References 19, 20 and 02, and docs/UPGRADING-ng-common-lib.md: the Agent-mode UI list, a catalogue row, and 0.4.0 version references

Testing performed

  • Using unit tests
  • Manually, on my local system
  • Manually, on a remote test system
  • Added screenshots of test cases - API changes only

Describe any breaking changes

None. Existing extensions keep building; the disclosure is added by the scaffold and skill, not enforced.

🤖 Generated with Claude Code

https://claude.ai/code/session_01C8ZDrXkBjXRL2ekNfsV6Up

shreyas-duplo and others added 7 commits October 6, 2026 19:24
Add a build gate that verifies Agent-mode extensions (those with
non-empty skillMappings in manifest.json) render the <app-ai-disclosure>
component on their forms, per ISO 42001 requirements.

- scripts/_ai_disclosure_gate.sh: new gate helper, sourced by tests and build
- tests/test-ai-disclosure-gate.sh: 7 test cases (Agent-mode with/without tag,
  Worker extensions, malformed JSON, error messaging)
- scripts/build-extension.sh: wire the gate after naming validation

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C8ZDrXkBjXRL2ekNfsV6Up
…clusion, docs

Warn (not fail) for Agent-mode extensions on ng-common-lib < 0.4.0, ignore the
copied wizard-stepper tag, add gate tests, and document the check.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C8ZDrXkBjXRL2ekNfsV6Up
…ault wording

- Remove the build-extension.sh disclosure gate and its test; the ticket asks only for the skill and scaffold to ship it by default
- Restore the gate-related troubleshooting and upgrading docs
- Document the "This platform uses AI." default and its config overrides in the forms reference

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C8ZDrXkBjXRL2ekNfsV6Up
- Replace the locally packed 0.4.0 tarball with the GitHub Packages release, so Agent-mode forms show "This platform uses AI."
- Update the tarball integrity in every sample and template lockfile

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C8ZDrXkBjXRL2ekNfsV6Up
@aboutte
aboutte merged commit 83accc0 into duplocloud:dev Oct 8, 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.

2 participants